NeDB(Database) - 기본 설명
① NeDB - Javascript 기반 초경량 데이터베이스이며, 메모리 저장 및 파일 저장 기능을 제공합니다.
② IoT 프로젝트 진행 중 RDBMS 운영에 대해서 성능 부담감을 느껴 사용해 본 결과 상당한 성능 향상을 체감했습니다.
③ 현재 프로젝트 진행 중 JSON 데이터 CRUD 운영에 있어서 매우 만족할 만한 결과를 보여주고 있습니다.
④ 라즈베리 파이 등 IoT 관련 프로젝트 사용시 Npm과 같이 사용하면 더욱 편하게 사용하실 수 있습니다.
⑤ 기존 SQL Query를 활용해서 JSON 데이터를 자유롭게 가공 및 파싱할 수 있습니다.
NeDB(Database) - 성능 및 특징
설명- MongoDB 와 같이 대규모 데이터 핸들링을 위해 설계된 것은 아니지만, 하단 성능 설명과 같이 충분히 빠릅니다.- 인덱싱 설정을 통해 더욱 빠른 성능을 기대할 수 있습니다.- NeDB Logger 사용을 통해서 메모리 사용량을 감소 시킬 수 있습니다.
NeDB(Database) - 기본 CRUD 소스 예제 및 실행 화면
설명- RDBMS에서 제공하는 and, or, not 연산자를 제공합니다.- 중요한 정보를 저장할 경우는 기존 RDBMS(MySQL, Oracle 등)을 추천합니다.- 반드시 공식 사이트에 방문해서 API 문서를 학습 후 사용하시길 권장합니다.- NeDB 공식사이트 : https://github.com/louischatriot/nedb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | const express = require('express'); const app = express(); const path = require('path'); //Nedb 로드 const Datastore = require('nedb'); //자동 로드 및 데이터베이스 파일 생성 const db = new Datastore({ filename: 'user.db', autoload: true }); //테스트 데이터 let doc1 = { name: 'world', today: new Date(), fruits: [ 'apple', 'orange', 'pear' ] }; let doc2 = { name: 'hello', today: new Date(), fruits: [ 'apple', 'orange', 'pear' ] }; //레코드 삽입 테스트 (삽입 데이터가 여러개 일 경우 [] 사용) db.insert([doc1,doc2], function (err, newDoc) { //콜백함수 //uuid 는 자동으로 생성된다. console.log('레코드 삽입 결과 :'+ newDoc) }); //레코드 전체 갯수 조회 테스트 db.count({}, function (err, count) { console.log('테이블 레코드 전체 갯수 : '+ count) }); //레코드 조건 검색 테스트 db.find({ name: 'world' }, function (err, docs) { console.log('레코드 검색 결과 : ' + docs) }); //레코드 수정 테스트 db.update({ name: 'world' }, { $set: { name: 'system' } }, function (err, numDocs) { console.log('레코드 수정 반영 수: ' + numDocs) }); //레코드 삭제 테스트 db.remove({ name: 'hello' }, function (err, numDocs) { console.log('레코드 삭제 반영 수: ' + numDocs) }); //서버 실행 app.listen(3000, function () { console.log('Example app listening on port 3000!'); }); | cs |
다음 포스팅에서는 AlaSQL에 대해서 자세하게 설명할 예정입니다.
NeDB 공식사이트 : https://github.com/louischatriot/nedb
NeDB 공식사이트 : https://github.com/louischatriot/nedb
'데이터베이스 > Etc' 카테고리의 다른 글
[Database] OrientDB - 데이터베이스 및 테이블(Class) 생성 방법 (0) | 2017.10.25 |
---|---|
[Database] OrientDB - 설치 및 기본 실행 방법 (0) | 2017.10.24 |