I'm at the beginning of refreshing/cleaning one of my CPAN modules Chess::PGN::EPD which among other things requires a light weight database for some of it's functions. At the moment I'm using DB_File, but I'm completely open to other possibilities— mostly what I want is to impact my users as little as possible yet maintain functionality.
As a picture of the amount of information involved (not much by today's standards) here is what shows in a dos box:
C:\>dir Volume in drive C has no label. Volume Serial Number is 7C88-9BEB Directory of C:\Users\hsmyers\Perl_Dev\Chess PAUSE\PGN\Chess-PGN-EPD- +0.23\CSV 10/02/2010 09:44 AM <DIR> . 10/02/2010 09:44 AM <DIR> .. 04/02/2002 08:12 PM 196,290 ECO.txt 04/02/2002 07:39 PM 90,173 NIC.txt 04/02/2002 08:12 PM 467,540 Opening.txt 3 File(s) 754,003 bytes 2 Dir(s) 58,299,342,848 bytes free C:\>wc *.txt 2786 11138 196290 ECO.txt 1247 6231 90173 NIC.txt 4661 34709 467540 Opening.txt 8694 52078 754003 total
I'm not particularly hung up on difficulty of interface, but I do want reasonable response time for queries. I'm just beginning to think about the following:
- some sort of tied hash DB
So the question becomes 'What are your suggestions?'
--hsm"Never try to teach a pig to sing...it wastes your time and it annoys the pig."