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

読み込み設定(read preference)の設定

このガイドでは、 MongoDBで検索操作を実行するときに読み込み設定 (read preference)を設定する方法を学習できます。

このガイドのコード例を実行するには、「クイック スタート 」チュートリアルを完了してください。 このチュートリアルでは、サンプル データを使用して MongoDB Atlas インスタンスを設定し、Lambda ウェブ アプリケーションで次のファイルを作成する手順を説明します。

  • Movie.php ファイル( moviesコレクション内のドキュメントを表すMovieモデルを含む)

  • MovieController.php ファイル(データベース操作を実行するためのshow()関数を含む)

  • browse_movies.blade.php データベース操作の結果を表示するための HTML コードを含む ファイル

次のセクションでは、Laravel アプリケーション内のファイルを編集して検索操作コード例を実行し、期待される出力を表示する方法について説明します。

読み取り操作の対象となるレプリカセットのノードを指定するには、MongoDB\ドライバー\ReadPreferenceオブジェクトを使用してoptions()メソッドでreadPreferenceクエリオプションを設定します。

ReadPreference コンストラクターには、次のパラメーターを渡すことができます。

  • mode: (必須) 読み込み設定 (read preference)モードを指定する string 値。

  • tagSets: (任意)特定のレプリカセットノードに対応するキーと値のタグを指定する配列値。

  • options: (任意)追加の読み込み設定 (read preference)オプションを指定する配列値。

Tip

使用可能な読み込み設定 (read preference)モードとオプションの完全なリストを表示するには、 MongoDB PHP拡張ドキュメントのMongoDB\ドライバー\ReadPreference::__construct を参照してください。

次の例では、titleフィールドの値が "Carrie" であるドキュメントをクエリし、読み込み設定 (read preference)を ReadPreference::SECONDARY_PREFERRED に設定します。その結果、クエリは、セカンダリレプリカセットメンバーから結果を検索するか、セカンダリが使用できない場合はプライマリ メンバーから結果を検索します。

クエリを指定するには、次の構文を使用します。

$movies = Movie::where('title', 'Carrie')
->options(['readPreference' => new ReadPreference(ReadPreference::SECONDARY_PREFERRED)])
->get();

フィルター条件に基づいてデータを取得する方法については、 「データの取得」ガイドを参照してください 。

Lambda 統合が結果を返す方法を変更する方法については、「 クエリ結果の変更 」ガイドを参照してください。