Base de datos independiente no-sql en java

Estoy buscando un cliente de base de datos en java. Debe tener estas características-

Independiente : significa que la base de datos se ejecuta desde un archivo jar. No se requiere ningún recurso adicional. No tengo que conectarme a ningún cliente de base de datos que ya se esté ejecutando como un servicio en mi PC. Puede que tenga que indicar un nombre de archivo o directorio para almacenar datos o recuperarlos.

NoSQL : quiero poder almacenar objetos directamente en él, buscar por valor de cualquier campo de mi objeto, actualizar y eliminar registros. No se requiere compatibilidad con consultas similares a SQL. No importa si tiene apoyo para ello o no.

LocalDB : estoy buscando algo similar a esto en Java.

¿Alguien sabe si existe tal servicio de base de datos para Java?

Para almacenar objetos Java, puede estar más interesado en "bases de datos de objetos" que en "bases de datos NoSQL".

Respuestas (1)

Ser único

Lo que estaba buscando se llama Embedded Database . Según wikipedia :

Un sistema de base de datos incorporado es un sistema de administración de base de datos (DBMS) que está estrechamente integrado con un software de aplicación que requiere acceso a los datos almacenados, de modo que el sistema de base de datos está "oculto" para el usuario final de la aplicación y requiere poco o ningún mantenimiento continuo.

También encontré una buena definición aquí :

Hay dos definiciones de bases de datos incrustadas que he visto:

  1. Base de datos integrada como en un sistema de base de datos especialmente diseñado para el espacio "integrado" (dispositivos móviles, etc.). Esto significa que funcionan razonablemente en entornos reducidos (en cuanto a memoria/CPU).
  2. Base de datos incrustada como en las bases de datos que no necesitan un servidor y están incrustadas en una aplicación (como SQLite). Esto significa que todo es administrado por la aplicación.

sin sql

El siguiente paso es encontrar una buena base de datos incrustada sin SQL en Java. Aquí , aquí y aquí se proporciona una lista bastante larga de bases de datos integradas.

Después de mucha investigación sobre la documentación, la confiabilidad y el rendimiento de diferentes bases de datos, descubrí que Berkeley DB es la mejor ahora.

JetBrains Xodus también parece muy prometedor.