query_dump インターフェース
このトピックでは、query_dump インターフェースを使用して SQL クエリの詳細と関連情報を取得する方法について説明しま す。
StarRocks で SQL クエリを実行する際に次のような問題が発生した場合、query_dump を使用して SQL の詳細を取得し、StarRocks の技術サポートに情報を送信してトラブルシューティングを行うことができます。
- SQL クエリまたは EXPLAIN を実行すると
Unknown Errorが返される。 - SQL クエリを実行するとエラーメッセージや例外が返される。
- SQL クエリの実行が期待通りに効率的でない、または実行計画を最適化できる(例えば、パーティションをプルーニングしたり、ジョイン順序を調整したりできる)。
機能概要
query_dump インターフェースは、SQL を実行する際に FE が依存する情報を返します。これには以下が含まれます。
- クエリ文
- テーブル作成文
- セッション変数
- BEs の数
- 統計情報(列の最小値、最大値)
- 例外情報(異常スタック)
- Explain コスト情報
データのプライバシーを確保するため、データベース名、テーブル名、列名などのメタ情報をマスキングします。また、マスキングされたメタデータを使用してクエリ文を再作成します。
メタ情報のマスキングはデフォルトで有効になっています。マスキング処理中に例外が発生した場合、元の情報が使用されます。マスキングをバイパスする必要がある場合は、HTTP URI に "mock=false" を追加できます。
構文
HTTP Post
fe_host:fe_http_port/api/query_dump?db=${database}&mock=${value} post_data=${Query}
wget --user=${username} --password=${password} --post-file ${query_file} "http://${fe_host}:${fe_http_port}/api/query_dump?db=${database}&mock={value}" -O ${dump_file}
パラメータの説明:
- query_file: クエリを含むファイル
- dump_file: 出力ファイル
- db: SQL クエリが実行されるデータベース。クエリに
use dbが含まれている場合、dbパラメータはオプションです。それ以外の場合は指定する必要があります。 - mock: マスキングを有効または無効にするかどうか