16MB? you mean the max packet per query limit?  If your storing data in
huge/large blob then you are making a big mistake in my opinion and taking
a huge performance hit...  I've got files over 1GB in size  in mysql now..
they went in and out at almost filesystem speed...





On Sun, 14 Dec 2003, Chris Nolan wrote:

> Forgot something in my other reply.
>
> With the NAS - what's to say that MySQL's retrieval and network protocol
> is not more efficient than whatever is running on your NAS boxes?
>
> Conversely, MySQL's current 16 MB per transfer limitation may very well
> not allow it to act in this role at all.
>
> Ah, the wonders of open discussion!
>
> Best regards,
>
> Chris
>
> On Sat, 2003-12-13 at 23:33, Joshua Thomas wrote:
> > > you could very well do that, and frankly that is how alot of websites
> > > work.
> >
> > Yep, including one I run. That site has to generate <img> and <a href> links
> > for visitors, and it seems far easier to return "/pics/imagefoo.jpg" then
> > the image itself and decide how to embed that into the page.
> >
> > > But storing the actual binary file, weither it is
> > > a .jpg or .tar, allows your application/website/whatever to be
> > > independent of your files location on the server.
> >
> > Is this really such a problem? When I migrated the above-mentioned website,
> > I had some minor path issues which resolved with symbolic links.
> >
> > If your path for images changes, make a symlink to simulate where it used to
> > be; or use an UPDATE statement to change the path prefix on the images in
> > the database. If you really want to be clever, use a single-table row for
> > the prefix (/home/foo/myimages) and another table for the actually names
> > (foo.jpg) and just update the prefix when location changes.
> >
> >
> > > This way, when you
> > > select a specific row,  you will have the binary...
> > > regardless of path
> > > locations.  It also makes data organization cleaner as well.
> > > If you decide
> > > you don't need a binary anymore and delete it from the
> > > database, it will
> > > be gone.
> >
> > A cron job which  does a SELECT imagename FROM imagetable, then compares to
> > the directory, and removes the non-exisiting images, would also work. Or you
> > could write a database trigger to call out and delete the image when the row
> > was deleted.
> >
> > I do admit it's less nice than being able to just drop the image from the
> > table, but you also lose the ability to manipulate the content on the
> > filesystem level. For example, in your .tar example, how are you going to
> > view the contents of one of those .tar files? You'll have to SELECT it out
> > of the database, write it somewhere, then view it; if you want to update it,
> > you have to SELECT it out, edit it, and UPDATE the table...
> >
> > > where as just storing the path will not, which can
> > > get pretty
> > > ugly.  I hope that helps....
> >
> > Works like a charm for us. The downsides I see to storing in the database
> > are:
> >
> > * More overhead reading and writing from the database
> > * Much much larger database sizes. For me it's easy to backup and restore my
> > database. If my 2GB+ of images were IN the database, well, that would be a
> > different story.
> > * I can schedule backups of the database, and filesystem content, at
> > different times; this reduces the impact if something goes wrong during a
> > backup.
> >
> > Of course, I do see the advantages of embedding the images, tar files, etc
> > into the database; I just think it has enough issues of it's own that I
> > would caution against doing it.
> >
> > Here's another idea to chew on: My full-time employer runs over a thousand
> > sites for newspapers across the country. We have image names embedded into
> > the database, not the data. Why? Well, we store images on NAS (Network
> > Attached Storage) devices. We have several of them, and use custom scripts
> > to keep the content on them the same. When we have a failure on one, we
> > simply update a piece of code which defines which server to read from.
> >
> > Now, if we put those images into the database, we'd have a few issue:
> >
> > * Our database size would grow far, far beyond the current size, which is
> > over 60GB.
> >
> > * Restores to the database would be much slower, and in our case, if we have
> > a failure, we'd rather get everything up fast and then fix images then wait
> > longer and get both. Time == money to our customers.
> >
> > * Instead of returning the filename to the application software (ASP and CF
> > in our case), you'd return the whole image, and that's going to be a huge
> > drain on server CPU. We'd need something like 2x the CPU power we have now,
> > with many more high-speed disks. (and 15K RPM isn't cheap!)
> >
> > * Replication from the publisher to the subscribers would be much more
> > intensive and require more bandwith and CPU power, again driving our
> > hardware needs up. You could argue that we'd loose the need for the NASes. I
> > haven't done a comparison on how the pricing would work.
> >
> >
> > That's my .02$ and a then some.
> >
> > Joshua Thomas
> >
> >
> > >
> > > dan
> > >
> > > Joshua Thomas wrote:
> > >
> > > >Can I ask why?
> > > >
> > > >Why not define a char(50) (or whatever size) with the
> > > relative or complete
> > > >path to the .tar file? Storing it in your database would
> > > create huge row
> > > >sizes.
> > > >
> > > >Joshua Thomas
> > > >Network Operations Engineer
> > > >PowerOne Media, Inc.
> > > >tel: 518-687-6143
> > > >[EMAIL PROTECTED]
> > > >
> > > >---
> > > >In theory there is no difference between theory and
> > > practice. In practice
> > > >there is.
> > > >- Yogi Berra
> > > >---
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >>-----Original Message-----
> > > >>From: [EMAIL PROTECTED]
> > [mailto:[EMAIL PROTECTED]
> > >>Sent: Friday, December 12, 2003 3:55 PM
> > >>To: [EMAIL PROTECTED]
> > >>Subject: storing .tar files in mysql
> > >>
> > >>
> > >>Hi all,
> > >> I am new to mysql and I was wondering if someone could point
> > >>me in the
> > >>right direction on how to store .tar and .tar.gz (bzip2)
> > >>files inside a
> > >>mysql database. I have googled to try and find some help
> > >>there but most
> > >>of the hits come back with binary image files. I have gone
> > >>thru the mysql
> > >>tutorial and I can create the database and tables, but I can't seem to
> > >>insert the .tar file properly...Any pointers would be appreicated...
> > >>
> > >>Thanks,
> > >>Jake
> > >>
> > >>--
> > >>MySQL General Mailing List
> > >>For list archives: http://lists.mysql.com/mysql
> > >>To unsubscribe:
> > >>
> > >>
> > >http://lists.mysql.com/[EMAIL PROTECTED]
> > >
> > >
> > >
> >
>
>
> --
> MySQL General Mailing List
> For list archives: http://lists.mysql.com/mysql
> To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]
>

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to