вы уже взглянули на db40, его объектную базу данных с открытым исходным кодом, разработанную для того, что вы делаете.
http://www.db4o.com/
Он доступен для Java & .Net и имеет множество примеров, ZERO config (новая база данных (fileName)). Если db4o не может идти в ногу с частотой вставки (что маловероятно, но вы никогда не знаете), вы можете сохранить кэш в памяти для объектов, которые нужно вставить (т. Е. Кэш в памяти, если запись в db идет медленно, а элементы удаляются из стека при успешной записи). ).
Я использовал VistaDB (платную базу данных файлов .net), что хорошо, не уверен насчет высокого уровня вставки, но если вы кешируете память в стек, я думаю, вы могли бы поэкспериментировать с разными поставщиками баз данных, без необходимости переделывать много код.
Другой альтернативой может стать решение для ведения журнала, такое как log4net, просто записывающее файлы, но, возможно, заслуживающее внимания.