JavaScript 數據庫:LokiJS

jopen 10年前發布 | 26K 次閱讀 LokiJS JavaScript開發

LokiJS是一個內存數據庫,優先考慮性能高于一切* LokiJS支持字段索引來實現更快的文件訪問,性能也相當好(近50萬OPS/ s)。其內置的DynamicView類也能用于數據子集的索引,達到更快的性能。 LokiJS支持集合,很像MongoDB中,并將數據以JSON格式保存到硬盤上(根據會話來恢復狀態),所以你的數據是可移植的。 LokiJS兼容Node.js和瀏覽器。
JavaScript 數據庫:LokiJS

安裝

LokiJS is available on npm and bower. Run:
npm install lokijs
or:
bower install lokijs

用法

創建數據庫:
var db = new loki('loki.json')
Pass the filename where to persist data

創建一個集合:
var children = db.addCollection('children')

插入一個文檔:

children.insert({name:'Sleipnir', legs: 8})
children.insert({name:'Jormungandr', legs: 0})
children.insert({name:'Hel', legs: 2})

獲取文檔:

children.get(1); // returns Sleipnir
children.find( {'name':'Sleipnir'} )
children.find( { legs: { '$gt' : 2 } } )

創建一個動態視圖:

var legs = children.addDynamicView('legs');
legs.applyFind( { legs: { '$gt' : 2 } )
legs.applySimpleSort('legs');
legs.data();

MapReduce:

children.mapReduce( 
  function( obj ){ return obj.legs; } , 
  function( array ) { 
    var sum = 0;
    for (var i=0; i < array.length; i++ ){ 
      sum += array[i];
    }
    return ( sum / array.length ).toFixed(2);
 });

項目主頁:http://www.baiduhome.net/lib/view/home/1415151962262

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!