クエリー・メトリクスMBean
クエリー・メトリクスMBeanは、クエリー・パフォーマンスのトラブルシューティング、Solr構成(スキーマやキャッシュなど)のチューニング、サーバー・リソース(JVMヒープなど)のチューニングに便利です。
クエリー・メトリクスMBeanは、クエリー・パフォーマンスのトラブルシューティング、Solr構成(スキーマやキャッシュなど)のチューニング、サーバー・リソース(JVMヒープなど)のチューニングに便利です。クエリー・メトリクスMBeanは、インデックスで分散クエリーの複数のメイン・フェーズを実行するために費やした時間の長さを記録します。
クエリー・メトリクスMBeanは、レイテンシーをマイクロ秒単位で測定します。追加のquery.nameパラメーターを提供することで、複数のメトリクスをクエリー別にグループ分けできます。たとえば、demo.solrという名前のSolr coreを使用しており、typeという名前のフィールドのインデックス作成が完了したと想定すると、以下のURLによって追加のquery.nameパラメーターが提供されます。
http://localhost:8983/solr/demo.solr/select/?q=type:1&query.name=myquery
指定されたクエリー名の下で収集されたメトリクスはすべて、個別に記録され、取得されます。クエリー名が提示されない場合、すべてのメトリクスがまとめて記録されます。操作のメイン・フェーズ
分散クエリー操作のメイン・フェーズは、以下のとおりです。
- COORDINATE
- コーディネーター・ノードがクエリーを分散させ、シャードからの結果を収集/処理するために費やした時間の長さで構成されます。この値は、クエリー・コーディネーター・ノードでのみ計算されます。
- EXECUTE
- 1つのシャードが実際のインデックス・クエリーの実行に費やした時間で構成されます。この値は、シャード・クエリーを実行するローカル・ノードで計算されます。
- RETRIEVE
- 1つのノードがCassandraから1つの行を取得するために費やした時間で構成されます。この値は、要求されたデータをホストするローカル・ノードで計算されます。
クエリー・メトリクスMBeanの各種セット操作
操作は以下のとおりです。
- setEnabled(boolean enabled)
メトリクスの記録を有効/無効にします。デフォルトでは有効になっています。
- isEnabled()
メトリクスの記録が有効になっているかどうかを確認します。
- getLatencyPercentile(String phase, String query, double percentile)
クエリー・レイテンシー・パーセンタイルをそのクエリー名別に取得します。これは任意であり、nullおよびphaseにすることができます。
- getRecordedLatencyCount(String phase, String query)
記録されたレイテンシー・メトリクスの総数をそのクエリー名別に取得します。これは任意であり、nullおよびphaseにすることができます。
- getUnrecordedLatencyCount()
追跡されるレイテンシーの最大値10分を超えたため記録されていないレイテンシー値の総数を取得します。
- resetLatency(String query)
指定されたクエリー名に関するレイテンシー・メトリクスをリセットします。これは任意であり、nullにすることができます。
- resetLatencies()
すべてのレイテンシー・メトリクスをリセットします。