すべてのプロダクト
Search
ドキュメントセンター

E-MapReduce:バックエンドノードの構成項目

最終更新日:Jan 11, 2025

このトピックでは、バックエンドノードの構成項目について説明します。

背景情報

ほとんどの場合、バックエンドノードの be.conf 構成ファイルは、バックエンドノードがデプロイされている conf/ ディレクトリにあります。 V0.14 では、be_custom.conf という名前の別の構成ファイルも使用されます。 be_custom.conf 構成ファイルは、実行中のバックエンドノードに動的に追加された永続的な構成項目を指定するために使用されます。バックエンドノードが実行されると、be.conf および be_custom.conf 構成ファイルの構成項目が順番に読み取られます。構成項目が両方の構成ファイルに存在する場合、be_custom.conf 構成ファイルの内容が優先されます。

構成項目の表示

バックエンドノードの現在の構成項目を表示するには、次の Web ページを参照してください: http://be_host:be_webserver_port/varz

構成項目の追加

次のいずれかの方法で、バックエンドノードの構成項目を追加できます。

  • 構成項目を静的に追加する

    be.conf 構成ファイルに構成項目を追加します。構成項目は、バックエンドノードの実行時に読み取られます。 be.conf 構成ファイルから除外されている構成項目には、デフォルト設定が使用されます。

  • 構成項目を動的に追加する

    バックエンドノードの実行後、次のコマンドを実行して構成項目を動的に追加します。

    curl -X POST http://{be_ip}:{be_http_port}/api/update_config?{key}={value}'

V0.13 以前では、動的に追加された構成項目は、バックエンドノードの再実行時に無効になります。 V0.14 以降では、次のコマンドを実行して、動的に追加された構成項目を永続化できます。永続的な構成項目は、be_custom.conf 構成ファイルに保存されます。

curl -X POST http://{be_ip}:{be_http_port}/api/update_config?{key}={value}&persist=true

  • max_base_compaction_concurrency 構成項目を静的に追加します。 max_base_compaction_concurrency=5 構成項目を be.conf ファイルに追加した後、バックエンドノードを再実行して構成項目を適用します。

  • streaming_load_max_mb 構成項目を動的に追加します。バックエンドノードの実行後、次のコマンドを実行して構成項目を動的に追加します。

    streaming_load_max_mb:curl -X POST http://{be_ip}:{be_http_port}/api/update_config?streaming_load_max_mb=1024

    次の情報が返された場合、構成項目が追加されています。

    {
        "status": "OK",
        "msg": ""
    }

    構成項目は、バックエンドノードの再実行後に無効になります。構成項目を永続化するには、次のコマンドを実行します。

    curl -X POST http://{be_ip}:{be_http_port}/api/update_config?streaming_load_max_mb=1024\&persist=true

構成項目

alter_tablet_worker_count

  • デフォルト値: 3.

  • 説明: スキーマ変更のスレッド数。

generate_compaction_tasks_min_interval_ms

  • デフォルト値: 10.

  • 説明: コンパクションタスクが生成される最小間隔。単位: ミリ秒。

enable_vectorized_compaction

  • デフォルト値: true.

  • 説明: ベクトル化コンパクションを有効にするかどうかを指定します。

base_compaction_interval_seconds_since_last_operation

  • デフォルト値: 86400.

  • 説明: 最後のベースコンパクションの時刻と現在の時刻の間隔。この構成項目は、ベースコンパクションをトリガーする条件の 1 つです。

base_compaction_num_cumulative_deltas

  • デフォルト値: 5.

  • 説明: Cumulative ファイルの制限。この構成項目は、ベースコンパクションをトリガーする条件の 1 つです。制限に達すると、ベースコンパクションがトリガーされます。

base_compaction_write_mbytes_per_sec

  • デフォルト値: 5.

  • 説明: ベースコンパクションタスクの 1 秒あたりの最大ディスク書き込み速度。単位: MB。

base_cumulative_delta_ratio

  • デフォルト値: 0.3.

  • 説明: サイズが Base ファイルのサイズ以上である Cumulative ファイルの比率。この構成項目は、ベースコンパクションをトリガーする条件の 1 つです。

base_compaction_trace_threshold

  • デフォルト値: 10.

  • タイプ: int32.

  • 説明: ベースコンパクションのトレース情報のログ記録のしきい値。単位: 秒。

ベースコンパクションタスクは時間のかかるバックグラウンドタスクです。タスクの実行時情報をトレースするには、この構成項目を設定して、トレース情報のログ記録を管理できます。次のコードは、ログファイルのトレース情報の例を示しています。

W0610 11:26:33.804431 56452 storage_engine.cpp:552] Trace:
0610 11:23:03.727535 (+     0us) storage_engine.cpp:554] start to perform base compaction
0610 11:23:03.728961 (+  1426us) storage_engine.cpp:560] found best tablet 546859
0610 11:23:03.728963 (+     2us) base_compaction.cpp:40] got base compaction lock
0610 11:23:03.729029 (+    66us) base_compaction.cpp:44] rowsets picked
0610 11:24:51.784439 (+108055410us) compaction.cpp:46] got concurrency lock and start to do compaction
0610 11:24:51.784818 (+   379us) compaction.cpp:74] prepare finished
0610 11:26:33.359265 (+101574447us) compaction.cpp:87] merge rowsets finished
0610 11:26:33.484481 (+125216us) compaction.cpp:102] output rowset built
0610 11:26:33.484482 (+     1us) compaction.cpp:106] check correctness finished
0610 11:26:33.513197 (+ 28715us) compaction.cpp:110] modify rowsets finished
0610 11:26:33.513300 (+   103us) base_compaction.cpp:49] compaction finished
0610 11:26:33.513441 (+   141us) base_compaction.cpp:56] unused rowsets have been moved to GC queue
Metrics: {"filtered_rows":0,"input_row_num":3346807,"input_rowsets_count":42,"input_rowsets_data_size":1256413170,"input_segments_num":44,"merge_rowsets_latency_us":101574444,"merged_rows":0,"output_row_num":3346807,"output_rowset_data_size":1228439659,"output_segments_num":6}

be_port

  • デフォルト値: 9060.

  • タイプ: int32.

  • 説明: フロントエンドノードからのリクエストを受信するための、バックエンドノード上の thrift サーバーのポート。

be_service_threads

  • デフォルト値: 64.

  • タイプ: int32.

  • 説明: バックエンドノード上の thrift サーバーサービスの実行スレッド数。これは、フロントエンドノードからのリクエストの実行に使用できるスレッド数を表します。

brpc_max_body_size

説明: この構成項目は、bRPC の max_body_size パラメーターを変更するために使用されます。クエリが失敗し、バックエンドノードのログファイルに「body_size is too large」というエラーメッセージが表示される場合があります。これは、SQL モードが「multi distinct, no GROUP BY condition, and having more than 1 TB of data」の場合に発生する可能性があります。このエラーは、bRPC のパッケージサイズが構成値を超えていることを示しています。この場合、この構成項目の値を増やすことで、このエラーを防ぐことができます。

brpc_socket_max_unwritten_bytes

説明: この構成項目は、bRPC の socket_max_unwritten_bytes パラメーターを変更するために使用されます。クエリが失敗し、バックエンドノードのログファイルに「The server is overcrowded」というエラーメッセージが表示される場合があります。これは、送信側で多数のメッセージがバッファリングされていることを示しています。これは、SQL が大きなビットマップ値を送信する必要がある場合に発生する可能性があります。この構成項目の値を増やすことで、このエラーを防ぐことができます。

transfer_large_data_by_brpc

  • デフォルト値: true.

  • タイプ: bool.

  • 説明: Tuple/Block データの長さが 1.8 GB を超える場合、HTTP bRPC 経由で送信する前に、protoBuf リクエストをシリアル化し、Tuple/Block データをコントローラーの添付ファイルにネストするかどうかを指定します。 protoBuf リクエストの長さが 2 GB を超えると、次のエラーメッセージが発生します: Bad request, error_text=[E1003]Fail to compress request。このエラーを防ぐために、以前のバージョンでは、Tuple/Block データは添付ファイルに配置された後、デフォルトの baidu_std bRPC 経由で送信されます。ただし、添付ファイルのサイズが 2 GB を超えると、Tuple/Block データは切り捨てられ、protoBuf リクエストの長さに制限は設けられません。

