1 и 3 оба кричат ядро базы данных.
Если количество ваших записей не безумно, и у вас есть только один клиент, использующий эту штуку одновременно, я лично рекомендовал бы sqlite, который работает как с Java, так и с Ruby (также прошел # 5). В противном случае используйте настоящую систему баз данных, такую как MySql (поскольку вы не в стеке Microsoft).