Cmdlets for MongoDB

Build 24.0.9062

ReadPreference Parameter (Connect-MongoDB Cmdlet)

レプリカセットから読み取るためのストラテジーに設定します。受容される値は、primary、primaryPreferred、secondary、secondaryPreferred、およびnearest です。

Syntax

Connect-MongoDB -ReadPreference string

Possible Values

primary, primaryPreferred, secondary, secondaryPreferred, nearest

Data Type

cstr

Default Value

"primary"

Remarks

このプロパティを使用すると、プライマリメンバー以外のレプリカセット内のメンバにクエリを実行できるようになります。受容される値は次のとおりです。

  • primary:すべてのSELECT クエリが、プライマリサーバーに対して実行されます。
  • primaryPreferred:プライマリサーバーが利用できない場合、SELECT クエリはセカンダリサーバーに対して実行されます。
  • secondary:すべてのSELECT クエリは、セカンダリサーバーに対して実行されます。
  • secondaryPreferred:セカンダリサーバーが利用可能な場合、セカンダリサーバーにSELECT クエリが実行されます。そうでない場合は、プライマリサーバーに対して実行されます。
  • nearest:SELECT クエリは、レイテンシが最小のサーバーに対して実行されます。

ReadPreference を使用するタイミング

このプロパティを設定すると、書き込み操作がセカンダリマシンにまだレプリケートされていない場合、最新の変更がクエリ結果に反映されないことがあります。 ReadPreference を使用すると、本製品 が古いデータを返すリスクはありますが、次のことを達成できます。

  • フェイルオーバークエリの設定:プライマリサーバーが利用できない場合、このプロパティを"primaryPreferred" に設定すると、オンラインでクエリを実行し続けることができます。
  • 地理的に分散したレプリカセットに対してより高速にクエリを実行:デプロイメントで複数のデータセンターが使用されている場合、ReadPreference を"nearest" に設定すると、本製品 はレイテンシが最小のレプリカセットメンバーに対してSELECT クエリを実行するためクエリの処理速度が向上します。

本製品 にSELECT ステートメントをセカンダリサーバーに実行させる場合は、SlaveOK も設定する必要があります。そうしないと、本製品 はエラー応答を返します。

Copyright (c) 2024 CData Software, Inc. - All rights reserved.
Build 24.0.9062