brpc_num_threads

説明: bRPC のスレッド数。デフォルト値: -1。これは、スレッド数が CPU コア数と同じであることを意味します。良好なクエリ/秒 (QPS) パフォーマンスを確保するために、この構成項目をより大きな値に設定できます。詳細については、「GitHub の Incubator-brpc」をご参照ください。

brpc_port

  • デフォルト値: 8060.

  • タイプ: int32.

  • 説明: バックエンドノード上の bRPC のポート。バックエンドノード間の通信に使用されます。

buffer_pool_clean_pages_limit

  • デフォルト値: 20.

  • 説明: クリーンアップされ、バッファプールに保存される可能性のあるページ数。

buffer_pool_limit

  • デフォルト値: 20%.

  • タイプ: string.

  • 説明: バッファプール内で割り当て可能なメモリの最大比率。

バッファプールは、バックエンドノードの新しいメモリ管理構造です。バッファプールはバッファページを使用してメモリを管理し、データをディスクにスピルします。すべての同時クエリ用のメモリは、バッファプールから割り当てられます。現在のバッファプールは、AggregationNode と ExchangeNode でのみ機能します。

check_auto_compaction_interval_seconds

  • デフォルト値: 5.

  • タイプ: int32.

  • 説明: 自動コンパクションが無効になっている場合に、自動コンパクションの無効化がチェックされる間隔。

check_consistency_worker_count

  • デフォルト値: 1.

  • 説明: タブレットのチェックサムを計算するためのワーカースレッド数。

chunk_reserved_bytes_limit

  • デフォルト値: 20%.

  • タイプ: int32.

  • 説明: Chunk Allocator の予約バイト制限。通常、mem_limit のパーセンテージとして設定されます。単位: バイト。値は 2 の正の倍数である必要があります。値が物理メモリサイズより大きい場合、物理メモリサイズはこの値に設定されます。この構成項目の値を増やすと、パフォーマンスは向上しますが、他のモジュールで使用できないメモリがアイドル状態になることが多くなります。

clear_transaction_task_worker_count

  • デフォルト値: 1.

  • 説明: トランザクションのクリーンアップに使用されるスレッド数。

clone_worker_count

  • デフォルト値: 3.

  • タイプ: int32.

  • 説明: クローニングタスクの実行に使用されるスレッド数。

cluster_id

  • デフォルト値: -1.

  • タイプ: int32.

  • 説明: バックエンドノードが属するクラスターの ID。

この構成項目の値は、通常、ハートビートによってフロントエンドノードからバックエンドノードに配信されます。この構成項目を設定する必要はありません。構成項目は、バックエンドノードに Doris クラスターが指定された後にのみ設定できます。データディレクトリにある cluster_id ファイルの内容がこの構成項目の値に変更されていることを確認してください。

column_dictionary_key_ratio_threshold

  • デフォルト値: 0.

  • 説明: 文字列値の比率のしきい値。比率がしきい値より小さい場合、辞書圧縮アルゴリズムが使用されます。

column_dictionary_key_size_threshold

  • デフォルト値: 0.

  • 説明: 辞書圧縮列のサイズのしきい値。サイズがしきい値より小さい場合、辞書圧縮アルゴリズムが使用されます。

compaction_tablet_compaction_score_factor

  • デフォルト値: 1.

  • タイプ: int32.

  • 説明: コンパクション用のタブレットを見つけるためにタブレットスコアを計算するときのコンパクションスコア。

compaction_tablet_scan_frequency_factor

  • デフォルト値: 0.

  • タイプ: int32.

  • 説明: コンパクション用のタブレットを見つけるためにタブレットスコアを計算するときのタブレットスキャン頻度。

この構成項目は、コンパクション用のタブレットを選択し、最新の期間内に頻繁にスキャンされるタブレットを優先的にコンパクションする場合に考慮できます。タブレットスコアは、次の式に基づいて計算できます。

tablet_score = compaction_tablet_scan_frequency_factor tablet_scan_frequency + compaction_tablet_compaction_score_factor compaction_score

compaction_task_num_per_disk

  • デフォルト値: 2.

  • タイプ: int32.

  • 説明: ハードディスクドライブ (HDD) に対して並列で実行されるコンパクションタスクの数。

compaction_task_num_per_fast_disk

  • デフォルト値: 4.

  • タイプ: int32.

  • 説明: 高速ソリッドステートドライブ (SSD) に対して並列で実行されるコンパクションタスクの数。

compress_rowbatches

  • デフォルト値: true.

  • タイプ: bool.

  • 説明: RowBatch がシリアル化されるときに、Snappy 圧縮アルゴリズムを使用してデータ圧縮を行うかどうかを指定します。

create_tablet_worker_count

  • デフォルト値: 3.

  • 説明: バックエンドノードがタブレットの作成に使用するワーカースレッド数。

cumulative_compaction_rounds_for_each_base_compaction_round

  • デフォルト値: 9.

  • タイプ: int32.

  • 説明: 各ラウンドのベースコンパクションが生成される前に連続して生成される累積コンパクションのラウンド数。

disable_auto_compaction

  • デフォルト値: false.

  • タイプ: bool.

  • 説明: 自動コンパクションを無効にするかどうかを指定します。

ほとんどの場合、自動コンパクションを無効にする必要があります。デバッグ環境またはテスト環境でコンパクションタスクを手動で実行する場合は、自動コンパクションを無効にします。

cumulative_compaction_budgeted_bytes

  • デフォルト値: 104857600.

  • 説明: ベースコンパクションをトリガーする条件の 1 つ。 Singleton ファイルのサイズは最大 100 MB です。

cumulative_compaction_trace_threshold

  • デフォルト値: 2.

  • タイプ: int32.

  • 説明: 累積コンパクションのトレース情報のログ記録のしきい値。単位: 秒。

disable_compaction_trace_log

  • デフォルト値: true.

  • タイプ: bool.

  • 説明: コンパクションのトレースログを無効にするかどうかを指定します。

この構成項目を true に設定すると、cumulative_compaction_trace_threshold および base_compaction_trace_threshold 構成項目は有効にならず、コンパクションのトレースログは無効になります。

cumulative_compaction_policy

  • デフォルト値: size_based.

  • タイプ: string.

  • 説明: 累積コンパクションのマージポリシー。現在、num_based および size_based マージポリシーが実装されています。有効な値:

    • ordinary: 累積コンパクションマージポリシーの初期バージョン。累積コンパクションステージの後、ベースコンパクションステージに直接入ります。

    • size_base: ordinary 戦略の最適化バージョン。バージョンは、ロウセットのディスクボリュームが同じ桁数の大きさである場合にのみマージされます。バージョンがマージされると、条件を満たすロウセットはベースコンパクションステージに昇格されます。多数の小バッチインポートが実行されると、ベースコンパクションの書き込み倍率が減少し、読み取り倍率とスペース倍率のバランスが取れ、ファイルバージョンのデータが削減されます。

cumulative_size_based_promotion_size_mbytes

  • デフォルト値: 1024.

  • タイプ: int64.

  • 説明: size_based ポリシーが実装され、累積コンパクションの出力ロウセットの合計ディスクサイズがこの構成項目の値を超える場合、ロウセットはベースコンパクションに使用されます。単位: MB。

ほとんどの場合、この構成項目は 2048 (2 GB) より小さい値に設定されます。これにより、長時間累積コンパクションによって発生するバージョンのバックログが防止されます。

cumulative_size_based_promotion_ratio

  • デフォルト値: 0.05.

  • タイプ: double.

  • 説明: size_based ポリシーが実装され、累積コンパクションの出力ロウセットの合計ディスクサイズがこの構成項目の値を超える場合、ロウセットはベースコンパクションに使用されます。

ほとんどの場合、この構成項目を 0.02 から 0.1 の値に設定することをお勧めします。

cumulative_size_based_promotion_min_size_mbytes

  • デフォルト値: 64.

  • タイプ: int32.

  • 説明: size_based ポリシーが実装され、累積コンパクションの出力ロウセットの合計ディスクサイズがこの構成項目の値より小さい場合、ロウセットはベースコンパクションに使用されず、累積コンパクションステージのままになります。単位: MB。

