Hello, Can anyone suggest me solution?
I Need to manage different types of documents (doc,xls,ppt etc) in
server. I have folder structure to maintain these documents in server.
Say folder1 is having all doc files; folder2 is having all xls files
and so on.
Now these documents should not be able to get access through the url
by directly typing path.
E-g if I try to access directly www.mywebsite.com/folder1/xyz.doc it
will open the document in browser itself.
At the same time these documents should be access only through our
website once they are login. But without login also if you know the
path you can get these documents how should I avoid it?
How can I provide security to these documents in server?
Jul 18 '08
46 1400
Paul Lautman wrote:
The Natural Philosopher wrote:
>J.O. Aho wrote:
>>The idea of storing binary files in a database is quite good, but it will affect the sql server in a negative way, specially the larger the binary files are.
Ok, why should it take longer to pull a large file out of one locatin in a database than one location in a filesssytem?
IME the things that slow databases down are not getting data out of them, its performing complex relational queries.
I have tested this and I have found it slightly slower to get files from a
database table than from the file system. Then again, it is slightly slower
building pages dynamically with php/MySQL than it is to serve fixed html
pages. So basically, when I find that storing files in a database is the
best way to handle the application I am writing, that's the way I do it.
Paul,
But try putting 100K files in a directory on the file system and see how
much it slows things down. Whereas the database will hardly notice any
performance decrease.
--
=============== ===
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp. js*******@attgl obal.net
=============== ===
Jerry Stuckle wrote:
Bart Van der Donck wrote:
>Captain Paralytic wrote:
>>http://www.php-mysql-tutorial.com/php-mysql-upload.php
>I'm surprised this document doesn't mention how disastrous it can be for the performance of a database. Only use for tiny binary data and a limited amount of records, I'ld say... I would even vote to dismiss LONGBLOB; it often creates more problems than it solves.
You're just using the database for what it's made for - storing and
accessing data. *It's not at all disastrous - in fact, if you get enough
files in the database, performance may actually improve over that file
system's.
I would be interested to see some articles or benchmarks about this
issue. Got any ? From my experience I've actually always encountered
the opposite (MySQL and MS Access) whose performance dramatically
decreases with larger BLOBS. I'm working with many GB's of pictures
for whom I store nothing in tables (ID of the record = name of the
picture / application ties pics to IDs). I've good experiences with
this approach, even under heavy load. But I'm always interested to
learn how this strategy could be improved.
--
Bart
Jerry Stuckle wrote:
Paul Lautman wrote:
>The Natural Philosopher wrote:
>>J.O. Aho wrote: The idea of storing binary files in a database is quite good, but it will affect the sql server in a negative way, specially the larger the binary files are.
Ok, why should it take longer to pull a large file out of one locatin in a database than one location in a filesssytem?
IME the things that slow databases down are not getting data out of them, its performing complex relational queries.
I have tested this and I have found it slightly slower to get files from a database table than from the file system. Then again, it is slightly slower building pages dynamically with php/MySQL than it is to serve fixed html pages. So basically, when I find that storing files in a database is the best way to handle the application I am writing, that's the way I do it.
Paul,
But try putting 100K files in a directory on the file system and see
how much it slows things down. Whereas the database will hardly
notice any performance decrease.
I have always found it slightly slower to get the equivalent file from the
database rather than from the file system. But as I say, it doesn't bother
me. If the application is generally better with the files in a database,
that's where they go. If the application is easier with them on disk, then I
put them there. Likewise, if something works better with static html pages I
will use them. When it comes to down to it, we have a vast range of
technologies at our disposal. I look upon my role as being good at picking
the right one for the right task. There is always a balance to be struck
between speed of processing, functionality, ease of maintenance, ...
Bart Van der Donck wrote:
Jerry Stuckle wrote:
>Bart Van der Donck wrote:
>>Captain Paralytic wrote: http://www.php-mysql-tutorial.com/php-mysql-upload.php I'm surprised this document doesn't mention how disastrous it can be for the performance of a database. Only use for tiny binary data and a limited amount of records, I'ld say... I would even vote to dismiss LONGBLOB; it often creates more problems than it solves.
You're just using the database for what it's made for - storing and accessing data. It's not at all disastrous - in fact, if you get enough files in the database, performance may actually improve over that file system's.
I would be interested to see some articles or benchmarks about this
issue. Got any ? From my experience I've actually always encountered
the opposite (MySQL and MS Access) whose performance dramatically
decreases with larger BLOBS. I'm working with many GB's of pictures
for whom I store nothing in tables (ID of the record = name of the
picture / application ties pics to IDs). I've good experiences with
this approach, even under heavy load. But I'm always interested to
learn how this strategy could be improved.
--
Bart
Over 20 years of experience doing it, starting with DB2 on mainframes.
But don't count MS Access in there. Use a real database. MySQL
qualifies. And it has to be configured properly.
BTW - benchmarks tell exactly one thing - how a database runs UNDER
THOSE CONDITIONS. Change the conditions and benchmarks aren't valid any
more.
With that said, under live conditions, I've seen virtually no slowdown
when accessing blob data in a database. And in some cases it actually
runs faster.
--
=============== ===
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp. js*******@attgl obal.net
=============== ===
Paul Lautman wrote:
Jerry Stuckle wrote:
>Paul Lautman wrote:
>>The Natural Philosopher wrote: J.O. Aho wrote: The idea of storing binary files in a database is quite good, but it will affect the sql server in a negative way, specially the larger the binary files are. > Ok, why should it take longer to pull a large file out of one locatin in a database than one location in a filesssytem?
IME the things that slow databases down are not getting data out of them, its performing complex relational queries. I have tested this and I have found it slightly slower to get files from a database table than from the file system. Then again, it is slightly slower building pages dynamically with php/MySQL than it is to serve fixed html pages. So basically, when I find that storing files in a database is the best way to handle the application I am writing, that's the way I do it.
Paul,
But try putting 100K files in a directory on the file system and see how much it slows things down. Whereas the database will hardly notice any performance decrease.
I have always found it slightly slower to get the equivalent file from the
database rather than from the file system. But as I say, it doesn't bother
me. If the application is generally better with the files in a database,
that's where they go. If the application is easier with them on disk, then I
put them there. Likewise, if something works better with static html pages I
will use them. When it comes to down to it, we have a vast range of
technologies at our disposal. I look upon my role as being good at picking
the right one for the right task. There is always a balance to be struck
between speed of processing, functionality, ease of maintenance, ...
Yes, but with that many files in a directory, even Linux slows down
quite a bit. It isn't made to handle that many different files.
But for a good database, you're just starting.
--
=============== ===
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp. js*******@attgl obal.net
=============== ===
Jorge wrote:
On Jul 18, 8:58 pm, The Natural Philosopher <a...@b.cwrot e:
>J.O. Aho wrote:
>>The idea of storing binary files in a database is quite good, but it will affect the sql server in a negative way, specially the larger the binary files are.
Ok, why should it take longer to pull a large file out of one locatin in a database than one location in a filesssytem?
I think the point is that retrieving such a large data chunk from a db
might momentarily impact the performance of forthcoming db operations,
think about what happens to the sql database caches.
--Jorge.
Not at all, if the database is properly configured.
--
=============== ===
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp. js*******@attgl obal.net
=============== ===
Paul Lautman wrote:
Jerry Stuckle wrote:
>Paul Lautman wrote:
>>The Natural Philosopher wrote: J.O. Aho wrote: The idea of storing binary files in a database is quite good, but it will affect the sql server in a negative way, specially the larger the binary files are. > Ok, why should it take longer to pull a large file out of one locatin in a database than one location in a filesssytem?
IME the things that slow databases down are not getting data out of them, its performing complex relational queries. I have tested this and I have found it slightly slower to get files from a database table than from the file system. Then again, it is slightly slower building pages dynamically with php/MySQL than it is to serve fixed html pages. So basically, when I find that storing files in a database is the best way to handle the application I am writing, that's the way I do it.
Paul,
But try putting 100K files in a directory on the file system and see how much it slows things down. Whereas the database will hardly notice any performance decrease.
I have always found it slightly slower to get the equivalent file from the
database rather than from the file system. But as I say, it doesn't bother
me. If the application is generally better with the files in a database,
that's where they go. If the application is easier with them on disk, then I
put them there. Likewise, if something works better with static html pages I
will use them. When it comes to down to it, we have a vast range of
technologies at our disposal. I look upon my role as being good at picking
the right one for the right task. There is always a balance to be struck
between speed of processing, functionality, ease of maintenance, ...
Yes. Exactly. The key is to not get religious about it ..."the RIGHT way
is to.."
Advantages of the database...
- one point backup of all data
- definitely not directly accessible via HTML
- has much better indexing and searching than a flat file system in a
directory.
- possibly simpler integration with other bits of data assciated with te
file to be served )i.e. you MIGHT want a decsription of what it is).
On the downside, its a few more machine cycles and possibly a lot more
RAM to serve it up.
HOWEVER it is perfectly possible to have separate database on even a
separate machine to do the serving, if it gets too onerous.
The Natural Philosopher wrote:
Advantages of the database...
- one point backup of all data
- definitely not directly accessible via HTML
- has much better indexing and searching than a flat file system in a
directory.
- possibly simpler integration with other bits of data assciated with
te file to be served )i.e. you MIGHT want a decsription of what it
is).
Also, and this is the bit I really like, when you delete the record the file
automatically goes with it.
Jerry Stuckle wrote:
Paul Lautman wrote:
>The Natural Philosopher wrote:
>>J.O. Aho wrote: The idea of storing binary files in a database is quite good, but it will affect the sql server in a negative way, specially the larger the binary files are.
Ok, why should it take longer to pull a large file out of one locatin in a database than one location in a filesssytem?
IME the things that slow databases down are not getting data out of them, its performing complex relational queries.
I have tested this and I have found it slightly slower to get files from a database table than from the file system. Then again, it is slightly slower building pages dynamically with php/MySQL than it is to serve fixed html pages. So basically, when I find that storing files in a database is the best way to handle the application I am writing, that's the way I do it.
Paul,
But try putting 100K files in a directory on the file system and see
how much it slows things down. Whereas the database will hardly
notice any performance decrease.
Actually I guess I ought to qualify my timings comment. I have no proof that
it is the database that was slowing things down per-se. To serve the images
required invoking a load of script, which wasn't going to help and of course
the MySQL installation was on a shared server, so no opportunity to optimise
the settings for this task.
..oO(The Natural Philosopher)
>Yes. Exactly. The key is to not get religious about it ..."the RIGHT way is to.."
Advantages of the database...
- one point backup of all data - definitely not directly accessible via HTML - has much better indexing and searching than a flat file system in a directory. - possibly simpler integration with other bits of data assciated with te file to be served )i.e. you MIGHT want a decsription of what it is).
On the downside, its a few more machine cycles and possibly a lot more RAM to serve it up.
Some more pros and cons: http://groups.google.com/group/alt.p...e4dd4f90eafa84
Micha This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics |
by: Sarah Tanembaum |
last post by:
I was wondering if it is possible to create a secure database system
using RDBMS(MySQL, Oracle, SQL*Server, PostgreSQL etc) and web
scripting/programming language(Perl, PHP, Ruby, Java, ASP, etc) combination?
I have the following in mind:
I wanted to store all my( and my brothers and sisters) important
document
information such as birth certificate, SSN, passport number, travel
documents, insurance(car, home, etc) document, and other...
|
by: Ragnar Heil |
last post by:
Hi,
I want to produce .fo-documents and now I am searching for a fo-processor
which can transform them into secure pdfs. I don´t want to touch every pdf
manually to set security settings like "no printing" or "no content
copying".
regards
Ragnar
|
by: Peter Tragardh |
last post by:
I'm trying to develop an SSH client. I've read the documents on
www.snailbok.com where the protocol is explained, and also a lot of other
documents on the net. But since I'm not that experienced in developing
network apps, I just don't know where to begin, what to do to turn theory
to reality (code). Questions like how to connect to the server (sockets?)
need an answer. I really need an example, document, article, web page, or
any other...
|
by: shantanu |
last post by:
Hi All,
I have a requirement to develop a search engine based on
some search criteria that will search for the string or statement in
all the documents uploaded in the website. The search result will be
displayed same as the Google Group search, with highlighted texts.
I have few questions:
1. What will be the logic to implement?
2. The documents that will be uploaded in the website will be saved in
the datbase or not?
|
by: RAZZ |
last post by:
Hello, Can anyone suggest me solution?
I Need to manage different types of documents (doc,xls,ppt etc) in
server. I have folder structure to maintain these documents in server.
Say folder1 is having all doc files; folder2 is having all xls files
and so on.
Now these documents should not be able to get access through the url
| |
by: marktang |
last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look !
Part I. Meaning of...
|
by: Hystou |
last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it.
First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
|
by: jinu1996 |
last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth.
The Art of Business Website Design
Your website is...
|
by: tracyyun |
last post by:
Dear forum friends,
With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
|
by: agi2029 |
last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own....
Now, this would greatly impact the work of software developers. The idea...
|
by: isladogs |
last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM).
In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules.
He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms.
Adolph will...
| |
by: conductexam |
last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one.
At the time of converting from word file to html my equations which are in the word document file was convert into image.
Globals.ThisAddIn.Application.ActiveDocument.Select();...
|
by: TSSRALBI |
last post by:
Hello
I'm a network technician in training and I need your help.
I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs.
The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols.
I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
|
by: bsmnconsultancy |
last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...
| |