Re: Image library

From: Date: Wed, 21 Aug 2002 14:30:42 +0000
Subject: Re: Image library
References: 1 2 3  Groups: php.general 
Request: Send a blank email to php-general+get-113468@lists.php.net to get a copy of this message
Scott (confirming Bogdan), Libraries of all types have had this concern for years - even though books are uniquely identified by ISBN, that is still not good enough for library purposes (eg multiple copies of a single title). So they, exactly as Bogdan suggests, use an "Accession" number sequence - which can be implemented very neatly in MySQL (from PHP) as an AUTO_INCREMENT field. Regards, =dn > I've seen this kind of random approach several times and I keep > wondering why not counting the files instead. Yes, it may take a little > longer when uploading but I personally think the safety of the approach > is worth the insignificant speed sacrifice. > > Bogdan > > Scott Houseman wrote: > > 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:justin@indent.com.au] > >>Sent: 21 August 2002 03:25 > >>To: ScottH@jamwarehouse.com; PHP General > >>Subject: Re: [PHP] Image library > >> > >> > >>on 21/08/02 9:45 PM, Scott Houseman (ScottH@JamWarehouse.com) 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 > >

« previous php.general (#113468) next »