ほとんどの場合、この構成項目を 512 より小さい値に設定することをお勧めします。設定した値が大きすぎると、ベースコンパクションは実行されません。

cumulative_size_based_compaction_lower_size_mbytes

  • デフォルト値: 64.

  • タイプ: int64.

  • 説明: size_based 戦略が実装され、累積コンパクションがマージされ、マージされる選択されたロウセットのディスクサイズがこの構成項目の値より大きい場合、ロウセットはレベルポリシーに基づいて分割およびマージされます。ディスクサイズがこの構成項目の値より小さい場合、ロウセットは直接マージされます。単位: MB。

ほとんどの場合、この構成項目は 128 より小さい値に設定されます。設定した値が大きすぎると、累積コンパクションの書き込みが過度に増幅されます。

custom_config_dir

be_custom.conf ファイルが属するディレクトリ。デフォルト値: conf/。一部のデプロイ環境では、システムのアップグレードにより conf/ ディレクトリが上書きされる場合があります。この場合、永続性に関する構成項目は、バックエンドノードの実行時に上書きされる可能性があります。この問題を解決するには、be_custom.conf ファイルを保存する別のディレクトリを指定できます。

default_num_rows_per_column_file_block

  • デフォルト値: 1024.

  • タイプ: int32.

  • 説明: RowBlock に含まれるデータ行の数。

default_rowset_type

  • デフォルト値: BETA.

  • タイプ: string.

  • 説明: バックエンドノードによって指定されたデフォルトのストレージ形式。有効な値: ALPHA および BETA。この構成項目は、主に次の 2 つの目的で設定されます。

    • テーブルの storage_format パラメーターが Default に設定されている場合に、バックエンドノードのストレージ形式を指定します。

    • バックエンドノードがコンパクションを実行する場合に、バックエンドノードのストレージ形式を指定します。

delete_worker_count

  • デフォルト値: 3.

  • 説明: データ削除タスクの実行に使用されるスレッド数。

disable_mem_pools

  • デフォルト値: false.

  • 説明: メモリキャッシュプールを無効にするかどうかを指定します。デフォルトでは、メモリキャッシュプールは無効になっています。

disable_storage_page_cache

  • デフォルト値: false.

  • タイプ: bool.

  • 説明: インデックスキャッシュにページキャッシュを使用するかどうかを指定します。この構成項目は、default_rowset_type 構成項目が BETA に設定されている場合にのみ有効になります。

disk_stat_monitor_interval

  • デフォルト値: 5.

  • 説明: ディスク状態の 2 回の連続チェックの間隔。単位: 秒。

doris_cgroups

説明: Doris に割り当てられた cgroup。

doris_max_pushdown_conjuncts_return_rate

  • デフォルト値: 90.

  • タイプ: int32.

  • 説明: バックエンドノードが HashJoin を実行する場合、バックエンドノードは動的パーティション分割方法を採用して、結合条件を OlapScanner にプッシュします。 OlapScanner によって 32768 行を超えるデータがスキャンされると、バックエンドノードはフィルター条件をチェックします。フィルター条件のフィルターレートがこの構成項目の値より低い場合、Doris はデータフィルターに動的パーティションクリッピング条件を使用しなくなります。

doris_max_scan_key_num

  • デフォルト値: 1024.

  • タイプ: int.

  • 説明: この構成項目は、スキャンノードがクエリリクエストで分割できるスキャンキーの最大数を制限するために使用されます。条件付きクエリリクエストがスキャンノードに到達すると、スキャンノードはクエリ条件のキー列に関連する条件を複数のスキャンキー範囲に分割します。次に、これらのスキャンキー範囲は、データスキャン用に複数のスキャナースレッドに割り当てられます。値が大きいほど、より多くのスキャナースレッドを使用してスキャン操作の並列性を高めることができることを示します。ただし、高並行シナリオでは、スレッドが多すぎると、スケジューリングのオーバーヘッドとシステム負荷が大きくなり、クエリ応答が遅くなる可能性があります。経験的な値は 50 です。

高並行シナリオでは、並列性を高めることができない場合は、この構成項目の値を減らして影響を確認できます。

doris_scan_range_row_count

  • デフォルト値: 524288.

  • タイプ: int32.

  • 説明: バックエンドノードがデータスキャンを実行する場合、バックエンドノードは同じスキャン範囲を複数の ScanRange に分割します。この構成項目は、各 ScanRange のスキャンデータ範囲を指定します。この構成項目を設定して、単一の OlapScanner が I/O スレッドを占有する期間を制限できます。

doris_scanner_queue_size

  • デフォルト値: 1024.

  • タイプ: int32.

  • 説明: TransferThread と OlapScanner 間の RowBatch バッファキューの長さ。 Doris はデータスキャンを非同期で実行します。 OlapScanner によってスキャンされた Rowbatch はスキャナーバッファキューに配置され、上位層の TransferThread によって削除されるのを待ちます。

doris_scanner_row_num

  • デフォルト値: 16384.

  • 説明: 単一の実行で各スキャンニングスレッドによって返されるデータ行の最大数。

doris_scanner_thread_pool_queue_size

  • デフォルト値: 102400.

  • タイプ: int32.

  • 説明: Scanner スレッドプールのキューの長さ。 Doris のスキャンタスクでは、各 Scanner はスレッドタスクとしてスレッドプールに送信され、スケジュールされるのを待ちます。送信されたタスクの数がスレッドプールキューの長さを超えると、後続で送信されたタスクは、キューに空のスロットが表示されるまでブロックされます。

doris_scanner_thread_pool_thread_num

  • デフォルト値: 48.

  • タイプ: int32.

  • 説明: Scanner スレッドプールのスレッド数。 Doris のスキャンタスクでは、各 Scanner はスレッドタスクとしてスケジュールされるためにスレッドプールに送信されます。この構成項目は、Scanner スレッドプールのサイズを決定します。

download_low_speed_limit_kbps

  • デフォルト値: 50.

  • 説明: 最小ダウンロード速度。単位: KB/s。

download_low_speed_time

  • デフォルト値: 300.

  • 説明: ダウンロード時間の制限。単位: 秒。

download_worker_count

    デフォルト
  • デフォルト値: 1.

  • 説明: ダウンロードスレッドの数。

drop_tablet_worker_count

  • デフォルト値: 3.

  • 説明: タブレットの削除に使用されるスレッド数。

enable_metric_calculator

  • デフォルト値: true.

  • 説明: true の値は、メトリック計算機が実行されて、バックエンドノード関連の指標に関する情報を収集することを示します。 false の値は、メトリック計算機が実行されないことを示します。

enable_partitioned_aggregation

  • デフォルト値: true.

  • タイプ: bool.

  • 説明: バックエンドノードが PartitionAggregateNode によって集計操作を実装するかどうかを指定します。 false の値は、集計を実行するために AggregateNode が実行されることを示します。特に指定のない限り、この構成項目を false に設定しないことをお勧めします。

enable_prefetch

  • デフォルト値: true.

  • タイプ: bool.

  • 説明: 集計と結合の計算に PartitionedHashTable が使用される場合に、HashBuket プリフェッチを実行するかどうかを指定します。この構成項目を true に設定することをお勧めします。

enable_quadratic_probing

  • デフォルト値: true.

  • タイプ: bool.

  • 説明: PartitionedHashTable が使用される場合に、2 次検出法を使用してハッシュの競合を解決するかどうかを指定します。値が false の場合、線形検出法を使用してハッシュの競合が解決されます。2 次検出の詳細については、「Wikipedia の Quadratic probing」をご参照ください。

enable_system_metrics

  • デフォルト値: true.

  • 説明: システム指標をオンにするかどうかを指定します。

enable_token_check

  • デフォルト値: true.

  • 説明: 後方互換性のために使用され、後で削除されるかどうかを指定します。

enable_stream_load_record

  • デフォルト値: false.

  • 説明: ストリームロードレコードを有効にするかどうかを指定します。デフォルトでは、この機能は無効になっています。

es_http_timeout_ms

  • デフォルト値: 5000.

  • 説明: HTTP 経由で ES に接続するためのタイムアウト期間。単位: ミリ秒。

