Loki - JavaScript用のインメモリデータベース
Webアプリケーションの中でもデータベースを使いたいという話は良く聞かれます。HTML5であればIndexedDBを使えますが、こちらはキーバリュー型となっています(インデックスを張ることもできますが)。 今回はもっと手軽に使えるWebアプリケーション用のデータベース、Lokiを紹介します。インメモリですが利用できる場面も多そうです。
Lokiの使い方
Lokiのサンドボックスです。JSONでデータを保存して、検索もできるようになっています。
データ構造をビジュアル的に確認することもできます。
Lokiはインメモリなので再読み込みすると消えてしまいます。しかしURLをロードしたタイミングでサーバからのデータをロードすることで簡単に再構築できるデータベースになるでしょう。インメモリなので高速ですし、検索や更新、削除にも対応しています。Webブラウザはもちろん、nodeアプリケーションでも利用できます。
永続化のためにIndexedDBやnodeのファイルシステムに対するアダプタも用意されています。全体的にMongoDBで使うのと似たインタフェースとなっています。
Lokiはnode/JavaScript製のオープンソース・ソフトウェア(MIT License)です。
Lightweight javascript in-memory database: LokiJS Loki Sandbox techfort/LokiJS: javascript embeddable / in-memory database