PouchDB – サーバサイドとの同期にも対応したクライアントサイドデータベース
Webアプリケーションと言えばデータベースが肝です。しかし一般的にデータベースと言えばサーバサイドにあるもので、それはオフラインでは使えません。そのための解決手段としてlocalStrageもありますが、KVSではまた使い勝手が変わってきます。IndexedDBを使うのがベストですが、そうそう簡単ではないでしょう。 そこで使ってみたいのがPouchDBです。PouchDBはクライアントサイドのJavaScriptで動作するデータベースで、サーバとの同期機能が備わっています。
PouchDBの使い方
PouchDBを使う簡易的なコードは以下のようになります。
var db = new PouchDB('dbname');
db.put({
_id: 'dave@gmail.com',
name: 'David',
age: 67
});
db.changes().on('change', function() {
console.log('Ch-Ch-Changes');
});
db.replicate.to('http://example.com/mydb');
ローカルのDBを開いてデータを保存しつつ、それをサーバサイドのDBに同期します。データベースはCouchDBを想定しています。テキストだけでなく、画像などのファイルも保存できます。PouchDBをメインとしつつ、定期的にサーバサイドと同期するサービスなんてのも作れてしまいそうです。
PouchDBはJavaScript製、Apache License 2.0のオープンソース・ソフトウェアです。
PouchDB, the JavaScript Database that Syncs! pouchdb/pouchdb