es_scroll_keepalive

  • デフォルト値: 5.

  • 説明: es スクロールが維持される期間。単位: 分。

etl_thread_pool_queue_size

  • デフォルト値: 256.

  • 説明: 抽出、変換、ロード (ETL) スレッドプールのサイズ。

exchg_node_buffer_size_bytes

  • デフォルト値: 10485760.

  • タイプ: int32.

  • 説明: ExchangeNode のバッファキューのサイズ。単位: バイト。送信側から送信されたデータのサイズが ExchangeNode のバッファサイズより大きい場合、後続で送信されるデータは、バッファがデータ書き込み用のスペースを解放するまでブロックされます。

file_descriptor_cache_capacity

  • デフォルト値: 32768.

  • 説明: キャッシュされたファイルハンドルの数。

cache_clean_interval

  • デフォルト値: 1800.

  • 説明: ファイルハンドルキャッシュがクリーンアップされる間隔。長時間使用されていないファイルハンドルはクリーンアップされます。この構成項目は、Segment Cache がクリーンアップされる間隔も決定します。単位: 秒。

flush_thread_num_per_store

  • デフォルト値: 2.

  • 説明: 各ストアのメモリテーブルを更新するために使用されるスレッド数。

fragment_pool_queue_size

  • デフォルト値: 2048.

  • 説明: 単一ノードで処理できるクエリリクエストの上限。

fragment_pool_thread_num_min

  • デフォルト値: 64.

  • 説明: フラグメント実行スレッドプールの最小スレッド数。

fragment_pool_thread_num_max

  • デフォルト値: 256.

  • 説明: クエリスレッドの数。デフォルトでは、最小 64 スレッドが開始されます。後続のクエリリクエストは動的にスレッドを作成し、最大 256 スレッドが作成されます。

heartbeat_service_port

  • デフォルト値: 9050.

  • タイプ: int32.

  • 説明: バックエンドノードのハートビートサービスポート (thrift)。フロントエンドノードからのハートビートの受信に使用されます。

heartbeat_service_thread_count

  • デフォルト値: 1.

  • タイプ: int32.

  • 説明: バックエンドノードでハートビートサービスを実行するスレッド数。デフォルト値を変更しないことをお勧めします。

ignore_broken_disk

  • デフォルト値: false.

  • 説明: バックエンドノードの実行時に、storage_root_path 構成項目で指定されたディレクトリがチェックされます。

    • 値が true のシナリオ: ディレクトリが存在しないか、ディスクの損傷のためにアクセスできない場合、ディレクトリは無視されます。他のディレクトリが使用可能な場合、バックエンドノードは正常に実行できます。

    • 値が false のシナリオ: ディレクトリが存在しないか、ディスクの損傷のためにアクセスできない場合、バックエンドノードは停止します。

ignore_load_tablet_failure

  • デフォルト値: false.

  • タイプ: bool.

  • 説明: バックエンドノードの実行時に、storage_root_path 構成項目で指定されたディレクトリのエラーを無視するかどうかを指定します。

バックエンドノードの実行時に、各ディレクトリに対してスレッドが開始され、タブレットヘッダーのメタデータがロードされます。デフォルトでは、ディレクトリでメタデータのロードに失敗した場合、バックエンドノードは停止し、次のエラーメッセージが be.INFO ログに返されます。

load tablets from header failed, failed tablets size: xxx, path=xxx

「failed tablets size: xxx」情報は、メタデータのロードに失敗したタブレットの数を示します。ログには、タブレットの詳細も記録されます。エラーのトラブルシューティングには、手動による介入が必要です。次のいずれかの方法を使用して、エラーを解決できます。

  • メタデータを修復できず、他のコピーが正常な場合は、meta_tool ツールを使用して、メタデータをロードできないタブレットを削除できます。

  • この構成項目を true に設定します。このようにして、エラーは無視され、バックエンドノードは正常に実行されます。

ignore_rowset_stale_unconsistent_delete

  • デフォルト値: false.

  • タイプ: bool.

  • 説明: ロウセットが一貫性のあるバージョンパスを形成できない場合に、古いマージ済みロウセットを削除するかどうかを指定します。

古いマージ済みロウセットは 30 分後に削除されます。異常なシナリオでは、古いマージ済みロウセットが削除されると、クエリの一貫性のあるパスを構築できません。この構成項目の値が false の場合、プログラムチェックは厳密であり、エラーを報告した後にプログラムは終了します。この構成項目の値が true の場合、プログラムはエラーを無視して正常に実行されます。ほとんどの場合、エラーが無視されてもクエリは影響を受けませんが、fe でマージバージョンが発行されると -230 エラーが報告されます。

inc_rowset_expired_sec

  • デフォルト値: 1800.

  • 説明: アクティブ化されたデータをインポートし、エンジンを増分クローニングに保存するために使用される期間。単位: 秒。

index_stream_cache_capacity

  • デフォルト値: 10737418240.

  • 説明: BloomFilter、Min、Max に関する情報などの統計をキャッシュする容量。

kafka_api_version_request

  • デフォルト値: true.

  • 説明: 依存する Kafka バージョンが 0.10.0.0 より前の場合、この構成項目を false に設定します。

kafka_broker_version_fallback

  • デフォルト値: 0.10.0.

  • 説明: 依存する Kafka バージョンが 0.10.0.0 より前で、kafka_api_version_request 構成項目が false に設定されている場合、この構成項目で指定された値が適用されます。有効な値: 0.9.0.x および 0.8.x.y。

load_data_reserve_hours

  • デフォルト値: 4.

  • 説明: この構成項目は、ミニロードに使用されます。ミニロードデータファイルは、この構成項目で指定された期間が経過すると削除されます。単位: 時間。

load_error_log_reserve_hours

  • デフォルト値: 48.

  • 説明: ロードエラーログが削除されるまでの期間。単位: 時間。

load_process_max_memory_limit_bytes

  • デフォルト値: 107374182400 (100 GB)。

  • 説明: 単一ノード上のすべてのインポートスレッドによって占有されるメモリの最大サイズ。 Doris のアップグレード時にロードパフォーマンスを確保するために、この構成項目を大きな値に設定することをお勧めします。

load_process_max_memory_limit_percent

  • デフォルト値: 80.

  • 説明: 単一ノード上のすべてのインポートスレッドによって占有されるメモリの最大パーセンテージ。 Doris のアップグレード時にロードパフォーマンスを確保するために、この構成項目を大きな値に設定することをお勧めします。

log_buffer_level

説明: ログフラッシュ戦略。デフォルトでは、「メモリに保持」戦略が適用されます。

madvise_enormous_pages

  • デフォルト値: false.

  • 説明: Linux メモリの巨大ページを使用するかどうかを指定します。デフォルトでは、Linux メモリの巨大ページは使用されません。

make_snapshot_worker_count

  • デフォルト値: 5.

  • 説明: スナップショットの作成に使用されるスレッド数。

max_client_cache_size_per_host

  • デフォルト値: 10.

  • 説明: 各ホストのクライアントキャッシュの最大数。バックエンドノードは、複数のタイプのクライアントキャッシュをサポートしています。現在、同じ仕様のクライアントキャッシュが使用されています。必要に応じて、さまざまなタイプのクライアントキャッシュが使用されます。

max_base_compaction_threads

  • デフォルト値: 4.

  • タイプ: int32.

  • 説明: ベースコンパクションのスレッドプールの最大スレッド数。

max_cumu_compaction_threads

  • デフォルト値: 10.

  • タイプ: int32.

  • 説明: 累積コンパクションのスレッドプールの最大スレッド数。

max_consumer_num_per_group

  • デフォルト値: 3.

  • 説明: データコンシューマーグループのコンシューマーの最大数。ルーチンロードに使用されます。

min_cumulative_compaction_num_singleton_deltas

  • デフォルト値: 5.

  • 説明: 増分ファイルの最小数。累積コンパクション戦略として使用されます。

max_cumulative_compaction_num_singleton_deltas

  • デフォルト値: 1000.

  • 説明: 増分ファイルの最大数。累積コンパクション戦略として使用されます。

max_download_speed_kbps

  • デフォルト値: 50000.

  • 説明: 最大ダウンロード速度。単位: KB/s。

