BE 設定
BE の設定項目の中には、BE ノードがオンラインのときに対話 的に設定できる動的パラメータがあります。それ以外は静的パラメータです。BE ノードの静的パラメータは、対応する設定ファイル be.conf を変更し、BE ノードを再起動して変更を有効にすることでのみ設定できます。
BE の設定項目を表示する
次のコマンドを使用して BE の設定項目を表示できます。
SELECT * FROM information_schema.be_configs WHERE NAME LIKE "%<name_pattern>%"
BE パラメータを設定する
BE の動的パラメータを設定する
BE ノードの動的パラメータは、information_schema.be_configs 内の値を更新することで設定できます。
警告
無効な値を設定すると、予期しない動作を引き起こす可能性があります。設定を更新するコマンドを実行する前に、必ず再確認してください。
-- <config_key> を設定のキーに、<config_value> を値に置き換えてください。
UPDATE information_schema.be_configs SET VALUE = <config_value> WHERE name = "<config_key>";
BE の静的パラメータを設定する
BE の静的パラメータは、対応する設定ファイル be.conf で変更し、BE を再起動して変更を有効にすることでのみ設定できます。
このトピックでは、以下の種類のFE構成について紹介します:
共有データ
cloud_native_pk_index_rebuild_files_threshold
- デフォルト: 50
- タイプ: Int
- 単位: -
- 変更可能: Yes
- 説明: クラウドネイティブ主キーインデックスのリビルド時に許容される最大 Segment ファイル数。リビルドが必要なファイル数がこの閾値を超えた場合、StarRocks はメモリ内の MemTable を即座にフラッシュし、リプレイが必要な Segment 数を削減します。
0に設定するとこの早期フラッシュ戦略は無効になります。 - 導入バージョン: -
cloud_native_pk_index_rebuild_rows_threshold
- デフォルト: 10000000
- タイプ: Long
- 単位: 行
- 変更可能: Yes
- 説明: クラウドネイティブ主キーインデックスのリ ビルド時に許容される最大行数。リビルドが必要な行数がこの閾値を超えた場合、StarRocks はメモリ内の MemTable を即座にフラッシュし、インデックス再構築のコストを削減します。
0に設定するとこの早期フラッシュ戦略は無効になります。cloud_native_pk_index_rebuild_files_thresholdと連携して動作し、いずれかの閾値を超えるとフラッシュがトリガーされます。 - 導入バージョン: -
download_buffer_size
- デフォルト: 4194304
- タイプ: Int
- 単位: Bytes
- 変更可能: Yes
- 説明: スナップショットファイルをダウンロードする際に使用されるメモリ内コピー用バッファのサイズ(バイト)。SnapshotLoader::download はこの値を fs::copy に対してリモートの sequential file からローカルの writable file へ読み込む際の 1 回あたりのチャンクサイズとして渡します。帯域幅の大きいリンクでは、より大きな値にすることで syscall/IO オーバーヘッドが減りスループットが向上する可能性があります。小さい値はアクティブな転送ごとのピークメモリ使用量を削減します。注意: このパラメータはストリームごとのバッファサイズを制御するものであり、ダウンロードスレッド数を制御するものではありません — 総メモリ消費量 = download_buffer_size * number_of_concurrent_downloads です。
- 導入バージョン: v3.2.13
graceful_exit_wait_for_frontend_heartbeat
- デフォルト: false
- タイプ: Boolean
- 単位: -
- 変更可能: Yes
- 説明: グレースフルシャットダウンを完了する前に、少なくとも1件のフロントエンドからの heartbeat 応答で SHUTDOWN 状態が返されるのを待つかどうかを決定します。有効にすると、heartbeat RPC を介して SHUTDOWN の確認が返されるまでグレースフルシャットダウン処理は継続され、フロントエンドが通常の2回のハートビート間隔内で終了状態を検出するための十分な時間を確保します。
- 導入バージョン: v3.4.5
lake_compaction_stream_buffer_size_bytes
- デフォルト: 1048576
- タイプ: Int
- 単位: バイト
- 変更可能: はい
- 説明: 共有データクラスタでのクラウドネイティブテーブルコンパクションのためのリーダーのリモート I/O バッファサイズ。デフォルト値は 1MB です。この値を増やすことでコンパクションプロセスを加速できます。
- 導入バージョン: v3.2.3
lake_pk_compaction_max_input_rowsets
- デフォルト: 500
- タイプ: Int
- 単位: -
- 変更可能: はい
- 説明: 共有データクラスタでの主キーテーブルコンパクションタスクで許可される最大入力 rowset 数。このパラメータのデフォルト値は v3.2.4 および v3.1.10 以降
5から1000に、v3.3.1 および v3.2.9 以降500に変更されました。主キーテーブルのためのサイズ階層型コンパクションポリシーが有効になった後 (enable_pk_size_tiered_compaction_strategyをtrueに設定することで)、StarRocks は各コンパクションの rowset 数を制限して書き込み増幅を減らす必要がなくなります。したがって、このパラメータのデフォルト値は増加しました。 - 導入バージョン: v3.1.8, v3.2.3
loop_count_wait_fragments_finish
- デフォルト: 2
- タイプ: Int
- 単位: -
- 変更可能: Yes
- 説明: BE/CN プロセスが終了する際に待機するループ回数。各ループは固定間隔の 10 秒です。ループ待機を無効にするには
0に設定できます。v3.4 以降、この項目は変更可能になり、デフォルト値は0から2に変更されました。 - 導入バージョン: v2.5
starlet_filesystem_instance_cache_capacity
- デフォルト: 10000
- タイプ: Int
- 単位: 秒
- 変更可能: はい
- 説明: starlet filesystem インスタンスのキャッシュ容量。
- 導入バージョン: v3.2.16, v3.3.11, v3.4.1
starlet_filesystem_instance_cache_ttl_sec
- デフォルト: 86400
- タイプ: Int
- 単位: 秒
- 変更可能: はい
- 説明: starlet filesystem インスタンス キャッシュの有効期限。
- 導入バージョン: v3.3.15, 3.4.5
starlet_port
- デフォルト: 9070
- タイプ: Int
- 単位: -
- 変更可能: いいえ
- 説明: BE および CN のための追加のエージェントサービスポート。
- 導入バージョン: -
starlet_star_cache_disk_size_percent
- デフォルト: 80
- タイプ: Int
- 単位: -
- 変更可能: いいえ
- 説明: 共有データクラスタで Data Cache が使用できるディスク容量の割合。
datacache_unified_instance_enableがfalseの場合のみ有効です。 - 導入バージョン: v3.1
starlet_use_star_cache
- デフォルト: v3.1 では false、v3.2.3 以降は true
- タイプ: Boolean
- 単位: -
- 変更可能: はい
- 説明: 共有データクラスタで Data Cache を有効にするかどうか。
trueはこの機能を有効にすることを示し、falseは無効にすることを示します。デフォルト値は v3.2.3 以降、falseからtrueに設定されました。 - 導入バージョン: v3.1
starlet_write_file_with_tag
- デフォルト: false
- タイプ: Boolean
- 単位: -
- 変更可能: はい
- 説明: 共有データクラスターにおいて、オブジェクトストレージに書き込まれたファイルにオブジェクトストレージタグを付与し、便利なカスタムファイル管理を行うかどうか。
- 導入バージョン: v3.5.3
table_schema_service_max_retries
- デフォルト: 3
- タイプ: Int
- 単位: -
- 変更可能: はい
- 説明: Table Schema Service リクエストの最大リトライ回数。
- 導入バージョン: v4.1
データレイク
datacache_block_buffer_enable
- デフォルト: true
- タイプ: Boolean
- 単位: -
- 変更可能: いいえ
- 説明: Data Cache の効率を最適化するために Block Buffer を有効にするかどうか。Block Buffer が有効な場合、システムは Data Cache から Block データを読み取り、一時バッファにキャッシュし、頻繁なキャッシュ読み取りによる余分なオーバ ーヘッドを削減します。
- 導入バージョン: v3.2.0
datacache_disk_adjust_interval_seconds
- デフォルト: 10
- タイプ: Int
- 単位: 秒
- 変更可能: はい
- 説明: Data Cache の自動容量スケーリングの間隔。定期的に、システムはキャッシュディスクの使用状況をチェックし、必要に応じて自動スケーリングをトリガーします。
- 導入バージョン: v3.3.0
datacache_disk_idle_seconds_for_expansion
- デフォルト: 7200
- タイプ: Int
- 単位: 秒
- 変更可能: はい
- 説明: Data Cache の自動拡張のための最小待機時間。ディスク使用率がこの期間を超えて
datacache_disk_low_levelを下回る場合にのみ、自動スケーリングがトリガーされます。 - 導入バージョン: v3.3.0
datacache_disk_size
- デ フォルト: 0
- タイプ: String
- 単位: -
- 変更可能: はい
- 説明: 単一ディスクにキャッシュできるデータの最大量。パーセンテージ (例:
80%) または物理的な制限 (例:2T、500G) として設定できます。たとえば、2 つのディスクを使用し、datacache_disk_sizeパラメータの値を21474836480(20 GB) に設定した場合、これらの 2 つのディスクに最大 40 GB のデータをキャッシュできます。デフォルト値は0で、これはメモリのみがデータをキャッシュするために使用されることを示します。 - 導入バージョン: -
datacache_enable
- デフォルト: true
- タイプ: Boolean
- 単位: -
- 変更可能: いいえ
- 説明: Data Cache を有効にするかどうか。
trueは Data Cache が有効であることを示し、falseは無効であることを示します。デフォルト値は v3.3 からtrueに変更されました。 - 導入バージョン: -
datacache_eviction_policy
- デフォルト: slru
- タイプ: String
- 単位: -
- 変更可能: いいえ
- 説明: Data Cache のエビクションポリシー。有効な値:
lru(最も最近使用されていない) およびslru(セグメント化された LRU)。 - 導入バージョン: v3.4.0
datacache_inline_item_count_limit
- デフォルト: 130172
- タイプ: Int
- 単位: -
- 変更可能: いいえ
- 説明: Data Cache のインラインキャッシュアイテムの最大数。特に小さいキャッシュブロックの場合、Data Cache はそれらを
inlineモードで保存し、ブロックデータとメタデータをメモリに一緒にキャッシュします。 - 導入バージョン: v3.4.0
datacache_mem_size
- デフォルト: 0
- タイプ: String
- 単位: -
- 変更可能: はい
- 説明: メモリにキャッシュできるデータの最大量。パーセンテージ (例:
10%) または物理的な制限 (例:10G、21474836480) として設定できます。 - 導入バージョン: -
datacache_min_disk_quota_for_adjustment
- デフォルト: 10737418240
- タイプ: Int
- 単位: バイト
- 変更可能: はい
- 説明: Data Cache 自動スケーリングのための最小有効容量。システムがキャッシュ容量をこの値未満に調整しようとする場合、キャッシュ容量は直接
0に設定され、キャッシュ容量の不足による頻繁なキャッシュの充填と削除によるパフォーマンスの低下を防ぎます。 - 導入バージョン: v3.3.0
disk_high_level
- デフォルト: 90
- タイプ: Int
- 単位: -
- 変更可能: はい
- 説明: キャッシュ容量の自動スケーリングをトリガーするディスク使用率 (パーセンテージ) の上限。この値を超えると、システムは Data Cache からキャッシュデータを自動的に削除します。v3.4.0 以降、デフォルト値は
80から90に変更されました。この項目はバージョン4.0以降、datacache_disk_high_levelからdisk_high_levelに名称変更されました。 - 導入バージョン: v3.3.0
disk_low_level
- デフォルト: 60
- タイプ: Int
- 単位: -
- 変更可能: はい
- 説明: キャッシュ容量の自動スケーリングをトリガーするディスク使用率 (パーセンテージ) の下限。ディスク使用率が
datacache_disk_idle_seconds_for_expansionで指定された期間を超えてこの値を下回り、Data Cache に割り当てられたスペースが完全に利用される場合、システムは上限を増やしてキャッシュ容量を自動的に拡張します。この項目はバージョン4.0以降、datacache_disk_low_levelからdisk_low_levelに名称変更されました。 - 導入バージョン: v3.3.0
disk_safe_level
- デフォルト: 80
- タイプ: Int
- 単位: -
- 変更可能: はい
- 説明: Data Cache のディスク使用率 (パーセンテージ) の安全レベル。Data Cache が自動スケーリングを実行する際、システムはディスク使用率をこの値にできるだけ近づけることを目標にキャッシュ容量を調整します。v3.4.0 以降、デフォルト値は
70から80に変更されました。この項目はバージョン4.0以降、datacache_disk_safe_levelからdisk_safe_levelに名称変更されました。 - 導入バージョン: v3.3.0
enable_connector_sink_spill
- デフォルト: true
- タイプ: Boolean
- 単位: -
- 変更可能: はい
- 説明: 外部テーブルへの書き込み時にスピリングを有効化するかどうか。この機能を有効にすると、メモリ不足時に外部テーブルへの書き込みによって大量の小さなファイルが生成されるのを防ぎます。現在、この機能は Iceberg テーブルへの書き込みのみをサポートしています。
- 導入バージョン: v4.0.0
enable_datacache_disk_auto_adjust
- デフォルト: true
- タイプ: Boolean
- 単位: -
- 変更可能: はい
- 説明: Data Cache ディスク容量の自動スケーリングを有効にするかどうか。これを有効にすると、システムは現在のディスク使用率に基づいてキャッシュ容量を動的に調整します。この項目はバージョン4.0以降、
datacache_auto_adjust_enableからenable_datacache_disk_auto_adjustに名称変更されました。 - 導入バージョン: v3.3.0
datacache_unified_instance_enable
- デフォルト: true
- タイプ: Boolean
- 単位: -
- 変更可能: いいえ
- 説明: 共有データクラスタで、internal catalog と external catalog のデータキャッシュを統一された Data Cache インスタンスで管理するかどうか。
- 導入バージョン: v3.4.0
jdbc_connection_idle_timeout_ms
- デフォルト: 600000
- タイプ: Int
- 単位: ミリ秒
- 変更可能: いいえ
- 説明: JDBC 接続プール内のアイドル接続が期限切れになるまでの時間。JDBC 接続プール内の接続アイドル時間がこの値を超えると、接続プールは設定項目
jdbc_minimum_idle_connectionsで指定された数を超えるアイドル接続を閉じます。 - 導入バージョン: -
jdbc_connection_pool_size
- デフォルト: 8
- タイプ: Int
- 単位: -
- 変更可能: いいえ
- 説明: JDBC 接続プールのサイズ。各 BE ノードで、同じ
jdbc_urlを持つ外部テーブルにアクセスするクエリは同じ接続プールを共有します。 - 導入バージョン: -
jdbc_minimum_idle_connections
- デフォルト: 1
- タイプ: Int
- 単位: -
- 変更可能: いいえ
- 説明: JDBC 接続プール内の最小アイドル接続数。
- 導入バージョン: -
jdbc_connection_max_lifetime_ms
- デフォルト: 300000
- タイプ: Long
- 単位: ミリ秒
- 変更可能: いいえ
- 説明: JDBC接続プール内の接続の最大有効期間。古い接続を防ぐため、このタイムアウトの前に接続はリサイクルされます。許可される最小値は30000(30秒)です。
- 導入バージョン: -
jdbc_connection_keepalive_time_ms
- デフォルト: 30000
- タイプ: Long
- 単位: ミリ秒
- 変更可能: いいえ
- 説明: アイドル状態のJDBC接続のキープアライブ間隔。アイドル状態の接続は、古い接続をプロアクティブに検出するために、この間隔でテストされます。0に設定するとキープアライブプロービングを無効にします。有効な場合、>= 30000かつ
jdbc_connection_max_lifetime_msより小さい必要があります。無効な有効値はサイレントに無効化されます(0にリセット)。 - 導入バージョン: -
lake_clear_corrupted_cache_data
- デフォルト: false
- タイプ: Boolean
- 単位: -
- 変更可能: はい
- 説明: 共有データクラスタにおいて、システムが破損したデータキャッシュをクリアすることを許可するかどうか。
- 導入バージョン: v3.4
lake_clear_corrupted_cache_meta
- デフォルト: true
- タイプ: Boolean
- 単位: -
- 変更可能: はい
- 説明: 共有データクラスタにおいて、システムが破損したメタデータキャッシュをクリアすることを許可するかどうか。
- 導入バージョン: v3.3
lake_enable_vertical_compaction_fill_data_cache
- デフォルト: true
- タイプ: Boolean
- 単位: -
- 変更可能: はい
- 説明: 共有データクラスタでコンパクションタスクがローカルディスクにデータをキャッシュすることを許可するかどうか。
- 導入バージョン: v3.1.7, v3.2.3
lake_service_max_concurrency
- デフォルト: 0
- タイプ: Int
- 単位: -
- 変更可能: いいえ
- 説明: 共有データクラスタにおける RPC リクエストの最大同時実行数。このしきい値に達すると、受信リクエストは拒否されます。この項目が
0に設定されている場合、同時実行数に制限はありません。 - 導入バージョン: -
query_max_memory_limit_percent
- デフォルト: 90
- タイプ: Int
- 単位: -
- 変更可能: いいえ
- 説明: クエリプールが使用できる最大メモリ。プロセスメモリ制限のパーセンテージとして表されます。
- 導入バージョン: v3.1.0
rocksdb_max_write_buffer_memory_bytes
- デフォルト: 1073741824
- タイプ: Int64
- 単位: -
- 変更可能: No
- 説明: RocksDB の meta 用 write buffer の最大サイズです。デフォルトは 1GB です。
- 導入バージョン: v3.5.0
rocksdb_write_buffer_memory_percent
- デフォルト: 5
- タイプ: Int64
- 単位: -
- 変更可能: No
- 説明: RocksDB の meta 用 write buffer に割り当てるメモリの割合です。デフォルトはシステムメモリの 5% です。ただし、これに加えて、最終的に算出される write buffer メモリのサイズは 64MB 未満にならず、1G を超えません(rocksdb_max_write_buffer_memory_bytes)。
- 導入バージョン: v3.5.0