Hi all.

This confirms what I suspected.

The hash algrithm:

I have a directory structure: dirs 0 - f, and within each of these, the same
dir structure 0 - f.
When an image gets uploaded into the library, do an md5sum of the file, take
the first 2 chars of that hash
and there's your path. e.g
$PICDBPATH.'/a/7/a7b8be10b0e69fe3decaa538f1febe84'

I'm not sure what the mathematical randomness of this is, but I'm sure it's
pretty random, and the chances
of collision should be virtually null, the only time you should overwrite a
file is if you upload the exact same file(?)
Is there a better way of doing this?

Cheers

-Scott

> -----Original Message-----
> From: Justin French [mailto:[EMAIL PROTECTED]]
> Sent: 21 August 2002 03:25
> To: [EMAIL PROTECTED]; PHP General
> Subject: Re: [PHP] Image library
>
>
> on 21/08/02 9:45 PM, Scott Houseman ([EMAIL PROTECTED]) wrote:
>
>
> > Which way would be the most efficient/fastest to access images
> from an image
> > library.
> > A) Store image files in a hash directory structure AND storing
> each file's
> > information in a mysql table
> > OR
> > B) Storing image information in mysql table AND storing the
> image in a BLOB
> > field in that table.
>
> >From all accounts I've read on this list, a database is not
> usually faster
> than a filesystem.  And for large amounts of files, like 1000's,
> a hash will
> speed it up more.
>
>
> > The way I see it, considerations to be taken into acount:
> > - Is it quicker/better to retrieve image from table & then stream out to
> > browser OR simply direct the browser to the file?
> > i.e <IMG SRC="/imagelib/image.php?iImageID=10"> OR <IMG
> > SRC="/imagelib/5/f/10">
> > - Will a database OR filesystem be more scalable i.e. which wil perform
> > better when there are 10000 images in the libary?
>
> Filesystem should be quicker.  You need to think about how you hash the
> files up for the most even spread of files in each directory I guess.
>
>
> Justin
>
>


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to