Jemalloc ヒーププロファイリング
このトピックでは、StarRocks の Jemalloc ヒーププロファイルを有効にし、可視化する方法について説明します。
注記
- Jemalloc ヒーププロファイルを有効にすると、StarRocks のパフォーマンスに影響を与える可能性があります。
- このソリューションは、StarRocks v3.1.6以降でのみ利用可能です。
Jemalloc ヒーププロファイルを有効にする
構文:
ADMIN EXECUTE ON <be_id> 'System.print(HeapProf.getInstance().enable_prof())'
有効化するには、BE が jemalloc_conf に prof:true を指定して起動されている必要があります (デフォルトで指定されています)。そうでない場合、ステートメントは失敗します。現在の設定は information_schema.be_configs でも確認できます。NAME が jemalloc_conf の行を参照し、その VALUE に含まれる prof_active オプションを確認してください。
be_id: BE/CN ノードの ID。SHOW BACKENDS または SHOW COMPUTE NODES を実行して ID を取得できます。
例:
mysql> admin execute on 10001 'System.print(HeapProf.getInstance().enable_prof())';
+--------+
| result |
+--------+
| OK |
+--------+
1 row in set (0.00 sec)
Jemalloc ヒーププロファイルが有効かどうかを確認するには、次の構文を使用します。
ADMIN EXECUTE ON <be_id> 'System.print(HeapProf.getInstance().has_enable())'
例:
mysql> admin execute on 10001 'System.print(HeapProf.getInstance().has_enable())';
+--------+
| result |
+--------+
| true |
+--------+
1 row in set (0.01 sec)
Jemalloc ヒーププロファイルを無効にするには、次の構文を使用します。
ADMIN EXECUTE ON <be_id> 'System.print(HeapProf.getInstance().disable_prof())'
例:
mysql> admin execute on 10001 'System.print(HeapProf.getInstance().disable_prof())';
+--------+
| result |
+--------+
| OK |
+--------+
1 row in set (0.00 sec)