Re: Blobs and SQL Server
- From: "Hilary Cotter" <hilary.cotter@xxxxxxxxx>
- Date: Tue, 22 Aug 2006 19:23:56 -0400
Older versions of SQL Server required the blob be loaded in chunks, older
versions of ADO required you use the getchunk method, but newer versions
allow you use to stream object to push it in. The client will consume
virtual ram on the host it is running on, not necessarily the SQL Server
box.
There is a cpu and disk IO hit while inserting the blob. I have not
observered a RAM hit.
--
Hilary Cotter
Director of Text Mining and Database Strategy
RelevantNOISE.Com - Dedicated to mining blogs for business intelligence.
This posting is my own and doesn't necessarily represent RelevantNoise's
positions, strategies or opinions.
Looking for a SQL Server replication book?
http://www.nwsu.com/0974973602.html
Looking for a FAQ on Indexing Services/SQL FTS
http://www.indexserverfaq.com
<bormesh@xxxxxxxxx> wrote in message
news:1156277942.710422.326970@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Thanks for the information Hilary,
When I'm inserting the blob into the database, I was under the
impression that it had to be split up into a series of smaller files.
If a large file is inserted, then it will require many small chunks. As
we insert, I assume we're going to be using RAM to store the chunks and
then we'll hit back and forth between the file system and the database,
all the while using up our memory. Am I correct in this assumption? I
guess I'm just wondering at the feasiblity of actually inserting a
larger blob (maybe not as huge as 500 mb) on a slower computer
(assuming the computers that we're developing for have an average of
512MB of RAM). Or does the amount of RAM on the client system not
matter, and only the specs of our Database machine matter?
I hope this makes sense... I can give you more information if you need
it.
Thanks,
Rob Heinen
Hilary Cotter wrote:
Yes, there is a performance hit while importing blobs, mainly disk and to
a
lesser degree cpu. 500 Mgs is a large chunk of data, there is no easy way
to
push it in. Any way you could extract the textual content and store it in
the db?
In general you store the blob in the database for manageability reasons.
For
performance reasons you store the path in the db and keep the blob in the
file system. Research has indicated that you should store the blobs in a
directory structure maintained by a hash so that you have a large number
of
subdirectories. retrieving a blob this way offers best seek performance
in
NTFS. Also web servers are optimized for sending files, databases aren't.
You can also send the file to the client asynchronously using an iframe,
if
you are retrieving it from the db it would be done serially.
--
Hilary Cotter
Director of Text Mining and Database Strategy
RelevantNOISE.Com - Dedicated to mining blogs for business intelligence.
This posting is my own and doesn't necessarily represent RelevantNoise's
positions, strategies or opinions.
Looking for a SQL Server replication book?
http://www.nwsu.com/0974973602.html
Looking for a FAQ on Indexing Services/SQL FTS
http://www.indexserverfaq.com
<bormesh@xxxxxxxxx> wrote in message
news:1156194912.604401.188440@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Hey Hilary,
Mike from microsoft.public.sqlserver.programming told me to talk to
you about my question. Here's my original post:
I'm looking for some information about storing BLOBs in SQL. A bit of
background: my company is developing a document management system.
Previously, we had stored the files on the file structure and used a
pointer in the database. We're not switching because the next iteration
of our system is going to allow for full text searches, and this
becomes a simple task when the entire document is stored in the
database.
My question is how performance will be affected when I want to import
large documents/files into the database? Will I see a huge slow down if
I import a 500 MB file? I've researched this a bit, and I don't want to
use a bit array to import the document into the database. I'd rather
just import it (but will memory be affected horribly?)
If anyone could help me out a bit, or just point me in the right
direction, that would be great.
Thanks for your help,
Rob Heinen
.
- Follow-Ups:
- Re: Blobs and SQL Server
- From: Kevin . w . Berridge
- Re: Blobs and SQL Server
- References:
- Blobs and SQL Server
- From: bormesh
- Re: Blobs and SQL Server
- From: Hilary Cotter
- Re: Blobs and SQL Server
- From: bormesh
- Blobs and SQL Server
- Prev by Date: Re: Blobs and SQL Server
- Next by Date: Re: multiple words researchs
- Previous by thread: Re: Blobs and SQL Server
- Next by thread: Re: Blobs and SQL Server
- Index(es):
Relevant Pages
|