![]() |
Apache CouchDB is a document-oriented database that can be queried and indexed in a MapReduce fashion using JavaScript. |
28日(米国時間)、Chris Anderson: CouchDB: Relaxing Offline JavaScriptにおいて開発者であるChris Anderson氏がGoogle TechTalksでCouchDBについて発表した様子が動画で公開された。CouchDBがどういった背景のもと開発され、どういった特徴をもっているのかがまとまっている。
CouchDBはErlangで実装されたドキュメントモデルのデータベース。従来のRDBMSとは設計背景も思想も異なっており、ドキュメントをよく使うWebアプリケーションでの利用に向いている。操作はすべてHTTPを経由してRESTful APIでおこなわれ、RDBMSと違ってスキーマは存在していない。クエリはMap Reduceをベースにしており、大規模分散並列処理への高いスケーラビリティを持っているという特徴がある。データベースでもあるが、HTTPサーバとしての側面や、プラットフォームとしての側面も強い。オフライン対応にも適している。
CouchDBに追加するデータはJSONになっている。これがBツリーに整理されながらデータとして追加されていく。常に整列された状態が保持され、挿入や削除、検索が高速に実施できる仕組みになっている。従来のRDBMSのようにロックは実装されておらず、スナップショットをマージする方法を採用している。スキーマが必要ないことから、後から構造を変更することが容易で、取り出したデータもJSON形式であるため理解しやすく簡単に扱えるという特徴がある。ただし、クエリがMap Reduceに基づいているあたりは、既存のRDBMSの手法になれている場合には慣れが必要になる。
Chris Anderson: CouchDB: Relaxing Offline JavaScriptではCouchDBを「ローカルウェブプラットフォーム」だと紹介し、ローカルでサーバとして動作することでレイテンシを減らしWebアプリケーションに快適なオフライン機能を提供すると説明がある。またCouchDBのスローガンとして「Relax」という言葉をとりあげ、自分にとっては簡単にそしてリーズナブルに扱えることがリラックスであり、ユーザにとっては安定して信頼性の高いデータベースとして活用できるというリラックスだという説明がある。
また、CouchDBをJavaScriptで実装し直してすべてWebブラウザで動作するようにしたBrowserCouchの説明があったり、CouchDBの活用例として現在開発が進められているUbuntu Karmic Koalaでの利用例が紹介されている。CouchDBをサーバモードとしてのみならず、クライアントモードやP2Pモードで動作させることでプラットフォームとして興味深い動作を実現できる様子が紹介されている。
| 活発化するJavaScriptデータベース - 高パフォーマンスのJavaScriptDBが人気 [2009/4/23] |
| BrowserCouch、CouchDBのJavaScript実装 ブラウザに適したDB API [2009/4/21] |
| トマトを食べれば痩せられる!? -京大ら、新発見の成分で肥満改善効果を実証 [21:00 2/10] |
| JAXA、液体シリコン中に残存する共有結合を観察 -大口径ウェハの実現に期待 [20:11 2/10] |
| NEDOなど、熱膨張が小さな樹脂複合材料ペレットの量産化に成功 [19:22 2/10] |
| 理研、一般顕微鏡を蛍光顕微鏡に強化できるアダプタを試作して性能を実証 [19:15 2/10] |
| 天の川のブラックホールが小惑星を飲み込んでいる - NASAが発表 [18:08 2/10] |
|
9ストーリーズ ~バレンタインのエピソード~ [08:05 2/11] キャリア |
|
RX-7改フェラーリ登場!/マジックRX-7XX 【大阪オートメッセ2012】 [08:04 2/11] キャリア |
|
【連載】鉄道トリビア 第137回 山手線と京浜東北線から●●●が消えた!? [08:00 2/11] ライフ |
|
JRグループ、「周遊きっぷ」を見直し - 19の周遊ゾーンが3/31で販売終了に [07:30 2/11] ライフ |
|
「青春18きっぷ」春季用は2/20発売 - 夏季用・冬季用の発売は現時点で未定 [07:30 2/11] ライフ |