http://www.perlmonks.org?node_id=805288


in reply to SHA1 sum archival methods

It sounds like overall you want to write your own database. If that is your goal, then do it.

Myself, I would use sqlite DBD::SQLite. It gives you a database with indexes, but without excessive requirements of setting up a database server. It is well tested, and fast.

It sounds like you are still in the design phase. Why not design the data storage section so it can be changed around? Start now with DBI, using SQLite, and then change it later on if needed. You would then have something to compare against, and have many options.

You say you want to share your final program. Watch out! End users will want to do more with your program than you can dream of. Just because your file archive is only 100,000 files and works great with DB_File, doesn't mean the next user with 100,000,000 files will be happy with your design. They might not mind setting up a full database for storage. Keep your options open.