max_free_io_buffers

  • デフォルト値: 128.

  • 説明: IoMgr によって予約された I/O バッファのサイズは、1024 バイトから 8 MB です。 IoMgr によって予約されたすべての I/O バッファの合計サイズは、最大 2 GB です。

max_garbage_sweep_interval

  • デフォルト値: 3600 (1 時間)。

  • 説明: ディスクガベージがクリーンアップされる最大間隔。

max_memory_sink_batch_count

  • デフォルト値: 20.

  • 説明: 外部スキャンキャッシュの最大バッチ数。この構成項目は、通常、デフォルト値が 1024 の max_memory_cache_batch_count batch_size 行構成項目と一緒に設定されます。2 つの構成項目のデフォルト設定が適用されると、20 バッチの外部スキャンキャッシュが実行され、各バッチに 1024 行のデータがキャッシュされます。

max_percentage_of_error_disk

  • デフォルト値: 0.

  • タイプ: int32.

  • 説明: ストレージエンジンで許容される損傷したハードディスクのパーセンテージ。パーセンテージがこの構成項目の値を超えると、バックエンドノードは停止します。

max_pushdown_conditions_per_column

  • デフォルト値: 1024.

  • タイプ: int.

  • 説明: クエリリクエストで単一列のストレージエンジンにプッシュダウンできる条件の最大数。クエリプランが実行されると、一部の列のフィルター条件をストレージエンジンにプッシュダウンできます。このようにして、ストレージエンジンのインデックス情報を使用してデータをフィルターできます。その結果、クエリでスキャンする必要があるデータ量が削減されます。クエリで使用可能な条件には、等価条件と IN 述語の条件が含まれます。ほとんどの場合、この構成項目は、WHERE colA IN (1,2,3,4,...) などの IN 述語を含むクエリにのみ有効です。値が大きいほど、IN 述語のより多くの条件をストレージエンジンにプッシュできることを示します。ただし、条件が多すぎるとランダム読み取りが増加し、場合によってはクエリ効率が低下する可能性があります。この構成項目は、セッションレベルで個別に構成できます。

この例では、テーブル構造は id INT, col2 INT, col3 varchar (32), ... です。クエリステートメントには ... WHERE id IN (v1, v2, v3, ...) が含まれています。 IN 述語の条件の数がこの構成項目の値を超える場合は、この構成項目の値を増やして、クエリ応答効率が向上するかどうかを確認してください。

max_runnings_transactions_per_txn_map

  • デフォルト値: 100.

  • 説明: txn マネージャーの各 txn_partition_map の最大 txn 数。この構成項目は、多すぎる txn が txn マネージャーに保存されないようにするために使用されます。

max_send_batch_parallelism_per_job

  • デフォルト値: 5.

  • タイプ: int.

  • 説明: バッチ処理のために OlapTableSink からデータを送信する際の最大同時実行数。 send_batch_parallelism の値は、この構成項目の値を超えてはなりません。それ以外の場合、この構成項目の値は send_batch_parallelism の値に変更されます。

max_tablet_num_per_shard

  • デフォルト値: 1024.

  • 説明: 各シャードのタブレットの数。この構成項目は、タブレットのレイアウトを計画し、ディレクトリに過剰な数のテーブルサブディレクトリが含まれないようにするために使用されます。

max_tablet_version_num

  • デフォルト値: 500.

  • タイプ: int.

  • 説明: タブレットの最大バージョン数。この構成項目は、頻繁なインポートまたは時期尚早なコンパクションによって発生する多数のバージョン累積問題を防ぐために使用されます。バージョン数がこの構成項目の値を超えると、インポートタスクは拒否されます。

mem_limit

  • デフォルト値: 80%.

  • タイプ: string.

  • 説明: バックエンドノードが使用するサーバーメモリの最大パーセンテージ。この構成項目は、バックエンドノードメモリがマシンのメモリを過度に占有しないようにするために使用されます。値は 0 または正のパーセンテージである必要があります。値が 100% を超える場合、100% が有効値として採用されます。

memory_limitation_per_thread_for_schema_change

  • デフォルト値: 2.

  • 説明: スキーマ変更タスクに許可される最大メモリサイズ。単位: GB。

memory_maintenance_sleep_time_s

  • デフォルト値: 10.

  • 説明: メモリ反復間の休止期間。単位: 秒。

memory_max_alignment

  • デフォルト値: 16.

  • 説明: アライメントの最大メモリサイズ。

read_size

  • デフォルト値: 8388608.

  • 説明: os に送信される読み取りデータのサイズ。シークを導入せずにディスクをビジー状態に保つために、レイテンシとプロセス全体の間でトレードオフが行われます。 8 MB のデータが読み取られる場合、ランダム I/O とシーケンシャル I/O のパフォーマンスは似ています。

min_buffer_size

  • デフォルト値: 1024.

  • 説明: 最小読み取りバッファサイズ。単位: バイト。

min_compaction_failure_interval_sec

  • デフォルト値: 5.

  • タイプ: int32.

  • 説明: 累積コンパクション中に、選択されたタブレットのマージに失敗した場合、選択されたタブレットは、再び選択されるまでに一定期間待機します。待機期間は、この構成項目の値です。単位: 秒。

min_compaction_threads

  • デフォルト値: 10.

  • タイプ: int32.

  • 説明: コンパクションスレッドプールの最小スレッド数。

min_file_descriptor_number

  • デフォルト値: 60000.

  • 説明: バックエンドノードのファイルハンドルの最小数。

min_garbage_sweep_interval

  • デフォルト値: 180.

  • 説明: ディスクガベージがクリーンアップされる最小間隔。単位: 秒。

mmap_buffers

  • デフォルト値: false.

  • 説明: mmap を使用してメモリを割り当てるかどうかを指定します。デフォルトでは、mmap は使用されません。

num_cores

  • デフォルト値: 0.

  • タイプ: int32.

  • 説明: バックエンドノードが使用できる CPU コアの数。 0 の値は、バックエンドノードが /proc/cpuinfo からマシンの CPU コア数を取得することを示します。

num_disks

  • デフォルト値: 0.

  • 説明: マシンのディスクの数。 0 の値は、システム設定が適用されることを示します。

num_threads_per_core

  • デフォルト値: 3.

  • 説明: 各コアが実行するスレッド数。ほとんどの場合、値はコア数の 2 倍または 3 倍に設定されます。これにより、過度のジッターを引き起こすことなく、コアをビジー状態に保ちます。

num_threads_per_disk

  • デフォルト値: 0.

  • 説明: 各ディスクの最大スレッド数。これは、各ディスクの最大キュー深度でもあります。

number_tablet_writer_threads

  • デフォルト値: 16.

  • 説明: タブレット書き込みのスレッド数。

path_gc_check

  • デフォルト値: true.

  • 説明: リサイクルスキャンデータスレッドのチェックを有効にするかどうかを指定します。デフォルトでは、チェックは有効になっています。

path_gc_check_interval_second

  • デフォルト値: 86400.

  • 説明: リサイクルスキャンデータスレッドのチェック間隔。単位: 秒。

path_gc_check_step

  • デフォルト値: 1000.

  • 説明: gc チェックのステップサイズ。

path_gc_check_step_interval_ms

  • デフォルト値: 10.

  • 説明: 2 つの gc チェック間隔。

path_scan_interval_second

  • デフォルト値: 86400.

  • 説明: gc チェックの前に実行されるスキャンの間隔。

pending_data_expire_time_sec

  • デフォルト値: 1800.

  • 説明: ストレージエンジンによって保持される検証されていないデータの最大期間。単位: 秒。

periodic_counter_update_period_ms

  • デフォルト値: 500.

  • 説明: レート計算機とサンプリング計算機が更新されるサイクル。単位: ミリ秒。

plugin_path

  • デフォルト値: ${DORIS_HOME}/plugin.

  • 説明: プラグインのディレクトリ。

port

  • デフォルト値: 20001.

  • タイプ: int32.

  • 説明: バックエンドノードのテストに使用されるポート。

pprof_profile_dir

  • デフォルト値: ${DORIS_HOME}/log.

  • 説明: pprof プロファイルが保存されるディレクトリ。

priority_networks

