AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。
Docs Menu

MongoDB とは?

注意

public preview期間中、Atlas Infinite9 クラスターはLatest Version With Auto Upgrades Atlas UIの リリース オプションを使用して、最新のMongoDB.x バージョンを実行します。詳細については、「 Atlas のMongoDB のバージョン 」を参照してください。

MongoDB は、開発者が最新のアプリケーションをより速く構築できるように設計されたドキュメントデータベースです。柔軟なJSONのようなドキュメントにデータを保存するため、アプリケーションコードで使用されるのと同様にデータを簡単にモデル化できます。柔軟なスキーマにより、ダウンタイムなしでデータモデルを展開し、迅速に反復処理し、非均一データを簡単に取り扱えます。

MongoDB は強力なクエリエンジン、水平スケーリング、組み込みの高可用性を提供しており、Rapid プロトタイプから大規模なプロジェクトクリティカルなワークロードまですべてをサポートできます。

MongoDB は、次のような幅広いワークロードタイプをサポートするフルトランザクションの運用データベースです。

MongoDB は、関係データベースとは区別されるいくつかの主要アーキテクチャ コンポーネント上に構築されています。

  • ドキュメント データベース: 柔軟なドキュメントデータモデル、アプリケーションのニーズにデータをマッピングできます。

  • トランザクション: マルチドキュメントACIDトランザクションでは、データの整合性を必要とする複雑な操作が可能になります。

  • 高可用性: レプリケーションと自動フェイルオーバーにより、データはいつでも利用できます。

  • 水平拡大: シャーディングにより、水平拡大が可能になり、大規模なデータセットと高スループットを取り扱うことができます。

MongoDB のレコードはドキュメントです。ドキュメントは、フィールドと値のペアで構成されるデータ構造です。MongoDB ドキュメントは JSON オブジェクトに似ています。フィールドの値には、他のドキュメント、配列、および複数のドキュメントの複数の配列が含まれる場合があります。

MongoDB の柔軟なオブジェクト指向データモデルにより、コードベースのオブジェクトモデルをミラーリングする方法でデータを構造化できます。これにより、関係データベースを使用するときに必要な複雑なオブジェクト関係マッピングが不要になります。

以下は、アプリケーションのオブジェクトモデルをミラーリングした形式で、ドキュメントが複雑な階層データを表現できることを示すMongoDBドキュメントの例です。

{
_id: ObjectId("507f1f77bcf86cd799439011"),
name: "Alice",
birthdate: ISODate("1990-01-01T00:00:00Z"),
address: {
street: "123 Main St",
city: "Springfield",
state: "IL"
},
hobbies: ["reading", "hiking", "coding"]
}

ドキュメントデータモデルの追加の利点も次のとおりです。

  • ドキュメントは、多くのプログラミング言語のネイティブ データ型に対応しています。

  • 埋め込みドキュメントと配列により、パフォーマンスを低下させる可能性があるコストのかかる結合の必要性が減ります。

  • 動的スキーマは多形データをサポートし、これにより、同じコレクション内のドキュメント間でさまざまな構造が可能になります。

MongoDB はドキュメントをコレクションに保存します。コレクションは 関係テーブル と似ていますが、固定の事前定義されたスキーマを強制するものではありません。

コレクションに加えて、 MongoDB は読み取り専用ビューをサポートしています。

MongoDB はマルチドキュメントトランザクション をサポートしており、複数の読み取り操作と書き込み (write) 操作を単一の all-or-nothingイベントとして実行できます。

主なトランザクション機能には、次のものが含まれます。

  • ACID の保証: トランザクションは、複数の操作にわたってアトミック性、整合性、分離、 耐久性 を提供します。

  • マルチドキュメント操作: データの整合性を維持しつつ、複数のドキュメントにまたがる複雑な操作を実行できます。

  • 分散トランザクション: 同じACID保証を使用して、シャーディングされたクラスター間でのトランザクションを調整できます。

「トランザクション」を参照してください。

MongoDB に組み込まれているレプリケーションメカニズムは、 自動フェイルオーバー、データの冗長性、読み取りキャパシティーの増加を提供します。自動フェイルオーバー を使用すると、プライマリサーバーが使用できなくなった場合、クラスターは自動的に新しいプライマリを選択し、書き込み (write) は引き続き利用可能になります。さらに、データの耐久性を向上させるために、データの複数のコピーが異なるサーバーに保存されます。

MongoDB は シャーディング と呼ばれる手法による水平スケーリングをネイティブにサポートしています。

主なシャーディング機能には、次のようなものがあります。

  • 自動データ分散: MongoDB はシャードキーに基づいてデータを自動的に分割し、マシンのクラスター全体に分散します。

  • ゾーン シャーディング: 地理的ゾーンを定義し、シャードキー範囲に基づいてドキュメントの配置を制御できます。

  • シャードキーの調整:アプリケーションの進化に伴い、パフォーマンスを向上させるために、シャードキーを調整できます。

ルール バッジを取得する

「MongoDBアーキテクチャの基本 」を無料でマスターしてください。

詳細

このページを評価