IndexPool MBean

インデックス作成タスクの進行状況に関するメトリクスを公開しています。タスク送信とフラッシュの制御に役立ちます。

IndexPool MBeanは、パイプラインを進む際のインデックス作成タスクの進行状況に関するメトリクスを公開し、コア・インデックス作成スレッド・プールのフラッシュ、同時実行、およびバック・プレッシャー動作を微調整するためのメカニズムを提供します。

インデックス・プールMBeanは、以下のプロパティを使用したタスク送信とフラッシュの制御に役立ちます。
構成可能な同時実行
同時実行ワーカーの最大数は、構成時にあらかじめ定義されています。実際の同時実行は、1(同期的実行)から指定された最大同時実行数の間で動的に構成できます。
バック・プレッシャーによるフロー制御
高速プロデューサーのメモリー消費を低減するために、バック・プレッシャーは、構成可能なキューしきい値とタスクあたりの最大一時停止時間に基づいて着信タスクを抑制します。ワーカーがプールでタスクを送信すると実装が再び入り、タスクが一時停止することはありません。

パス

インデックス・プールMBeanは以下のパスで指定されます。
com.datastax.bdp.search.keyspace_name.table_name.IndexPool
ここで、
  • searchはMbeanタイプです。
  • keyspace_name.table_nameはメトリクスが参照する検索インデックス(コア)です。
  • IndexPoolはMBean名です。
例を次に示します。

変更可能なIndexPool MBeanの属性

属性は、ノードが再起動されるまでの間、有効です。変更を永続化するには、dse.yamlの対応するオプションを変更する必要があります。
FlushMaxTime
DSE Searchのコミット時間またはデータベースのフラッシュ時間に発生する、非同期インデックス更新をフラッシュするまでに待機する最大時間(ミリ秒)です。dse.yamlの場合(分)、flush_max_time_per_coreです。
BackPressureThreshold
バック・プレッシャーしきい値は、キューに取り込まれる非同期インデックス作成要求のコアごとの目標総数です。バック・プレッシャー・メカニズムでは着信する要求を抑制し、できる限りキュー・サイズがしきい値に近くなるように維持します。dse.yamlの場合、back_pressure_threshold_per_coreです。
Concurrency
同時実行非同期インデックス作成スレッドの最大数。dse.yamlの場合、max_solr_concurrency_per_coreです。

IndexPool MBean表示専用属性

以下のMBean操作を取得できます。
BackPressurePauseNanos
バック・プレッシャーの平均一時停止時間を取得します。
BackPressurePauseOutliers
構成されている最大一時停止時間よりも長く一時停止している、スケジュールされているドキュメント有効期限のジョブまたはインデックス再作成のタスクの数。
IncomingRate
1秒あたりに取り込まれるタスクの1分間の割合を取得します。
MaxConcurrency
あらかじめ定義されている最大同時実行レベルを取得します。
OutgoingRate
1秒あたりに処理されるタスクの1分間の割合を取得します。
ProcessedTasks
すべてのワーカーで処理されるタスクの総数を取得します。
QueueSize
処理が進行している各キューの現在のサイズを取得します。
QueueWeight
すべての転送中のインデックス作成タスクの重み合計。
TaskProcessingTimeNanos
すべてのワーカーの直前の処理時間を取得します。クロック分解能が粗すぎる場合は0になることがあります。
スループット
1秒あたりの作業スループットの1分間の割合。
TotalQueueSize
処理が進行しているすべてのキューの合計サイズを取得します。QueueWeightよりも小さい必要があります。
dse.yamlファイルの場所は、インストールのタイプによって異なります。

パッケージ・インストールInstaller-Servicesインストール

/etc/dse/dse.yaml

tarボール・インストールInstaller-No Servicesインストール

installation_location/resources/dse/conf/dse.yaml