遅いクエリーに関する推奨事項
スロー・クエリーの解決を支援するために表示される推奨事項のリファレンス。
スロー・クエリーの問題の解決を支援するために表示される推奨事項について、以下の表で説明します。Performance Service(パフォーマンス・サービス)がCQLクエリー文で既知の問題を検知すると、[Recommendations]パネルに推奨事項が表示されます。
推奨事項 | 説明 |
---|---|
ALLOW FILTERINGを使用しない | クエリーでALLOW FILTERINGが使用されていないかどうかをチェックします。ALLOW FILTERINGを使用する代わりに、クエリー・パターンに基づいて新しいデータ・モデルを検討してください。 |
大きなバッチを使用しない | 大きなバッチを使用すると最適化できるように思えますが、コーディネーターに余分な負荷がかかり、クラスター内にホットスポットが生じる可能性があります。大きなバッチは個々のクエリーに分割し、異なるノードに分散させると、クエリーの実行速度が上がります。 |
IN句で使用されるキー数を最小限に抑える | 大量のIN句は1つのクエリーのように見えますが、実際には複数のクエリーとして実行されます。なるべく多くのコーディネーターに個々の非同期クエリーを分散させます。 |
カウントではなくカウンターを使用する | count(*)クエリーは、小さい値に制限しても高負荷になる可能性があります。管理するカウンターとロジックを置き換えます。 |
クエリーにプリペアド・ステートメントを使用する | プリペアド・ステートメントを使用すると、クエリー解析のオーバーヘッドを取り除いてコーディネーターのワークロードが軽減されます。 |