[Dbix-class] Write only + No-read/retrieve on a column

Ashley Pond V apv at sedition.com
Sat Dec 29 19:02:46 GMT 2007


On Dec 29, 2007, at 12:47 AM, Peter Edwards wrote:
> I'd think twice about mastering your images in the database.
> It depends on data volumes and number of simultaneous accesses, but  
> the
> easiest is to keep them in a directory hierarchy under Unix with a  
> normal
> backup to protect them, running an overnight resynchronization job  
> to check
> that the database index matches the file system.
> It's faster to have a spread of files across directories, so take  
> an MD5 of
> the record id and split on every 3 characters to give the directory  
> path:
> my $imageid = 12345;
> my $fullid = sprintf("%012i", $imageid);
> my $md5 = md5_hex($fullid);
> my @dirs = ($md5 =~ /^(...)(...)(...)/);
> my $file = Path::Class::File->new(@dirs, $fullid);
> (thanks to mst for that idea)

I like that. I've done similar stuff for archiving images outside a  
DB before; instead indexing them alphabetically by groups. Don't know  
what's enamored me of the DB back-up plan. I think I'm off the kick  
though.

I was going to organize directories by user-id but the md5 idea is  
better if the store gets huge.

Thanks!
-Ashley



More information about the DBIx-Class mailing list