JSON을 지원하고 메모리의 모든 데이터를 캐시하는 node.js 용 빠른 프로세스 플랫 파일 데이터베이스. 모든 데이터는 컴팩트 한 파일 크기와 강력한 일관성을 보장하는 부록 전용 알고리즘을 사용하여 열린 파일에 지속됩니다.
npm install flat-file-db
플랫 파일 -DB 생성자에게 사용할 데이터베이스 파일을 전달하고 데이터베이스가 열릴 때까지 기다립니다. 그것이 열리면 모든 데이터가 메모리에로드되었습니다.
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
} ) ;
} ) ;
flatfile.sync
사용을 열 때까지 기다리지 않으려면
var db = flatfile . sync ( '/tmp/my.db' ) ;
console . log ( db . get ( 'hello' ) ) ; // prints {world:1}
여러분이 다수의 글을 발행하면 마지막 것이 항상 이길 것입니다.
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)
새 DB 인스턴스를 만듭니다. 기본값 당 fsync는 모든 풋에서 호출됩니다. 이 세트를 비활성화하려면 opts.fsync = false
db = flatfile.sync(path, opts)
열린 이벤트를 기다릴 필요가없는 경우를 제외하고는 위와 동일합니다.
db.put(key, val, [cb])
새 키를 삽입하거나 업데이트합니다
db.del(key, [cb])
키를 삭제합니다
db.get(key) -> doc
키의 값을 가져옵니다
db.has(key) -> bool
db.keys() -> list
모든 키를 배열로 가져옵니다
db.clear([cb])
모든 값의 데이터베이스를 지 웁니다
db.close()
데이터베이스를 닫습니다
DB가 열려 있고 사용할 준비가되면 db.on('open')
발사되었습니다.
DB가 완전히 닫히면 db.on('close')
이 발사되었습니다
db.on('drain')
모든 퍼팅 및 삭제는 디스크로 플러시됩니다
MIT