amonroy has asked for the wisdom of the Perl Monks concerning the following question:

Hi,

Has any of you implemented a searchable multimedia database using Perl.

I would like to implement a database of pictures, videos, sounds and text accesible via Web Services. I was thinking in storing the metadata in MySQL, the files in the File System and use Apache and Perl CGI's as the gateway. Maybe later add mnoGoSearch for better searching capabilities.

Is there anything already made? Any recommendations

Thanks,
-Andrés

Replies are listed 'Best First'.
Re: Multimedia DB. Perl in the backend.
by valdez (Monsignor) on Jun 14, 2004 at 08:40 UTC
      Wow, someone beat to me to promoting my own work. :) Thanks Valerio.

      The latest incarnation of this project is on CPAN as CGI::Uploader.

      It's shaping up, but should be considered 'alpha' now becaus the API is in flux. However, it might provide sufficient inspiration to be a model for your own system.

      I am now in the process of re-writing it to be more generic and less image-specific. I'm mostly done with that now...I just a couple more hours somewhere I can dedicate to that project.

Re: Multimedia DB. Perl in the backend.
by acomjean (Sexton) on Jun 14, 2004 at 17:40 UTC
    What I've done for a simple photo database is create a small file called and .iif (photo1.jpg has a photo1.iif). The file is XML and has a format includes descriptions locations, etc..I like the separate files because its easier to edit them and they will work with my slideshow viewer when I'm done with it.

    I tag my photos on a local webserver, which creates the files. Then When I upload the files to my real live web server I can load the xml .iifs into the database. I actually stuff the whole xml .iif file into one field of the database so its easy to search.

    There are some downsides. Filename changing is hard. Having data in 2 places is ackward and you have to go through all the files to see if there were any changes to the files that aren't in the database. Also the data part of the file isn't usefull when its in a text field.

    This system works for me

Re: Multimedia DB. Perl in the backend.
by paulbort (Hermit) on Jun 14, 2004 at 18:45 UTC
    First, I don't want to start a flamewar, and if you're a principal of MySQL AB, just hit -- and move on.

    If you're interested in searching, you may run into some limitations with MySQL pretty quickly. If you are considering storing (and searching in) large blocks of text ( lyrics, books from Project Gutenberg, etc. then you may want to consider PostgreSQL and tsearch2 instead of MySQL.

    You will probably find it easier to change databases at the beginning of the project than in the middle.

    --
    Spring: Forces, Coiled Again!