nedb - Base de datos de Javascript ligera para usar en Node.js
nedb javascript (11)
Eche un vistazo a http://www.tingodb.com . Creo que hace lo que estás buscando. Además, es totalmente compatible con MongoDB API. Esto reduce los riesgos de implementación y le brinda la opción de cambiar a una solución pesada a medida que su aplicación crece.
Alguien sabe de una base de datos liviana pero duradera, escrita en Javascript, que se puede usar con Node.js.
No quiero el "peso" de (grandes) soluciones como Mongo o Couch. Una base de datos JS simple en la memoria con la capacidad de persistir en el disco como un archivo sería suficiente. Solo lo usaría para almacenar pequeñas cantidades de datos.
Requisitos:
- puede ejecutarse en proceso con una aplicación de servidor node.js
- puede guardar toda la base de datos en el disco y recuperarse después de una falla
- SIN necesidad de escrituras atómicas o soportes de transacciones
- consultas rápidas y clasificación sería bueno
- solo necesita admitir pequeños volúmenes de datos, hasta 1 MB en total
Me encontré con TAFFY db hasta el momento, pero realmente no parece optimizado para su uso en Node.js. ¿Alguien ha visto lo que estoy buscando?
Gracias
Escribí jaguarDb para manejar algunas de las cosas que mencionas ya que a veces también necesito una "pequeña" base de datos para proyectos de demostración o prueba y no quiero depender de mongoDB u otra base de datos real.
LevelUP tiene como objetivo exponer las características de LevelDB de una manera Node.js-friendly.
También puedes mirar UnQLite. con un node.js binding node-unqlite
Pruebe nStore, parece una buena clave / valor de peso ligero db embebido para el nodo. Ver https://github.com/creationix/nstore
Solo estoy familiarizado con Mongo y Couch, pero también hay uno llamado Persistence .
Tal vez deberías probar LocallyDB , es fácil de usar y liviano además del sistema de selección avanzada similar a la expresión condicional de JavaScript ...
Tenía los mismos requisitos que usted pero no pude encontrar una base de datos adecuada. nStore fue prometedor, pero la API no fue lo suficientemente completa ni muy coherente.
Es por eso que hice NeDB , que es una base de datos incrustada sin dependencia para proyectos Node.js. Puedes usarlo con un simple require()
, es persistente y su API es el subconjunto más comúnmente utilizado de la muy conocida API MongoDB.
Tuve problemas con SQLite3, nStore y Alfred.
Lo que funciona para mí es un node-dirty :
path = "#{__dirname}/data/messages.json"
messages = db path
message = ''text'': ''Lorem ipsum dolor sit...''
messages.on "load", ->
messages.set ''my-unique-key'', message, ->
console.log messages.get(''my-unique-key'').text
messages.forEach (key, value) ->
console.log "Found key: #{key}, val: %j", value
messages.on "drain", ->
console.log "Saved to #{path}"
UeberDB proporciona abstracción para varias bases de datos
Lokijs : un almacén de datos orientado a documentos, rápido y en memoria para node.js, browser y cordova.
- Datastore Javascript en memoria con persistencia
- In-Browser NoSQL db con sincronización y persistencia
- una tienda de estilo Redis una npm instalar lejos
- Persistenteble NoSQL db para Cordova
- DNS noSQL incrustado con Persistence para node-webkit
LokiJS es la solución ideal:
- Aplicaciones móviles, especialmente basadas en HTML5 (Cordova, Phonegap, etc.)
- Node.js embedded datastore para aplicaciones pequeñas a medianas
- Integrado en la aplicación de escritorio con Node Webkit
NeDB parece ser lo que estás buscando. Desde la propaganda:
Base de datos persistente incrustada para Node.js, escrita en Javascript, sin dependencia (excepto módulos npm por supuesto). Puede pensarlo como un SQLite para proyectos Node.js, que se puede usar con una simple declaración de requerimiento. La API es un subconjunto de MongoDB. Puede usarlo como un almacén de datos persistente o solo en memoria.