20 messages in com.mysql.lists.win32Re: Large Blob Transfer
FromSent OnAttachments
XuYong08 Dec 2003 17:17 
Christian Mack09 Dec 2003 03:57 
David Patte09 Dec 2003 07:11 
Frost, Brian A, CTR, Force Transformation09 Dec 2003 07:57 
Virginia R. Hetrick09 Dec 2003 08:17 
Virginia R. Hetrick09 Dec 2003 09:03 
BRANDON FETCH09 Dec 2003 09:44 
Ron Steiner09 Dec 2003 09:52 
David Patte09 Dec 2003 10:44 
Virginia R. Hetrick09 Dec 2003 11:16 
David Patte10 Dec 2003 05:17 
David Patte10 Dec 2003 05:37 
Gerald Jensen10 Dec 2003 06:08 
David Patte10 Dec 2003 06:15 
Virginia R. Hetrick10 Dec 2003 10:00 
Jim Winstead10 Dec 2003 10:08 
Tom Horstmann12 Dec 2003 09:39 
Tom Horstmann12 Dec 2003 23:40 
Tom Horstmann12 Dec 2003 23:54 
Tom Horstmann13 Dec 2003 06:02 
Subject:Re: Large Blob Transfer
From:Virginia R. Hetrick (drju@gte.net)
Date:12/09/2003 08:17:41 AM
List:com.mysql.lists.win32

Hi, XuYong -

I think most people do not put BLOBs into the actual database, exactly because
of the length of time necessary to retrieve the data. Just as a suggestion, try
retrieving non-BLOB data of the same size and I think you'll find that you're
not looking at different lengths of time.

The basic issue is that the size of any large mass of data, whether text, .pdf
files, images, video, or audio clips (or multimedia) is so great that putting
them in and getting them out is VERY SLOW, as you've already found out.

Most of us seem to put the external location of the BLOB into the database and
then use the BLOB's native format with the appropriate application to fetch the BLOB to display or work on.

For example, here we do a LOT of work with images, some of which are derived
from vector drawings. We put the vector drawings, which are relatively small,
i.e., nothing more than 1MB for most of them, into the databases, but never the
images, which are typically around 25MB after they're rendered. In the
tradition of belt and suspenders for the image storage, we have the images in
their native format on two RAID-5 arrays on mirrored servers where they're accessed by
pointers in the databases. The pointers cause the image processing software to
open with the image that's pointed to if the software is not open already. If
the software is already open, the pointers cause additional windows to open with
each additional image. (This is custom software, BTW, and not available for any kind of distribution.)

HTH.

virginia