説明: この構成項目は、多数の IP アドレスを持つサーバーの選択戦略を宣言するために使用されます。最大 1 つの IP アドレスがこのリストの CIDR ブロック内に存在する必要があります。 CIDR ブロックはセミコロン (;) で区切る必要があります。たとえば、リストに 10.10.10.0/24 が含まれていて、CIDR ブロック内に IP アドレスが存在しない場合、IP アドレスはランダムに選択されます。

priority_queue_remaining_tasks_increased_frequency

  • デフォルト値: 512.

  • 説明: BlockingPriorityQueue のタスクの優先順位を調整する頻度。

publish_version_worker_count

  • デフォルト値: 8.

  • 説明: 有効バージョンのスレッド数。

pull_load_task_dir

  • デフォルト値: ${DORIS_HOME}/var/pull_load.

  • 説明: ロードタスクのプルに使用されるディレクトリ。

push_worker_count_high_priority

  • デフォルト値: 3.

  • 説明: 高優先度タスクの処理に使用されるインポートスレッド数。

push_worker_count_normal_priority

  • デフォルト値: 3.

  • 説明: 通常優先度タスクの処理に使用されるインポートスレッド数。

push_write_mbytes_per_sec

  • デフォルト値: 10.

  • タイプ: int32.

  • 説明: データインポート速度。デフォルトでは、最大速度は 1 秒あたり 10 MB です。この構成項目は、すべてのインポート方法に適用されます。単位: MB。

query_scratch_dirs

  • デフォルト値: ${DORIS_HOME}.

  • タイプ: string.

  • 説明: データがディスクにスピルされるときに一時データを保存するためにバックエンドノードによって選択されるディレクトリ。ストレージディレクトリの構成に似ています。複数のディレクトリはセミコロン (;) で区切ります。

release_snapshot_worker_count

  • デフォルト値: 5.

  • 説明: スナップショットの解放に使用されるスレッド数。

report_disk_state_interval_seconds

  • デフォルト値: 60.

  • 説明: エージェントがディスク状態をフロントエンドノードに報告する間隔。単位: 秒。

report_tablet_interval_seconds

  • デフォルト値: 60.

  • 説明: エージェントが olap テーブルをフロントエンドノードに報告する間隔。単位: 秒。

report_task_interval_seconds

  • デフォルト値: 10.

  • 説明: エージェントがタスクシグネチャをフロントエンドノードに報告する間隔。単位: 秒。

result_buffer_cancelled_interval_time

  • デフォルト値: 300.

  • 説明: 結果バッファがキャンセルされる間隔。単位: 秒。

routine_load_thread_pool_size

  • デフォルト値: 10.

  • 説明: ルーチンロードタスクのスレッドプールサイズ。この構成の値は、デフォルト値が 5 の max_concurrent_task_num_per_be 構成項目より大きくする必要があります。

row_nums_check

  • デフォルト値: true.

  • 説明: バックエンドノード、CE ノード、およびスキーマ変更の行番号をチェックするかどうかを指定します。 true の値は、チェックが有効になっていることを示します。 false の値は、チェックが無効になっていることを示します。

row_step_for_compaction_merge_log

  • デフォルト値: 0.

  • タイプ: int64.

  • 動的に変更可能: サポートされています。

  • 説明: コンパクション中にログが出力されるマージデータ行の数。この構成項目が 0 に設定されている場合、コンパクション中にログは出力されません。

scan_context_gc_interval_min

  • デフォルト値: 5.

  • 説明: コンテキスト gc スレッドのスケジューリングサイクル。単位: 分。

send_batch_thread_pool_thread_num

  • デフォルト値: 256.

  • タイプ: int32.

  • 説明: SendBatch スレッドプールのスレッド数。 NodeChannel のデータ送信タスクでは、各 NodeChannel の SendBatch 操作は、スケジューリングを待つスレッドタスクとしてスレッドプールに送信されます。この構成項目は、SendBatch スレッドプールのサイズを決定します。

send_batch_thread_pool_queue_size

  • デフォルト値: 102400.

  • タイプ: int32.

  • 説明: SendBatch スレッドプールのキューの長さ。 NodeChannel のデータ送信タスクでは、各 NodeChannel の SendBatch 操作は、スレッドタスクとしてスレッドプールに送信され、スケジュールされるのを待ちます。送信されたタスクの数がスレッドプールキューの長さを超えると、後続で送信されたタスクは、キューに空のスロットが表示されるまでブロックされます。

serialize_batch

  • デフォルト値: false.

  • 説明: バックエンドノード間のリモートプロシージャコール (RPC) のために RowBatch をシリアル化するかどうかを指定します。この構成項目は、クエリレベルでデータ送信を構成するために使用されます。

sleep_one_second

  • デフォルト値: 1 (1 秒)。

  • タイプ: int32.

  • 説明: バックエンドノードのスレッドの休止期間。変更できません。この構成項目はグローバル変数です。

small_file_dir

  • デフォルト値: ${DORIS_HOME}/lib/small_file/.

  • 説明: SmallFileMgr によってダウンロードされたファイルが属するディレクトリ。

snapshot_expire_time_sec

  • デフォルト値: 172800 (48時間)。

  • 説明: スナップショットがクリーンアップされる間隔。

status_report_interval

  • デフォルト値: 5.

  • 説明: プロファイルレポートが構成される間隔。単位: 秒。

storage_flood_stage_left_capacity_bytes

  • デフォルト値: 1073741824 (1 GB)。

  • 説明: データディレクトリで使用可能な最小メモリサイズ。

storage_flood_stage_usage_percent

  • デフォルト値: 95.

  • 説明: データディレクトリで使用されるメモリの最大比率。 storage_flood_stage_usage_percent および storage_flood_stage_left_capacity_bytes 構成項目は、データディレクトリの最大ディスク容量を制限します。 2 つの構成項目で指定された値に達すると、データディレクトリにこれ以上データを書き込むことはできません。

storage_medium_migrate_count

  • デフォルト値: 1.

  • 説明: クローニングのスレッド数。

storage_page_cache_limit

  • デフォルト値: 20%.

  • 説明: ストレージページサイズのキャッシュ。

storage_page_cache_shard_size

  • デフォルト値: 16.

  • 説明: StoragePageCache のシャードサイズ。有効な値: 2^n (n = 0, 1, 2, ...)。 StoragePageCache のロックの競合を減らすために、この構成項目をバックエンドノードの CPU コア数に近い値に設定することをお勧めします。

index_page_cache_percentage

  • デフォルト値: 10.

  • タイプ: int32.

  • 説明: すべてのページキャッシュにおけるインデックスページキャッシュの比率。有効な値: 0 から 100。

storage_root_path

  • デフォルト値: ${DORIS_HOME}.

  • タイプ: string.

  • 説明: バックエンドノードデータが保存されるディレクトリ。複数のディレクトリはセミコロン (;) で区切ります。各ディレクトリのストレージメディア (ソリッドステートドライブ (SSD) やハードディスクドライブ (HDD) など) を指定できます。各ディレクトリの末尾に容量制限を追加し、区切り文字としてカンマ (,) を使用できます。 SSD と HDD を同時に使用しない場合は、例 1 と例 2 のように構成を実行したり、フロントエンドノードのデフォルトのストレージメディアを変更したりする必要はありません。ストレージディレクトリを指定するだけで済みます。

    • 例 1: storage_root_path=/home/disk1/doris.HDD;/home/disk2/doris.SSD;/home/disk2/doris

    • ストレージメディアが SSD の場合は、ストレージディレクトリの末尾に .SSD を追加します。ストレージメディアが HDD の場合は、ストレージディレクトリの末尾に .HDD を追加します。

    • 例 2: storage_root_path=/home/disk1/doris,medium:hdd;/home/disk2/doris

    • ストレージメディアに関係なく、ストレージディレクトリの末尾にサフィックスを追加する必要はありません。この構成項目を設定するだけで済みます。

      説明

      medium:ssd: の意味:

      • /home/disk1/doris.HDD: ストレージメディアは HDD です。

      • /home/disk2/doris.SSD: ストレージメディアは SSD です。

      • /home/disk2/doris: ストレージメディアは HDD です。

      • /home/disk1/doris,medium:hdd: ストレージメディアは HDD です。

      • /home/disk2/doris,medium:ssd: ストレージメディアは SSD です。

