> I would say a database is nice, but I fear it will be slow, disc access cannot be compared with memory access. It would probably be fast enough once I exactly know what operations I need to perform, but in the experimentation phase I am in now, I want to be able to try out things in a flexible and fast manner.
>   

Well, I generally prefer an ACID relational database, but I gather that 
for raw performance MySQL is good, using the MyISAM driver. Remember 
that in a modern OS, you've got multiple levels of caching going on; 
it's not like the system is going to be going out to disk for every datum.

<URL:http://monstera.man.poznan.pl/wiki/index.php/Mysql_vs_postgres#Benchmark>

> But to be honest, I never tried it, but maybe a nice Ruby class that hides all DB operations necessary would also work adequately.

If it were me, I'd implement a standard interface (API) as two classes, 
one using hashes in RAM, and one using a relational datastore. I'd 
experiment with algorithms using a smaller data set in RAM, then switch 
to the relational database and run the same code on the full data set 
once I was sure it was worthwhile.


mathew