第34章 MongoDB
プロデューサーとコンシューマーの両方がサポート対象
ウィキペディアによると、NoSQL は、リレーショナルデータベースと ACID 保証の長い歴史を破る、大まかに定義された非リレーショナルデータストアのクラスを促進する運動です。 ここ数年、NoSQL ソリューションの人気が高まっており、Facebook、LinkedIn、Twitter などの非常によく使用される主要なサイトやサービスは、スケーラビリティとアジリティを実現するために NoSQL ソリューションを広く使用することが知られています。
基本的に、NoSQL ソリューションは従来の RDBMS (リレーショナルデータベース管理システム) とは異なり、SQL をクエリー言語として使用せず、一般に ACID のようなトランザクション動作やリレーショナルデータを提供しません。代わりに、それらは柔軟なデータ構造とスキーマ (つまり、固定スキーマを持つデータベーステーブルの従来の概念が削除されたもの)、コモディティハードウェアでの極端なスケーラビリティ、および超高速処理の概念に基づいて設計されています。
MongoDB は非常に人気のある NoSQL ソリューションであり、camel-mongodb コンポーネントは Camel を MongoDB と統合し、MongoDB コレクションをプロデューサー (コレクションに対して操作を実行する) とコンシューマー (MongoDB コレクションからドキュメントを消費する) の両方として操作できるようにします。
MongoDB は、ドキュメント (オフィスドキュメントではなく、JSON/BSON で定義された階層データ) とコレクションの概念を中心にデプロイメントしています。このコンポーネントページは、それらに精通していることを前提としています。それ以外の場合は、http://www.mongodb.org/ にアクセスしてください。
MongoDB Camel コンポーネントは、Mongo Java Driver 4.x を使用します。
Maven ユーザーは、このコンポーネントの pom.xml
に以下の依存関係を追加する必要があります。
<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-mongodb</artifactId> <version>{CamelSBVersion}</version> <!-- use the same version as your Camel core version --> </dependency>
34.1. URI 形式
mongodb:connectionBean?database=databaseName&collection=collectionName&operation=operationName[&moreOptions...]