storage_strict_check_incompatible_old_format

  • デフォルト値: true.

  • タイプ: bool.

  • 動的に変更可能: サポートされていません。

  • 説明: この構成項目は、以前のバージョンの互換性のない形式が使用されている場合に、厳密な検証方法を使用するかどうかをチェックするために使用されます。

以前のバージョンの HDR 形式を使用する場合に厳密な検証方法が使用されている場合、プログラムは致命的なログを出力した後に存在します。それ以外の場合、プログラムは警告ログを出力します。

streaming_load_max_mb

  • デフォルト値: 10240.

  • タイプ: int64.

  • 動的に変更可能: サポートされています。

  • 説明: ストリームロードで許可される CSV データの最大量。単位: MB。

ストリームロードは、一般に数 GB のデータのロードに適しており、大量のデータのロードには適していません。

streaming_load_json_max_mb

  • デフォルト値: 100.

  • タイプ: int64.

  • 動的に変更可能: サポートされています。

  • 説明: ストリームロードで許可される JSON データの最大量。単位: MB。

JSON データなど、一部の特定の形式のデータは分割できません。システムは、データを解析する前にすべてのデータをメモリに保存する必要があります。この構成項目は、ストリームロードでロードできるデータの最大量を制限するために使用されます。

streaming_load_rpc_max_alive_time_sec

  • デフォルト値: 1200.

  • 説明: TabletsChannel の有効期間。チャネルがデータを受信しない場合、チャネルは削除されます。

sync_tablet_meta

  • デフォルト値: false.

  • 説明: ストレージエンジンが同期を開いてディスクに保持するかどうかを指定します。

sys_log_dir

  • デフォルト値: ${DORIS_HOME}/log.

  • タイプ: string.

  • 説明: バックエンドノードのログデータが保存されるディレクトリ。

sys_log_level

  • デフォルト値: INFO.

  • 説明: ログレベル。有効なログレベル (低い方から高い方へ): INFO、WARNING、ERROR、FATAL。

sys_log_roll_mode

  • デフォルト値: SIZE-MB-1024.

  • 説明: 分割ログのサイズ。各分割ログのサイズは 1 GB です。

sys_log_roll_num

  • デフォルト値: 10.

  • 説明: 予約済みログファイルの数。

sys_log_verbose_level

  • デフォルト値: 10.

  • 説明: ログ表示レベル。コードの VLOG の先頭にあるログ出力を制御するために使用されます。

sys_log_verbose_modules

説明: ログ出力モジュール。 olap が書き込まれている場合、olap モジュールの下のログのみが出力されます。

tablet_map_shard_size

  • デフォルト値: 1.

  • 説明: tablet_map_lock フラグメントサイズ。有効な値: 2^n (n = 0, 1, 2, 3, 4)。この構成項目は、タブレットを管理するために使用されます。

tablet_meta_checkpoint_min_interval_secs

  • デフォルト値: 600.

  • 説明: TabletMeta チェックポイントスレッドがポーリングされる間隔。単位: 秒。

tablet_meta_checkpoint_min_new_rowsets_num

  • デフォルト値: 10.

  • 説明: TabletMeta チェックポイントのロウセットの最小数。

tablet_scan_frequency_time_node_interval_second

  • デフォルト値: 300.

  • タイプ: int64.

  • 説明: query_scan_count メトリックの値が記録される間隔。タブレットがスキャンされる頻度を計算するために、query_scan_count メトリックの値が特定の間隔で記録されます。

tablet_stat_cache_update_interval_second

  • デフォルト値: 300.

  • 説明: タブレット状態キャッシュが更新される間隔。単位: 秒。

tablet_rowset_stale_sweep_time_sec

  • デフォルト値: 1800.

  • タイプ: int64.

  • 説明: マージされたロウセットバージョンの有効期限。マージされたバージョンのディレクトリにロウセットが最後に作成された時刻を now() で指定された時刻から引いた結果がこの構成項目の値より大きい場合、現在のディレクトリはクリーンアップされ、マージされたロウセットは削除されます。単位: 秒。

データ書き込みが頻繁すぎてディスク容量が不足している場合は、この構成項目を比較的小さな値に設定できます。この構成項目で指定された時間が 5 分未満の場合、フロントエンドノードはマージされたバージョンを照会できず、-230 エラーが報告されます。

tablet_writer_open_rpc_timeout_sec

  • デフォルト値: 60 (60 秒)。

  • 説明: リモートバックエンドノードでタブレットライターを開く RPC タイムアウト期間。この構成項目は、時間がほとんどかからないインポート中にバッチ (1024 行) を送信する RPC タイムアウト期間を決定します。 RPC には複数バッチのメモリの書き込みが含まれる場合があるため、バッチの書き込みによって RPC タイムアウトが発生する可能性があります。「send batch fail」エラーなどのタイムアウトエラーを減らすには、この構成項目を変更します。 write_buffer_size 構成項目の値を増やす場合は、この構成項目の値も同時に増やす必要があります。

tablet_writer_ignore_eovercrowded

  • デフォルト値: false.

  • タイプ: bool.

  • 説明: データ書き込み中に「[E1011]The server is overcrowded」bRPC エラーを無視するかどうかを指定します。

「[E1011]The server is overcrowded」エラーが返された場合は、brpc_socket_max_unwritten_bytes 構成項目を変更できます。 brpc_socket_max_unwritten_bytes 構成項目は動的に変更できないことに注意してください。データ書き込みエラーを一時的に防ぐために、tablet_writer_ignore_eovercrowded 構成項目を true に設定できます。この構成項目は、データ書き込みにのみ影響します。混雑の問題は、他の RPC リクエストでも引き続きチェックされます。

tc_free_memory_rate

  • デフォルト値: 20.

  • 説明: 使用可能なメモリの比率。有効な値: 0 から 100。

tc_max_total_thread_cache_bytes

  • デフォルト値: 1073741824.

  • タイプ: int64.

  • 説明: TCMalloc の合計スレッドキャッシュサイズ。この構成項目で指定された制限は厳密には実装されていません。実際の操作における合計スレッドキャッシュサイズは、制限を超える場合があります。詳細については、「TCMalloc : Thread-Caching Malloc」をご参照ください。

システムが高ストレスシナリオにあり、バックエンドノードのスレッドスタック (多数の SpinLock 関連スタックなど) を介して TCMalloc ロック競合フェーズに多数のスレッドがあることが判明した場合、この構成項目の値を増やしてシステムパフォーマンスを向上させることができます。

tc_use_memory_min

  • デフォルト値: 10737418240.

  • 説明: TCmalloc の最小メモリサイズ。 TCmalloc のメモリサイズがこの構成項目の値より小さい場合、TCmalloc はオペレーティングシステムに返されません。

thrift_client_retry_interval_ms

  • デフォルト値: 1000.

  • タイプ: int64.

  • 説明: フロントエンドノードの thrift サーバーでアバランシェが発生した場合に、バックエンドノードの thrift クライアントが再試行される間隔。単位: ミリ秒。

thrift_connect_timeout_seconds

  • デフォルト値: 3.

  • 説明: thrift クライアントの接続のデフォルトのタイムアウト期間。単位: 秒。

thrift_rpc_timeout_ms

  • デフォルト値: 5000.

  • 説明: thrift のデフォルトのタイムアウト期間。単位: ミリ秒。

thrift_server_type_of_fe

説明: フロントエンドノードの thrift サービスで使用されるサービスタイプ。この構成項目の値は大文字と小文字が区別されず、フロントエンドノードに設定した thrift_server_type 構成の値と同じである必要があります。タイプ: string。有効な値: THREADED および THREAD_POOL。

  • THREADED の値は、モデルが非ブロッキング I/O モデルであることを示します。

  • THREAD_POOL の値は、モデルがブロッキング I/O モデルであることを示します。

total_permits_for_compaction_score

  • デフォルト値: 10000.

  • タイプ: int64.

  • 動的に変更可能: サポートされています。

  • 説明: すべてのコンパクションタスクによって保持される許可の上限。この構成項目は、コンパクションのメモリ消費量を制限するために使用されます。

trash_file_expire_time_sec

  • デフォルト値: 259200.

  • 説明: ごみ箱がクリーンアップされる間隔。ディスク容量が不足している場合、この構成項目は適用されない場合があります。

