ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript で実装されたメモリ内データベースである LokiJS の概要と、examples_javascript スキルの入門

JavaScript で実装されたメモリ内データベースである LokiJS の概要と、examples_javascript スキルの入門

WBOY
WBOYオリジナル
2016-05-16 16:31:062077ブラウズ

LokiJS は、パフォーマンスを最優先に考慮したインメモリ データベースです。
LokiJS はインデックス作成と高速なドキュメント アクセスをサポートしており、実行パフォーマンスは非常に優れています (約 500,000 OPS/秒)。組み込みの DynamicView クラスを使用すると、データのサブセットにインデックスを付けて、パフォーマンスをさらに高速化できます。

*LokiJS のパフォーマンスについては、この記事をお読みください。

LokiJS は、MongoDB と同様にコレクション (データセット) をサポートし、データを JSON 形式でディスクに保存するため、データは移植可能です。

LokiJS は Node.js 側とブラウザ側で実行できます。

JavaScript は学習しやすいユニバーサル言語であるため、JavaScript でのデータベース開発は非常に簡単で効率的です。 MongoDB がまだ廃止されていない場合、次の状況では LokiJS がより理想的なソリューションであることがわかります:

1. モバイル アプリケーション - 特に HTML アプリケーション。 (コルドバ、フォンギャップ)
2. 小規模から中規模のアプリケーション向けに設計された Node.js 組み込みデータ ストレージ
3. デスクトップに組み込まれたアプリケーション (Node Webkit)

LokiJS は、http/tcp クライアントを使用してアクセスできるスタンドアロン サーバーをサポートしています。

お気に入りのパラダイムを選択してください

LokiJS の機能は JavaScript の力を最大限に活用しています。
関数型プログラミングが好みのスタイルであれば、ビューを使用してデータをクエリすることを楽しむことは間違いありません。
好みの MongoDB シェルを使用してテキスト オブジェクトをクエリすることもできます。

クイックスタート

インストール

LokiJS は npm と bower にインストールできます:
を実行します。

コードをコピー コードは次のとおりです:

npm install lokijs

または
コードをコピー コードは次のとおりです:

bower インストール lokijs

を使用します

データベースの作成:

コードをコピー コードは次のとおりです:

var db = 新しい loki('loki.json')

データを保存するために必要な JSON ファイルを入力してください

データセットの作成:

コードをコピーします コードは次のとおりです:

var Children = db.addCollection('children')

ドキュメントを挿入:

コードをコピーします コードは次のとおりです:

Children.insert({name:'Sleipnir', 脚: 8})
Children.insert({名前:'ヨルムンガンド', 足: 0})
Children.insert({name:'Hel'、脚: 2})

ドキュメントの取得:

コードをコピーします コードは次のとおりです:

Children.get(1); // Sleipnir
を返します。 Children.find( {'name':'Sleipnir'} )
Children.find( { 脚: { '$gt' : 2 } } )

動的ビューの作成:

コードをコピーします コードは次のとおりです:

var 脚 = Children.addDynamicView('脚');
Legs.applyFind( { 脚: { '$gt' : 2 } )
Legs.applySimpleSort('脚');
脚.data();

MapReduce (データ集約):

コードをコピーします コードは次のとおりです:

Children.mapReduce(
function( obj ){ return obj.legs } ,
関数(配列) {
var sum = 0;
for (var i=0; i 合計 = 配列[i];
}
Return (sum / array.length).toFixed(2);
});
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。