マジセミドライブ

ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。

OSS情報

2020.01.01

【OSS情報アーカイブ】Apache CouchDB

【OSS情報アーカイブ】Apache CouchDB

※当記事に記載されている情報は、古くなっている場合があります。オフィシャルサイトで最新情報をご確認ください。

「Apache CouchDB」とは

基本情報

概要

Apache CouchDB(アパッチカウチデービー)とは、ドキュメント指向データベースです。「RESTful HTTP/JSON API」「スキーマレス(NoSQL)」「分散型」「スケーラブル」「耐障害性」などの特徴があります。

基本説明

Apache CouchDBは、ドキュメントをデータとして管理し、Web公開に最適化されたデータベース管理システムです。関数型言語「Erlang」で実装されています。

CouchDBコミュニティのWebサイトなどには「Relax(リラックス)」という言葉がよく登場します。「データベースの設計/構築/操作について極力リラックスできるデータベース環境を提供する」というコンセプトです。

経緯

・2007年、オープンソース公開
・2009年、Apache Software Foundationの正式なプロジェクトとして最初のリリース

ポイント

・ドキュメントストレージ
・ACIDセマンティクス
・MapReduceフレームワーク(JavaScriptビュー定義)によるクエリ/ビュー/インデックス
・分散アーキテクチャ/レプリケーション
・REST API
・結果整合性
・優れた管理画面「Futon」が付属
・オールインワン環境「JavaScriptでWebアプリまで作れる」「Webサーバも内蔵」
・JSONサーバとしてネットに直接公開しJavaScriptから利用できる
・効率的/堅牢なディスクレイアウト

主な特徴

「ドキュメント」指向

CouchDBは、すべてのデータをJSONフォーマットで表現される「ドキュメント」として扱います。フィールドには、文字列/数値/日付/順序付きリスト/連想配列などを格納できます。

CouchDBデータベースは、「ドキュメントのフラットなコレクション」として構成されます。各ドキュメントは一意のIDで識別されます。

スキーマレス

CouchDBは、フラットなアドレス空間を持ち、アドホックでスキーマ不要のデータベースです。「新しいドキュメントタイプ」を「古いドキュメントタイプ」と混在させて管理できます。

JavaScriptビューモデル

CouchDBは、JavaScriptを使って記述するビューモデルを採用しています。

ビューは、データベースドキュメントを対象とした集約/結合/レポート作成時に動的に生成されます。元のドキュメントは変更されないため、ビューを使用して、タイプが異なるドキュメントを扱えます。

分散データベース

CouchDBは、ピアベースの分散データベースシステムです。複数のCouchDBホストが、同一データベースの「レプリカ・コピー」をそれぞれ独自に保持します。

アプリケーションはこれらのホストに対して、完全なデータベース機能(クエリ/追加/編集/削除)を利用できます。

レプリケーションプロセス

CouchDBのレプリケーションプロセスには、衝突検出/管理機能が組み込まれており、高速インクリメンタルレプリケーションが可能です。

前回のレプリケーション以降に変更されたドキュメント(個々のフィールド)のみをコピーします。特別な準備を必要とせずに、分散更新/レプリケーションを利用できます。

各CouchDBホストは、任意のタイミングでレプリケーションを実行できます。

RESTful JSON API

データベースとのすべての通信にHTTPを使用し「RESTful API」を提供します。

同様製品

同様な機能を提供する製品として、次のようなものがあります。

オープンソース製品:「MongoDB」など。

導入事例

オフィシャルサイトで採用事例が紹介されています。
→CouchDB In The Wild

ライセンス情報

Apache CouchDBのライセンスは「Apache License 2.0」です。このライセンスに従うことを条件として、ソースコードの改変と公開が許可されています。

ダウンロード

ダウンロードページ

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

この記事のタグ一覧

おすすめの記事

【デジタル寺田の3分用語解説】「 経済産業省:コンテンツ制作のための 生成AI 利活用ガイドブック 」とは?📘

デジタル寺田の3分用語解説

2024.11.18

【デジタル寺田の3分用語解説】「 経済産業省:コンテンツ制作のための 生成AI 利活用ガイドブック 」とは?📘

経済産業省による「 生成AI 利活用ガイドブック 」は、企業やクリエイター向けに、安心して「生成AI」を利用するための、「指針」「実例」「注意点」を明示しています。「業務効率化」や「新しいアイデア創出」の支援を目的としています。

【デジタル寺田の3分用語解説】「 VMWare 問題 」とは?🖥️

デジタル寺田の3分用語解説

2024.11.18

【デジタル寺田の3分用語解説】「 VMWare 問題 」とは?🖥️

「 VMWare 」の仮想化技術は、「ITインフラの効率化」に大きく貢献する技術ですが、Broadcomによる買収後のライセンス変更が大きな問題として注目されています。柔軟で慎重な契約見直しが今後の鍵となります。

【デジタル寺田の3分用語解説】「 2029年問題 」とは?📅

デジタル寺田の3分用語解説

2024.11.18

【デジタル寺田の3分用語解説】「 2029年問題 」とは?📅

「 2029年問題 」とは、高校でのデジタル教育改革により、新入社員と既存社員間でデジタルスキル格差が拡大する懸念を指します。企業は早急に対応が求められています。この格差は、企業競争力や業務効率にも、影響を及ぼす可能性があります。