txn_commit_rpc_timeout_ms

  • デフォルト値: 10000.

  • 説明: txn 送信の RPC タイムアウト期間。

txn_map_shard_size

  • デフォルト値: 128.

  • 説明: txn_map_lock フラグメントサイズ。有効な値: 2^n (n = 0, 1, 2, 3, 4)。この構成項目は、txn の管理のパフォーマンスを向上させるために使用されます。

txn_shard_size

  • デフォルト値: 1024.

  • 説明: txn_lock フラグメントサイズ。有効な値: 2^n (n = 0, 1, 2, 3, 4)。この構成項目は、txn の管理のパフォーマンスを向上させるために使用されます。

unused_rowset_monitor_interval

  • デフォルト値: 30.

  • 説明: 期限切れのロウセットがクリーンアップされる間隔。単位: 秒。

upload_worker_count

  • デフォルト値: 1.

  • 説明: ファイルのアップロードに使用されるスレッドの最大数。

use_mmap_allocate_chunk

  • デフォルト値: false.

  • 説明: mmap を使用してブロックを割り当てるかどうかを指定します。この機能を有効にする場合は、デフォルト値が 65530 の vm.max_map_count の値を増やすことをお勧めします。 sysctl -w vm.max_map_count=262144 または echo 262144> /proc/sys/vm/max_map_count コマンドを実行して、ルートユーザーとして max_map_count を操作できます。この構成項目を true に設定する場合は、chunk_reserved_bytes_limit 構成項目を比較的大きな数値に設定して、良好なパフォーマンスを確保する必要があります。

user_function_dir

  • デフォルト値: ${DORIS_HOME}/lib/udf.

  • 説明: udf 関数のディレクトリ。

webserver_num_workers

  • デフォルト値: 48.

  • 説明: webserver のワーカースレッドのデフォルト数。

webserver_port

  • デフォルト値: 8040.

  • タイプ: int32.

  • 説明: バックエンドノードの HTTP サーバーのサービスポート

write_buffer_size

  • デフォルト値: 104857600.

  • 説明: フラッシュする前のバッファのサイズ。データがインポートされる前に、データはバックエンドノードのメモリブロックに書き込まれ、メモリブロックのサイズがしきい値に達した場合にのみディスクに書き戻されます。デフォルトサイズ: 100 MB。しきい値が非常に小さい場合、バックエンドノードに多数の小さなファイルが生成される可能性があります。この問題を解決するには、しきい値を増やします。ただし、しきい値が非常に大きい場合、RPC タイムアウトが発生する可能性があります。しきい値を適切な値に設定してください。

zone_map_row_num_threshold

  • デフォルト値: 20.

  • タイプ: int32.

  • 説明: ページの行数がこの構成項目の値より少ない場合、ゾーンマップは作成されません。この構成項目は、データの拡張を減らすために使用されます。

aws_log_level

  • デフォルト値: 3.

  • タイプ: int32.

  • 説明: Amazon Web Services (AWS) SDK のログレベル。サンプルコード:

    Off = 0,
       Fatal = 1,
       Error = 2,
       Warn = 3,
       Info = 4,
       Debug = 5,
       Trace = 6

enable_tcmalloc_hook

  • デフォルト値: true.

  • タイプ: bool.

  • 説明: Hook TCmalloc を作成または削除するかどうかを指定します。現在、スレッドローカル MemTracker は Hook で計算されます。

mem_tracker_consume_min_size_bytes

  • デフォルト値: 1048576.

  • タイプ: int32.

  • 説明: MemTracker が消費または解放されるときの TCMalloc Hook の最小長。この構成項目の値より小さい消費サイズは累積され、MemTracker の消費または解放の頻繁な呼び出しが防止されます。この構成項目の値を減らすと、MemTracker が消費または解放される頻度が増加します。この構成項目の値を増やすと、MemTracker の統計が不正確になる場合があります。理論的には、MemTracker の統計と MemTracker の正確な値の差は、次の式に基づいて計算できます。mem_tracker_consume_min_size_bytes の値 × MemTracker が属するバックエンドノードのスレッド数。

max_segment_num_per_rowset

  • デフォルト値: 200.

  • タイプ: int32.

  • 説明: データインポート中に新しく生成されたロウセットのセグメントの最大数。この構成項目の値を超えると、データインポートは失敗し、-238 エラーが返されます。ロウセットにセグメントが多すぎると、コンパクション中に大量のメモリが占有され、メモリ不足 (OOM) エラーが発生する可能性があります。

remote_storage_read_buffer_mb

  • デフォルト値: 16.

  • タイプ: int32.

  • 説明: Hadoop 分散ファイルシステム (HDFS) およびオブジェクトストレージサービス (OSS) からファイルを読み取るときに使用されるキャッシュのサイズ。単位: MB。この構成項目の値を増やすと、リモートデータを読み取る呼び出しの数を減らすことができますが、メモリオーバーヘッドが増加します。

external_table_connect_timeout_sec

  • デフォルト値: 5.

  • タイプ: int32.

  • 説明: 外部テーブルが接続されているときのタイムアウト期間。単位: 秒。

segment_cache_capacity

  • デフォルト値: 1000000.

  • タイプ: int32.

  • 説明: Segment Cache によってキャッシュされるセグメントの最大数。

デフォルト値は現在経験的な値にすぎず、実際のシナリオに基づいて変更する必要がある場合があります。この構成項目の値を増やすと、より多くのセグメントをキャッシュでき、I/O を削減できます。この構成項目の値を減らすと、使用されるメモリが少なくなります。

auto_refresh_brpc_channel

  • デフォルト値: false.

  • タイプ: bool.

  • 説明: bRPC 接続が取得されると、hand_shake RPC を介した接続の可用性が評価されます。接続が利用できない場合は、別の接続が確立されます。

high_priority_flush_thread_num_per_store

  • デフォルト値: 1.

  • タイプ: int32.

  • 説明: 各ストレージディレクトリの高優先度インポートタスクに使用されるフラッシュスレッドの数。

routine_load_consumer_pool_size

  • デフォルト値: 10.

  • タイプ: int32.

  • 説明: ルーチンロードで使用されるデータコンシューマーのキャッシュの数。

load_task_high_priority_threshold_second

  • デフォルト値: 120.

  • タイプ: int32.

  • 説明: インポートタスクのタイムアウト期間がこの構成項目の値より短い場合、Doris はタスクを高優先度と見なします。高優先度タスクは、フラッシュスレッドの個別のプールを使用します。

min_load_rpc_timeout_ms

  • デフォルト値: 20.

  • タイプ: int32.

  • 説明: ロードジョブの各 RPC の最小タイムアウト期間。

doris_scan_range_max_mb

  • デフォルト値: 1024.

  • タイプ: int32.

  • 説明: 各 OlapScanner によって読み取られるデータの最大量。

string_type_length_soft_limit_bytes

  • デフォルト値: 1048576.

  • タイプ: int32.

  • 説明: 文字列データの最大長。この構成項目で指定された制限は厳密には実装されていません。単位: バイト。

enable_quick_compaction

  • デフォルト値: false.

  • タイプ: bool.

  • 説明: クイックコンパクションを有効にするかどうかを指定します。少量のデータが頻繁にインポートされるシナリオでは、クイックコンパクションを有効にして、インポートされたバージョンを適時にマージできます。これにより、-235 エラーが防止されます。データ量が小さいかどうかは、データ行数に基づいて測定されます。

quick_compaction_max_rows

  • デフォルト値: 1000.

  • タイプ: int32.

  • 説明: インポートされたデータ行数がこの構成項目の値より少ない場合、インポートされたデータ量は小さいと見なされ、データはクイックコンパクション用に選択されます。

quick_compaction_batch_size

  • デフォルト値: 10.

  • タイプ: int32.

  • 説明: データインポートの回数がこの構成項目の値に達すると、クイックコンパクションがトリガーされます。

quick_compaction_min_rowsets

  • デフォルト値: 10.

  • タイプ: int32.

  • 説明: コンパクションのバージョンの最小数。選択されたデータのロウセット数がこの構成項目の値を超える場合、実際のコンパクションが実行されます。