首頁  >  文章  >  web前端  >  JavaScript實作的記憶體資料庫LokiJS介紹與入門實例_javascript技巧

JavaScript實作的記憶體資料庫LokiJS介紹與入門實例_javascript技巧

WBOY
WBOY原創
2016-05-16 16:31:062057瀏覽

LokiJS是一個記憶體資料庫,將效能考量放在第一位。
LokiJS支援索引和更快的文件訪問,執行效能非常好(近50萬OPS/秒)。其內建DynamicView類別可用於資料子集的索引,甚至取得更快的效能。

*閱讀這篇文章來看看LokiJS的表現表現。

LokiJS支援collections(資料集),跟MongoDB的很像,並且以JSON格式將資料儲存到磁碟,所以你的資料是可移植的。

LokiJS即可運作在Node.js端和瀏覽器端。

JavaScript是一種簡單易學,通用的語言,所以在javascript資料庫開發非常很容易且非常有效率。如果你的MongoDB還沒有退休,在下面這些情況,您可能會發現LokiJS是更理想的解決方案:

1.行動應用-特別是HTML應用。 (Cordova, Phonegap)
2.Node.js內建的為小到中型應用設計的資料儲存
3.內建在桌面中的應用(Node Webkit)

LokiJS正在支援獨立伺服器,可使用http/tcp客戶端存取。

選擇你最喜歡的範式

LokiJS的功能完全利用了JavaScript的力量。
如果函數式程式設計是您的首選風格,那麼你肯定會喜歡使用視圖來查詢資料。
您也可以使用您偏好的MongoDB的shell來查詢文字物件。

快速入門

安裝

LokiJS 可在npm和bower中安裝. 運行:

複製程式碼 程式碼如下:

npm install lokijs


複製程式碼 程式碼如下:

bower install lokijs

使用

建立資料庫:

複製程式碼 程式碼如下:

var db = new loki('loki.json')

傳入你需要保存資料的JSON檔

建立資料集:

複製程式碼 程式碼如下:

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       sum = array[i];
    }
    return ( sum / array.length ).toFixed(2);
 });
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn