Schnelle In-Process-Flat-Datei-Datenbank für node.js, die JSON unterstützt und alle Daten im Speicher zwischengewertet. Alle Daten werden in einer geöffneten Datei mithilfe eines Nur-Append-Algorithmus angehalten, um kompakte Dateigrößen und eine starke Konsistenz zu gewährleisten.
npm install flat-file-db
Übergeben Sie eine Datenbankdatei, die an den Flat-File-DB-Konstruktor verwendet wird, und warten Sie, bis die Datenbank geöffnet wird. Wenn es geöffnet ist, wurden alle Daten in den Speicher geladen.
var flatfile = require ( 'flat-file-db' ) ;
var db = flatfile ( '/tmp/my.db' ) ;
db . on ( 'open' , function ( ) {
db . put ( 'hello' , { world : 1 } ) ; // store some data
console . log ( db . get ( 'hello' ) ) // prints {world:1}
db . put ( 'hey' , { world : 2 } , function ( ) {
// 'hey' is now fully persisted
} ) ;
} ) ;
Wenn Sie nicht darauf warten möchten, dass es geöffnet ist, verwenden Sie flatfile.sync
var db = flatfile . sync ( '/tmp/my.db' ) ;
console . log ( db . get ( 'hello' ) ) ; // prints {world:1}
Wenn Sie mehrere Schreibvorgänge ausgeben, wird der letzte immer gewinnen
for ( var i = 0 ; i < 10 ; i ++ ) {
db . put ( 'test' , { count : i } , ... ) ;
}
console . log ( db . get ( 'test' ) ) ; // {count:9} which also the persisted value of 'test'
db = flatfile(path, opts)
Erstellen Sie eine neue DB -Instanz. Per Standard -FSYNC wird auf alle Puts aufgerufen. So deaktivieren Sie diesen Satz opts.fsync = false
db = flatfile.sync(path, opts)
wie oben, außer dass Sie nicht auf das offene Ereignis warten müssen
db.put(key, val, [cb])
Neue Schlüssel einfügen oder aktualisieren
db.del(key, [cb])
Löschen Sie einen Schlüssel
db.get(key) -> doc
Rufen Sie den Wert eines Schlüssels ab
db.has(key) -> bool
true, wenn DB Schlüssel hat
db.keys() -> list
erhalten alle Schlüssel als Array
db.clear([cb])
löscht die Datenbank aller Werte
db.close()
Schließen Sie die Datenbank
db.on('open')
feuerte, wenn der DB geöffnet und zur Verwendung bereit ist.
db.on('close')
feuerte, wenn die dB vollständig geschlossen ist
db.on('drain')
Alle Puts und Deletes werden auf die Festplatte gespült
MIT