Pregunta

Estoy buscando una solución para agregar persistencia a mi aplicación de código nativo. Debe ser simple (sin SQL), rápido y más confiable.

El mejor enfoque que se me ocurra es usar archivos mapeados de memoria. Es tan simple y rápido como puede ser: simplemente almacene los valores en matrices de datos simples en "memoria". Sin embargo, no creo que sea muy confiable: una falla de energía podría dejar la base de datos en un estado inconsistente o corrupto. Ser capaz de sincronizar transaccionalmente un grupo de archivos mapeados de memoria al disco resolvería esto, pero no creo que sea posible. Además, a menos que el sistema de archivos admita las instantáneas o la clonación de vacas (por ejemplo, Brtfs), las copias de seguridad significarían tener que detener la aplicación por completo mientras se copian los archivos.

¿Alguien tiene mejores ideas?

Otros consejos

Su lista de requisitos suena como Redis. Ver http://redis.io/ para más.

Otra posibilidad es Cassandra. Ver http://cassandra.apache.org/ Para más información sobre eso.

RockSDB o LevelDB son otras excelentes opciones.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top