From c6a9ef05145e39107f3b0ae6452725df3f875468 Mon Sep 17 00:00:00 2001 From: leto-bbq Date: Thu, 27 Aug 2026 19:01:06 +0800 Subject: [PATCH 1/2] Add RPC layer memory control docs for V2.0.11 - Update datanode_memory_proportion description: half of free memory serves as AutoResizingBuffer budget for RPC framed transport and compression/decompression buffers since V2.0.11 - Add System-Config-Manual_apache.md to tree model (zh/en, latest/Master) - Update tree model sidebar to use the new config manual page - Replace old config manual links; remove links from shared files --- src/.vuepress/sidebar/V2.0.x/en-Tree.ts | 13 +- src/.vuepress/sidebar/V2.0.x/zh-Tree.ts | 10 +- .../Reference/System-Config-Manual_apache.md | 2 +- .../Tree/Background-knowledge/Data-Type.md | 2 +- .../Database-Resources.md | 2 +- .../Reference/System-Config-Manual_apache.md | 3356 +++++++++++++++++ .../Reference/System-Config-Manual_apache.md | 2 +- .../latest/Background-knowledge/Data-Type.md | 2 +- .../Database-Resources.md | 2 +- .../Reference/System-Config-Manual_apache.md | 3356 +++++++++++++++++ .../Reference/System-Config-Manual_apache.md | 2 +- .../Tree/Background-knowledge/Data-Type.md | 2 +- .../Database-Resources_apache.md | 2 +- .../Reference/System-Config-Manual_apache.md | 3336 ++++++++++++++++ .../Reference/System-Config-Manual_apache.md | 2 +- .../latest/Background-knowledge/Data-Type.md | 2 +- .../Database-Resources_apache.md | 2 +- .../Reference/System-Config-Manual_apache.md | 3336 ++++++++++++++++ 18 files changed, 13398 insertions(+), 33 deletions(-) create mode 100644 src/UserGuide/Master/Tree/Reference/System-Config-Manual_apache.md create mode 100644 src/UserGuide/latest/Reference/System-Config-Manual_apache.md create mode 100644 src/zh/UserGuide/Master/Tree/Reference/System-Config-Manual_apache.md create mode 100644 src/zh/UserGuide/latest/Reference/System-Config-Manual_apache.md diff --git a/src/.vuepress/sidebar/V2.0.x/en-Tree.ts b/src/.vuepress/sidebar/V2.0.x/en-Tree.ts index 5a25ed6b6..350d06fab 100644 --- a/src/.vuepress/sidebar/V2.0.x/en-Tree.ts +++ b/src/.vuepress/sidebar/V2.0.x/en-Tree.ts @@ -294,18 +294,7 @@ export const enSidebar = { collapsible: true, prefix: 'Reference/', children: [ - { - text: 'Config Manual', - collapsible: true, - children: [ - { text: 'Common Config Manual', link: 'Common-Config-Manual' }, - { - text: 'ConfigNode Config Manual', - link: 'ConfigNode-Config-Manual', - }, - { text: 'DataNode Config Manual', link: 'DataNode-Config-Manual_apache' }, - ], - }, + { text: 'Config Manual', link: 'System-Config-Manual_apache' }, { text: 'Status Codes', link: 'Status-Codes' }, ], }, diff --git a/src/.vuepress/sidebar/V2.0.x/zh-Tree.ts b/src/.vuepress/sidebar/V2.0.x/zh-Tree.ts index 0d1806cda..566fb8fc5 100644 --- a/src/.vuepress/sidebar/V2.0.x/zh-Tree.ts +++ b/src/.vuepress/sidebar/V2.0.x/zh-Tree.ts @@ -279,15 +279,7 @@ export const zhSidebar = { collapsible: true, prefix: 'Reference/', children: [ - { - text: '配置参数', - collapsible: true, - children: [ - { text: '配置参数', link: 'Common-Config-Manual' }, - { text: 'ConfigNode配置参数', link: 'ConfigNode-Config-Manual' }, - { text: 'DataNode配置参数', link: 'DataNode-Config-Manual_apache' }, - ], - }, + { text: '配置参数', link: 'System-Config-Manual_apache' }, { text: '状态码', link: 'Status-Codes' }, ], }, diff --git a/src/UserGuide/Master/Table/Reference/System-Config-Manual_apache.md b/src/UserGuide/Master/Table/Reference/System-Config-Manual_apache.md index 7e5defdc4..149c1011c 100644 --- a/src/UserGuide/Master/Table/Reference/System-Config-Manual_apache.md +++ b/src/UserGuide/Master/Table/Reference/System-Config-Manual_apache.md @@ -1057,7 +1057,7 @@ The `iotdb-system.properties` file contains various configurations for managing | Name | datanode_memory_proportion | | ----------- | ------------------------------------------------------------ | -| Description | Memory Allocation Ratio: StorageEngine, QueryEngine, SchemaEngine, Consensus, StreamingEngine and Free Memory. | +| Description | The allocation ratio of StorageEngine, QueryEngine, SchemaEngine, Consensus, StreamingEngine, and Free Memory. Since V2.0.11, half of the free memory serves as the total memory budget of the AutoResizingBuffer in the RPC layer, which limits the overall memory usage of framed transport read/write buffers and compression/decompression buffers. | | Type | Ratio | | Default | 3:3:1:1:1:1 | | Effective | Restart required. | diff --git a/src/UserGuide/Master/Tree/Background-knowledge/Data-Type.md b/src/UserGuide/Master/Tree/Background-knowledge/Data-Type.md index 965dfe525..42b95a129 100644 --- a/src/UserGuide/Master/Tree/Background-knowledge/Data-Type.md +++ b/src/UserGuide/Master/Tree/Background-knowledge/Data-Type.md @@ -40,7 +40,7 @@ The difference between STRING and TEXT types is that STRING type has more statis ### 1.1 Float Precision -The time series of **FLOAT** and **DOUBLE** type can specify (MAX\_POINT\_NUMBER, see [this page](../SQL-Manual/SQL-Manual_apache) for more information on how to specify), which is the number of digits after the decimal point of the floating point number, if the encoding method is [RLE](../Technical-Insider/Encoding-and-Compression.md) or [TS\_2DIFF](../Technical-Insider/Encoding-and-Compression.md). If MAX\_POINT\_NUMBER is not specified, the system will use [float\_precision](../Reference/DataNode-Config-Manual.md) in the configuration file `iotdb-system.properties`. +The time series of **FLOAT** and **DOUBLE** type can specify (MAX\_POINT\_NUMBER, see [this page](../SQL-Manual/SQL-Manual_apache) for more information on how to specify), which is the number of digits after the decimal point of the floating point number, if the encoding method is [RLE](../Technical-Insider/Encoding-and-Compression.md) or [TS\_2DIFF](../Technical-Insider/Encoding-and-Compression.md). If MAX\_POINT\_NUMBER is not specified, the system will use `float_precision` in the configuration file `iotdb-system.properties`. ```sql CREATE TIMESERIES root.vehicle.d0.s0 WITH DATATYPE=FLOAT, ENCODING=RLE, 'MAX_POINT_NUMBER'='2'; diff --git a/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Database-Resources.md b/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Database-Resources.md index d12dd5d9d..13032b5c3 100644 --- a/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Database-Resources.md +++ b/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Database-Resources.md @@ -146,7 +146,7 @@ -> Flexible memory configuration options are provided. Users can adjust them in the datanode-env file. For details and configuration guidelines, please refer to [datanode-env](../Reference/DataNode-Config-Manual.md#_2-environment-configuration-file-datanode-env-sh-bat) +> Flexible memory configuration options are provided. Users can adjust them in the datanode-env file. ## 3. Storage (Disk) diff --git a/src/UserGuide/Master/Tree/Reference/System-Config-Manual_apache.md b/src/UserGuide/Master/Tree/Reference/System-Config-Manual_apache.md new file mode 100644 index 000000000..898aceb61 --- /dev/null +++ b/src/UserGuide/Master/Tree/Reference/System-Config-Manual_apache.md @@ -0,0 +1,3356 @@ + +# Config Manual + +## 1. IoTDB Configuration Files + +The configuration files for IoTDB are located in the `conf` folder under the IoTDB installation directory. Key configuration files include: + +1. `confignode-env.sh` **/** `confignode-env.bat`: + 1. Environment configuration file for ConfigNode. + 2. Used to configure memory size and other environment settings for ConfigNode. +2. `datanode-env.sh` **/** `datanode-env.bat`: + 1. Environment configuration file for DataNode. + 2. Used to configure memory size and other environment settings for DataNode. +3. `iotdb-system.properties`: + 1. Main configuration file for IoTDB. + 2. Contains configurable parameters for IoTDB. +4. `iotdb-system.properties.template`: + 1. Template for the `iotdb-system.properties` file. + 2. Provides a reference for all available configuration parameters. + +## 2. Modify Configurations + +### 2.1 **Modify Existing Parameters**: + +- Parameters already present in the `iotdb-system.properties` file can be directly modified. + +### 2.2 **Adding New Parameters**: + +- For parameters not listed in `iotdb-system.properties`, you can find them in the `iotdb-system.properties.template` file. +- Copy the desired parameter from the template file to `iotdb-system.properties` and modify its value. + +### 2.3 Configuration Update Methods + +Different configuration parameters have different update methods, categorized as follows: + +1. **Modify before the first startup.**: + 1. These parameters can only be modified before the first startup of ConfigNode/DataNode. + 2. Modifying them after the first startup will prevent ConfigNode/DataNode from starting. +2. **Restart Required for Changes to Take Effect**: + 1. These parameters can be modified after ConfigNode/DataNode has started. + 2. However, a restart of ConfigNode/DataNode is required for the changes to take effect. +3. **Hot Reload**: + 1. These parameters can be modified while ConfigNode/DataNode is running. + 2. After modification, use the following SQL commands to apply the changes: + - `load configuration`: Reloads the configuration. + - `set configuration key1 = 'value1'`: Updates specific configuration parameters. + +## 3. Environment Parameters + +The environment configuration files (`confignode-env.sh/bat` and `datanode-env.sh/bat`) are used to configure Java environment parameters for ConfigNode and DataNode, such as JVM settings. These configurations are passed to the JVM when ConfigNode or DataNode starts. + +### 3.1 **confignode-env.sh/bat** + +- MEMORY_SIZE + +| Name | MEMORY_SIZE | +| ----------- | ------------------------------------------------------------ | +| Description | Memory size allocated when IoTDB ConfigNode starts. | +| Type | String | +| Default | Depends on the operating system and machine configuration. Defaults to 3/10 of the machine's memory, capped at 16G. | +| Effective | Restart required | + +- ON_HEAP_MEMORY + +| Name | ON_HEAP_MEMORY | +| ----------- | ------------------------------------------------------------ | +| Description | On-heap memory size available for IoTDB ConfigNode. Previously named `MAX_HEAP_SIZE`. | +| Type | String | +| Default | Depends on the `MEMORY_SIZE` configuration. | +| Effective | Restart required | + +- OFF_HEAP_MEMORY + +| Name | OFF_HEAP_MEMORY | +| ----------- | ------------------------------------------------------------ | +| Description | Off-heap memory size available for IoTDB ConfigNode. Previously named `MAX_DIRECT_MEMORY_SIZE`. | +| Type | String | +| Default | Depends on the `MEMORY_SIZE` configuration. | +| Effective | Restart required | + +### 3.2 **datanode-env.sh/bat** + +- MEMORY_SIZE + +| Name | MEMORY_SIZE | +| ----------- | ------------------------------------------------------------ | +| Description | Memory size allocated when IoTDB DataNode starts. | +| Type | String | +| Default | Depends on the operating system and machine configuration. Defaults to 1/2 of the machine's memory. | +| Effective | Restart required | + +- ON_HEAP_MEMORY + +| Name | ON_HEAP_MEMORY | +| ----------- | ------------------------------------------------------------ | +| Description | On-heap memory size available for IoTDB DataNode. Previously named `MAX_HEAP_SIZE`. | +| Type | String | +| Default | Depends on the `MEMORY_SIZE` configuration. | +| Effective | Restart required | + +- OFF_HEAP_MEMORY + +| Name | OFF_HEAP_MEMORY | +| ----------- | ------------------------------------------------------------ | +| Description | Off-heap memory size available for IoTDB DataNode. Previously named `MAX_DIRECT_MEMORY_SIZE`. | +| Type | String | +| Default | Depends on the `MEMORY_SIZE` configuration. | +| Effective | Restart required | + +## 4. System Parameters (`iotdb-system.properties.template`) + +The `iotdb-system.properties` file contains various configurations for managing IoTDB clusters, nodes, replication, directories, monitoring, SSL, connections, object storage, tier management, and REST services. Below is a detailed breakdown of the parameters: + +### 4.1 Cluster Configuration + +- cluster_name + +| Name | cluster_name | +| ----------- | --------------------------------------------------------- | +| Description | Name of the cluster. | +| Type | String | +| Default | default_cluster | +| Effective | Use CLI: `set configuration cluster_name='xxx'`. | +| Note | Changes are distributed across nodes. Changes may not propagate to all nodes in case of network issues or node failures. Nodes that fail to update must manually modify `cluster_name` in their configuration files and restart. Under normal circumstances, it is not recommended to modify `cluster_name` by manually modifying configuration files or to perform hot-loading via `load configuration` method. | + +### 4.2 Seed ConfigNode + +- cn_seed_config_node + +| Name | cn_seed_config_node | +| ----------- | ------------------------------------------------------------ | +| Description | Address of the seed ConfigNode for Confignode to join the cluster. | +| Type | String | +| Default | 127.0.0.1:10710 | +| Effective | Modify before the first startup. | + +- dn_seed_config_node + +| Name | dn_seed_config_node | +| ----------- | ------------------------------------------------------------ | +| Description | Address of the seed ConfigNode for Datanode to join the cluster. | +| Type | String | +| Default | 127.0.0.1:10710 | +| Effective | Modify before the first startup. | + +### 4.3 Node RPC Configuration + +- cn_internal_address + +| Name | cn_internal_address | +| ----------- | ---------------------------------------------- | +| Description | Internal address for ConfigNode communication. | +| Type | String | +| Default | 127.0.0.1 | +| Effective | Modify before the first startup. | + +- cn_internal_port + +| Name | cn_internal_port | +| ----------- | ------------------------------------------- | +| Description | Port for ConfigNode internal communication. | +| Type | Short Int : [0,65535] | +| Default | 10710 | +| Effective | Modify before the first startup. | + +- cn_consensus_port + +| Name | cn_consensus_port | +| ----------- | ----------------------------------------------------- | +| Description | Port for ConfigNode consensus protocol communication. | +| Type | Short Int : [0,65535] | +| Default | 10720 | +| Effective | Modify before the first startup. | + +- dn_rpc_address + +| Name | dn_rpc_address | +| ----------- |---------------------------------| +| Description | Address for client RPC service. | +| Type | String | +| Default | 127.0.0.1 | +| Effective | Restart required. | + +- dn_rpc_port + +| Name | dn_rpc_port | +| ----------- | ---------------------------- | +| Description | Port for client RPC service. | +| Type | Short Int : [0,65535] | +| Default | 6667 | +| Effective | Restart required. | + +- dn_internal_address + +| Name | dn_internal_address | +| ----------- | -------------------------------------------- | +| Description | Internal address for DataNode communication. | +| Type | string | +| Default | 127.0.0.1 | +| Effective | Modify before the first startup. | + +- dn_internal_port + +| Name | dn_internal_port | +| ----------- | ----------------------------------------- | +| Description | Port for DataNode internal communication. | +| Type | int | +| Default | 10730 | +| Effective | Modify before the first startup. | + +- dn_mpp_data_exchange_port + +| Name | dn_mpp_data_exchange_port | +| ----------- | -------------------------------- | +| Description | Port for MPP data exchange. | +| Type | int | +| Default | 10740 | +| Effective | Modify before the first startup. | + +- dn_schema_region_consensus_port + +| Name | dn_schema_region_consensus_port | +| ----------- | ------------------------------------------------------------ | +| Description | Port for Datanode SchemaRegion consensus protocol communication. | +| Type | int | +| Default | 10750 | +| Effective | Modify before the first startup. | + +- dn_data_region_consensus_port + +| Name | dn_data_region_consensus_port | +| ----------- | ------------------------------------------------------------ | +| Description | Port for Datanode DataRegion consensus protocol communication. | +| Type | int | +| Default | 10760 | +| Effective | Modify before the first startup. | + +- dn_join_cluster_retry_interval_ms + +| Name | dn_join_cluster_retry_interval_ms | +| ----------- | --------------------------------------------------- | +| Description | Interval for DataNode to retry joining the cluster. | +| Type | long | +| Default | 5000 | +| Effective | Restart required. | + +### 4.4 Replication configuration + +- config_node_consensus_protocol_class + +| Name | config_node_consensus_protocol_class | +| ----------- | ------------------------------------------------------------ | +| Description | Consensus protocol for ConfigNode replication, only supports RatisConsensus | +| Type | String | +| Default | org.apache.iotdb.consensus.ratis.RatisConsensus | +| Effective | Modify before the first startup. | + +- schema_replication_factor + +| Name | schema_replication_factor | +| ----------- | ------------------------------------------------------------ | +| Description | Default schema replication factor for databases. | +| Type | int32 | +| Default | 1 | +| Effective | Restart required. Takes effect on the new database after restarting. | + +- schema_region_consensus_protocol_class + +| Name | schema_region_consensus_protocol_class | +| ----------- | ------------------------------------------------------------ | +| Description | Consensus protocol for schema region replication. Only supports RatisConsensus when multi-replications. | +| Type | String | +| Default | org.apache.iotdb.consensus.ratis.RatisConsensus | +| Effective | Modify before the first startup. | + +- data_replication_factor + +| Name | data_replication_factor | +| ----------- | ------------------------------------------------------------ | +| Description | Default data replication factor for databases. | +| Type | int32 | +| Default | 1 | +| Effective | Restart required. Takes effect on the new database after restarting. | + +- data_region_consensus_protocol_class + +| Name | data_region_consensus_protocol_class | +| ----------- | ------------------------------------------------------------ | +| Description | Consensus protocol for data region replication. Supports IoTConsensus or RatisConsensus when multi-replications. | +| Type | String | +| Default | org.apache.iotdb.consensus.iot.IoTConsensus | +| Effective | Modify before the first startup. | + +### 4.5 Directory configuration + +- cn_system_dir + +| Name | cn_system_dir | +| ----------- | ----------------------------------------------------------- | +| Description | System data storage path for ConfigNode. | +| Type | String | +| Default | data/confignode/system(Windows:data\\configndoe\\system) | +| Effective | Restart required | + +- cn_consensus_dir + +| Name | cn_consensus_dir | +| ----------- | ------------------------------------------------------------ | +| Description | Consensus protocol data storage path for ConfigNode. | +| Type | String | +| Default | data/confignode/consensus(Windows:data\\configndoe\\consensus) | +| Effective | Restart required | + +- cn_pipe_receiver_file_dir + +| Name | cn_pipe_receiver_file_dir | +| ----------- | ------------------------------------------------------------ | +| Description | Directory for pipe receiver files in ConfigNode. | +| Type | String | +| Default | data/confignode/system/pipe/receiver(Windows:data\\confignode\\system\\pipe\\receiver) | +| Effective | Restart required | + +- dn_system_dir + +| Name | dn_system_dir | +| ----------- | ------------------------------------------------------------ | +| Description | Schema storage path for DataNode. By default, it is stored in the data directory at the same level as the sbin directory. The starting directory of the relative path is related to the operating system. It is recommended to use an absolute path. | +| Type | String | +| Default | data/datanode/system(Windows:data\\datanode\\system) | +| Effective | Restart required | + +- dn_data_dirs + +| Name | dn_data_dirs | +| ----------- | ------------------------------------------------------------ | +| Description | Data storage path for DataNode. By default, it is stored in the data directory at the same level as the sbin directory. The starting directory of the relative path is related to the operating system. It is recommended to use an absolute path. | +| Type | String | +| Default | data/datanode/data(Windows:data\\datanode\\data) | +| Effective | Restart required | + +- dn_multi_dir_strategy + +| Name | dn_multi_dir_strategy | +| ----------- | ------------------------------------------------------------ | +| Description | The strategy used by IoTDB to select directories in `data_dirs` for TsFiles. You can use either the simple class name or the fully qualified class name. The system provides the following two strategies: 1. SequenceStrategy: IoTDB selects directories sequentially, iterating through all directories in `data_dirs` in a round-robin manner. 2. MaxDiskUsableSpaceFirstStrategy IoTDB prioritizes the directory in `data_dirs` with the largest disk free space. To implement a custom strategy: 1. Inherit the `org.apache.iotdb.db.storageengine.rescon.disk.strategy.DirectoryStrategy `class and implement your own strategy method. 2. Fill in the configuration item with the fully qualified class name of your implementation (package name + class name, e.g., `UserDefineStrategyPackage`). 3. Add the JAR file containing your custom class to the project. | +| Type | String | +| Default | SequenceStrategy | +| Effective | Hot reload. | + +- dn_consensus_dir + +| Name | dn_consensus_dir | +| ----------- | ------------------------------------------------------------ | +| Description | Consensus log storage path for DataNode. By default, it is stored in the data directory at the same level as the sbin directory. The starting directory of the relative path is related to the operating system. It is recommended to use an absolute path. | +| Type | String | +| Default | data/datanode/consensus(Windows:data\\datanode\\consensus) | +| Effective | Restart required | + +- dn_wal_dirs + +| Name | dn_wal_dirs | +| ----------- | ------------------------------------------------------------ | +| Description | Write-ahead log (WAL) storage path for DataNode. By default, it is stored in the data directory at the same level as the sbin directory. The starting directory of the relative path is related to the operating system. It is recommended to use an absolute path. | +| Type | String | +| Default | data/datanode/wal(Windows:data\\datanode\\wal) | +| Effective | Restart required | + +- dn_tracing_dir + +| Name | dn_tracing_dir | +| ----------- | ------------------------------------------------------------ | +| Description | Tracing root directory for DataNode. By default, it is stored in the data directory at the same level as the sbin directory. The starting directory of the relative path is related to the operating system. It is recommended to use an absolute path. | +| Type | String | +| Default | datanode/tracing(Windows:datanode\\tracing) | +| Effective | Restart required | + +- dn_sync_dir + +| Name | dn_sync_dir | +| ----------- | ------------------------------------------------------------ | +| Description | Sync storage path for DataNode.By default, it is stored in the data directory at the same level as the sbin directory. The starting directory of the relative path is related to the operating system. It is recommended to use an absolute path. | +| Type | String | +| Default | data/datanode/sync(Windows:data\\datanode\\sync) | +| Effective | Restart required | + +- sort_tmp_dir + +| Name | sort_tmp_dir | +| ----------- | ------------------------------------------------- | +| Description | Temporary directory for sorting operations. | +| Type | String | +| Default | data/datanode/tmp(Windows:data\\datanode\\tmp) | +| Effective | Restart required | + +- dn_pipe_receiver_file_dirs + +| Name | dn_pipe_receiver_file_dirs | +| ----------- | ------------------------------------------------------------ | +| Description | Directory for pipe receiver files in DataNode. | +| Type | String | +| Default | data/datanode/system/pipe/receiver(Windows:data\\datanode\\system\\pipe\\receiver) | +| Effective | Restart required | + +- iot_consensus_v2_receiver_file_dirs + +| Name | iot_consensus_v2_receiver_file_dirs | +| ----------- | ------------------------------------------------------------ | +| Description | Directory for IoTConsensus V2 receiver files. | +| Type | String | +| Default | data/datanode/system/pipe/consensus/receiver(Windows:data\\datanode\\system\\pipe\\consensus\\receiver) | +| Effective | Restart required | + +- iot_consensus_v2_deletion_file_dir + +| Name | iot_consensus_v2_deletion_file_dir | +| ----------- | ------------------------------------------------------------ | +| Description | Directory for IoTConsensus V2 deletion files. | +| Type | String | +| Default | data/datanode/system/pipe/consensus/deletion(Windows:data\\datanode\\system\\pipe\\consensus\\deletion) | +| Effective | Restart required | + +### 4.6 Metric Configuration + +- cn_metric_reporter_list + +| Name | cn_metric_reporter_list | +| ----------- | ----------------------------------------- | +| Description | Systems for reporting ConfigNode metrics. | +| Type | String | +| Default | None | +| Effective | Restart required. | + +- cn_metric_level + +| Name | cn_metric_level | +| ----------- | --------------------------------------- | +| Description | Level of detail for ConfigNode metrics. | +| Type | String | +| Default | IMPORTANT | +| Effective | Restart required. | + +- cn_metric_async_collect_period + +| Name | cn_metric_async_collect_period | +| ----------- | ------------------------------------------------------------ | +| Description | Period for asynchronous metric collection in ConfigNode (in seconds). | +| Type | int | +| Default | 5 | +| Effective | Restart required. | + +- cn_metric_prometheus_reporter_port + +| Name | cn_metric_prometheus_reporter_port | +| ----------- | --------------------------------------------------- | +| Description | Port for Prometheus metric reporting in ConfigNode. | +| Type | int | +| Default | 9091 | +| Effective | Restart required. | + +- dn_metric_reporter_list + +| Name | dn_metric_reporter_list | +| ----------- | --------------------------------------- | +| Description | Systems for reporting DataNode metrics. | +| Type | String | +| Default | None | +| Effective | Restart required. | + +- dn_metric_level + +| Name | dn_metric_level | +| ----------- | ------------------------------------- | +| Description | Level of detail for DataNode metrics. | +| Type | String | +| Default | IMPORTANT | +| Effective | Restart required. | + +- dn_metric_async_collect_period + +| Name | dn_metric_async_collect_period | +| ----------- | ------------------------------------------------------------ | +| Description | Period for asynchronous metric collection in DataNode (in seconds). | +| Type | int | +| Default | 5 | +| Effective | Restart required. | + +- dn_metric_prometheus_reporter_port + +| Name | dn_metric_prometheus_reporter_port | +| ----------- | ------------------------------------------------- | +| Description | Port for Prometheus metric reporting in DataNode. | +| Type | int | +| Default | 9092 | +| Effective | Restart required. | + +- dn_metric_internal_reporter_type + +| Name | dn_metric_internal_reporter_type | +| ----------- | ------------------------------------------------------------ | +| Description | Internal reporter types for DataNode metrics. For internal monitoring and checking that the data has been successfully written and refreshed. | +| Type | String | +| Default | IOTDB | +| Effective | Restart required. | + +### 4.7 SSL Configuration + +- enable_thrift_ssl + +| Name | enable_thrift_ssl | +| ----------- | --------------------------------------------- | +| Description | Enables SSL encryption for RPC communication. | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- enable_https + +| Name | enable_https | +| ----------- | ------------------------------ | +| Description | Enables SSL for REST services. | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- key_store_path + +| Name | key_store_path | +| ----------- | ---------------------------- | +| Description | Path to the SSL certificate. | +| Type | String | +| Default | None | +| Effective | Restart required. | + +- key_store_pwd + +| Name | key_store_pwd | +| ----------- | --------------------------------- | +| Description | Password for the SSL certificate. | +| Type | String | +| Default | None | +| Effective | Restart required. | + +### 4.8 Connection Configuration + +- cn_rpc_thrift_compression_enable + +| Name | cn_rpc_thrift_compression_enable | +| ----------- | ----------------------------------- | +| Description | Enables Thrift compression for RPC. | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- cn_rpc_max_concurrent_client_num + +| Name | cn_rpc_max_concurrent_client_num | +| ----------- |-------------------------------------------| +| Description | Maximum number of concurrent RPC clients. | +| Type | int | +| Default | 3000 | +| Effective | Restart required. | + +- cn_connection_timeout_ms + +| Name | cn_connection_timeout_ms | +| ----------- | ---------------------------------------------------- | +| Description | Connection timeout for ConfigNode (in milliseconds). | +| Type | int | +| Default | 60000 | +| Effective | Restart required. | + +- cn_selector_thread_nums_of_client_manager + +| Name | cn_selector_thread_nums_of_client_manager | +| ----------- | ------------------------------------------------------------ | +| Description | Number of selector threads for client management in ConfigNode. | +| Type | int | +| Default | 1 | +| Effective | Restart required. | + +- cn_max_client_count_for_each_node_in_client_manager + +| Name | cn_max_client_count_for_each_node_in_client_manager | +| ----------- | ------------------------------------------------------ | +| Description | Maximum clients per node in ConfigNode client manager. | +| Type | int | +| Default | 300 | +| Effective | Restart required. | + +- dn_session_timeout_threshold + +| Name | dn_session_timeout_threshold | +| ----------- | ---------------------------------------- | +| Description | Maximum idle time for DataNode sessions. | +| Type | int | +| Default | 0 | +| Effective | Restart required.t required. | + +- dn_rpc_thrift_compression_enable + +| Name | dn_rpc_thrift_compression_enable | +| ----------- | -------------------------------------------- | +| Description | Enables Thrift compression for DataNode RPC. | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- dn_rpc_advanced_compression_enable + +| Name | dn_rpc_advanced_compression_enable | +| ----------- | ----------------------------------------------------- | +| Description | Enables advanced Thrift compression for DataNode RPC. | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- dn_rpc_selector_thread_count + +| Name | rpc_selector_thread_count | +| ----------- | -------------------------------------------- | +| Description | Number of selector threads for DataNode RPC. | +| Type | int | +| Default | 1 | +| Effective | Restart required.t required. | + +- dn_rpc_min_concurrent_client_num + +| Name | rpc_min_concurrent_client_num | +| ----------- | ------------------------------------------------------ | +| Description | Minimum number of concurrent RPC clients for DataNode. | +| Type | Short Int : [0,65535] | +| Default | 1 | +| Effective | Restart required. | + +- dn_rpc_max_concurrent_client_num + +| Name | dn_rpc_max_concurrent_client_num | +| ----------- |--------------------------------------------------------| +| Description | Maximum number of concurrent RPC clients for DataNode. | +| Type | Short Int : [0,65535] | +| Default | 1000 | +| Effective | Restart required. | + +- dn_thrift_max_frame_size + +| Name | dn_thrift_max_frame_size | +| ----------- |--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| Description | Maximum frame size for RPC requests/responses. | +| Type | int | +| Default | Defaults to 0, which means the value is automatically calculated based on the DN JVM configuration parameters at startup:
a. min(64MB, dn_alloc_memory/64)
b. If the user manually configures `dn_thrift_max_frame_size`, the user-specified value will be used instead. | +| Effective | Restart required. | + +- dn_thrift_init_buffer_size + +| Name | dn_thrift_init_buffer_size | +| ----------- | ----------------------------------- | +| Description | Initial buffer size for Thrift RPC. | +| Type | long | +| Default | 1024 | +| Effective | Restart required. | + +- dn_connection_timeout_ms + +| Name | dn_connection_timeout_ms | +| ----------- | -------------------------------------------------- | +| Description | Connection timeout for DataNode (in milliseconds). | +| Type | int | +| Default | 60000 | +| Effective | Restart required. | + +- dn_selector_thread_count_of_client_manager + +| Name | dn_selector_thread_count_of_client_manager | +| ----------- | ------------------------------------------------------------ | +| Description | selector thread (TAsyncClientManager) nums for async thread in a clientManager | +| Type | int | +| Default | 1 | +| Effective | Restart required.t required. | + +- dn_max_client_count_for_each_node_in_client_manager + +| Name | dn_max_client_count_for_each_node_in_client_manager | +| ----------- | --------------------------------------------------- | +| Description | Maximum clients per node in DataNode clientmanager. | +| Type | int | +| Default | 300 | +| Effective | Restart required. | + +### 4.9 Object storage management + +- remote_tsfile_cache_dirs + +| Name | remote_tsfile_cache_dirs | +| ----------- | ---------------------------------------- | +| Description | Local cache directory for cloud storage. | +| Type | String | +| Default | data/datanode/data/cache | +| Effective | Restart required. | + +- remote_tsfile_cache_page_size_in_kb + +| Name | remote_tsfile_cache_page_size_in_kb | +| ----------- | --------------------------------------------- | +| Description | Block size for cached files in cloud storage. | +| Type | int | +| Default | 20480 | +| Effective | Restart required. | + +- remote_tsfile_cache_max_disk_usage_in_mb + +| Name | remote_tsfile_cache_max_disk_usage_in_mb | +| ----------- | ------------------------------------------- | +| Description | Maximum disk usage for cloud storage cache. | +| Type | long | +| Default | 51200 | +| Effective | Restart required. | + +- object_storage_type + +| Name | object_storage_type | +| ----------- | ---------------------- | +| Description | Type of cloud storage. | +| Type | String | +| Default | AWS_S3 | +| Effective | Restart required. | + +- object_storage_endpoint + +| Name | object_storage_endpoint | +| ----------- | --------------------------- | +| Description | Endpoint for cloud storage. | +| Type | String | +| Default | None | +| Effective | Restart required. | + +- object_storage_bucket + +| Name | object_storage_bucket | +| ----------- | ------------------------------ | +| Description | Bucket name for cloud storage. | +| Type | String | +| Default | iotdb_data | +| Effective | Restart required. | + +- object_storage_access_key + +| Name | object_storage_access_key | +| ----------- | ----------------------------- | +| Description | Access key for cloud storage. | +| Type | String | +| Default | None | +| Effective | Restart required. | + +- object_storage_access_secret + +| Name | object_storage_access_secret | +| ----------- | -------------------------------- | +| Description | Access secret for cloud storage. | +| Type | String | +| Default | None | +| Effective | Restart required. | + +### 4.10 Tier management + +- dn_default_space_usage_thresholds + +| Name | dn_default_space_usage_thresholds | +| ----------- | ------------------------------------------------------------ | +| Description | Disk usage threshold, data will be moved to the next tier when the usage of the tier is higher than this threshold.If tiered storage is enabled, please separate thresholds of different tiers by semicolons ";". | +| Type | double | +| Default | 0.85 | +| Effective | Hot reload. | + +- dn_tier_full_policy + +| Name | dn_tier_full_policy | +| ----------- | ------------------------------------------------------------ | +| Description | How to deal with the last tier's data when its used space has been higher than its dn_default_space_usage_thresholds. | +| Type | String | +| Default | NULL | +| Effective | Hot reload. | + +- migrate_thread_count + +| Name | migrate_thread_count | +| ----------- | ------------------------------------------------------------ | +| Description | thread pool size for migrate operation in the DataNode's data directories. | +| Type | int | +| Default | 1 | +| Effective | Hot reload. | + +- tiered_storage_migrate_speed_limit_bytes_per_sec + +| Name | tiered_storage_migrate_speed_limit_bytes_per_sec | +| ----------- | ------------------------------------------------------------ | +| Description | The migrate speed limit of different tiers can reach per second | +| Type | int | +| Default | 10485760 | +| Effective | Hot reload. | + +### 4.11 REST Service Configuration + +- enable_rest_service + +| Name | enable_rest_service | +| ----------- | --------------------------- | +| Description | Is the REST service enabled | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- rest_service_port + +| Name | rest_service_port | +| ----------- | ------------------------------------ | +| Description | the binding port of the REST service | +| Type | int32 | +| Default | 18080 | +| Effective | Restart required. | + +- enable_swagger + +| Name | enable_swagger | +| ----------- | ------------------------------------------------------------ | +| Description | Whether to display rest service interface information through swagger. eg: http://ip:port/swagger.json | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- rest_query_default_row_size_limit + +| Name | rest_query_default_row_size_limit | +| ----------- | ------------------------------------------------------------ | +| Description | the default row limit to a REST query response when the rowSize parameter is not given in request | +| Type | int32 | +| Default | 10000 | +| Effective | Restart required. | + +- cache_expire_in_seconds + +| Name | cache_expire_in_seconds | +| ----------- | ------------------------------------------------------------ | +| Description | The expiration time of the user login information cache (in seconds) | +| Type | int32 | +| Default | 28800 | +| Effective | Restart required. | + +- cache_max_num + +| Name | cache_max_num | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum number of users can be stored in the user login cache. | +| Type | int32 | +| Default | 100 | +| Effective | Restart required. | + +- cache_init_num + +| Name | cache_init_num | +| ----------- | ------------------------------------------------------------ | +| Description | The initial capacity of users can be stored in the user login cache. | +| Type | int32 | +| Default | 10 | +| Effective | Restart required. | + +- client_auth + +| Name | client_auth | +| ----------- | --------------------------------- | +| Description | Is client authentication required | +| Type | boolean | +| Default | false | +| Effective | Restart required. | + +- trust_store_path + +| Name | trust_store_path | +| ----------- | -------------------- | +| Description | SSL trust store path | +| Type | String | +| Default | "" | +| Effective | Restart required. | + +- trust_store_pwd + +| Name | trust_store_pwd | +| ----------- | ------------------------- | +| Description | SSL trust store password. | +| Type | String | +| Default | "" | +| Effective | Restart required. | + +- idle_timeout_in_seconds + +| Name | idle_timeout_in_seconds | +| ----------- | ------------------------ | +| Description | SSL timeout (in seconds) | +| Type | int32 | +| Default | 5000 | +| Effective | Restart required. | + +### 4.12 Load balancing configuration + +- series_slot_num + +| Name | series_slot_num | +| ----------- | ------------------------------------------- | +| Description | Number of SeriesPartitionSlots per Database | +| Type | int32 | +| Default | 10000 | +| Effective | Modify before the first startup. | + +- series_partition_executor_class + +| Name | series_partition_executor_class | +| ----------- | ------------------------------------------------------------ | +| Description | SeriesPartitionSlot executor class | +| Type | String | +| Default | org.apache.iotdb.commons.partition.executor.hash.BKDRHashExecutor | +| Effective | Modify before the first startup. | + +- schema_region_group_extension_policy + +| Name | schema_region_group_extension_policy | +| ----------- | ------------------------------------------------------------ | +| Description | The policy of extension SchemaRegionGroup for each Database. | +| Type | string | +| Default | AUTO | +| Effective | Restart required. | + +- default_schema_region_group_num_per_database + +| Name | default_schema_region_group_num_per_database | +| ----------- | ------------------------------------------------------------ | +| Description | When set schema_region_group_extension_policy=CUSTOM, this parameter is the default number of SchemaRegionGroups for each Database.When set schema_region_group_extension_policy=AUTO, this parameter is the default minimal number of SchemaRegionGroups for each Database. | +| Type | int | +| Default | 1 | +| Effective | Restart required. | + +- schema_region_per_data_node + +| Name | schema_region_per_data_node | +| ----------- | ------------------------------------------------------------ | +| Description | It only takes effect when set schema_region_group_extension_policy=AUTO.This parameter is the maximum number of SchemaRegions expected to be managed by each DataNode. | +| Type | double | +| Default | 1.0 | +| Effective | Restart required. | + +- data_region_group_extension_policy + +| Name | data_region_group_extension_policy | +| ----------- | ---------------------------------------------------------- | +| Description | The policy of extension DataRegionGroup for each Database. | +| Type | string | +| Default | AUTO | +| Effective | Restart required. | + +- default_data_region_group_num_per_database + +| Name | default_data_region_group_per_database | +| ----------- | ------------------------------------------------------------ | +| Description | When set data_region_group_extension_policy=CUSTOM, this parameter is the default number of DataRegionGroups for each Database.When set data_region_group_extension_policy=AUTO, this parameter is the default minimal number of DataRegionGroups for each Database. | +| Type | int | +| Default | 2 | +| Effective | Restart required. | + +- data_region_per_data_node + +| Name | data_region_per_data_node | +| ----------- | ------------------------------------------------------------ | +| Description | It only takes effect when set data_region_group_extension_policy=AUTO.This parameter is the maximum number of DataRegions expected to be managed by each DataNode. | +| Type | double | +| Default | 5.0 | +| Effective | Restart required. | + +- enable_auto_leader_balance_for_ratis_consensus + +| Name | enable_auto_leader_balance_for_ratis_consensus | +| ----------- | ------------------------------------------------------------ | +| Description | Whether to enable auto leader balance for Ratis consensus protocol. | +| Type | Boolean | +| Default | true | +| Effective | Restart required. | + +- enable_auto_leader_balance_for_iot_consensus + +| Name | enable_auto_leader_balance_for_iot_consensus | +| ----------- | ------------------------------------------------------------ | +| Description | Whether to enable auto leader balance for IoTConsensus protocol. | +| Type | Boolean | +| Default | true | +| Effective | Restart required. | + +### 4.13 Cluster management + +- time_partition_origin + +| Name | time_partition_origin | +| ----------- | ------------------------------------------------------------ | +| Description | Time partition origin in milliseconds, default is equal to zero. | +| Type | Long | +| Unit | ms | +| Default | 0 | +| Effective | Modify before the first startup. | + +- time_partition_interval + +| Name | time_partition_interval | +| ----------- | ------------------------------------------------------------ | +| Description | Time partition interval in milliseconds, and partitioning data inside each data region, default is equal to one week | +| Type | Long | +| Unit | ms | +| Default | 604800000 | +| Effective | Modify before the first startup. | + +- heartbeat_interval_in_ms + +| Name | heartbeat_interval_in_ms | +| ----------- | -------------------------------------- | +| Description | The heartbeat interval in milliseconds | +| Type | Long | +| Unit | ms | +| Default | 1000 | +| Effective | Restart required. | + +- disk_space_warning_threshold + +| Name | disk_space_warning_threshold | +| ----------- | ------------------------------------------------------------ | +| Description | Disk remaining threshold at which DataNode is set to ReadOnly status | +| Type | double(percentage) | +| Default | 0.05 | +| Effective | Restart required. | + +### 4.14 Memory Control Configuration + +- datanode_memory_proportion + +| Name | datanode_memory_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | The allocation ratio of StorageEngine, QueryEngine, SchemaEngine, Consensus, StreamingEngine, and Free Memory. Since V2.0.11, half of the free memory serves as the total memory budget of the AutoResizingBuffer in the RPC layer, which limits the overall memory usage of framed transport read/write buffers and compression/decompression buffers. | +| Type | Ratio | +| Default | 3:3:1:1:1:1 | +| Effective | Restart required. | + +- schema_memory_proportion + +| Name | schema_memory_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | Schema Memory Allocation Ratio: SchemaRegion, SchemaCache, and PartitionCache. | +| Type | Ratio | +| Default | 5:4:1 | +| Effective | Restart required. | + +- storage_engine_memory_proportion + +| Name | storage_engine_memory_proportion | +| ----------- | ----------------------------------------------------------- | +| Description | Memory allocation ratio in StorageEngine: Write, Compaction | +| Type | Ratio | +| Default | 8:2 | +| Effective | Restart required. | + +- write_memory_proportion + +| Name | write_memory_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | Memory allocation ratio in writing: Memtable, TimePartitionInfo | +| Type | Ratio | +| Default | 19:1 | +| Effective | Restart required. | + +- primitive_array_size + +| Name | primitive_array_size | +| ----------- | --------------------------------------------------------- | +| Description | primitive array size (length of each array) in array pool | +| Type | int32 | +| Default | 64 | +| Effective | Restart required. | + +- chunk_metadata_size_proportion + +| Name | chunk_metadata_size_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | Ratio of compaction memory for chunk metadata maintains in memory when doing compaction | +| Type | Double | +| Default | 0.1 | +| Effective | Restart required. | + +- flush_proportion + +| Name | flush_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | Ratio of memtable memory for invoking flush disk, 0.4 by defaultIf you have extremely high write load (like batch=1000), it can be set lower than the default value like 0.2 | +| Type | Double | +| Default | 0.4 | +| Effective | Restart required. | + +- buffered_arrays_memory_proportion + +| Name | buffered_arrays_memory_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | Ratio of memtable memory allocated for buffered arrays, 0.6 by default | +| Type | Double | +| Default | 0.6 | +| Effective | Restart required. | + +- reject_proportion + +| Name | reject_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | Ratio of memtable memory for rejecting insertion, 0.8 by defaultIf you have extremely high write load (like batch=1000) and the physical memory size is large enough, it can be set higher than the default value like 0.9 | +| Type | Double | +| Default | 0.8 | +| Effective | Restart required. | + +- device_path_cache_proportion + +| Name | device_path_cache_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | Ratio of memtable memory for the DevicePathCache. DevicePathCache is the deviceId cache, keeping only one copy of the same deviceId in memory | +| Type | Double | +| Default | 0.05 | +| Effective | Restart required. | + +- write_memory_variation_report_proportion + +| Name | write_memory_variation_report_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | If memory cost of data region increased more than proportion of allocated memory for writing, report to system. The default value is 0.001 | +| Type | Double | +| Default | 0.001 | +| Effective | Restart required. | + +- check_period_when_insert_blocked + +| Name | check_period_when_insert_blocked | +| ----------- | ------------------------------------------------------------ | +| Description | When an insertion is rejected, the waiting period (in ms) to check system again, 50 by default.If the insertion has been rejected and the read load is low, it can be set larger. | +| Type | int32 | +| Default | 50 | +| Effective | Restart required. | + +- io_task_queue_size_for_flushing + +| Name | io_task_queue_size_for_flushing | +| ----------- | -------------------------------------------- | +| Description | size of ioTaskQueue. The default value is 10 | +| Type | int32 | +| Default | 10 | +| Effective | Restart required. | + +- enable_query_memory_estimation + +| Name | enable_query_memory_estimation | +| ----------- | ------------------------------------------------------------ | +| Description | If true, we will estimate each query's possible memory footprint before executing it and deny it if its estimated memory exceeds current free memory | +| Type | bool | +| Default | true | +| Effective | Hot reload. | + +### 4.15 Schema Engine Configuration + +- schema_engine_mode + +| Name | schema_engine_mode | +| ----------- | ------------------------------------------------------------ | +| Description | The schema management mode of schema engine. Currently, support Memory and PBTree.This config of all DataNodes in one cluster must keep same. | +| Type | string | +| Default | Memory | +| Effective | Modify before the first startup. | + +- partition_cache_size + +| Name | partition_cache_size | +| ----------- | ------------------------- | +| Description | cache size for partition. | +| Type | Int32 | +| Default | 1000 | +| Effective | Restart required. | + +- sync_mlog_period_in_ms + +| Name | sync_mlog_period_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | The cycle when metadata log is periodically forced to be written to disk(in milliseconds)If sync_mlog_period_in_ms=0 it means force metadata log to be written to disk after each refreshmentSetting this parameter to 0 may slow down the operation on slow disk. | +| Type | Int64 | +| Default | 100 | +| Effective | Restart required. | + +- tag_attribute_flush_interval + +| Name | tag_attribute_flush_interval | +| ----------- | ------------------------------------------------------------ | +| Description | interval num for tag and attribute records when force flushing to disk | +| Type | int32 | +| Default | 1000 | +| Effective | Modify before the first startup. | + +- tag_attribute_total_size + +| Name | tag_attribute_total_size | +| ----------- | ------------------------------------------------------------ | +| Description | max size for a storage block for tags and attributes of a one-time series | +| Type | int32 | +| Default | 700 | +| Effective | Modify before the first startup. | + +- max_measurement_num_of_internal_request + +| Name | max_measurement_num_of_internal_request | +| ----------- | ------------------------------------------------------------ | +| Description | max measurement num of internal requestWhen creating timeseries with Session.createMultiTimeseries, the user input plan, the timeseries num ofwhich exceeds this num, will be split to several plans with timeseries no more than this num. | +| Type | Int32 | +| Default | 10000 | +| Effective | Restart required. | + +- datanode_schema_cache_eviction_policy + +| Name | datanode_schema_cache_eviction_policy | +| ----------- | --------------------------------------- | +| Description | Policy of DataNodeSchemaCache eviction. | +| Type | String | +| Default | FIFO | +| Effective | Restart required. | + +- cluster_timeseries_limit_threshold + +| Name | cluster_timeseries_limit_threshold | +| ----------- | ------------------------------------------------------------ | +| Description | This configuration parameter sets the maximum number of time series allowed in the cluster. | +| Type | Int32 | +| Default | -1 | +| Effective | Restart required. | + +- cluster_device_limit_threshold + +| Name | cluster_device_limit_threshold | +| ----------- | ------------------------------------------------------------ | +| Description | This configuration parameter sets the maximum number of devices allowed in the cluster. | +| Type | Int32 | +| Default | -1 | +| Effective | Restart required. | + +- database_limit_threshold + +| Name | database_limit_threshold | +| ----------- | ------------------------------------------------------------ | +| Description | This configuration parameter sets the maximum number of Cluster Databases allowed. | +| Type | Int32 | +| Default | -1 | +| Effective | Restart required. | + +### 4.16 Configurations for creating schema automatically + +- enable_auto_create_schema + +| Name | enable_auto_create_schema | +| ----------- | ------------------------------------------------ | +| Description | Whether creating schema automatically is enabled | +| Value | true or false | +| Default | true | +| Effective | Restart required. | + +- default_storage_group_level + +| Name | default_storage_group_level | +| ----------- | ------------------------------------------------------------ | +| Description | Database level when creating schema automatically is enabled e.g. root.sg0.d1.s2We will set root.sg0 as the database if database level is 1If the incoming path is shorter than this value, the creation/insertion will fail. | +| Value | int32 | +| Default | 1 | +| Effective | Restart required. | + +- boolean_string_infer_type + +| Name | boolean_string_infer_type | +| ----------- |------------------------------------------------------------------------------------| +| Description | register time series as which type when receiving boolean string "true" or "false" | +| Value | BOOLEAN or TEXT | +| Default | BOOLEAN | +| Effective | Hot_reload | + +- integer_string_infer_type + +| Name | integer_string_infer_type | +| ----------- |------------------------------------------------------------------------------------------------------------------| +| Description | register time series as which type when receiving an integer string and using float or double may lose precision | +| Value | INT32, INT64, FLOAT, DOUBLE, TEXT | +| Default | DOUBLE | +| Effective | Hot_reload | + +- floating_string_infer_type + +| Name | floating_string_infer_type | +| ----------- |----------------------------------------------------------------------------------| +| Description | register time series as which type when receiving a floating number string "6.7" | +| Value | DOUBLE, FLOAT or TEXT | +| Default | DOUBLE | +| Effective | Hot_reload | + +- nan_string_infer_type + +| Name | nan_string_infer_type | +| ----------- |--------------------------------------------------------------------| +| Description | register time series as which type when receiving the Literal NaN. | +| Value | DOUBLE, FLOAT or TEXT | +| Default | DOUBLE | +| Effective | Hot_reload | + +- default_boolean_encoding + +| Name | default_boolean_encoding | +| ----------- |----------------------------------------------------------------| +| Description | BOOLEAN encoding when creating schema automatically is enabled | +| Value | PLAIN, RLE | +| Default | RLE | +| Effective | Hot_reload | + +- default_int32_encoding + +| Name | default_int32_encoding | +| ----------- |--------------------------------------------------------------| +| Description | INT32 encoding when creating schema automatically is enabled | +| Value | PLAIN, RLE, TS_2DIFF, REGULAR, GORILLA | +| Default | TS_2DIFF | +| Effective | Hot_reload | + +- default_int64_encoding + +| Name | default_int64_encoding | +| ----------- |--------------------------------------------------------------| +| Description | INT64 encoding when creating schema automatically is enabled | +| Value | PLAIN, RLE, TS_2DIFF, REGULAR, GORILLA | +| Default | TS_2DIFF | +| Effective | Hot_reload | + +- default_float_encoding + +| Name | default_float_encoding | +| ----------- |--------------------------------------------------------------| +| Description | FLOAT encoding when creating schema automatically is enabled | +| Value | PLAIN, RLE, TS_2DIFF, GORILLA | +| Default | GORILLA | +| Effective | Hot_reload | + +- default_double_encoding + +| Name | default_double_encoding | +| ----------- |---------------------------------------------------------------| +| Description | DOUBLE encoding when creating schema automatically is enabled | +| Value | PLAIN, RLE, TS_2DIFF, GORILLA | +| Default | GORILLA | +| Effective | Hot_reload | + +- default_text_encoding + +| Name | default_text_encoding | +| ----------- |-------------------------------------------------------------| +| Description | TEXT encoding when creating schema automatically is enabled | +| Value | PLAIN | +| Default | PLAIN | +| Effective | Hot_reload | + + +* boolean_compressor + +| Name | boolean_compressor | +|------------------|-----------------------------------------------------------------------------------------| +| Description | BOOLEAN compression when creating schema automatically is enabled (Supports from V2.0.6) | +| Type | String | +| Default | LZ4 | +| Effective | Hot_reload | + +* int32_compressor + +| Name | int32_compressor | +|----------------------|--------------------------------------------------------------------------------------------| +| Description | INT32/DATE compression when creating schema automatically is enabled(Supports from V2.0.6) | +| Type | String | +| Default | LZ4 | +| Effective | Hot_reload | + +* int64_compressor + +| Name | int64_compressor | +|--------------------|-------------------------------------------------------------------------------------------------| +| Description | INT64/TIMESTAMP compression when creating schema automatically is enabled (Supports from V2.0.6) | +| Type | String | +| Default | LZ4 | +| Effective | Hot_reload | + +* float_compressor + +| Name | float_compressor | +|-----------------------|---------------------------------------------------------------------------------------| +| Description | FLOAT compression when creating schema automatically is enabled (Supports from V2.0.6) | +| Type | String | +| Default | LZ4 | +| Effective | Hot_reload | + +* double_compressor + +| Name | double_compressor | +|-------------------|----------------------------------------------------------------------------------------| +| Description | DOUBLE compression when creating schema automatically is enabled (Supports from V2.0.6) | +| Type | String | +| Default | LZ4 | +| Effective | Hot_reload | + +* text_compressor + +| Name | text_compressor | +|--------------------|--------------------------------------------------------------------------------------------------| +| Description | TEXT/BINARY/BLOB compression when creating schema automatically is enabled (Supports from V2.0.6) | +| Type | String | +| Default | LZ4 | +| Effective | Hot_reload | + + +### 4.17 Query Configurations + +- read_consistency_level + +| Name | read_consistency_level | +| ----------- | ------------------------------------------------------------ | +| Description | The read consistency levelThese consistency levels are currently supported:strong(Default, read from the leader replica)weak(Read from a random replica) | +| Type | String | +| Default | strong | +| Effective | Restart required. | + +- meta_data_cache_enable + +| Name | meta_data_cache_enable | +| ----------- | ------------------------------------------------------------ | +| Description | Whether to cache meta data (BloomFilter, ChunkMetadata and TimeSeriesMetadata) or not. | +| Type | Boolean | +| Default | true | +| Effective | Restart required. | + +- chunk_timeseriesmeta_free_memory_proportion + +| Name | chunk_timeseriesmeta_free_memory_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | Read memory Allocation Ratio: BloomFilterCache : ChunkCache : TimeSeriesMetadataCache : Coordinator : Operators : DataExchange : timeIndex in TsFileResourceList : others.The parameter form is a:b:c:d:e:f:g:h, where a, b, c, d, e, f, g and h are integers. for example: 1:1:1:1:1:1:1:1 , 1:100:200:50:200:200:200:50 | +| Type | String | +| Default | 1 : 100 : 200 : 300 : 400 | +| Effective | Restart required. | + +- enable_last_cache + +| Name | enable_last_cache | +| ----------- | ---------------------------- | +| Description | Whether to enable LAST cache | +| Type | Boolean | +| Default | true | +| Effective | Restart required. | + +- mpp_data_exchange_core_pool_size + +| Name | mpp_data_exchange_core_pool_size | +| ----------- | -------------------------------------------- | +| Description | Core size of ThreadPool of MPP data exchange | +| Type | int32 | +| Default | 10 | +| Effective | Restart required. | + +- mpp_data_exchange_max_pool_size + +| Name | mpp_data_exchange_max_pool_size | +| ----------- | ------------------------------------------- | +| Description | Max size of ThreadPool of MPP data exchange | +| Type | int32 | +| Default | 10 | +| Effective | Restart required. | + +- mpp_data_exchange_keep_alive_time_in_ms + +| Name | mpp_data_exchange_keep_alive_time_in_ms | +| ----------- | --------------------------------------- | +| Description | Max waiting time for MPP data exchange | +| Type | int32 | +| Default | 1000 | +| Effective | Restart required. | + +- driver_task_execution_time_slice_in_ms + +| Name | driver_task_execution_time_slice_in_ms | +| ----------- | -------------------------------------- | +| Description | The max execution time of a DriverTask | +| Type | int32 | +| Default | 200 | +| Effective | Restart required. | + +- max_tsblock_size_in_bytes + +| Name | max_tsblock_size_in_bytes | +| ----------- | ----------------------------- | +| Description | The max capacity of a TsBlock | +| Type | int32 | +| Default | 131072 | +| Effective | Restart required. | + +- max_tsblock_line_numbers + +| Name | max_tsblock_line_numbers | +| ----------- | ------------------------------------------- | +| Description | The max number of lines in a single TsBlock | +| Type | int32 | +| Default | 1000 | +| Effective | Restart required. | + +- slow_query_threshold + +| Name | slow_query_threshold | +| ----------- |----------------------------------------| +| Description | Time cost(ms) threshold for slow query | +| Type | long | +| Default | 3000 | +| Effective | Hot reload | + +- query_cost_stat_window + +| Name | query_cost_stat_window | +|-------------|--------------------| +| Description | Time window threshold(min) for record of history queries. | +| Type | Int32 | +| Default | 0 | +| Effective | Hot reload | + +- query_timeout_threshold + +| Name | query_timeout_threshold | +| ----------- | ----------------------------------------- | +| Description | The max executing time of query. unit: ms | +| Type | Int32 | +| Default | 60000 | +| Effective | Restart required. | + +- max_allowed_concurrent_queries + +| Name | max_allowed_concurrent_queries | +| ----------- | -------------------------------------------------- | +| Description | The maximum allowed concurrently executing queries | +| Type | Int32 | +| Default | 1000 | +| Effective | Restart required. | + +- query_thread_count + +| Name | query_thread_count | +| ----------- | ------------------------------------------------------------ | +| Description | How many threads can concurrently execute query statement. When <= 0, use CPU core number. | +| Type | Int32 | +| Default | 0 | +| Effective | Restart required. | + +- degree_of_query_parallelism + +| Name | degree_of_query_parallelism | +| ----------- | ------------------------------------------------------------ | +| Description | How many pipeline drivers will be created for one fragment instance. When <= 0, use CPU core number / 2. | +| Type | Int32 | +| Default | 0 | +| Effective | Restart required. | + +- mode_map_size_threshold + +| Name | mode_map_size_threshold | +| ----------- | ------------------------------------------------------------ | +| Description | The threshold of count map size when calculating the MODE aggregation function | +| Type | Int32 | +| Default | 10000 | +| Effective | Restart required. | + +- batch_size + +| Name | batch_size | +| ----------- | ------------------------------------------------------------ | +| Description | The amount of data iterate each time in server (the number of data strips, that is, the number of different timestamps.) | +| Type | Int32 | +| Default | 100000 | +| Effective | Restart required. | + +- sort_buffer_size_in_bytes + +| Name | sort_buffer_size_in_bytes | +| ----------- |--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| Description | The memory for external sort in sort operator, when the data size is smaller than sort_buffer_size_in_bytes, the sort operator will use in-memory sort. | +| Type | long | +| Default | 1048576(Before V2.0.6)
0(Supports from V2.0.6), if `sort_buffer_size_in_bytes <= 0`, default value will be used, `default value = min(32MB, memory for query operators / query_thread_count / 2)`, if `sort_buffer_size_in_bytes > 0`, the specified value will be used. | +| Effective | Hot_reload | + +- merge_threshold_of_explain_analyze + +| Name | merge_threshold_of_explain_analyze | +| ----------- | ------------------------------------------------------------ | +| Description | The threshold of operator count in the result set of EXPLAIN ANALYZE, if the number of operator in the result set is larger than this threshold, operator will be merged. | +| Type | int | +| Default | 10 | +| Effective | Hot reload | + +### 4.18 TTL Configuration + +- ttl_check_interval + +| Name | ttl_check_interval | +| ----------- | ------------------------------------------------------------ | +| Description | The interval of TTL check task in each database. The TTL check task will inspect and select files with a higher volume of expired data for compaction. Default is 2 hours. | +| Type | int | +| Default | 7200000 | +| Effective | Restart required. | + +- max_expired_time + +| Name | max_expired_time | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum expiring time of device which has a ttl. Default is 1 month.If the data elapsed time (current timestamp minus the maximum data timestamp of the device in the file) of such devices exceeds this value, then the file will be cleaned by compaction. | +| Type | int | +| Default | 2592000000 | +| Effective | Restart required. | + +- expired_data_ratio + +| Name | expired_data_ratio | +| ----------- | ------------------------------------------------------------ | +| Description | The expired device ratio. If the ratio of expired devices in one file exceeds this value, then expired data of this file will be cleaned by compaction. | +| Type | float | +| Default | 0.3 | +| Effective | Restart required. | + +### 4.19 Storage Engine Configuration + +- timestamp_precision + +| Name | timestamp_precision | +| ----------- | ------------------------------------------------------------ | +| Description | Use this value to set timestamp precision as "ms", "us" or "ns". | +| Type | String | +| Default | ms | +| Effective | Modify before the first startup. | + +- timestamp_precision_check_enabled + +| Name | timestamp_precision_check_enabled | +| ----------- | ------------------------------------------------------------ | +| Description | When the timestamp precision check is enabled, the timestamps those are over 13 digits for ms precision, or over 16 digits for us precision are not allowed to be inserted. | +| Type | Boolean | +| Default | true | +| Effective | Modify before the first startup. | + +- max_waiting_time_when_insert_blocked + +| Name | max_waiting_time_when_insert_blocked | +| ----------- | ------------------------------------------------------------ | +| Description | When the waiting time (in ms) of an inserting exceeds this, throw an exception. 10000 by default. | +| Type | Int32 | +| Default | 10000 | +| Effective | Restart required. | + +- handle_system_error + +| Name | handle_system_error | +| ----------- | -------------------------------------------------------- | +| Description | What will the system do when unrecoverable error occurs. | +| Type | String | +| Default | CHANGE_TO_READ_ONLY | +| Effective | Restart required. | + +- enable_timed_flush_seq_memtable + +| Name | enable_timed_flush_seq_memtable | +| ----------- | --------------------------------------------------- | +| Description | Whether to timed flush sequence tsfiles' memtables. | +| Type | Boolean | +| Default | true | +| Effective | Hot reload | + +- seq_memtable_flush_interval_in_ms + +| Name | seq_memtable_flush_interval_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | If a memTable's last update time is older than current time minus this, the memtable will be flushed to disk. | +| Type | long | +| Default | 600000 | +| Effective | Hot reload | + +- seq_memtable_flush_check_interval_in_ms + +| Name | seq_memtable_flush_check_interval_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | The interval to check whether sequence memtables need flushing. | +| Type | long | +| Default | 30000 | +| Effective | Hot reload | + +- enable_timed_flush_unseq_memtable + +| Name | enable_timed_flush_unseq_memtable | +| ----------- | ----------------------------------------------------- | +| Description | Whether to timed flush unsequence tsfiles' memtables. | +| Type | Boolean | +| Default | true | +| Effective | Hot reload | + +- unseq_memtable_flush_interval_in_ms + +| Name | unseq_memtable_flush_interval_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | If a memTable's last update time is older than current time minus this, the memtable will be flushed to disk. | +| Type | long | +| Default | 600000 | +| Effective | Hot reload | + +- unseq_memtable_flush_check_interval_in_ms + +| Name | unseq_memtable_flush_check_interval_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | The interval to check whether unsequence memtables need flushing. | +| Type | long | +| Default | 30000 | +| Effective | Hot reload | + +- tvlist_sort_algorithm + +| Name | tvlist_sort_algorithm | +| ----------- | ------------------------------------------------- | +| Description | The sort algorithms used in the memtable's TVList | +| Type | String | +| Default | TIM | +| Effective | Restart required. | + +- avg_series_point_number_threshold + +| Name | avg_series_point_number_threshold | +| ----------- | ------------------------------------------------------------ | +| Description | When the average point number of timeseries in memtable exceeds this, the memtable is flushed to disk. | +| Type | int32 | +| Default | 100000 | +| Effective | Restart required. | + +- flush_thread_count + +| Name | flush_thread_count | +| ----------- | ------------------------------------------------------------ | +| Description | How many threads can concurrently flush. When <= 0, use CPU core number. | +| Type | int32 | +| Default | 0 | +| Effective | Restart required. | + +- enable_partial_insert + +| Name | enable_partial_insert | +| ----------- | ------------------------------------------------------------ | +| Description | In one insert (one device, one timestamp, multiple measurements), if enable partial insert, one measurement failure will not impact other measurements | +| Type | Boolean | +| Default | true | +| Effective | Restart required. | + +- recovery_log_interval_in_ms + +| Name | recovery_log_interval_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | the interval to log recover progress of each vsg when starting iotdb | +| Type | Int32 | +| Default | 5000 | +| Effective | Restart required. | + +- 0.13_data_insert_adapt + +| Name | 0.13_data_insert_adapt | +| ----------- | ------------------------------------------------------------ | +| Description | If using a v0.13 client to insert data, please set this configuration to true. | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- enable_tsfile_validation + +| Name | enable_tsfile_validation | +| ----------- | ------------------------------------------------------------ | +| Description | Verify that TSfiles generated by Flush, Load, and Compaction are correct. | +| Type | boolean | +| Default | false | +| Effective | Hot reload | + +- tier_ttl_in_ms + +| Name | tier_ttl_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | Default tier TTL. When the survival time of the data exceeds the threshold, it will be migrated to the next tier. | +| Type | long | +| Default | -1 | +| Effective | Restart required. | + + +### 4.20 Compaction Configurations + +- enable_seq_space_compaction + +| Name | enable_seq_space_compaction | +| ----------- | ---------------------------------------------------------- | +| Description | sequence space compaction: only compact the sequence files | +| Type | Boolean | +| Default | true | +| Effective | Hot reload | + +- enable_unseq_space_compaction + +| Name | enable_unseq_space_compaction | +| ----------- | ------------------------------------------------------------ | +| Description | unsequence space compaction: only compact the unsequence files | +| Type | Boolean | +| Default | true | +| Effective | Hot reload | + +- enable_cross_space_compaction + +| Name | enable_cross_space_compaction | +| ----------- | ------------------------------------------------------------ | +| Description | cross space compaction: compact the unsequence files into the overlapped sequence files | +| Type | Boolean | +| Default | true | +| Effective | Hot reload | + +- enable_auto_repair_compaction + +| Name | enable_auto_repair_compaction | +| ----------- | ---------------------------------------------- | +| Description | enable auto repair unsorted file by compaction | +| Type | Boolean | +| Default | true | +| Effective | Hot reload | + +- cross_selector + +| Name | cross_selector | +| ----------- | ------------------------------------------- | +| Description | the selector of cross space compaction task | +| Type | String | +| Default | rewrite | +| Effective | Restart required. | + +- cross_performer + +| Name | cross_performer | +| ----------- |-----------------------------------------------------------| +| Description | the compaction performer of cross space compaction task, Options: read_point, fast | +| Type | String | +| Default | fast | +| Effective | Hot reload . | + +- inner_seq_selector + +| Name | inner_seq_selector | +| ----------- |--------------------------------------------------------| +| Description | the selector of inner sequence space compaction task, Options: size_tiered_single_target,size_tiered_multi_target | +| Type | String | +| Default | size_tiered_multi_target | +| Effective | Hot reload | + +- inner_seq_performer + +| Name | inner_seq_performer | +| ----------- |---------------------------------------------------------| +| Description | the performer of inner sequence space compaction task, Options: read_chunk, fast | +| Type | String | +| Default | read_chunk | +| Effective | Hot reload | + +- inner_unseq_selector + +| Name | inner_unseq_selector | +| ----------- |----------------------------------------------------------| +| Description | the selector of inner unsequence space compaction task, Options: size_tiered_single_target,size_tiered_multi_target | +| Type | String | +| Default | size_tiered_multi_target | +| Effective | Hot reload | + +- inner_unseq_performer + +| Name | inner_unseq_performer | +| ----------- |-----------------------------------------------------------| +| Description | the performer of inner unsequence space compaction task, Options: read_point, fast | +| Type | String | +| Default | fast | +| Effective | Hot reload | + +- compaction_priority + +| Name | compaction_priority | +| ----------- | ------------------------------------------------------------ | +| Description | The priority of compaction executionINNER_CROSS: prioritize inner space compaction, reduce the number of files firstCROSS_INNER: prioritize cross space compaction, eliminate the unsequence files firstBALANCE: alternate two compaction types | +| Type | String | +| Default | INNER_CROSS | +| Effective | Restart required. | + +- candidate_compaction_task_queue_size + +| Name | candidate_compaction_task_queue_size | +| ----------- | -------------------------------------------- | +| Description | The size of candidate compaction task queue. | +| Type | int32 | +| Default | 50 | +| Effective | Restart required. | + +- target_compaction_file_size + +| Name | target_compaction_file_size | +| ----------- | ------------------------------------------------------------ | +| Description | This parameter is used in two places:The target tsfile size of inner space compaction.The candidate size of seq tsfile in cross space compaction will be smaller than target_compaction_file_size * 1.5.In most cases, the target file size of cross compaction won't exceed this threshold, and if it does, it will not be much larger than it. | +| Type | Int64 | +| Default | 2147483648 | +| Effective | Hot reload | + +- inner_compaction_total_file_size_threshold + +| Name | inner_compaction_total_file_size_threshold | +| ----------- | ---------------------------------------------------- | +| Description | The total file size limit in inner space compaction. | +| Type | int64 | +| Default | 10737418240 | +| Effective | Hot reload | + +- inner_compaction_total_file_num_threshold + +| Name | inner_compaction_total_file_num_threshold | +| ----------- | --------------------------------------------------- | +| Description | The total file num limit in inner space compaction. | +| Type | int32 | +| Default | 100 | +| Effective | Hot reload | + +- max_level_gap_in_inner_compaction + +| Name | max_level_gap_in_inner_compaction | +| ----------- | ----------------------------------------------- | +| Description | The max level gap in inner compaction selection | +| Type | int32 | +| Default | 2 | +| Effective | Hot reload | + +- target_chunk_size + +| Name | target_chunk_size | +| ----------- | ------------------------------------------------------------ | +| Description | The target chunk size in flushing and compaction. If the size of a timeseries in memtable exceeds this, the data will be flushed to multiple chunks.| +| Type | Int64 | +| Default | 1600000 | +| Effective | Restart required. | + +- target_chunk_point_num + +| Name | target_chunk_point_num | +| ----------- |-----------------------------------------------------------------| +| Description | The target point nums in one chunk in flushing and compaction. If the point number of a timeseries in memtable exceeds this, the data will be flushed to multiple chunks. | +| Type | Int64 | +| Default | 100000 | +| Effective | Restart required. | + +- chunk_size_lower_bound_in_compaction + +| Name | chunk_size_lower_bound_in_compaction | +| ----------- | ------------------------------------------------------------ | +| Description | If the chunk size is lower than this threshold, it will be deserialized into points | +| Type | Int64 | +| Default | 128 | +| Effective | Restart required. | + +- chunk_point_num_lower_bound_in_compaction + +| Name | chunk_point_num_lower_bound_in_compaction | +| ----------- |------------------------------------------------------------------------------------------| +| Description | If the chunk point num is lower than this threshold, it will be deserialized into points | +| Type | Int64 | +| Default | 100 | +| Effective | Restart required. | + +- inner_compaction_candidate_file_num + +| Name | inner_compaction_candidate_file_num | +| ----------- | ------------------------------------------------------------ | +| Description | The file num requirement when selecting inner space compaction candidate files | +| Type | int32 | +| Default | 30 | +| Effective | Hot reload | + +- max_cross_compaction_candidate_file_num + +| Name | max_cross_compaction_candidate_file_num | +| ----------- | ------------------------------------------------------------ | +| Description | The max file when selecting cross space compaction candidate files | +| Type | int32 | +| Default | 500 | +| Effective | Hot reload | + +- max_cross_compaction_candidate_file_size + +| Name | max_cross_compaction_candidate_file_size | +| ----------- | ------------------------------------------------------------ | +| Description | The max total size when selecting cross space compaction candidate files | +| Type | Int64 | +| Default | 5368709120 | +| Effective | Hot reload | + +- min_cross_compaction_unseq_file_level + +| Name | min_cross_compaction_unseq_file_level | +| ----------- | ------------------------------------------------------------ | +| Description | The min inner compaction level of unsequence file which can be selected as candidate | +| Type | int32 | +| Default | 1 | +| Effective | Hot reload | + +- compaction_thread_count + +| Name | compaction_thread_count | +| ----------- | ------------------------------------------------------------ | +| Description | How many threads will be set up to perform compaction, 10 by default. | +| Type | int32 | +| Default | 10 | +| Effective | Hot reload | + +- compaction_max_aligned_series_num_in_one_batch + +| Name | compaction_max_aligned_series_num_in_one_batch | +| ----------- | ------------------------------------------------------------ | +| Description | How many chunk will be compacted in aligned series compaction, 10 by default. | +| Type | int32 | +| Default | 10 | +| Effective | Hot reload | + +- compaction_schedule_interval_in_ms + +| Name | compaction_schedule_interval_in_ms | +| ----------- | ---------------------------------------- | +| Description | The interval of compaction task schedule | +| Type | Int64 | +| Default | 60000 | +| Effective | Restart required. | + +- compaction_write_throughput_mb_per_sec + +| Name | compaction_write_throughput_mb_per_sec | +| ----------- | -------------------------------------------------------- | +| Description | The limit of write throughput merge can reach per second | +| Type | int32 | +| Default | 16 | +| Effective | Restart required. | + +- compaction_read_throughput_mb_per_sec + +| Name | compaction_read_throughput_mb_per_sec | +| ----------- | ------------------------------------------------------- | +| Description | The limit of read throughput merge can reach per second | +| Type | int32 | +| Default | 0 | +| Effective | Hot reload | + +- compaction_read_operation_per_sec + +| Name | compaction_read_operation_per_sec | +| ----------- | ------------------------------------------------------ | +| Description | The limit of read operation merge can reach per second | +| Type | int32 | +| Default | 0 | +| Effective | Hot reload | + +- sub_compaction_thread_count + +| Name | sub_compaction_thread_count | +| ----------- | ------------------------------------------------------------ | +| Description | The number of sub compaction threads to be set up to perform compaction. | +| Type | int32 | +| Default | 4 | +| Effective | Hot reload | + +- inner_compaction_task_selection_disk_redundancy + +| Name | inner_compaction_task_selection_disk_redundancy | +| ----------- | ------------------------------------------------------------ | +| Description | Redundancy value of disk availability, only use for inner compaction. | +| Type | double | +| Default | 0.05 | +| Effective | Hot reload | + +- inner_compaction_task_selection_mods_file_threshold + +| Name | inner_compaction_task_selection_mods_file_threshold | +| ----------- | -------------------------------------------------------- | +| Description | Mods file size threshold, only use for inner compaction. | +| Type | long | +| Default | 131072 | +| Effective | Hot reload | + +- compaction_schedule_thread_num + +| Name | compaction_schedule_thread_num | +| ----------- | ------------------------------------------------------------ | +| Description | The number of threads to be set up to select compaction task. | +| Type | int32 | +| Default | 4 | +| Effective | Hot reload | + +### 4.21 Write Ahead Log Configuration + +- wal_mode + +| Name | wal_mode | +| ----------- | ------------------------------------------------------------ | +| Description | The details of these three modes are as follows:DISABLE: the system will disable wal.SYNC: the system will submit wal synchronously, write request will not return until its wal is fsynced to the disk successfully.ASYNC: the system will submit wal asynchronously, write request will return immediately no matter its wal is fsynced to the disk successfully. | +| Type | String | +| Default | ASYNC | +| Effective | Restart required. | + +- max_wal_nodes_num + +| Name | max_wal_nodes_num | +| ----------- | ------------------------------------------------------------ | +| Description | each node corresponds to one wal directory The default value 0 means the number is determined by the system, the number is in the range of [data region num / 2, data region num]. | +| Type | int32 | +| Default | 0 | +| Effective | Restart required. | + +- wal_async_mode_fsync_delay_in_ms + +| Name | wal_async_mode_fsync_delay_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | Duration a wal flush operation will wait before calling fsync in the async mode | +| Type | int32 | +| Default | 1000 | +| Effective | Hot reload | + +- wal_sync_mode_fsync_delay_in_ms + +| Name | wal_sync_mode_fsync_delay_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | Duration a wal flush operation will wait before calling fsync in the sync mode | +| Type | int32 | +| Default | 3 | +| Effective | Hot reload | + +- wal_buffer_size_in_byte + +| Name | wal_buffer_size_in_byte | +| ----------- | ---------------------------- | +| Description | Buffer size of each wal node | +| Type | int32 | +| Default | 33554432 | +| Effective | Restart required. | + +- wal_buffer_queue_capacity + +| Name | wal_buffer_queue_capacity | +| ----------- | --------------------------------- | +| Description | Buffer capacity of each wal queue | +| Type | int32 | +| Default | 500 | +| Effective | Restart required. | + +- wal_file_size_threshold_in_byte + +| Name | wal_file_size_threshold_in_byte | +| ----------- | ------------------------------- | +| Description | Size threshold of each wal file | +| Type | int32 | +| Default | 31457280 | +| Effective | Hot reload | + +- wal_min_effective_info_ratio + +| Name | wal_min_effective_info_ratio | +| ----------- | --------------------------------------------------- | +| Description | Minimum ratio of effective information in wal files | +| Type | double | +| Default | 0.1 | +| Effective | Hot reload | + +- wal_memtable_snapshot_threshold_in_byte + +| Name | wal_memtable_snapshot_threshold_in_byte | +| ----------- | ------------------------------------------------------------ | +| Description | MemTable size threshold for triggering MemTable snapshot in wal | +| Type | int64 | +| Default | 8388608 | +| Effective | Hot reload | + +- max_wal_memtable_snapshot_num + +| Name | max_wal_memtable_snapshot_num | +| ----------- | ------------------------------------- | +| Description | MemTable's max snapshot number in wal | +| Type | int32 | +| Default | 1 | +| Effective | Hot reload | + +- delete_wal_files_period_in_ms + +| Name | delete_wal_files_period_in_ms | +| ----------- | ----------------------------------------------------------- | +| Description | The period when outdated wal files are periodically deleted | +| Type | int64 | +| Default | 20000 | +| Effective | Hot reload | + +- wal_throttle_threshold_in_byte + +| Name | wal_throttle_threshold_in_byte | +| ----------- | ------------------------------------------------------------ | +| Description | The minimum size of wal files when throttle down in IoTConsensus | +| Type | long | +| Default | 53687091200 | +| Effective | Hot reload | + +- iot_consensus_cache_window_time_in_ms + +| Name | iot_consensus_cache_window_time_in_ms | +| ----------- | ------------------------------------------------ | +| Description | Maximum wait time of write cache in IoTConsensus | +| Type | long | +| Default | -1 | +| Effective | Hot reload | + +- enable_wal_compression + +| Name | iot_consensus_cache_window_time_in_ms | +| ----------- | ------------------------------------- | +| Description | Enable Write Ahead Log compression. | +| Type | boolean | +| Default | true | +| Effective | Hot reload | + +### 4.22 **IoTConsensus Configuration** + +- data_region_iot_max_log_entries_num_per_batch + +| Name | data_region_iot_max_log_entries_num_per_batch | +| ----------- | ------------------------------------------------- | +| Description | The maximum log entries num in IoTConsensus Batch | +| Type | int32 | +| Default | 1024 | +| Effective | Restart required. | + +- data_region_iot_max_size_per_batch + +| Name | data_region_iot_max_size_per_batch | +| ----------- | -------------------------------------- | +| Description | The maximum size in IoTConsensus Batch | +| Type | int32 | +| Default | 16777216 | +| Effective | Restart required. | + +- data_region_iot_max_pending_batches_num + +| Name | data_region_iot_max_pending_batches_num | +| ----------- | ----------------------------------------------- | +| Description | The maximum pending batches num in IoTConsensus | +| Type | int32 | +| Default | 5 | +| Effective | Restart required. | + +- data_region_iot_max_memory_ratio_for_queue + +| Name | data_region_iot_max_memory_ratio_for_queue | +| ----------- | -------------------------------------------------- | +| Description | The maximum memory ratio for queue in IoTConsensus | +| Type | double | +| Default | 0.6 | +| Effective | Restart required. | + +- region_migration_speed_limit_bytes_per_second + +| Name | region_migration_speed_limit_bytes_per_second | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum transit size in byte per second for region migration | +| Type | long | +| Default | 33554432 | +| Effective | Restart required. | + +### 4.23 TsFile Configurations + +- group_size_in_byte + +| Name | group_size_in_byte | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum number of bytes written to disk each time the data in memory is written to disk | +| Type | int32 | +| Default | 134217728 | +| Effective | Hot reload | + +- page_size_in_byte + +| Name | page_size_in_byte | +| ----------- | ------------------------------------------------------------ | +| Description | The memory size for each series writer to pack page, default value is 64KB | +| Type | int32 | +| Default | 65536 | +| Effective | Hot reload | + +- max_number_of_points_in_page + +| Name | max_number_of_points_in_page | +| ----------- | ------------------------------------------- | +| Description | The maximum number of data points in a page | +| Type | int32 | +| Default | 10000 | +| Effective | Hot reload | + +- pattern_matching_threshold + +| Name | pattern_matching_threshold | +| ----------- | ------------------------------------------- | +| Description | The threshold for pattern matching in regex | +| Type | int32 | +| Default | 1000000 | +| Effective | Hot reload | + +- float_precision + +| Name | float_precision | +| ----------- | ------------------------------------------------------------ | +| Description | Floating-point precision of query results.Only effective for RLE and TS_2DIFF encodings.Due to the limitation of machine precision, some values may not be interpreted strictly. | +| Type | int32 | +| Default | 2 | +| Effective | Hot reload | + +- value_encoder + +| Name | value_encoder | +| ----------- | ------------------------------------------------------------ | +| Description | Encoder of value series. default value is PLAIN. | +| Type | For int, long data type, also supports TS_2DIFF and RLE(run-length encoding), GORILLA and ZIGZAG. | +| Default | PLAIN | +| Effective | Hot reload | + +- compressor + +| Name | compressor | +| ----------- | ------------------------------------------------------------ | +| Description | Compression configuration And it is also used as the default compressor of time column in aligned timeseries. | +| Type | Data compression method, supports UNCOMPRESSED, SNAPPY, ZSTD, LZMA2 or LZ4. Default value is LZ4 | +| Default | LZ4 | +| Effective | Hot reload | + +- encrypt_flag + +| Name | encrypt_flag | +| ----------- | ---------------------- | +| Description | Enable data encryption | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- encrypt_type + +| Name | encrypt_type | +| ----------- |---------------------------------------| +| Description | The method of data encrytion | +| Type | String | +| Default | org.apache.tsfile.encrypt.UNENCRYPTED | +| Effective | Restart required. | + +- encrypt_key_path + +| Name | encrypt_key_path | +| ----------- | ----------------------------------- | +| Description | The path of key for data encryption | +| Type | String | +| Default | None | +| Effective | Restart required. | + +### 4.24 Authorization Configuration + +- authorizer_provider_class + +| Name | authorizer_provider_class | +| ----------- | ------------------------------------------------------------ | +| Description | which class to serve for authorization. | +| Type | String | +| Default | org.apache.iotdb.commons.auth.authorizer.LocalFileAuthorizer | +| Effective | Restart required. | + +- iotdb_server_encrypt_decrypt_provider + +| Name | iotdb_server_encrypt_decrypt_provider | +| ----------- | ------------------------------------------------------------ | +| Description | encryption provider class | +| Type | String | +| Default | org.apache.iotdb.commons.security.encrypt.MessageDigestEncrypt | +| Effective | Modify before the first startup. | + +- iotdb_server_encrypt_decrypt_provider_parameter + +| Name | iotdb_server_encrypt_decrypt_provider_parameter | +| ----------- | ----------------------------------------------- | +| Description | encryption provided class parameter | +| Type | String | +| Default | None | +| Effective | Modify before the first startup. | + +- author_cache_size + +| Name | author_cache_size | +| ----------- | --------------------------- | +| Description | Cache size of user and role | +| Type | int32 | +| Default | 1000 | +| Effective | Restart required. | + +- author_cache_expire_time + +| Name | author_cache_expire_time | +| ----------- | ---------------------------------- | +| Description | Cache expire time of user and role | +| Type | int32 | +| Default | 30 | +| Effective | Restart required. | + +### 4.25 UDF Configuration + +- udf_initial_byte_array_length_for_memory_control + +| Name | udf_initial_byte_array_length_for_memory_control | +| ----------- | ------------------------------------------------------------ | +| Description | Used to estimate the memory usage of text fields in a UDF query.It is recommended to set this value to be slightly larger than the average length of all text records. | +| Type | int32 | +| Default | 48 | +| Effective | Restart required. | + +- udf_memory_budget_in_mb + +| Name | udf_memory_budget_in_mb | +| ----------- | ------------------------------------------------------------ | +| Description | How much memory may be used in ONE UDF query (in MB). The upper limit is 20% of allocated memory for read. | +| Type | Float | +| Default | 30.0 | +| Effective | Restart required. | + +- udf_reader_transformer_collector_memory_proportion + +| Name | udf_reader_transformer_collector_memory_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | UDF memory allocation ratio.The parameter form is a:b:c, where a, b, and c are integers. | +| Type | String | +| Default | 1:1:1 | +| Effective | Restart required. | + +- udf_lib_dir + +| Name | udf_lib_dir | +| ----------- | ---------------------------- | +| Description | the udf lib directory | +| Type | String | +| Default | ext/udf(Windows:ext\\udf) | +| Effective | Restart required. | + +### 4.26 Trigger Configuration + +- trigger_lib_dir + +| Name | trigger_lib_dir | +| ----------- | ------------------------- | +| Description | the trigger lib directory | +| Type | String | +| Default | ext/trigger | +| Effective | Restart required. | + +- stateful_trigger_retry_num_when_not_found + +| Name | stateful_trigger_retry_num_when_not_found | +| ----------- | ------------------------------------------------------------ | +| Description | How many times will we retry to found an instance of stateful trigger on DataNodes | +| Type | Int32 | +| Default | 3 | +| Effective | Restart required. | + +### 4.27 **Select-Into Configuration** + +- into_operation_buffer_size_in_byte + +| Name | into_operation_buffer_size_in_byte | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum memory occupied by the data to be written when executing select-into statements. | +| Type | long | +| Default | 104857600 | +| Effective | Hot reload | + +- select_into_insert_tablet_plan_row_limit + +| Name | select_into_insert_tablet_plan_row_limit | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum number of rows can be processed in insert-tablet-plan when executing select-into statements. | +| Type | int32 | +| Default | 10000 | +| Effective | Hot reload | + +- into_operation_execution_thread_count + +| Name | into_operation_execution_thread_count | +| ----------- | ------------------------------------------------------------ | +| Description | The number of threads in the thread pool that execute insert-tablet tasks | +| Type | int32 | +| Default | 2 | +| Effective | Restart required. | + +### 4.28 Continuous Query Configuration + +- continuous_query_submit_thread_count + +| Name | continuous_query_execution_thread | +| ----------- | ------------------------------------------------------------ | +| Description | The number of threads in the scheduled thread pool that submit continuous query tasks periodically | +| Type | int32 | +| Default | 2 | +| Effective | Restart required. | + +- continuous_query_min_every_interval_in_ms + +| Name | continuous_query_min_every_interval_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | The minimum value of the continuous query execution time interval | +| Type | long (duration) | +| Default | 1000 | +| Effective | Restart required. | + +### 4.29 Pipe Configuration + +- pipe_lib_dir + +| Name | pipe_lib_dir | +| ----------- | ----------------------- | +| Description | the pipe lib directory. | +| Type | string | +| Default | ext/pipe | +| Effective | Not support modify | + +- pipe_subtask_executor_max_thread_num + +| Name | pipe_subtask_executor_max_thread_num | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum number of threads that can be used to execute the pipe subtasks in PipeSubtaskExecutor. The actual value will be min(pipe_subtask_executor_max_thread_num, max(1, CPU core number / 2)). | +| Type | int | +| Default | 5 | +| Effective | Restart required. | + +- pipe_sink_timeout_ms + +| Name | pipe_sink_timeout_ms | +| ----------- | ------------------------------------------------------------ | +| Description | The connection timeout (in milliseconds) for the thrift client. | +| Type | int | +| Default | 900000 | +| Effective | Restart required. | + +- pipe_sink_selector_number + +| Name | pipe_sink_selector_number | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum number of selectors that can be used in the sink.Recommend to set this value to less than or equal to pipe_sink_max_client_number. | +| Type | int | +| Default | 4 | +| Effective | Restart required. | + +- pipe_sink_max_client_number + +| Name | pipe_sink_max_client_number | +| ----------- | ----------------------------------------------------------- | +| Description | The maximum number of clients that can be used in the sink. | +| Type | int | +| Default | 16 | +| Effective | Restart required. | + +- pipe_air_gap_receiver_enabled + +| Name | pipe_air_gap_receiver_enabled | +| ----------- | ------------------------------------------------------------ | +| Description | Whether to enable receiving pipe data through air gap.The receiver can only return 0 or 1 in TCP mode to indicate whether the data is received successfully. | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- pipe_air_gap_receiver_port + +| Name | pipe_air_gap_receiver_port | +| ----------- | ------------------------------------------------------------ | +| Description | The port for the server to receive pipe data through air gap. | +| Type | int | +| Default | 9780 | +| Effective | Restart required. | + +- pipe_all_sinks_rate_limit_bytes_per_second + +| Name | pipe_all_sinks_rate_limit_bytes_per_second | +| ----------- | ------------------------------------------------------------ | +| Description | The total bytes that all pipe sinks can transfer per second.When given a value less than or equal to 0, it means no limit. default value is -1, which means no limit. | +| Type | double | +| Default | -1 | +| Effective | Hot reload | + +### 4.30 RatisConsensus Configuration + +- config_node_ratis_log_appender_buffer_size_max + +| Name | config_node_ratis_log_appender_buffer_size_max | +| ----------- | ------------------------------------------------------------ | +| Description | max payload size for a single log-sync-RPC from leader to follower of ConfigNode (in byte, by default 16MB) | +| Type | int32 | +| Default | 16777216 | +| Effective | Restart required. | + +- schema_region_ratis_log_appender_buffer_size_max + +| Name | schema_region_ratis_log_appender_buffer_size_max | +| ----------- | ------------------------------------------------------------ | +| Description | max payload size for a single log-sync-RPC from leader to follower of SchemaRegion (in byte, by default 16MB) | +| Type | int32 | +| Default | 16777216 | +| Effective | Restart required. | + +- data_region_ratis_log_appender_buffer_size_max + +| Name | data_region_ratis_log_appender_buffer_size_max | +| ----------- | ------------------------------------------------------------ | +| Description | max payload size for a single log-sync-RPC from leader to follower of DataRegion (in byte, by default 16MB) | +| Type | int32 | +| Default | 16777216 | +| Effective | Restart required. | + +- config_node_ratis_snapshot_trigger_threshold + +| Name | config_node_ratis_snapshot_trigger_threshold | +| ----------- | ------------------------------------------------------------ | +| Description | max numbers of snapshot_trigger_threshold logs to trigger a snapshot of Confignode | +| Type | int32 | +| Default | 400,000 | +| Effective | Restart required. | + +- schema_region_ratis_snapshot_trigger_threshold + +| Name | schema_region_ratis_snapshot_trigger_threshold | +| ----------- | ------------------------------------------------------------ | +| Description | max numbers of snapshot_trigger_threshold logs to trigger a snapshot of SchemaRegion | +| Type | int32 | +| Default | 400,000 | +| Effective | Restart required. | + +- data_region_ratis_snapshot_trigger_threshold + +| Name | data_region_ratis_snapshot_trigger_threshold | +| ----------- | ------------------------------------------------------------ | +| Description | max numbers of snapshot_trigger_threshold logs to trigger a snapshot of DataRegion | +| Type | int32 | +| Default | 400,000 | +| Effective | Restart required. | + +- config_node_ratis_log_unsafe_flush_enable + +| Name | config_node_ratis_log_unsafe_flush_enable | +| ----------- | ------------------------------------------------------ | +| Description | Is confignode allowed flushing Raft Log asynchronously | +| Type | boolean | +| Default | false | +| Effective | Restart required. | + +- schema_region_ratis_log_unsafe_flush_enable + +| Name | schema_region_ratis_log_unsafe_flush_enable | +| ----------- | -------------------------------------------------------- | +| Description | Is schemaregion allowed flushing Raft Log asynchronously | +| Type | boolean | +| Default | false | +| Effective | Restart required. | + +- data_region_ratis_log_unsafe_flush_enable + +| Name | data_region_ratis_log_unsafe_flush_enable | +| ----------- | ------------------------------------------------------ | +| Description | Is dataregion allowed flushing Raft Log asynchronously | +| Type | boolean | +| Default | false | +| Effective | Restart required. | + +- config_node_ratis_log_segment_size_max_in_byte + +| Name | config_node_ratis_log_segment_size_max_in_byte | +| ----------- | ------------------------------------------------------------ | +| Description | max capacity of a RaftLog segment file of confignode (in byte, by default 24MB) | +| Type | int32 | +| Default | 25165824 | +| Effective | Restart required. | + +- schema_region_ratis_log_segment_size_max_in_byte + +| Name | schema_region_ratis_log_segment_size_max_in_byte | +| ----------- | ------------------------------------------------------------ | +| Description | max capacity of a RaftLog segment file of schemaregion (in byte, by default 24MB) | +| Type | int32 | +| Default | 25165824 | +| Effective | Restart required. | + +- data_region_ratis_log_segment_size_max_in_byte + +| Name | data_region_ratis_log_segment_size_max_in_byte | +| ----------- | ------------------------------------------------------------ | +| Description | max capacity of a RaftLog segment file of dataregion(in byte, by default 24MB) | +| Type | int32 | +| Default | 25165824 | +| Effective | Restart required. | + +- config_node_simple_consensus_log_segment_size_max_in_byte + +| Name | data_region_ratis_log_segment_size_max_in_byte | +| ----------- | ------------------------------------------------------------ | +| Description | max capacity of a simple log segment file of confignode(in byte, by default 24MB) | +| Type | int32 | +| Default | 25165824 | +| Effective | Restart required. | + +- config_node_ratis_grpc_flow_control_window + +| Name | config_node_ratis_grpc_flow_control_window | +| ----------- | ---------------------------------------------------------- | +| Description | confignode flow control window for ratis grpc log appender | +| Type | int32 | +| Default | 4194304 | +| Effective | Restart required. | + +- schema_region_ratis_grpc_flow_control_window + +| Name | schema_region_ratis_grpc_flow_control_window | +| ----------- | ------------------------------------------------------------ | +| Description | schema region flow control window for ratis grpc log appender | +| Type | int32 | +| Default | 4194304 | +| Effective | Restart required. | + +- data_region_ratis_grpc_flow_control_window + +| Name | data_region_ratis_grpc_flow_control_window | +| ----------- | ----------------------------------------------------------- | +| Description | data region flow control window for ratis grpc log appender | +| Type | int32 | +| Default | 4194304 | +| Effective | Restart required. | + +- config_node_ratis_grpc_leader_outstanding_appends_max + +| Name | config_node_ratis_grpc_leader_outstanding_appends_max | +| ----------- | ----------------------------------------------------- | +| Description | config node grpc line concurrency threshold | +| Type | int32 | +| Default | 128 | +| Effective | Restart required. | + +- schema_region_ratis_grpc_leader_outstanding_appends_max + +| Name | schema_region_ratis_grpc_leader_outstanding_appends_max | +| ----------- | ------------------------------------------------------- | +| Description | schema region grpc line concurrency threshold | +| Type | int32 | +| Default | 128 | +| Effective | Restart required. | + +- data_region_ratis_grpc_leader_outstanding_appends_max + +| Name | data_region_ratis_grpc_leader_outstanding_appends_max | +| ----------- | ----------------------------------------------------- | +| Description | data region grpc line concurrency threshold | +| Type | int32 | +| Default | 128 | +| Effective | Restart required. | + +- config_node_ratis_log_force_sync_num + +| Name | config_node_ratis_log_force_sync_num | +| ----------- | ------------------------------------ | +| Description | config node fsync threshold | +| Type | int32 | +| Default | 128 | +| Effective | Restart required. | + +- schema_region_ratis_log_force_sync_num + +| Name | schema_region_ratis_log_force_sync_num | +| ----------- | -------------------------------------- | +| Description | schema region fsync threshold | +| Type | int32 | +| Default | 128 | +| Effective | Restart required. | + +- data_region_ratis_log_force_sync_num + +| Name | data_region_ratis_log_force_sync_num | +| ----------- | ------------------------------------ | +| Description | data region fsync threshold | +| Type | int32 | +| Default | 128 | +| Effective | Restart required. | + +- config_node_ratis_rpc_leader_election_timeout_min_ms + +| Name | config_node_ratis_rpc_leader_election_timeout_min_ms | +| ----------- | ---------------------------------------------------- | +| Description | confignode leader min election timeout | +| Type | int32 | +| Default | 2000ms | +| Effective | Restart required. | + +- schema_region_ratis_rpc_leader_election_timeout_min_ms + +| Name | schema_region_ratis_rpc_leader_election_timeout_min_ms | +| ----------- | ------------------------------------------------------ | +| Description | schema region leader min election timeout | +| Type | int32 | +| Default | 2000ms | +| Effective | Restart required. | + +- data_region_ratis_rpc_leader_election_timeout_min_ms + +| Name | data_region_ratis_rpc_leader_election_timeout_min_ms | +| ----------- | ---------------------------------------------------- | +| Description | data region leader min election timeout | +| Type | int32 | +| Default | 2000ms | +| Effective | Restart required. | + +- config_node_ratis_rpc_leader_election_timeout_max_ms + +| Name | config_node_ratis_rpc_leader_election_timeout_max_ms | +| ----------- | ---------------------------------------------------- | +| Description | confignode leader max election timeout | +| Type | int32 | +| Default | 4000ms | +| Effective | Restart required. | + +- schema_region_ratis_rpc_leader_election_timeout_max_ms + +| Name | schema_region_ratis_rpc_leader_election_timeout_max_ms | +| ----------- | ------------------------------------------------------ | +| Description | schema region leader max election timeout | +| Type | int32 | +| Default | 4000ms | +| Effective | Restart required. | + +- data_region_ratis_rpc_leader_election_timeout_max_ms + +| Name | data_region_ratis_rpc_leader_election_timeout_max_ms | +| ----------- | ---------------------------------------------------- | +| Description | data region leader max election timeout | +| Type | int32 | +| Default | 4000ms | +| Effective | Restart required. | + +- config_node_ratis_request_timeout_ms + +| Name | config_node_ratis_request_timeout_ms | +| ----------- | --------------------------------------- | +| Description | confignode ratis client retry threshold | +| Type | int32 | +| Default | 10000 | +| Effective | Restart required. | + +- schema_region_ratis_request_timeout_ms + +| Name | schema_region_ratis_request_timeout_ms | +| ----------- | ------------------------------------------ | +| Description | schema region ratis client retry threshold | +| Type | int32 | +| Default | 10000 | +| Effective | Restart required. | + +- data_region_ratis_request_timeout_ms + +| Name | data_region_ratis_request_timeout_ms | +| ----------- | ---------------------------------------- | +| Description | data region ratis client retry threshold | +| Type | int32 | +| Default | 10000 | +| Effective | Restart required. | + +- config_node_ratis_max_retry_attempts + +| Name | config_node_ratis_max_retry_attempts | +| ----------- | ------------------------------------ | +| Description | confignode ratis client retry times | +| Type | int32 | +| Default | 10 | +| Effective | Restart required. | + +- config_node_ratis_initial_sleep_time_ms + +| Name | config_node_ratis_initial_sleep_time_ms | +| ----------- | ------------------------------------------ | +| Description | confignode ratis client initial sleep time | +| Type | int32 | +| Default | 100ms | +| Effective | Restart required. | + +- config_node_ratis_max_sleep_time_ms + +| Name | config_node_ratis_max_sleep_time_ms | +| ----------- | -------------------------------------------- | +| Description | confignode ratis client max retry sleep time | +| Type | int32 | +| Default | 10000 | +| Effective | Restart required. | + +- schema_region_ratis_max_retry_attempts + +| Name | schema_region_ratis_max_retry_attempts | +| ----------- | ------------------------------------------ | +| Description | schema region ratis client max retry times | +| Type | int32 | +| Default | 10 | +| Effective | Restart required. | + +- schema_region_ratis_initial_sleep_time_ms + +| Name | schema_region_ratis_initial_sleep_time_ms | +| ----------- | ------------------------------------------ | +| Description | schema region ratis client init sleep time | +| Type | int32 | +| Default | 100ms | +| Effective | Restart required. | + +- schema_region_ratis_max_sleep_time_ms + +| Name | schema_region_ratis_max_sleep_time_ms | +| ----------- | ----------------------------------------- | +| Description | schema region ratis client max sleep time | +| Type | int32 | +| Default | 1000 | +| Effective | Restart required. | + +- data_region_ratis_max_retry_attempts + +| Name | data_region_ratis_max_retry_attempts | +| ----------- | --------------------------------------------- | +| Description | data region ratis client max retry sleep time | +| Type | int32 | +| Default | 10 | +| Effective | Restart required. | + +- data_region_ratis_initial_sleep_time_ms + +| Name | data_region_ratis_initial_sleep_time_ms | +| ----------- | ---------------------------------------- | +| Description | data region ratis client init sleep time | +| Type | int32 | +| Default | 100ms | +| Effective | Restart required. | + +- data_region_ratis_max_sleep_time_ms + +| Name | data_region_ratis_max_sleep_time_ms | +| ----------- | --------------------------------------------- | +| Description | data region ratis client max retry sleep time | +| Type | int32 | +| Default | 1000 | +| Effective | Restart required. | + +- ratis_first_election_timeout_min_ms + +| Name | ratis_first_election_timeout_min_ms | +| ----------- | ----------------------------------- | +| Description | Ratis first election min timeout | +| Type | int64 | +| Default | 50 (ms) | +| Effective | Restart required. | + +- ratis_first_election_timeout_max_ms + +| Name | ratis_first_election_timeout_max_ms | +| ----------- | ----------------------------------- | +| Description | Ratis first election max timeout | +| Type | int64 | +| Default | 150 (ms) | +| Effective | Restart required. | + +- config_node_ratis_preserve_logs_num_when_purge + +| Name | config_node_ratis_preserve_logs_num_when_purge | +| ----------- | ------------------------------------------------------------ | +| Description | confignode snapshot preserves certain logs when taking snapshot and purge | +| Type | int32 | +| Default | 1000 | +| Effective | Restart required. | + +- schema_region_ratis_preserve_logs_num_when_purge + +| Name | schema_region_ratis_preserve_logs_num_when_purge | +| ----------- | ------------------------------------------------------------ | +| Description | schema region snapshot preserves certain logs when taking snapshot and purge | +| Type | int32 | +| Default | 1000 | +| Effective | Restart required. | + +- data_region_ratis_preserve_logs_num_when_purge + +| Name | data_region_ratis_preserve_logs_num_when_purge | +| ----------- | ------------------------------------------------------------ | +| Description | data region snapshot preserves certain logs when taking snapshot and purge | +| Type | int32 | +| Default | 1000 | +| Effective | Restart required. | + +- config_node_ratis_log_max_size + +| Name | config_node_ratis_log_max_size | +| ----------- | -------------------------------------- | +| Description | config node Raft Log disk size control | +| Type | int64 | +| Default | 2147483648 (2GB) | +| Effective | Restart required. | + +- schema_region_ratis_log_max_size + +| Name | schema_region_ratis_log_max_size | +| ----------- | ---------------------------------------- | +| Description | schema region Raft Log disk size control | +| Type | int64 | +| Default | 2147483648 (2GB) | +| Effective | Restart required. | + +- data_region_ratis_log_max_size + +| Name | data_region_ratis_log_max_size | +| ----------- | -------------------------------------- | +| Description | data region Raft Log disk size control | +| Type | int64 | +| Default | 21474836480 (20GB) | +| Effective | Restart required. | + +- config_node_ratis_periodic_snapshot_interval + +| Name | config_node_ratis_periodic_snapshot_interval | +| ----------- | -------------------------------------------- | +| Description | config node Raft periodic snapshot interval | +| Type | int64 | +| Default | 86400 (s) | +| Effective | Restart required. | + +- schema_region_ratis_periodic_snapshot_interval + +| Name | schema_region_ratis_preserve_logs_num_when_purge | +| ----------- | ------------------------------------------------ | +| Description | schema region Raft periodic snapshot interval | +| Type | int64 | +| Default | 86400 (s) | +| Effective | Restart required. | + +- data_region_ratis_periodic_snapshot_interval + +| Name | data_region_ratis_preserve_logs_num_when_purge | +| ----------- | ---------------------------------------------- | +| Description | data region Raft periodic snapshot interval | +| Type | int64 | +| Default | 86400 (s) | +| Effective | Restart required. | + +### 4.31 IoTConsensusV2 Configuration + +- iot_consensus_v2_pipeline_size + +| Name | iot_consensus_v2_pipeline_size | +| ----------- | ------------------------------------------------------------ | +| Description | Default event buffer size for connector and receiver in iot consensus v2 | +| Type | int | +| Default | 5 | +| Effective | Restart required. | + +- iot_consensus_v2_mode + +| Name | iot_consensus_v2_pipeline_size | +| ----------- | ------------------------------ | +| Description | IoTConsensusV2 mode. | +| Type | String | +| Default | batch | +| Effective | Restart required. | + +### 4.32 Procedure Configuration + +- procedure_core_worker_thread_count + +| Name | procedure_core_worker_thread_count | +| ----------- | ------------------------------------- | +| Description | Default number of worker thread count | +| Type | int32 | +| Default | 4 | +| Effective | Restart required. | + +- procedure_completed_clean_interval + +| Name | procedure_completed_clean_interval | +| ----------- | ------------------------------------------------------------ | +| Description | Default time interval of completed procedure cleaner work in, time unit is second | +| Type | int32 | +| Default | 30(s) | +| Effective | Restart required. | + +- procedure_completed_evict_ttl + +| Name | procedure_completed_evict_ttl | +| ----------- | ------------------------------------------------------- | +| Description | Default ttl of completed procedure, time unit is second | +| Type | int32 | +| Default | 60(s) | +| Effective | Restart required. | + +### 4.33 MQTT Broker Configuration + +- enable_mqtt_service + +| Name | enable_mqtt_service。 | +| ----------- | ----------------------------------- | +| Description | whether to enable the mqtt service. | +| Type | Boolean | +| Default | false | +| Effective | Hot reload | + +- mqtt_host + +| Name | mqtt_host | +| ----------- | ------------------------------ | +| Description | the mqtt service binding host. | +| Type | String | +| Default | 127.0.0.1 | +| Effective | Hot reload | + +- mqtt_port + +| Name | mqtt_port | +| ----------- | ------------------------------ | +| Description | the mqtt service binding port. | +| Type | int32 | +| Default | 1883 | +| Effective | Hot reload | + +- mqtt_handler_pool_size + +| Name | mqtt_handler_pool_size | +| ----------- | ---------------------------------------------------- | +| Description | the handler pool size for handing the mqtt messages. | +| Type | int32 | +| Default | 1 | +| Effective | Hot reload | + +- mqtt_payload_formatter + +| Name | mqtt_payload_formatter | +| ----------- | ----------------------------------- | +| Description | the mqtt message payload formatter. | +| Type | String | +| Default | json | +| Effective | Hot reload | + +- mqtt_max_message_size + +| Name | mqtt_max_message_size | +| ----------- | ---------------------------------- | +| Description | max length of mqtt message in byte | +| Type | int32 | +| Default | 1048576 | +| Effective | Hot reload | + +### 4.34 Audit log Configuration + +- enable_audit_log + +| Name | enable_audit_log | +| ----------- | -------------------------------- | +| Description | whether to enable the audit log. | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- audit_log_storage + +| Name | audit_log_storage | +| ----------- | ----------------------------- | +| Description | Output location of audit logs | +| Type | String | +| Default | IOTDB,LOGGER | +| Effective | Restart required. | + +- audit_log_operation + +| Name | audit_log_operation | +| ----------- | ------------------------------------------------------------ | +| Description | whether enable audit log for DML operation of datawhether enable audit log for DDL operation of schemawhether enable audit log for QUERY operation of data and schema | +| Type | String | +| Default | DML,DDL,QUERY | +| Effective | Restart required. | + +- enable_audit_log_for_native_insert_api + +| Name | enable_audit_log_for_native_insert_api | +| ----------- | ---------------------------------------------- | +| Description | whether the local write api records audit logs | +| Type | Boolean | +| Default | true | +| Effective | Restart required. | + +### 4.35 White List Configuration + +- enable_white_list + +| Name | enable_white_list | +| ----------- | ------------------------- | +| Description | whether enable white list | +| Type | Boolean | +| Default | false | +| Effective | Hot reload | + +### 4.36 IoTDB-AI Configuration + +- model_inference_execution_thread_count + +| Name | model_inference_execution_thread_count | +| ----------- | ------------------------------------------------------------ | +| Description | The thread count which can be used for model inference operation. | +| Type | int | +| Default | 5 | +| Effective | Restart required. | + +### 4.37 Load TsFile Configuration + +- load_clean_up_task_execution_delay_time_seconds + +| Name | load_clean_up_task_execution_delay_time_seconds | +| ----------- | ------------------------------------------------------------ | +| Description | Load clean up task is used to clean up the unsuccessful loaded tsfile after a certain period of time. | +| Type | int | +| Default | 1800 | +| Effective | Hot reload | + +- load_write_throughput_bytes_per_second + +| Name | load_write_throughput_bytes_per_second | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum bytes per second of disk write throughput when loading tsfile. | +| Type | int | +| Default | -1 | +| Effective | Hot reload | + +- load_active_listening_enable + +| Name | load_active_listening_enable | +| ----------- | ------------------------------------------------------------ | +| Description | Whether to enable the active listening mode for tsfile loading. | +| Type | Boolean | +| Default | true | +| Effective | Hot reload | + +- load_active_listening_dirs + +| Name | load_active_listening_dirs | +| ----------- | ------------------------------------------------------------ | +| Description | The directory to be actively listened for tsfile loading.Multiple directories should be separated by a ','. | +| Type | String | +| Default | ext/load/pending | +| Effective | Hot reload | + +- load_active_listening_fail_dir + +| Name | load_active_listening_fail_dir | +| ----------- | ------------------------------------------------------------ | +| Description | The directory where tsfiles are moved if the active listening mode fails to load them. | +| Type | String | +| Default | ext/load/failed | +| Effective | Hot reload | + +- load_active_listening_max_thread_num + +| Name | load_active_listening_max_thread_num | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum number of threads that can be used to load tsfile actively.The default value, when this parameter is commented out or <= 0, use CPU core number. | +| Type | Long | +| Default | 0 | +| Effective | Restart required. | + +- load_active_listening_check_interval_seconds + +| Name | load_active_listening_check_interval_seconds | +| ----------- | ------------------------------------------------------------ | +| Description | The interval specified in seconds for the active listening mode to check the directory specified in `load_active_listening_dirs`.The active listening mode will check the directory every `load_active_listening_check_interval_seconds seconds`. | +| Type | Long | +| Default | 5 | +| Effective | Restart required. | + +* last_cache_operation_on_load + +|Name| last_cache_operation_on_load | +|:---:|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +|Description| The operation performed to LastCache when a TsFile is successfully loaded. `UPDATE`: use the data in the TsFile to update LastCache; `UPDATE_NO_BLOB`: similar to UPDATE, but will invalidate LastCache for blob series; `CLEAN_DEVICE`: invalidate LastCache of devices contained in the TsFile; `CLEAN_ALL`: clean the whole LastCache. | +|Type| String | +|Default| UPDATE_NO_BLOB | +|Effective| Effective after restart | + +* cache_last_values_for_load + +|Name| cache_last_values_for_load | +|:---:|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +|Description| Whether to cache last values before loading a TsFile. Only effective when `last_cache_operation_on_load=UPDATE_NO_BLOB` or `last_cache_operation_on_load=UPDATE`. When set to true, blob series will be ignored even with `last_cache_operation_on_load=UPDATE`. Enabling this will increase the memory footprint during loading TsFiles. | +|Type| Boolean | +|Default| true | +|Effective| Effective after restart | + +* cache_last_values_memory_budget_in_byte + +|Name| cache_last_values_memory_budget_in_byte | +|:---:|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +|Description| When `cache_last_values_for_load=true`, the maximum memory that can be used to cache last values. If this value is exceeded, the cached values will be abandoned and last values will be read from the TsFile in a streaming manner. | +|Type| int32 | +|Default| 4194304 | +|Effective| Effective after restart | + + +### 4.38 Dispatch Retry Configuration + +- enable_retry_for_unknown_error + +| Name | enable_retry_for_unknown_error | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum retrying time for write request remotely dispatching, time unit is milliseconds. | +| Type | Long | +| Default | 60000 | +| Effective | Hot reload | + +- enable_retry_for_unknown_error + +| Name | enable_retry_for_unknown_error | +| ----------- | ------------------------------------ | +| Description | Whether retrying for unknown errors. | +| Type | boolean | +| Default | false | +| Effective | Hot reload | \ No newline at end of file diff --git a/src/UserGuide/latest-Table/Reference/System-Config-Manual_apache.md b/src/UserGuide/latest-Table/Reference/System-Config-Manual_apache.md index 7e5defdc4..149c1011c 100644 --- a/src/UserGuide/latest-Table/Reference/System-Config-Manual_apache.md +++ b/src/UserGuide/latest-Table/Reference/System-Config-Manual_apache.md @@ -1057,7 +1057,7 @@ The `iotdb-system.properties` file contains various configurations for managing | Name | datanode_memory_proportion | | ----------- | ------------------------------------------------------------ | -| Description | Memory Allocation Ratio: StorageEngine, QueryEngine, SchemaEngine, Consensus, StreamingEngine and Free Memory. | +| Description | The allocation ratio of StorageEngine, QueryEngine, SchemaEngine, Consensus, StreamingEngine, and Free Memory. Since V2.0.11, half of the free memory serves as the total memory budget of the AutoResizingBuffer in the RPC layer, which limits the overall memory usage of framed transport read/write buffers and compression/decompression buffers. | | Type | Ratio | | Default | 3:3:1:1:1:1 | | Effective | Restart required. | diff --git a/src/UserGuide/latest/Background-knowledge/Data-Type.md b/src/UserGuide/latest/Background-knowledge/Data-Type.md index 965dfe525..42b95a129 100644 --- a/src/UserGuide/latest/Background-knowledge/Data-Type.md +++ b/src/UserGuide/latest/Background-knowledge/Data-Type.md @@ -40,7 +40,7 @@ The difference between STRING and TEXT types is that STRING type has more statis ### 1.1 Float Precision -The time series of **FLOAT** and **DOUBLE** type can specify (MAX\_POINT\_NUMBER, see [this page](../SQL-Manual/SQL-Manual_apache) for more information on how to specify), which is the number of digits after the decimal point of the floating point number, if the encoding method is [RLE](../Technical-Insider/Encoding-and-Compression.md) or [TS\_2DIFF](../Technical-Insider/Encoding-and-Compression.md). If MAX\_POINT\_NUMBER is not specified, the system will use [float\_precision](../Reference/DataNode-Config-Manual.md) in the configuration file `iotdb-system.properties`. +The time series of **FLOAT** and **DOUBLE** type can specify (MAX\_POINT\_NUMBER, see [this page](../SQL-Manual/SQL-Manual_apache) for more information on how to specify), which is the number of digits after the decimal point of the floating point number, if the encoding method is [RLE](../Technical-Insider/Encoding-and-Compression.md) or [TS\_2DIFF](../Technical-Insider/Encoding-and-Compression.md). If MAX\_POINT\_NUMBER is not specified, the system will use `float_precision` in the configuration file `iotdb-system.properties`. ```sql CREATE TIMESERIES root.vehicle.d0.s0 WITH DATATYPE=FLOAT, ENCODING=RLE, 'MAX_POINT_NUMBER'='2'; diff --git a/src/UserGuide/latest/Deployment-and-Maintenance/Database-Resources.md b/src/UserGuide/latest/Deployment-and-Maintenance/Database-Resources.md index 13b225a3d..f226e50bd 100644 --- a/src/UserGuide/latest/Deployment-and-Maintenance/Database-Resources.md +++ b/src/UserGuide/latest/Deployment-and-Maintenance/Database-Resources.md @@ -145,7 +145,7 @@ -> Flexible memory configuration options are provided. Users can adjust them in the datanode-env file. For details and configuration guidelines, please refer to [datanode-env](../Reference/DataNode-Config-Manual.md#_2-environment-configuration-file-datanode-env-sh-bat) +> Flexible memory configuration options are provided. Users can adjust them in the datanode-env file. ## 3. Storage (Disk) ### 3.1 Storage space diff --git a/src/UserGuide/latest/Reference/System-Config-Manual_apache.md b/src/UserGuide/latest/Reference/System-Config-Manual_apache.md new file mode 100644 index 000000000..898aceb61 --- /dev/null +++ b/src/UserGuide/latest/Reference/System-Config-Manual_apache.md @@ -0,0 +1,3356 @@ + +# Config Manual + +## 1. IoTDB Configuration Files + +The configuration files for IoTDB are located in the `conf` folder under the IoTDB installation directory. Key configuration files include: + +1. `confignode-env.sh` **/** `confignode-env.bat`: + 1. Environment configuration file for ConfigNode. + 2. Used to configure memory size and other environment settings for ConfigNode. +2. `datanode-env.sh` **/** `datanode-env.bat`: + 1. Environment configuration file for DataNode. + 2. Used to configure memory size and other environment settings for DataNode. +3. `iotdb-system.properties`: + 1. Main configuration file for IoTDB. + 2. Contains configurable parameters for IoTDB. +4. `iotdb-system.properties.template`: + 1. Template for the `iotdb-system.properties` file. + 2. Provides a reference for all available configuration parameters. + +## 2. Modify Configurations + +### 2.1 **Modify Existing Parameters**: + +- Parameters already present in the `iotdb-system.properties` file can be directly modified. + +### 2.2 **Adding New Parameters**: + +- For parameters not listed in `iotdb-system.properties`, you can find them in the `iotdb-system.properties.template` file. +- Copy the desired parameter from the template file to `iotdb-system.properties` and modify its value. + +### 2.3 Configuration Update Methods + +Different configuration parameters have different update methods, categorized as follows: + +1. **Modify before the first startup.**: + 1. These parameters can only be modified before the first startup of ConfigNode/DataNode. + 2. Modifying them after the first startup will prevent ConfigNode/DataNode from starting. +2. **Restart Required for Changes to Take Effect**: + 1. These parameters can be modified after ConfigNode/DataNode has started. + 2. However, a restart of ConfigNode/DataNode is required for the changes to take effect. +3. **Hot Reload**: + 1. These parameters can be modified while ConfigNode/DataNode is running. + 2. After modification, use the following SQL commands to apply the changes: + - `load configuration`: Reloads the configuration. + - `set configuration key1 = 'value1'`: Updates specific configuration parameters. + +## 3. Environment Parameters + +The environment configuration files (`confignode-env.sh/bat` and `datanode-env.sh/bat`) are used to configure Java environment parameters for ConfigNode and DataNode, such as JVM settings. These configurations are passed to the JVM when ConfigNode or DataNode starts. + +### 3.1 **confignode-env.sh/bat** + +- MEMORY_SIZE + +| Name | MEMORY_SIZE | +| ----------- | ------------------------------------------------------------ | +| Description | Memory size allocated when IoTDB ConfigNode starts. | +| Type | String | +| Default | Depends on the operating system and machine configuration. Defaults to 3/10 of the machine's memory, capped at 16G. | +| Effective | Restart required | + +- ON_HEAP_MEMORY + +| Name | ON_HEAP_MEMORY | +| ----------- | ------------------------------------------------------------ | +| Description | On-heap memory size available for IoTDB ConfigNode. Previously named `MAX_HEAP_SIZE`. | +| Type | String | +| Default | Depends on the `MEMORY_SIZE` configuration. | +| Effective | Restart required | + +- OFF_HEAP_MEMORY + +| Name | OFF_HEAP_MEMORY | +| ----------- | ------------------------------------------------------------ | +| Description | Off-heap memory size available for IoTDB ConfigNode. Previously named `MAX_DIRECT_MEMORY_SIZE`. | +| Type | String | +| Default | Depends on the `MEMORY_SIZE` configuration. | +| Effective | Restart required | + +### 3.2 **datanode-env.sh/bat** + +- MEMORY_SIZE + +| Name | MEMORY_SIZE | +| ----------- | ------------------------------------------------------------ | +| Description | Memory size allocated when IoTDB DataNode starts. | +| Type | String | +| Default | Depends on the operating system and machine configuration. Defaults to 1/2 of the machine's memory. | +| Effective | Restart required | + +- ON_HEAP_MEMORY + +| Name | ON_HEAP_MEMORY | +| ----------- | ------------------------------------------------------------ | +| Description | On-heap memory size available for IoTDB DataNode. Previously named `MAX_HEAP_SIZE`. | +| Type | String | +| Default | Depends on the `MEMORY_SIZE` configuration. | +| Effective | Restart required | + +- OFF_HEAP_MEMORY + +| Name | OFF_HEAP_MEMORY | +| ----------- | ------------------------------------------------------------ | +| Description | Off-heap memory size available for IoTDB DataNode. Previously named `MAX_DIRECT_MEMORY_SIZE`. | +| Type | String | +| Default | Depends on the `MEMORY_SIZE` configuration. | +| Effective | Restart required | + +## 4. System Parameters (`iotdb-system.properties.template`) + +The `iotdb-system.properties` file contains various configurations for managing IoTDB clusters, nodes, replication, directories, monitoring, SSL, connections, object storage, tier management, and REST services. Below is a detailed breakdown of the parameters: + +### 4.1 Cluster Configuration + +- cluster_name + +| Name | cluster_name | +| ----------- | --------------------------------------------------------- | +| Description | Name of the cluster. | +| Type | String | +| Default | default_cluster | +| Effective | Use CLI: `set configuration cluster_name='xxx'`. | +| Note | Changes are distributed across nodes. Changes may not propagate to all nodes in case of network issues or node failures. Nodes that fail to update must manually modify `cluster_name` in their configuration files and restart. Under normal circumstances, it is not recommended to modify `cluster_name` by manually modifying configuration files or to perform hot-loading via `load configuration` method. | + +### 4.2 Seed ConfigNode + +- cn_seed_config_node + +| Name | cn_seed_config_node | +| ----------- | ------------------------------------------------------------ | +| Description | Address of the seed ConfigNode for Confignode to join the cluster. | +| Type | String | +| Default | 127.0.0.1:10710 | +| Effective | Modify before the first startup. | + +- dn_seed_config_node + +| Name | dn_seed_config_node | +| ----------- | ------------------------------------------------------------ | +| Description | Address of the seed ConfigNode for Datanode to join the cluster. | +| Type | String | +| Default | 127.0.0.1:10710 | +| Effective | Modify before the first startup. | + +### 4.3 Node RPC Configuration + +- cn_internal_address + +| Name | cn_internal_address | +| ----------- | ---------------------------------------------- | +| Description | Internal address for ConfigNode communication. | +| Type | String | +| Default | 127.0.0.1 | +| Effective | Modify before the first startup. | + +- cn_internal_port + +| Name | cn_internal_port | +| ----------- | ------------------------------------------- | +| Description | Port for ConfigNode internal communication. | +| Type | Short Int : [0,65535] | +| Default | 10710 | +| Effective | Modify before the first startup. | + +- cn_consensus_port + +| Name | cn_consensus_port | +| ----------- | ----------------------------------------------------- | +| Description | Port for ConfigNode consensus protocol communication. | +| Type | Short Int : [0,65535] | +| Default | 10720 | +| Effective | Modify before the first startup. | + +- dn_rpc_address + +| Name | dn_rpc_address | +| ----------- |---------------------------------| +| Description | Address for client RPC service. | +| Type | String | +| Default | 127.0.0.1 | +| Effective | Restart required. | + +- dn_rpc_port + +| Name | dn_rpc_port | +| ----------- | ---------------------------- | +| Description | Port for client RPC service. | +| Type | Short Int : [0,65535] | +| Default | 6667 | +| Effective | Restart required. | + +- dn_internal_address + +| Name | dn_internal_address | +| ----------- | -------------------------------------------- | +| Description | Internal address for DataNode communication. | +| Type | string | +| Default | 127.0.0.1 | +| Effective | Modify before the first startup. | + +- dn_internal_port + +| Name | dn_internal_port | +| ----------- | ----------------------------------------- | +| Description | Port for DataNode internal communication. | +| Type | int | +| Default | 10730 | +| Effective | Modify before the first startup. | + +- dn_mpp_data_exchange_port + +| Name | dn_mpp_data_exchange_port | +| ----------- | -------------------------------- | +| Description | Port for MPP data exchange. | +| Type | int | +| Default | 10740 | +| Effective | Modify before the first startup. | + +- dn_schema_region_consensus_port + +| Name | dn_schema_region_consensus_port | +| ----------- | ------------------------------------------------------------ | +| Description | Port for Datanode SchemaRegion consensus protocol communication. | +| Type | int | +| Default | 10750 | +| Effective | Modify before the first startup. | + +- dn_data_region_consensus_port + +| Name | dn_data_region_consensus_port | +| ----------- | ------------------------------------------------------------ | +| Description | Port for Datanode DataRegion consensus protocol communication. | +| Type | int | +| Default | 10760 | +| Effective | Modify before the first startup. | + +- dn_join_cluster_retry_interval_ms + +| Name | dn_join_cluster_retry_interval_ms | +| ----------- | --------------------------------------------------- | +| Description | Interval for DataNode to retry joining the cluster. | +| Type | long | +| Default | 5000 | +| Effective | Restart required. | + +### 4.4 Replication configuration + +- config_node_consensus_protocol_class + +| Name | config_node_consensus_protocol_class | +| ----------- | ------------------------------------------------------------ | +| Description | Consensus protocol for ConfigNode replication, only supports RatisConsensus | +| Type | String | +| Default | org.apache.iotdb.consensus.ratis.RatisConsensus | +| Effective | Modify before the first startup. | + +- schema_replication_factor + +| Name | schema_replication_factor | +| ----------- | ------------------------------------------------------------ | +| Description | Default schema replication factor for databases. | +| Type | int32 | +| Default | 1 | +| Effective | Restart required. Takes effect on the new database after restarting. | + +- schema_region_consensus_protocol_class + +| Name | schema_region_consensus_protocol_class | +| ----------- | ------------------------------------------------------------ | +| Description | Consensus protocol for schema region replication. Only supports RatisConsensus when multi-replications. | +| Type | String | +| Default | org.apache.iotdb.consensus.ratis.RatisConsensus | +| Effective | Modify before the first startup. | + +- data_replication_factor + +| Name | data_replication_factor | +| ----------- | ------------------------------------------------------------ | +| Description | Default data replication factor for databases. | +| Type | int32 | +| Default | 1 | +| Effective | Restart required. Takes effect on the new database after restarting. | + +- data_region_consensus_protocol_class + +| Name | data_region_consensus_protocol_class | +| ----------- | ------------------------------------------------------------ | +| Description | Consensus protocol for data region replication. Supports IoTConsensus or RatisConsensus when multi-replications. | +| Type | String | +| Default | org.apache.iotdb.consensus.iot.IoTConsensus | +| Effective | Modify before the first startup. | + +### 4.5 Directory configuration + +- cn_system_dir + +| Name | cn_system_dir | +| ----------- | ----------------------------------------------------------- | +| Description | System data storage path for ConfigNode. | +| Type | String | +| Default | data/confignode/system(Windows:data\\configndoe\\system) | +| Effective | Restart required | + +- cn_consensus_dir + +| Name | cn_consensus_dir | +| ----------- | ------------------------------------------------------------ | +| Description | Consensus protocol data storage path for ConfigNode. | +| Type | String | +| Default | data/confignode/consensus(Windows:data\\configndoe\\consensus) | +| Effective | Restart required | + +- cn_pipe_receiver_file_dir + +| Name | cn_pipe_receiver_file_dir | +| ----------- | ------------------------------------------------------------ | +| Description | Directory for pipe receiver files in ConfigNode. | +| Type | String | +| Default | data/confignode/system/pipe/receiver(Windows:data\\confignode\\system\\pipe\\receiver) | +| Effective | Restart required | + +- dn_system_dir + +| Name | dn_system_dir | +| ----------- | ------------------------------------------------------------ | +| Description | Schema storage path for DataNode. By default, it is stored in the data directory at the same level as the sbin directory. The starting directory of the relative path is related to the operating system. It is recommended to use an absolute path. | +| Type | String | +| Default | data/datanode/system(Windows:data\\datanode\\system) | +| Effective | Restart required | + +- dn_data_dirs + +| Name | dn_data_dirs | +| ----------- | ------------------------------------------------------------ | +| Description | Data storage path for DataNode. By default, it is stored in the data directory at the same level as the sbin directory. The starting directory of the relative path is related to the operating system. It is recommended to use an absolute path. | +| Type | String | +| Default | data/datanode/data(Windows:data\\datanode\\data) | +| Effective | Restart required | + +- dn_multi_dir_strategy + +| Name | dn_multi_dir_strategy | +| ----------- | ------------------------------------------------------------ | +| Description | The strategy used by IoTDB to select directories in `data_dirs` for TsFiles. You can use either the simple class name or the fully qualified class name. The system provides the following two strategies: 1. SequenceStrategy: IoTDB selects directories sequentially, iterating through all directories in `data_dirs` in a round-robin manner. 2. MaxDiskUsableSpaceFirstStrategy IoTDB prioritizes the directory in `data_dirs` with the largest disk free space. To implement a custom strategy: 1. Inherit the `org.apache.iotdb.db.storageengine.rescon.disk.strategy.DirectoryStrategy `class and implement your own strategy method. 2. Fill in the configuration item with the fully qualified class name of your implementation (package name + class name, e.g., `UserDefineStrategyPackage`). 3. Add the JAR file containing your custom class to the project. | +| Type | String | +| Default | SequenceStrategy | +| Effective | Hot reload. | + +- dn_consensus_dir + +| Name | dn_consensus_dir | +| ----------- | ------------------------------------------------------------ | +| Description | Consensus log storage path for DataNode. By default, it is stored in the data directory at the same level as the sbin directory. The starting directory of the relative path is related to the operating system. It is recommended to use an absolute path. | +| Type | String | +| Default | data/datanode/consensus(Windows:data\\datanode\\consensus) | +| Effective | Restart required | + +- dn_wal_dirs + +| Name | dn_wal_dirs | +| ----------- | ------------------------------------------------------------ | +| Description | Write-ahead log (WAL) storage path for DataNode. By default, it is stored in the data directory at the same level as the sbin directory. The starting directory of the relative path is related to the operating system. It is recommended to use an absolute path. | +| Type | String | +| Default | data/datanode/wal(Windows:data\\datanode\\wal) | +| Effective | Restart required | + +- dn_tracing_dir + +| Name | dn_tracing_dir | +| ----------- | ------------------------------------------------------------ | +| Description | Tracing root directory for DataNode. By default, it is stored in the data directory at the same level as the sbin directory. The starting directory of the relative path is related to the operating system. It is recommended to use an absolute path. | +| Type | String | +| Default | datanode/tracing(Windows:datanode\\tracing) | +| Effective | Restart required | + +- dn_sync_dir + +| Name | dn_sync_dir | +| ----------- | ------------------------------------------------------------ | +| Description | Sync storage path for DataNode.By default, it is stored in the data directory at the same level as the sbin directory. The starting directory of the relative path is related to the operating system. It is recommended to use an absolute path. | +| Type | String | +| Default | data/datanode/sync(Windows:data\\datanode\\sync) | +| Effective | Restart required | + +- sort_tmp_dir + +| Name | sort_tmp_dir | +| ----------- | ------------------------------------------------- | +| Description | Temporary directory for sorting operations. | +| Type | String | +| Default | data/datanode/tmp(Windows:data\\datanode\\tmp) | +| Effective | Restart required | + +- dn_pipe_receiver_file_dirs + +| Name | dn_pipe_receiver_file_dirs | +| ----------- | ------------------------------------------------------------ | +| Description | Directory for pipe receiver files in DataNode. | +| Type | String | +| Default | data/datanode/system/pipe/receiver(Windows:data\\datanode\\system\\pipe\\receiver) | +| Effective | Restart required | + +- iot_consensus_v2_receiver_file_dirs + +| Name | iot_consensus_v2_receiver_file_dirs | +| ----------- | ------------------------------------------------------------ | +| Description | Directory for IoTConsensus V2 receiver files. | +| Type | String | +| Default | data/datanode/system/pipe/consensus/receiver(Windows:data\\datanode\\system\\pipe\\consensus\\receiver) | +| Effective | Restart required | + +- iot_consensus_v2_deletion_file_dir + +| Name | iot_consensus_v2_deletion_file_dir | +| ----------- | ------------------------------------------------------------ | +| Description | Directory for IoTConsensus V2 deletion files. | +| Type | String | +| Default | data/datanode/system/pipe/consensus/deletion(Windows:data\\datanode\\system\\pipe\\consensus\\deletion) | +| Effective | Restart required | + +### 4.6 Metric Configuration + +- cn_metric_reporter_list + +| Name | cn_metric_reporter_list | +| ----------- | ----------------------------------------- | +| Description | Systems for reporting ConfigNode metrics. | +| Type | String | +| Default | None | +| Effective | Restart required. | + +- cn_metric_level + +| Name | cn_metric_level | +| ----------- | --------------------------------------- | +| Description | Level of detail for ConfigNode metrics. | +| Type | String | +| Default | IMPORTANT | +| Effective | Restart required. | + +- cn_metric_async_collect_period + +| Name | cn_metric_async_collect_period | +| ----------- | ------------------------------------------------------------ | +| Description | Period for asynchronous metric collection in ConfigNode (in seconds). | +| Type | int | +| Default | 5 | +| Effective | Restart required. | + +- cn_metric_prometheus_reporter_port + +| Name | cn_metric_prometheus_reporter_port | +| ----------- | --------------------------------------------------- | +| Description | Port for Prometheus metric reporting in ConfigNode. | +| Type | int | +| Default | 9091 | +| Effective | Restart required. | + +- dn_metric_reporter_list + +| Name | dn_metric_reporter_list | +| ----------- | --------------------------------------- | +| Description | Systems for reporting DataNode metrics. | +| Type | String | +| Default | None | +| Effective | Restart required. | + +- dn_metric_level + +| Name | dn_metric_level | +| ----------- | ------------------------------------- | +| Description | Level of detail for DataNode metrics. | +| Type | String | +| Default | IMPORTANT | +| Effective | Restart required. | + +- dn_metric_async_collect_period + +| Name | dn_metric_async_collect_period | +| ----------- | ------------------------------------------------------------ | +| Description | Period for asynchronous metric collection in DataNode (in seconds). | +| Type | int | +| Default | 5 | +| Effective | Restart required. | + +- dn_metric_prometheus_reporter_port + +| Name | dn_metric_prometheus_reporter_port | +| ----------- | ------------------------------------------------- | +| Description | Port for Prometheus metric reporting in DataNode. | +| Type | int | +| Default | 9092 | +| Effective | Restart required. | + +- dn_metric_internal_reporter_type + +| Name | dn_metric_internal_reporter_type | +| ----------- | ------------------------------------------------------------ | +| Description | Internal reporter types for DataNode metrics. For internal monitoring and checking that the data has been successfully written and refreshed. | +| Type | String | +| Default | IOTDB | +| Effective | Restart required. | + +### 4.7 SSL Configuration + +- enable_thrift_ssl + +| Name | enable_thrift_ssl | +| ----------- | --------------------------------------------- | +| Description | Enables SSL encryption for RPC communication. | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- enable_https + +| Name | enable_https | +| ----------- | ------------------------------ | +| Description | Enables SSL for REST services. | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- key_store_path + +| Name | key_store_path | +| ----------- | ---------------------------- | +| Description | Path to the SSL certificate. | +| Type | String | +| Default | None | +| Effective | Restart required. | + +- key_store_pwd + +| Name | key_store_pwd | +| ----------- | --------------------------------- | +| Description | Password for the SSL certificate. | +| Type | String | +| Default | None | +| Effective | Restart required. | + +### 4.8 Connection Configuration + +- cn_rpc_thrift_compression_enable + +| Name | cn_rpc_thrift_compression_enable | +| ----------- | ----------------------------------- | +| Description | Enables Thrift compression for RPC. | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- cn_rpc_max_concurrent_client_num + +| Name | cn_rpc_max_concurrent_client_num | +| ----------- |-------------------------------------------| +| Description | Maximum number of concurrent RPC clients. | +| Type | int | +| Default | 3000 | +| Effective | Restart required. | + +- cn_connection_timeout_ms + +| Name | cn_connection_timeout_ms | +| ----------- | ---------------------------------------------------- | +| Description | Connection timeout for ConfigNode (in milliseconds). | +| Type | int | +| Default | 60000 | +| Effective | Restart required. | + +- cn_selector_thread_nums_of_client_manager + +| Name | cn_selector_thread_nums_of_client_manager | +| ----------- | ------------------------------------------------------------ | +| Description | Number of selector threads for client management in ConfigNode. | +| Type | int | +| Default | 1 | +| Effective | Restart required. | + +- cn_max_client_count_for_each_node_in_client_manager + +| Name | cn_max_client_count_for_each_node_in_client_manager | +| ----------- | ------------------------------------------------------ | +| Description | Maximum clients per node in ConfigNode client manager. | +| Type | int | +| Default | 300 | +| Effective | Restart required. | + +- dn_session_timeout_threshold + +| Name | dn_session_timeout_threshold | +| ----------- | ---------------------------------------- | +| Description | Maximum idle time for DataNode sessions. | +| Type | int | +| Default | 0 | +| Effective | Restart required.t required. | + +- dn_rpc_thrift_compression_enable + +| Name | dn_rpc_thrift_compression_enable | +| ----------- | -------------------------------------------- | +| Description | Enables Thrift compression for DataNode RPC. | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- dn_rpc_advanced_compression_enable + +| Name | dn_rpc_advanced_compression_enable | +| ----------- | ----------------------------------------------------- | +| Description | Enables advanced Thrift compression for DataNode RPC. | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- dn_rpc_selector_thread_count + +| Name | rpc_selector_thread_count | +| ----------- | -------------------------------------------- | +| Description | Number of selector threads for DataNode RPC. | +| Type | int | +| Default | 1 | +| Effective | Restart required.t required. | + +- dn_rpc_min_concurrent_client_num + +| Name | rpc_min_concurrent_client_num | +| ----------- | ------------------------------------------------------ | +| Description | Minimum number of concurrent RPC clients for DataNode. | +| Type | Short Int : [0,65535] | +| Default | 1 | +| Effective | Restart required. | + +- dn_rpc_max_concurrent_client_num + +| Name | dn_rpc_max_concurrent_client_num | +| ----------- |--------------------------------------------------------| +| Description | Maximum number of concurrent RPC clients for DataNode. | +| Type | Short Int : [0,65535] | +| Default | 1000 | +| Effective | Restart required. | + +- dn_thrift_max_frame_size + +| Name | dn_thrift_max_frame_size | +| ----------- |--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| Description | Maximum frame size for RPC requests/responses. | +| Type | int | +| Default | Defaults to 0, which means the value is automatically calculated based on the DN JVM configuration parameters at startup:
a. min(64MB, dn_alloc_memory/64)
b. If the user manually configures `dn_thrift_max_frame_size`, the user-specified value will be used instead. | +| Effective | Restart required. | + +- dn_thrift_init_buffer_size + +| Name | dn_thrift_init_buffer_size | +| ----------- | ----------------------------------- | +| Description | Initial buffer size for Thrift RPC. | +| Type | long | +| Default | 1024 | +| Effective | Restart required. | + +- dn_connection_timeout_ms + +| Name | dn_connection_timeout_ms | +| ----------- | -------------------------------------------------- | +| Description | Connection timeout for DataNode (in milliseconds). | +| Type | int | +| Default | 60000 | +| Effective | Restart required. | + +- dn_selector_thread_count_of_client_manager + +| Name | dn_selector_thread_count_of_client_manager | +| ----------- | ------------------------------------------------------------ | +| Description | selector thread (TAsyncClientManager) nums for async thread in a clientManager | +| Type | int | +| Default | 1 | +| Effective | Restart required.t required. | + +- dn_max_client_count_for_each_node_in_client_manager + +| Name | dn_max_client_count_for_each_node_in_client_manager | +| ----------- | --------------------------------------------------- | +| Description | Maximum clients per node in DataNode clientmanager. | +| Type | int | +| Default | 300 | +| Effective | Restart required. | + +### 4.9 Object storage management + +- remote_tsfile_cache_dirs + +| Name | remote_tsfile_cache_dirs | +| ----------- | ---------------------------------------- | +| Description | Local cache directory for cloud storage. | +| Type | String | +| Default | data/datanode/data/cache | +| Effective | Restart required. | + +- remote_tsfile_cache_page_size_in_kb + +| Name | remote_tsfile_cache_page_size_in_kb | +| ----------- | --------------------------------------------- | +| Description | Block size for cached files in cloud storage. | +| Type | int | +| Default | 20480 | +| Effective | Restart required. | + +- remote_tsfile_cache_max_disk_usage_in_mb + +| Name | remote_tsfile_cache_max_disk_usage_in_mb | +| ----------- | ------------------------------------------- | +| Description | Maximum disk usage for cloud storage cache. | +| Type | long | +| Default | 51200 | +| Effective | Restart required. | + +- object_storage_type + +| Name | object_storage_type | +| ----------- | ---------------------- | +| Description | Type of cloud storage. | +| Type | String | +| Default | AWS_S3 | +| Effective | Restart required. | + +- object_storage_endpoint + +| Name | object_storage_endpoint | +| ----------- | --------------------------- | +| Description | Endpoint for cloud storage. | +| Type | String | +| Default | None | +| Effective | Restart required. | + +- object_storage_bucket + +| Name | object_storage_bucket | +| ----------- | ------------------------------ | +| Description | Bucket name for cloud storage. | +| Type | String | +| Default | iotdb_data | +| Effective | Restart required. | + +- object_storage_access_key + +| Name | object_storage_access_key | +| ----------- | ----------------------------- | +| Description | Access key for cloud storage. | +| Type | String | +| Default | None | +| Effective | Restart required. | + +- object_storage_access_secret + +| Name | object_storage_access_secret | +| ----------- | -------------------------------- | +| Description | Access secret for cloud storage. | +| Type | String | +| Default | None | +| Effective | Restart required. | + +### 4.10 Tier management + +- dn_default_space_usage_thresholds + +| Name | dn_default_space_usage_thresholds | +| ----------- | ------------------------------------------------------------ | +| Description | Disk usage threshold, data will be moved to the next tier when the usage of the tier is higher than this threshold.If tiered storage is enabled, please separate thresholds of different tiers by semicolons ";". | +| Type | double | +| Default | 0.85 | +| Effective | Hot reload. | + +- dn_tier_full_policy + +| Name | dn_tier_full_policy | +| ----------- | ------------------------------------------------------------ | +| Description | How to deal with the last tier's data when its used space has been higher than its dn_default_space_usage_thresholds. | +| Type | String | +| Default | NULL | +| Effective | Hot reload. | + +- migrate_thread_count + +| Name | migrate_thread_count | +| ----------- | ------------------------------------------------------------ | +| Description | thread pool size for migrate operation in the DataNode's data directories. | +| Type | int | +| Default | 1 | +| Effective | Hot reload. | + +- tiered_storage_migrate_speed_limit_bytes_per_sec + +| Name | tiered_storage_migrate_speed_limit_bytes_per_sec | +| ----------- | ------------------------------------------------------------ | +| Description | The migrate speed limit of different tiers can reach per second | +| Type | int | +| Default | 10485760 | +| Effective | Hot reload. | + +### 4.11 REST Service Configuration + +- enable_rest_service + +| Name | enable_rest_service | +| ----------- | --------------------------- | +| Description | Is the REST service enabled | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- rest_service_port + +| Name | rest_service_port | +| ----------- | ------------------------------------ | +| Description | the binding port of the REST service | +| Type | int32 | +| Default | 18080 | +| Effective | Restart required. | + +- enable_swagger + +| Name | enable_swagger | +| ----------- | ------------------------------------------------------------ | +| Description | Whether to display rest service interface information through swagger. eg: http://ip:port/swagger.json | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- rest_query_default_row_size_limit + +| Name | rest_query_default_row_size_limit | +| ----------- | ------------------------------------------------------------ | +| Description | the default row limit to a REST query response when the rowSize parameter is not given in request | +| Type | int32 | +| Default | 10000 | +| Effective | Restart required. | + +- cache_expire_in_seconds + +| Name | cache_expire_in_seconds | +| ----------- | ------------------------------------------------------------ | +| Description | The expiration time of the user login information cache (in seconds) | +| Type | int32 | +| Default | 28800 | +| Effective | Restart required. | + +- cache_max_num + +| Name | cache_max_num | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum number of users can be stored in the user login cache. | +| Type | int32 | +| Default | 100 | +| Effective | Restart required. | + +- cache_init_num + +| Name | cache_init_num | +| ----------- | ------------------------------------------------------------ | +| Description | The initial capacity of users can be stored in the user login cache. | +| Type | int32 | +| Default | 10 | +| Effective | Restart required. | + +- client_auth + +| Name | client_auth | +| ----------- | --------------------------------- | +| Description | Is client authentication required | +| Type | boolean | +| Default | false | +| Effective | Restart required. | + +- trust_store_path + +| Name | trust_store_path | +| ----------- | -------------------- | +| Description | SSL trust store path | +| Type | String | +| Default | "" | +| Effective | Restart required. | + +- trust_store_pwd + +| Name | trust_store_pwd | +| ----------- | ------------------------- | +| Description | SSL trust store password. | +| Type | String | +| Default | "" | +| Effective | Restart required. | + +- idle_timeout_in_seconds + +| Name | idle_timeout_in_seconds | +| ----------- | ------------------------ | +| Description | SSL timeout (in seconds) | +| Type | int32 | +| Default | 5000 | +| Effective | Restart required. | + +### 4.12 Load balancing configuration + +- series_slot_num + +| Name | series_slot_num | +| ----------- | ------------------------------------------- | +| Description | Number of SeriesPartitionSlots per Database | +| Type | int32 | +| Default | 10000 | +| Effective | Modify before the first startup. | + +- series_partition_executor_class + +| Name | series_partition_executor_class | +| ----------- | ------------------------------------------------------------ | +| Description | SeriesPartitionSlot executor class | +| Type | String | +| Default | org.apache.iotdb.commons.partition.executor.hash.BKDRHashExecutor | +| Effective | Modify before the first startup. | + +- schema_region_group_extension_policy + +| Name | schema_region_group_extension_policy | +| ----------- | ------------------------------------------------------------ | +| Description | The policy of extension SchemaRegionGroup for each Database. | +| Type | string | +| Default | AUTO | +| Effective | Restart required. | + +- default_schema_region_group_num_per_database + +| Name | default_schema_region_group_num_per_database | +| ----------- | ------------------------------------------------------------ | +| Description | When set schema_region_group_extension_policy=CUSTOM, this parameter is the default number of SchemaRegionGroups for each Database.When set schema_region_group_extension_policy=AUTO, this parameter is the default minimal number of SchemaRegionGroups for each Database. | +| Type | int | +| Default | 1 | +| Effective | Restart required. | + +- schema_region_per_data_node + +| Name | schema_region_per_data_node | +| ----------- | ------------------------------------------------------------ | +| Description | It only takes effect when set schema_region_group_extension_policy=AUTO.This parameter is the maximum number of SchemaRegions expected to be managed by each DataNode. | +| Type | double | +| Default | 1.0 | +| Effective | Restart required. | + +- data_region_group_extension_policy + +| Name | data_region_group_extension_policy | +| ----------- | ---------------------------------------------------------- | +| Description | The policy of extension DataRegionGroup for each Database. | +| Type | string | +| Default | AUTO | +| Effective | Restart required. | + +- default_data_region_group_num_per_database + +| Name | default_data_region_group_per_database | +| ----------- | ------------------------------------------------------------ | +| Description | When set data_region_group_extension_policy=CUSTOM, this parameter is the default number of DataRegionGroups for each Database.When set data_region_group_extension_policy=AUTO, this parameter is the default minimal number of DataRegionGroups for each Database. | +| Type | int | +| Default | 2 | +| Effective | Restart required. | + +- data_region_per_data_node + +| Name | data_region_per_data_node | +| ----------- | ------------------------------------------------------------ | +| Description | It only takes effect when set data_region_group_extension_policy=AUTO.This parameter is the maximum number of DataRegions expected to be managed by each DataNode. | +| Type | double | +| Default | 5.0 | +| Effective | Restart required. | + +- enable_auto_leader_balance_for_ratis_consensus + +| Name | enable_auto_leader_balance_for_ratis_consensus | +| ----------- | ------------------------------------------------------------ | +| Description | Whether to enable auto leader balance for Ratis consensus protocol. | +| Type | Boolean | +| Default | true | +| Effective | Restart required. | + +- enable_auto_leader_balance_for_iot_consensus + +| Name | enable_auto_leader_balance_for_iot_consensus | +| ----------- | ------------------------------------------------------------ | +| Description | Whether to enable auto leader balance for IoTConsensus protocol. | +| Type | Boolean | +| Default | true | +| Effective | Restart required. | + +### 4.13 Cluster management + +- time_partition_origin + +| Name | time_partition_origin | +| ----------- | ------------------------------------------------------------ | +| Description | Time partition origin in milliseconds, default is equal to zero. | +| Type | Long | +| Unit | ms | +| Default | 0 | +| Effective | Modify before the first startup. | + +- time_partition_interval + +| Name | time_partition_interval | +| ----------- | ------------------------------------------------------------ | +| Description | Time partition interval in milliseconds, and partitioning data inside each data region, default is equal to one week | +| Type | Long | +| Unit | ms | +| Default | 604800000 | +| Effective | Modify before the first startup. | + +- heartbeat_interval_in_ms + +| Name | heartbeat_interval_in_ms | +| ----------- | -------------------------------------- | +| Description | The heartbeat interval in milliseconds | +| Type | Long | +| Unit | ms | +| Default | 1000 | +| Effective | Restart required. | + +- disk_space_warning_threshold + +| Name | disk_space_warning_threshold | +| ----------- | ------------------------------------------------------------ | +| Description | Disk remaining threshold at which DataNode is set to ReadOnly status | +| Type | double(percentage) | +| Default | 0.05 | +| Effective | Restart required. | + +### 4.14 Memory Control Configuration + +- datanode_memory_proportion + +| Name | datanode_memory_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | The allocation ratio of StorageEngine, QueryEngine, SchemaEngine, Consensus, StreamingEngine, and Free Memory. Since V2.0.11, half of the free memory serves as the total memory budget of the AutoResizingBuffer in the RPC layer, which limits the overall memory usage of framed transport read/write buffers and compression/decompression buffers. | +| Type | Ratio | +| Default | 3:3:1:1:1:1 | +| Effective | Restart required. | + +- schema_memory_proportion + +| Name | schema_memory_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | Schema Memory Allocation Ratio: SchemaRegion, SchemaCache, and PartitionCache. | +| Type | Ratio | +| Default | 5:4:1 | +| Effective | Restart required. | + +- storage_engine_memory_proportion + +| Name | storage_engine_memory_proportion | +| ----------- | ----------------------------------------------------------- | +| Description | Memory allocation ratio in StorageEngine: Write, Compaction | +| Type | Ratio | +| Default | 8:2 | +| Effective | Restart required. | + +- write_memory_proportion + +| Name | write_memory_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | Memory allocation ratio in writing: Memtable, TimePartitionInfo | +| Type | Ratio | +| Default | 19:1 | +| Effective | Restart required. | + +- primitive_array_size + +| Name | primitive_array_size | +| ----------- | --------------------------------------------------------- | +| Description | primitive array size (length of each array) in array pool | +| Type | int32 | +| Default | 64 | +| Effective | Restart required. | + +- chunk_metadata_size_proportion + +| Name | chunk_metadata_size_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | Ratio of compaction memory for chunk metadata maintains in memory when doing compaction | +| Type | Double | +| Default | 0.1 | +| Effective | Restart required. | + +- flush_proportion + +| Name | flush_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | Ratio of memtable memory for invoking flush disk, 0.4 by defaultIf you have extremely high write load (like batch=1000), it can be set lower than the default value like 0.2 | +| Type | Double | +| Default | 0.4 | +| Effective | Restart required. | + +- buffered_arrays_memory_proportion + +| Name | buffered_arrays_memory_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | Ratio of memtable memory allocated for buffered arrays, 0.6 by default | +| Type | Double | +| Default | 0.6 | +| Effective | Restart required. | + +- reject_proportion + +| Name | reject_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | Ratio of memtable memory for rejecting insertion, 0.8 by defaultIf you have extremely high write load (like batch=1000) and the physical memory size is large enough, it can be set higher than the default value like 0.9 | +| Type | Double | +| Default | 0.8 | +| Effective | Restart required. | + +- device_path_cache_proportion + +| Name | device_path_cache_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | Ratio of memtable memory for the DevicePathCache. DevicePathCache is the deviceId cache, keeping only one copy of the same deviceId in memory | +| Type | Double | +| Default | 0.05 | +| Effective | Restart required. | + +- write_memory_variation_report_proportion + +| Name | write_memory_variation_report_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | If memory cost of data region increased more than proportion of allocated memory for writing, report to system. The default value is 0.001 | +| Type | Double | +| Default | 0.001 | +| Effective | Restart required. | + +- check_period_when_insert_blocked + +| Name | check_period_when_insert_blocked | +| ----------- | ------------------------------------------------------------ | +| Description | When an insertion is rejected, the waiting period (in ms) to check system again, 50 by default.If the insertion has been rejected and the read load is low, it can be set larger. | +| Type | int32 | +| Default | 50 | +| Effective | Restart required. | + +- io_task_queue_size_for_flushing + +| Name | io_task_queue_size_for_flushing | +| ----------- | -------------------------------------------- | +| Description | size of ioTaskQueue. The default value is 10 | +| Type | int32 | +| Default | 10 | +| Effective | Restart required. | + +- enable_query_memory_estimation + +| Name | enable_query_memory_estimation | +| ----------- | ------------------------------------------------------------ | +| Description | If true, we will estimate each query's possible memory footprint before executing it and deny it if its estimated memory exceeds current free memory | +| Type | bool | +| Default | true | +| Effective | Hot reload. | + +### 4.15 Schema Engine Configuration + +- schema_engine_mode + +| Name | schema_engine_mode | +| ----------- | ------------------------------------------------------------ | +| Description | The schema management mode of schema engine. Currently, support Memory and PBTree.This config of all DataNodes in one cluster must keep same. | +| Type | string | +| Default | Memory | +| Effective | Modify before the first startup. | + +- partition_cache_size + +| Name | partition_cache_size | +| ----------- | ------------------------- | +| Description | cache size for partition. | +| Type | Int32 | +| Default | 1000 | +| Effective | Restart required. | + +- sync_mlog_period_in_ms + +| Name | sync_mlog_period_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | The cycle when metadata log is periodically forced to be written to disk(in milliseconds)If sync_mlog_period_in_ms=0 it means force metadata log to be written to disk after each refreshmentSetting this parameter to 0 may slow down the operation on slow disk. | +| Type | Int64 | +| Default | 100 | +| Effective | Restart required. | + +- tag_attribute_flush_interval + +| Name | tag_attribute_flush_interval | +| ----------- | ------------------------------------------------------------ | +| Description | interval num for tag and attribute records when force flushing to disk | +| Type | int32 | +| Default | 1000 | +| Effective | Modify before the first startup. | + +- tag_attribute_total_size + +| Name | tag_attribute_total_size | +| ----------- | ------------------------------------------------------------ | +| Description | max size for a storage block for tags and attributes of a one-time series | +| Type | int32 | +| Default | 700 | +| Effective | Modify before the first startup. | + +- max_measurement_num_of_internal_request + +| Name | max_measurement_num_of_internal_request | +| ----------- | ------------------------------------------------------------ | +| Description | max measurement num of internal requestWhen creating timeseries with Session.createMultiTimeseries, the user input plan, the timeseries num ofwhich exceeds this num, will be split to several plans with timeseries no more than this num. | +| Type | Int32 | +| Default | 10000 | +| Effective | Restart required. | + +- datanode_schema_cache_eviction_policy + +| Name | datanode_schema_cache_eviction_policy | +| ----------- | --------------------------------------- | +| Description | Policy of DataNodeSchemaCache eviction. | +| Type | String | +| Default | FIFO | +| Effective | Restart required. | + +- cluster_timeseries_limit_threshold + +| Name | cluster_timeseries_limit_threshold | +| ----------- | ------------------------------------------------------------ | +| Description | This configuration parameter sets the maximum number of time series allowed in the cluster. | +| Type | Int32 | +| Default | -1 | +| Effective | Restart required. | + +- cluster_device_limit_threshold + +| Name | cluster_device_limit_threshold | +| ----------- | ------------------------------------------------------------ | +| Description | This configuration parameter sets the maximum number of devices allowed in the cluster. | +| Type | Int32 | +| Default | -1 | +| Effective | Restart required. | + +- database_limit_threshold + +| Name | database_limit_threshold | +| ----------- | ------------------------------------------------------------ | +| Description | This configuration parameter sets the maximum number of Cluster Databases allowed. | +| Type | Int32 | +| Default | -1 | +| Effective | Restart required. | + +### 4.16 Configurations for creating schema automatically + +- enable_auto_create_schema + +| Name | enable_auto_create_schema | +| ----------- | ------------------------------------------------ | +| Description | Whether creating schema automatically is enabled | +| Value | true or false | +| Default | true | +| Effective | Restart required. | + +- default_storage_group_level + +| Name | default_storage_group_level | +| ----------- | ------------------------------------------------------------ | +| Description | Database level when creating schema automatically is enabled e.g. root.sg0.d1.s2We will set root.sg0 as the database if database level is 1If the incoming path is shorter than this value, the creation/insertion will fail. | +| Value | int32 | +| Default | 1 | +| Effective | Restart required. | + +- boolean_string_infer_type + +| Name | boolean_string_infer_type | +| ----------- |------------------------------------------------------------------------------------| +| Description | register time series as which type when receiving boolean string "true" or "false" | +| Value | BOOLEAN or TEXT | +| Default | BOOLEAN | +| Effective | Hot_reload | + +- integer_string_infer_type + +| Name | integer_string_infer_type | +| ----------- |------------------------------------------------------------------------------------------------------------------| +| Description | register time series as which type when receiving an integer string and using float or double may lose precision | +| Value | INT32, INT64, FLOAT, DOUBLE, TEXT | +| Default | DOUBLE | +| Effective | Hot_reload | + +- floating_string_infer_type + +| Name | floating_string_infer_type | +| ----------- |----------------------------------------------------------------------------------| +| Description | register time series as which type when receiving a floating number string "6.7" | +| Value | DOUBLE, FLOAT or TEXT | +| Default | DOUBLE | +| Effective | Hot_reload | + +- nan_string_infer_type + +| Name | nan_string_infer_type | +| ----------- |--------------------------------------------------------------------| +| Description | register time series as which type when receiving the Literal NaN. | +| Value | DOUBLE, FLOAT or TEXT | +| Default | DOUBLE | +| Effective | Hot_reload | + +- default_boolean_encoding + +| Name | default_boolean_encoding | +| ----------- |----------------------------------------------------------------| +| Description | BOOLEAN encoding when creating schema automatically is enabled | +| Value | PLAIN, RLE | +| Default | RLE | +| Effective | Hot_reload | + +- default_int32_encoding + +| Name | default_int32_encoding | +| ----------- |--------------------------------------------------------------| +| Description | INT32 encoding when creating schema automatically is enabled | +| Value | PLAIN, RLE, TS_2DIFF, REGULAR, GORILLA | +| Default | TS_2DIFF | +| Effective | Hot_reload | + +- default_int64_encoding + +| Name | default_int64_encoding | +| ----------- |--------------------------------------------------------------| +| Description | INT64 encoding when creating schema automatically is enabled | +| Value | PLAIN, RLE, TS_2DIFF, REGULAR, GORILLA | +| Default | TS_2DIFF | +| Effective | Hot_reload | + +- default_float_encoding + +| Name | default_float_encoding | +| ----------- |--------------------------------------------------------------| +| Description | FLOAT encoding when creating schema automatically is enabled | +| Value | PLAIN, RLE, TS_2DIFF, GORILLA | +| Default | GORILLA | +| Effective | Hot_reload | + +- default_double_encoding + +| Name | default_double_encoding | +| ----------- |---------------------------------------------------------------| +| Description | DOUBLE encoding when creating schema automatically is enabled | +| Value | PLAIN, RLE, TS_2DIFF, GORILLA | +| Default | GORILLA | +| Effective | Hot_reload | + +- default_text_encoding + +| Name | default_text_encoding | +| ----------- |-------------------------------------------------------------| +| Description | TEXT encoding when creating schema automatically is enabled | +| Value | PLAIN | +| Default | PLAIN | +| Effective | Hot_reload | + + +* boolean_compressor + +| Name | boolean_compressor | +|------------------|-----------------------------------------------------------------------------------------| +| Description | BOOLEAN compression when creating schema automatically is enabled (Supports from V2.0.6) | +| Type | String | +| Default | LZ4 | +| Effective | Hot_reload | + +* int32_compressor + +| Name | int32_compressor | +|----------------------|--------------------------------------------------------------------------------------------| +| Description | INT32/DATE compression when creating schema automatically is enabled(Supports from V2.0.6) | +| Type | String | +| Default | LZ4 | +| Effective | Hot_reload | + +* int64_compressor + +| Name | int64_compressor | +|--------------------|-------------------------------------------------------------------------------------------------| +| Description | INT64/TIMESTAMP compression when creating schema automatically is enabled (Supports from V2.0.6) | +| Type | String | +| Default | LZ4 | +| Effective | Hot_reload | + +* float_compressor + +| Name | float_compressor | +|-----------------------|---------------------------------------------------------------------------------------| +| Description | FLOAT compression when creating schema automatically is enabled (Supports from V2.0.6) | +| Type | String | +| Default | LZ4 | +| Effective | Hot_reload | + +* double_compressor + +| Name | double_compressor | +|-------------------|----------------------------------------------------------------------------------------| +| Description | DOUBLE compression when creating schema automatically is enabled (Supports from V2.0.6) | +| Type | String | +| Default | LZ4 | +| Effective | Hot_reload | + +* text_compressor + +| Name | text_compressor | +|--------------------|--------------------------------------------------------------------------------------------------| +| Description | TEXT/BINARY/BLOB compression when creating schema automatically is enabled (Supports from V2.0.6) | +| Type | String | +| Default | LZ4 | +| Effective | Hot_reload | + + +### 4.17 Query Configurations + +- read_consistency_level + +| Name | read_consistency_level | +| ----------- | ------------------------------------------------------------ | +| Description | The read consistency levelThese consistency levels are currently supported:strong(Default, read from the leader replica)weak(Read from a random replica) | +| Type | String | +| Default | strong | +| Effective | Restart required. | + +- meta_data_cache_enable + +| Name | meta_data_cache_enable | +| ----------- | ------------------------------------------------------------ | +| Description | Whether to cache meta data (BloomFilter, ChunkMetadata and TimeSeriesMetadata) or not. | +| Type | Boolean | +| Default | true | +| Effective | Restart required. | + +- chunk_timeseriesmeta_free_memory_proportion + +| Name | chunk_timeseriesmeta_free_memory_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | Read memory Allocation Ratio: BloomFilterCache : ChunkCache : TimeSeriesMetadataCache : Coordinator : Operators : DataExchange : timeIndex in TsFileResourceList : others.The parameter form is a:b:c:d:e:f:g:h, where a, b, c, d, e, f, g and h are integers. for example: 1:1:1:1:1:1:1:1 , 1:100:200:50:200:200:200:50 | +| Type | String | +| Default | 1 : 100 : 200 : 300 : 400 | +| Effective | Restart required. | + +- enable_last_cache + +| Name | enable_last_cache | +| ----------- | ---------------------------- | +| Description | Whether to enable LAST cache | +| Type | Boolean | +| Default | true | +| Effective | Restart required. | + +- mpp_data_exchange_core_pool_size + +| Name | mpp_data_exchange_core_pool_size | +| ----------- | -------------------------------------------- | +| Description | Core size of ThreadPool of MPP data exchange | +| Type | int32 | +| Default | 10 | +| Effective | Restart required. | + +- mpp_data_exchange_max_pool_size + +| Name | mpp_data_exchange_max_pool_size | +| ----------- | ------------------------------------------- | +| Description | Max size of ThreadPool of MPP data exchange | +| Type | int32 | +| Default | 10 | +| Effective | Restart required. | + +- mpp_data_exchange_keep_alive_time_in_ms + +| Name | mpp_data_exchange_keep_alive_time_in_ms | +| ----------- | --------------------------------------- | +| Description | Max waiting time for MPP data exchange | +| Type | int32 | +| Default | 1000 | +| Effective | Restart required. | + +- driver_task_execution_time_slice_in_ms + +| Name | driver_task_execution_time_slice_in_ms | +| ----------- | -------------------------------------- | +| Description | The max execution time of a DriverTask | +| Type | int32 | +| Default | 200 | +| Effective | Restart required. | + +- max_tsblock_size_in_bytes + +| Name | max_tsblock_size_in_bytes | +| ----------- | ----------------------------- | +| Description | The max capacity of a TsBlock | +| Type | int32 | +| Default | 131072 | +| Effective | Restart required. | + +- max_tsblock_line_numbers + +| Name | max_tsblock_line_numbers | +| ----------- | ------------------------------------------- | +| Description | The max number of lines in a single TsBlock | +| Type | int32 | +| Default | 1000 | +| Effective | Restart required. | + +- slow_query_threshold + +| Name | slow_query_threshold | +| ----------- |----------------------------------------| +| Description | Time cost(ms) threshold for slow query | +| Type | long | +| Default | 3000 | +| Effective | Hot reload | + +- query_cost_stat_window + +| Name | query_cost_stat_window | +|-------------|--------------------| +| Description | Time window threshold(min) for record of history queries. | +| Type | Int32 | +| Default | 0 | +| Effective | Hot reload | + +- query_timeout_threshold + +| Name | query_timeout_threshold | +| ----------- | ----------------------------------------- | +| Description | The max executing time of query. unit: ms | +| Type | Int32 | +| Default | 60000 | +| Effective | Restart required. | + +- max_allowed_concurrent_queries + +| Name | max_allowed_concurrent_queries | +| ----------- | -------------------------------------------------- | +| Description | The maximum allowed concurrently executing queries | +| Type | Int32 | +| Default | 1000 | +| Effective | Restart required. | + +- query_thread_count + +| Name | query_thread_count | +| ----------- | ------------------------------------------------------------ | +| Description | How many threads can concurrently execute query statement. When <= 0, use CPU core number. | +| Type | Int32 | +| Default | 0 | +| Effective | Restart required. | + +- degree_of_query_parallelism + +| Name | degree_of_query_parallelism | +| ----------- | ------------------------------------------------------------ | +| Description | How many pipeline drivers will be created for one fragment instance. When <= 0, use CPU core number / 2. | +| Type | Int32 | +| Default | 0 | +| Effective | Restart required. | + +- mode_map_size_threshold + +| Name | mode_map_size_threshold | +| ----------- | ------------------------------------------------------------ | +| Description | The threshold of count map size when calculating the MODE aggregation function | +| Type | Int32 | +| Default | 10000 | +| Effective | Restart required. | + +- batch_size + +| Name | batch_size | +| ----------- | ------------------------------------------------------------ | +| Description | The amount of data iterate each time in server (the number of data strips, that is, the number of different timestamps.) | +| Type | Int32 | +| Default | 100000 | +| Effective | Restart required. | + +- sort_buffer_size_in_bytes + +| Name | sort_buffer_size_in_bytes | +| ----------- |--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| Description | The memory for external sort in sort operator, when the data size is smaller than sort_buffer_size_in_bytes, the sort operator will use in-memory sort. | +| Type | long | +| Default | 1048576(Before V2.0.6)
0(Supports from V2.0.6), if `sort_buffer_size_in_bytes <= 0`, default value will be used, `default value = min(32MB, memory for query operators / query_thread_count / 2)`, if `sort_buffer_size_in_bytes > 0`, the specified value will be used. | +| Effective | Hot_reload | + +- merge_threshold_of_explain_analyze + +| Name | merge_threshold_of_explain_analyze | +| ----------- | ------------------------------------------------------------ | +| Description | The threshold of operator count in the result set of EXPLAIN ANALYZE, if the number of operator in the result set is larger than this threshold, operator will be merged. | +| Type | int | +| Default | 10 | +| Effective | Hot reload | + +### 4.18 TTL Configuration + +- ttl_check_interval + +| Name | ttl_check_interval | +| ----------- | ------------------------------------------------------------ | +| Description | The interval of TTL check task in each database. The TTL check task will inspect and select files with a higher volume of expired data for compaction. Default is 2 hours. | +| Type | int | +| Default | 7200000 | +| Effective | Restart required. | + +- max_expired_time + +| Name | max_expired_time | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum expiring time of device which has a ttl. Default is 1 month.If the data elapsed time (current timestamp minus the maximum data timestamp of the device in the file) of such devices exceeds this value, then the file will be cleaned by compaction. | +| Type | int | +| Default | 2592000000 | +| Effective | Restart required. | + +- expired_data_ratio + +| Name | expired_data_ratio | +| ----------- | ------------------------------------------------------------ | +| Description | The expired device ratio. If the ratio of expired devices in one file exceeds this value, then expired data of this file will be cleaned by compaction. | +| Type | float | +| Default | 0.3 | +| Effective | Restart required. | + +### 4.19 Storage Engine Configuration + +- timestamp_precision + +| Name | timestamp_precision | +| ----------- | ------------------------------------------------------------ | +| Description | Use this value to set timestamp precision as "ms", "us" or "ns". | +| Type | String | +| Default | ms | +| Effective | Modify before the first startup. | + +- timestamp_precision_check_enabled + +| Name | timestamp_precision_check_enabled | +| ----------- | ------------------------------------------------------------ | +| Description | When the timestamp precision check is enabled, the timestamps those are over 13 digits for ms precision, or over 16 digits for us precision are not allowed to be inserted. | +| Type | Boolean | +| Default | true | +| Effective | Modify before the first startup. | + +- max_waiting_time_when_insert_blocked + +| Name | max_waiting_time_when_insert_blocked | +| ----------- | ------------------------------------------------------------ | +| Description | When the waiting time (in ms) of an inserting exceeds this, throw an exception. 10000 by default. | +| Type | Int32 | +| Default | 10000 | +| Effective | Restart required. | + +- handle_system_error + +| Name | handle_system_error | +| ----------- | -------------------------------------------------------- | +| Description | What will the system do when unrecoverable error occurs. | +| Type | String | +| Default | CHANGE_TO_READ_ONLY | +| Effective | Restart required. | + +- enable_timed_flush_seq_memtable + +| Name | enable_timed_flush_seq_memtable | +| ----------- | --------------------------------------------------- | +| Description | Whether to timed flush sequence tsfiles' memtables. | +| Type | Boolean | +| Default | true | +| Effective | Hot reload | + +- seq_memtable_flush_interval_in_ms + +| Name | seq_memtable_flush_interval_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | If a memTable's last update time is older than current time minus this, the memtable will be flushed to disk. | +| Type | long | +| Default | 600000 | +| Effective | Hot reload | + +- seq_memtable_flush_check_interval_in_ms + +| Name | seq_memtable_flush_check_interval_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | The interval to check whether sequence memtables need flushing. | +| Type | long | +| Default | 30000 | +| Effective | Hot reload | + +- enable_timed_flush_unseq_memtable + +| Name | enable_timed_flush_unseq_memtable | +| ----------- | ----------------------------------------------------- | +| Description | Whether to timed flush unsequence tsfiles' memtables. | +| Type | Boolean | +| Default | true | +| Effective | Hot reload | + +- unseq_memtable_flush_interval_in_ms + +| Name | unseq_memtable_flush_interval_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | If a memTable's last update time is older than current time minus this, the memtable will be flushed to disk. | +| Type | long | +| Default | 600000 | +| Effective | Hot reload | + +- unseq_memtable_flush_check_interval_in_ms + +| Name | unseq_memtable_flush_check_interval_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | The interval to check whether unsequence memtables need flushing. | +| Type | long | +| Default | 30000 | +| Effective | Hot reload | + +- tvlist_sort_algorithm + +| Name | tvlist_sort_algorithm | +| ----------- | ------------------------------------------------- | +| Description | The sort algorithms used in the memtable's TVList | +| Type | String | +| Default | TIM | +| Effective | Restart required. | + +- avg_series_point_number_threshold + +| Name | avg_series_point_number_threshold | +| ----------- | ------------------------------------------------------------ | +| Description | When the average point number of timeseries in memtable exceeds this, the memtable is flushed to disk. | +| Type | int32 | +| Default | 100000 | +| Effective | Restart required. | + +- flush_thread_count + +| Name | flush_thread_count | +| ----------- | ------------------------------------------------------------ | +| Description | How many threads can concurrently flush. When <= 0, use CPU core number. | +| Type | int32 | +| Default | 0 | +| Effective | Restart required. | + +- enable_partial_insert + +| Name | enable_partial_insert | +| ----------- | ------------------------------------------------------------ | +| Description | In one insert (one device, one timestamp, multiple measurements), if enable partial insert, one measurement failure will not impact other measurements | +| Type | Boolean | +| Default | true | +| Effective | Restart required. | + +- recovery_log_interval_in_ms + +| Name | recovery_log_interval_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | the interval to log recover progress of each vsg when starting iotdb | +| Type | Int32 | +| Default | 5000 | +| Effective | Restart required. | + +- 0.13_data_insert_adapt + +| Name | 0.13_data_insert_adapt | +| ----------- | ------------------------------------------------------------ | +| Description | If using a v0.13 client to insert data, please set this configuration to true. | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- enable_tsfile_validation + +| Name | enable_tsfile_validation | +| ----------- | ------------------------------------------------------------ | +| Description | Verify that TSfiles generated by Flush, Load, and Compaction are correct. | +| Type | boolean | +| Default | false | +| Effective | Hot reload | + +- tier_ttl_in_ms + +| Name | tier_ttl_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | Default tier TTL. When the survival time of the data exceeds the threshold, it will be migrated to the next tier. | +| Type | long | +| Default | -1 | +| Effective | Restart required. | + + +### 4.20 Compaction Configurations + +- enable_seq_space_compaction + +| Name | enable_seq_space_compaction | +| ----------- | ---------------------------------------------------------- | +| Description | sequence space compaction: only compact the sequence files | +| Type | Boolean | +| Default | true | +| Effective | Hot reload | + +- enable_unseq_space_compaction + +| Name | enable_unseq_space_compaction | +| ----------- | ------------------------------------------------------------ | +| Description | unsequence space compaction: only compact the unsequence files | +| Type | Boolean | +| Default | true | +| Effective | Hot reload | + +- enable_cross_space_compaction + +| Name | enable_cross_space_compaction | +| ----------- | ------------------------------------------------------------ | +| Description | cross space compaction: compact the unsequence files into the overlapped sequence files | +| Type | Boolean | +| Default | true | +| Effective | Hot reload | + +- enable_auto_repair_compaction + +| Name | enable_auto_repair_compaction | +| ----------- | ---------------------------------------------- | +| Description | enable auto repair unsorted file by compaction | +| Type | Boolean | +| Default | true | +| Effective | Hot reload | + +- cross_selector + +| Name | cross_selector | +| ----------- | ------------------------------------------- | +| Description | the selector of cross space compaction task | +| Type | String | +| Default | rewrite | +| Effective | Restart required. | + +- cross_performer + +| Name | cross_performer | +| ----------- |-----------------------------------------------------------| +| Description | the compaction performer of cross space compaction task, Options: read_point, fast | +| Type | String | +| Default | fast | +| Effective | Hot reload . | + +- inner_seq_selector + +| Name | inner_seq_selector | +| ----------- |--------------------------------------------------------| +| Description | the selector of inner sequence space compaction task, Options: size_tiered_single_target,size_tiered_multi_target | +| Type | String | +| Default | size_tiered_multi_target | +| Effective | Hot reload | + +- inner_seq_performer + +| Name | inner_seq_performer | +| ----------- |---------------------------------------------------------| +| Description | the performer of inner sequence space compaction task, Options: read_chunk, fast | +| Type | String | +| Default | read_chunk | +| Effective | Hot reload | + +- inner_unseq_selector + +| Name | inner_unseq_selector | +| ----------- |----------------------------------------------------------| +| Description | the selector of inner unsequence space compaction task, Options: size_tiered_single_target,size_tiered_multi_target | +| Type | String | +| Default | size_tiered_multi_target | +| Effective | Hot reload | + +- inner_unseq_performer + +| Name | inner_unseq_performer | +| ----------- |-----------------------------------------------------------| +| Description | the performer of inner unsequence space compaction task, Options: read_point, fast | +| Type | String | +| Default | fast | +| Effective | Hot reload | + +- compaction_priority + +| Name | compaction_priority | +| ----------- | ------------------------------------------------------------ | +| Description | The priority of compaction executionINNER_CROSS: prioritize inner space compaction, reduce the number of files firstCROSS_INNER: prioritize cross space compaction, eliminate the unsequence files firstBALANCE: alternate two compaction types | +| Type | String | +| Default | INNER_CROSS | +| Effective | Restart required. | + +- candidate_compaction_task_queue_size + +| Name | candidate_compaction_task_queue_size | +| ----------- | -------------------------------------------- | +| Description | The size of candidate compaction task queue. | +| Type | int32 | +| Default | 50 | +| Effective | Restart required. | + +- target_compaction_file_size + +| Name | target_compaction_file_size | +| ----------- | ------------------------------------------------------------ | +| Description | This parameter is used in two places:The target tsfile size of inner space compaction.The candidate size of seq tsfile in cross space compaction will be smaller than target_compaction_file_size * 1.5.In most cases, the target file size of cross compaction won't exceed this threshold, and if it does, it will not be much larger than it. | +| Type | Int64 | +| Default | 2147483648 | +| Effective | Hot reload | + +- inner_compaction_total_file_size_threshold + +| Name | inner_compaction_total_file_size_threshold | +| ----------- | ---------------------------------------------------- | +| Description | The total file size limit in inner space compaction. | +| Type | int64 | +| Default | 10737418240 | +| Effective | Hot reload | + +- inner_compaction_total_file_num_threshold + +| Name | inner_compaction_total_file_num_threshold | +| ----------- | --------------------------------------------------- | +| Description | The total file num limit in inner space compaction. | +| Type | int32 | +| Default | 100 | +| Effective | Hot reload | + +- max_level_gap_in_inner_compaction + +| Name | max_level_gap_in_inner_compaction | +| ----------- | ----------------------------------------------- | +| Description | The max level gap in inner compaction selection | +| Type | int32 | +| Default | 2 | +| Effective | Hot reload | + +- target_chunk_size + +| Name | target_chunk_size | +| ----------- | ------------------------------------------------------------ | +| Description | The target chunk size in flushing and compaction. If the size of a timeseries in memtable exceeds this, the data will be flushed to multiple chunks.| +| Type | Int64 | +| Default | 1600000 | +| Effective | Restart required. | + +- target_chunk_point_num + +| Name | target_chunk_point_num | +| ----------- |-----------------------------------------------------------------| +| Description | The target point nums in one chunk in flushing and compaction. If the point number of a timeseries in memtable exceeds this, the data will be flushed to multiple chunks. | +| Type | Int64 | +| Default | 100000 | +| Effective | Restart required. | + +- chunk_size_lower_bound_in_compaction + +| Name | chunk_size_lower_bound_in_compaction | +| ----------- | ------------------------------------------------------------ | +| Description | If the chunk size is lower than this threshold, it will be deserialized into points | +| Type | Int64 | +| Default | 128 | +| Effective | Restart required. | + +- chunk_point_num_lower_bound_in_compaction + +| Name | chunk_point_num_lower_bound_in_compaction | +| ----------- |------------------------------------------------------------------------------------------| +| Description | If the chunk point num is lower than this threshold, it will be deserialized into points | +| Type | Int64 | +| Default | 100 | +| Effective | Restart required. | + +- inner_compaction_candidate_file_num + +| Name | inner_compaction_candidate_file_num | +| ----------- | ------------------------------------------------------------ | +| Description | The file num requirement when selecting inner space compaction candidate files | +| Type | int32 | +| Default | 30 | +| Effective | Hot reload | + +- max_cross_compaction_candidate_file_num + +| Name | max_cross_compaction_candidate_file_num | +| ----------- | ------------------------------------------------------------ | +| Description | The max file when selecting cross space compaction candidate files | +| Type | int32 | +| Default | 500 | +| Effective | Hot reload | + +- max_cross_compaction_candidate_file_size + +| Name | max_cross_compaction_candidate_file_size | +| ----------- | ------------------------------------------------------------ | +| Description | The max total size when selecting cross space compaction candidate files | +| Type | Int64 | +| Default | 5368709120 | +| Effective | Hot reload | + +- min_cross_compaction_unseq_file_level + +| Name | min_cross_compaction_unseq_file_level | +| ----------- | ------------------------------------------------------------ | +| Description | The min inner compaction level of unsequence file which can be selected as candidate | +| Type | int32 | +| Default | 1 | +| Effective | Hot reload | + +- compaction_thread_count + +| Name | compaction_thread_count | +| ----------- | ------------------------------------------------------------ | +| Description | How many threads will be set up to perform compaction, 10 by default. | +| Type | int32 | +| Default | 10 | +| Effective | Hot reload | + +- compaction_max_aligned_series_num_in_one_batch + +| Name | compaction_max_aligned_series_num_in_one_batch | +| ----------- | ------------------------------------------------------------ | +| Description | How many chunk will be compacted in aligned series compaction, 10 by default. | +| Type | int32 | +| Default | 10 | +| Effective | Hot reload | + +- compaction_schedule_interval_in_ms + +| Name | compaction_schedule_interval_in_ms | +| ----------- | ---------------------------------------- | +| Description | The interval of compaction task schedule | +| Type | Int64 | +| Default | 60000 | +| Effective | Restart required. | + +- compaction_write_throughput_mb_per_sec + +| Name | compaction_write_throughput_mb_per_sec | +| ----------- | -------------------------------------------------------- | +| Description | The limit of write throughput merge can reach per second | +| Type | int32 | +| Default | 16 | +| Effective | Restart required. | + +- compaction_read_throughput_mb_per_sec + +| Name | compaction_read_throughput_mb_per_sec | +| ----------- | ------------------------------------------------------- | +| Description | The limit of read throughput merge can reach per second | +| Type | int32 | +| Default | 0 | +| Effective | Hot reload | + +- compaction_read_operation_per_sec + +| Name | compaction_read_operation_per_sec | +| ----------- | ------------------------------------------------------ | +| Description | The limit of read operation merge can reach per second | +| Type | int32 | +| Default | 0 | +| Effective | Hot reload | + +- sub_compaction_thread_count + +| Name | sub_compaction_thread_count | +| ----------- | ------------------------------------------------------------ | +| Description | The number of sub compaction threads to be set up to perform compaction. | +| Type | int32 | +| Default | 4 | +| Effective | Hot reload | + +- inner_compaction_task_selection_disk_redundancy + +| Name | inner_compaction_task_selection_disk_redundancy | +| ----------- | ------------------------------------------------------------ | +| Description | Redundancy value of disk availability, only use for inner compaction. | +| Type | double | +| Default | 0.05 | +| Effective | Hot reload | + +- inner_compaction_task_selection_mods_file_threshold + +| Name | inner_compaction_task_selection_mods_file_threshold | +| ----------- | -------------------------------------------------------- | +| Description | Mods file size threshold, only use for inner compaction. | +| Type | long | +| Default | 131072 | +| Effective | Hot reload | + +- compaction_schedule_thread_num + +| Name | compaction_schedule_thread_num | +| ----------- | ------------------------------------------------------------ | +| Description | The number of threads to be set up to select compaction task. | +| Type | int32 | +| Default | 4 | +| Effective | Hot reload | + +### 4.21 Write Ahead Log Configuration + +- wal_mode + +| Name | wal_mode | +| ----------- | ------------------------------------------------------------ | +| Description | The details of these three modes are as follows:DISABLE: the system will disable wal.SYNC: the system will submit wal synchronously, write request will not return until its wal is fsynced to the disk successfully.ASYNC: the system will submit wal asynchronously, write request will return immediately no matter its wal is fsynced to the disk successfully. | +| Type | String | +| Default | ASYNC | +| Effective | Restart required. | + +- max_wal_nodes_num + +| Name | max_wal_nodes_num | +| ----------- | ------------------------------------------------------------ | +| Description | each node corresponds to one wal directory The default value 0 means the number is determined by the system, the number is in the range of [data region num / 2, data region num]. | +| Type | int32 | +| Default | 0 | +| Effective | Restart required. | + +- wal_async_mode_fsync_delay_in_ms + +| Name | wal_async_mode_fsync_delay_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | Duration a wal flush operation will wait before calling fsync in the async mode | +| Type | int32 | +| Default | 1000 | +| Effective | Hot reload | + +- wal_sync_mode_fsync_delay_in_ms + +| Name | wal_sync_mode_fsync_delay_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | Duration a wal flush operation will wait before calling fsync in the sync mode | +| Type | int32 | +| Default | 3 | +| Effective | Hot reload | + +- wal_buffer_size_in_byte + +| Name | wal_buffer_size_in_byte | +| ----------- | ---------------------------- | +| Description | Buffer size of each wal node | +| Type | int32 | +| Default | 33554432 | +| Effective | Restart required. | + +- wal_buffer_queue_capacity + +| Name | wal_buffer_queue_capacity | +| ----------- | --------------------------------- | +| Description | Buffer capacity of each wal queue | +| Type | int32 | +| Default | 500 | +| Effective | Restart required. | + +- wal_file_size_threshold_in_byte + +| Name | wal_file_size_threshold_in_byte | +| ----------- | ------------------------------- | +| Description | Size threshold of each wal file | +| Type | int32 | +| Default | 31457280 | +| Effective | Hot reload | + +- wal_min_effective_info_ratio + +| Name | wal_min_effective_info_ratio | +| ----------- | --------------------------------------------------- | +| Description | Minimum ratio of effective information in wal files | +| Type | double | +| Default | 0.1 | +| Effective | Hot reload | + +- wal_memtable_snapshot_threshold_in_byte + +| Name | wal_memtable_snapshot_threshold_in_byte | +| ----------- | ------------------------------------------------------------ | +| Description | MemTable size threshold for triggering MemTable snapshot in wal | +| Type | int64 | +| Default | 8388608 | +| Effective | Hot reload | + +- max_wal_memtable_snapshot_num + +| Name | max_wal_memtable_snapshot_num | +| ----------- | ------------------------------------- | +| Description | MemTable's max snapshot number in wal | +| Type | int32 | +| Default | 1 | +| Effective | Hot reload | + +- delete_wal_files_period_in_ms + +| Name | delete_wal_files_period_in_ms | +| ----------- | ----------------------------------------------------------- | +| Description | The period when outdated wal files are periodically deleted | +| Type | int64 | +| Default | 20000 | +| Effective | Hot reload | + +- wal_throttle_threshold_in_byte + +| Name | wal_throttle_threshold_in_byte | +| ----------- | ------------------------------------------------------------ | +| Description | The minimum size of wal files when throttle down in IoTConsensus | +| Type | long | +| Default | 53687091200 | +| Effective | Hot reload | + +- iot_consensus_cache_window_time_in_ms + +| Name | iot_consensus_cache_window_time_in_ms | +| ----------- | ------------------------------------------------ | +| Description | Maximum wait time of write cache in IoTConsensus | +| Type | long | +| Default | -1 | +| Effective | Hot reload | + +- enable_wal_compression + +| Name | iot_consensus_cache_window_time_in_ms | +| ----------- | ------------------------------------- | +| Description | Enable Write Ahead Log compression. | +| Type | boolean | +| Default | true | +| Effective | Hot reload | + +### 4.22 **IoTConsensus Configuration** + +- data_region_iot_max_log_entries_num_per_batch + +| Name | data_region_iot_max_log_entries_num_per_batch | +| ----------- | ------------------------------------------------- | +| Description | The maximum log entries num in IoTConsensus Batch | +| Type | int32 | +| Default | 1024 | +| Effective | Restart required. | + +- data_region_iot_max_size_per_batch + +| Name | data_region_iot_max_size_per_batch | +| ----------- | -------------------------------------- | +| Description | The maximum size in IoTConsensus Batch | +| Type | int32 | +| Default | 16777216 | +| Effective | Restart required. | + +- data_region_iot_max_pending_batches_num + +| Name | data_region_iot_max_pending_batches_num | +| ----------- | ----------------------------------------------- | +| Description | The maximum pending batches num in IoTConsensus | +| Type | int32 | +| Default | 5 | +| Effective | Restart required. | + +- data_region_iot_max_memory_ratio_for_queue + +| Name | data_region_iot_max_memory_ratio_for_queue | +| ----------- | -------------------------------------------------- | +| Description | The maximum memory ratio for queue in IoTConsensus | +| Type | double | +| Default | 0.6 | +| Effective | Restart required. | + +- region_migration_speed_limit_bytes_per_second + +| Name | region_migration_speed_limit_bytes_per_second | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum transit size in byte per second for region migration | +| Type | long | +| Default | 33554432 | +| Effective | Restart required. | + +### 4.23 TsFile Configurations + +- group_size_in_byte + +| Name | group_size_in_byte | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum number of bytes written to disk each time the data in memory is written to disk | +| Type | int32 | +| Default | 134217728 | +| Effective | Hot reload | + +- page_size_in_byte + +| Name | page_size_in_byte | +| ----------- | ------------------------------------------------------------ | +| Description | The memory size for each series writer to pack page, default value is 64KB | +| Type | int32 | +| Default | 65536 | +| Effective | Hot reload | + +- max_number_of_points_in_page + +| Name | max_number_of_points_in_page | +| ----------- | ------------------------------------------- | +| Description | The maximum number of data points in a page | +| Type | int32 | +| Default | 10000 | +| Effective | Hot reload | + +- pattern_matching_threshold + +| Name | pattern_matching_threshold | +| ----------- | ------------------------------------------- | +| Description | The threshold for pattern matching in regex | +| Type | int32 | +| Default | 1000000 | +| Effective | Hot reload | + +- float_precision + +| Name | float_precision | +| ----------- | ------------------------------------------------------------ | +| Description | Floating-point precision of query results.Only effective for RLE and TS_2DIFF encodings.Due to the limitation of machine precision, some values may not be interpreted strictly. | +| Type | int32 | +| Default | 2 | +| Effective | Hot reload | + +- value_encoder + +| Name | value_encoder | +| ----------- | ------------------------------------------------------------ | +| Description | Encoder of value series. default value is PLAIN. | +| Type | For int, long data type, also supports TS_2DIFF and RLE(run-length encoding), GORILLA and ZIGZAG. | +| Default | PLAIN | +| Effective | Hot reload | + +- compressor + +| Name | compressor | +| ----------- | ------------------------------------------------------------ | +| Description | Compression configuration And it is also used as the default compressor of time column in aligned timeseries. | +| Type | Data compression method, supports UNCOMPRESSED, SNAPPY, ZSTD, LZMA2 or LZ4. Default value is LZ4 | +| Default | LZ4 | +| Effective | Hot reload | + +- encrypt_flag + +| Name | encrypt_flag | +| ----------- | ---------------------- | +| Description | Enable data encryption | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- encrypt_type + +| Name | encrypt_type | +| ----------- |---------------------------------------| +| Description | The method of data encrytion | +| Type | String | +| Default | org.apache.tsfile.encrypt.UNENCRYPTED | +| Effective | Restart required. | + +- encrypt_key_path + +| Name | encrypt_key_path | +| ----------- | ----------------------------------- | +| Description | The path of key for data encryption | +| Type | String | +| Default | None | +| Effective | Restart required. | + +### 4.24 Authorization Configuration + +- authorizer_provider_class + +| Name | authorizer_provider_class | +| ----------- | ------------------------------------------------------------ | +| Description | which class to serve for authorization. | +| Type | String | +| Default | org.apache.iotdb.commons.auth.authorizer.LocalFileAuthorizer | +| Effective | Restart required. | + +- iotdb_server_encrypt_decrypt_provider + +| Name | iotdb_server_encrypt_decrypt_provider | +| ----------- | ------------------------------------------------------------ | +| Description | encryption provider class | +| Type | String | +| Default | org.apache.iotdb.commons.security.encrypt.MessageDigestEncrypt | +| Effective | Modify before the first startup. | + +- iotdb_server_encrypt_decrypt_provider_parameter + +| Name | iotdb_server_encrypt_decrypt_provider_parameter | +| ----------- | ----------------------------------------------- | +| Description | encryption provided class parameter | +| Type | String | +| Default | None | +| Effective | Modify before the first startup. | + +- author_cache_size + +| Name | author_cache_size | +| ----------- | --------------------------- | +| Description | Cache size of user and role | +| Type | int32 | +| Default | 1000 | +| Effective | Restart required. | + +- author_cache_expire_time + +| Name | author_cache_expire_time | +| ----------- | ---------------------------------- | +| Description | Cache expire time of user and role | +| Type | int32 | +| Default | 30 | +| Effective | Restart required. | + +### 4.25 UDF Configuration + +- udf_initial_byte_array_length_for_memory_control + +| Name | udf_initial_byte_array_length_for_memory_control | +| ----------- | ------------------------------------------------------------ | +| Description | Used to estimate the memory usage of text fields in a UDF query.It is recommended to set this value to be slightly larger than the average length of all text records. | +| Type | int32 | +| Default | 48 | +| Effective | Restart required. | + +- udf_memory_budget_in_mb + +| Name | udf_memory_budget_in_mb | +| ----------- | ------------------------------------------------------------ | +| Description | How much memory may be used in ONE UDF query (in MB). The upper limit is 20% of allocated memory for read. | +| Type | Float | +| Default | 30.0 | +| Effective | Restart required. | + +- udf_reader_transformer_collector_memory_proportion + +| Name | udf_reader_transformer_collector_memory_proportion | +| ----------- | ------------------------------------------------------------ | +| Description | UDF memory allocation ratio.The parameter form is a:b:c, where a, b, and c are integers. | +| Type | String | +| Default | 1:1:1 | +| Effective | Restart required. | + +- udf_lib_dir + +| Name | udf_lib_dir | +| ----------- | ---------------------------- | +| Description | the udf lib directory | +| Type | String | +| Default | ext/udf(Windows:ext\\udf) | +| Effective | Restart required. | + +### 4.26 Trigger Configuration + +- trigger_lib_dir + +| Name | trigger_lib_dir | +| ----------- | ------------------------- | +| Description | the trigger lib directory | +| Type | String | +| Default | ext/trigger | +| Effective | Restart required. | + +- stateful_trigger_retry_num_when_not_found + +| Name | stateful_trigger_retry_num_when_not_found | +| ----------- | ------------------------------------------------------------ | +| Description | How many times will we retry to found an instance of stateful trigger on DataNodes | +| Type | Int32 | +| Default | 3 | +| Effective | Restart required. | + +### 4.27 **Select-Into Configuration** + +- into_operation_buffer_size_in_byte + +| Name | into_operation_buffer_size_in_byte | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum memory occupied by the data to be written when executing select-into statements. | +| Type | long | +| Default | 104857600 | +| Effective | Hot reload | + +- select_into_insert_tablet_plan_row_limit + +| Name | select_into_insert_tablet_plan_row_limit | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum number of rows can be processed in insert-tablet-plan when executing select-into statements. | +| Type | int32 | +| Default | 10000 | +| Effective | Hot reload | + +- into_operation_execution_thread_count + +| Name | into_operation_execution_thread_count | +| ----------- | ------------------------------------------------------------ | +| Description | The number of threads in the thread pool that execute insert-tablet tasks | +| Type | int32 | +| Default | 2 | +| Effective | Restart required. | + +### 4.28 Continuous Query Configuration + +- continuous_query_submit_thread_count + +| Name | continuous_query_execution_thread | +| ----------- | ------------------------------------------------------------ | +| Description | The number of threads in the scheduled thread pool that submit continuous query tasks periodically | +| Type | int32 | +| Default | 2 | +| Effective | Restart required. | + +- continuous_query_min_every_interval_in_ms + +| Name | continuous_query_min_every_interval_in_ms | +| ----------- | ------------------------------------------------------------ | +| Description | The minimum value of the continuous query execution time interval | +| Type | long (duration) | +| Default | 1000 | +| Effective | Restart required. | + +### 4.29 Pipe Configuration + +- pipe_lib_dir + +| Name | pipe_lib_dir | +| ----------- | ----------------------- | +| Description | the pipe lib directory. | +| Type | string | +| Default | ext/pipe | +| Effective | Not support modify | + +- pipe_subtask_executor_max_thread_num + +| Name | pipe_subtask_executor_max_thread_num | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum number of threads that can be used to execute the pipe subtasks in PipeSubtaskExecutor. The actual value will be min(pipe_subtask_executor_max_thread_num, max(1, CPU core number / 2)). | +| Type | int | +| Default | 5 | +| Effective | Restart required. | + +- pipe_sink_timeout_ms + +| Name | pipe_sink_timeout_ms | +| ----------- | ------------------------------------------------------------ | +| Description | The connection timeout (in milliseconds) for the thrift client. | +| Type | int | +| Default | 900000 | +| Effective | Restart required. | + +- pipe_sink_selector_number + +| Name | pipe_sink_selector_number | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum number of selectors that can be used in the sink.Recommend to set this value to less than or equal to pipe_sink_max_client_number. | +| Type | int | +| Default | 4 | +| Effective | Restart required. | + +- pipe_sink_max_client_number + +| Name | pipe_sink_max_client_number | +| ----------- | ----------------------------------------------------------- | +| Description | The maximum number of clients that can be used in the sink. | +| Type | int | +| Default | 16 | +| Effective | Restart required. | + +- pipe_air_gap_receiver_enabled + +| Name | pipe_air_gap_receiver_enabled | +| ----------- | ------------------------------------------------------------ | +| Description | Whether to enable receiving pipe data through air gap.The receiver can only return 0 or 1 in TCP mode to indicate whether the data is received successfully. | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- pipe_air_gap_receiver_port + +| Name | pipe_air_gap_receiver_port | +| ----------- | ------------------------------------------------------------ | +| Description | The port for the server to receive pipe data through air gap. | +| Type | int | +| Default | 9780 | +| Effective | Restart required. | + +- pipe_all_sinks_rate_limit_bytes_per_second + +| Name | pipe_all_sinks_rate_limit_bytes_per_second | +| ----------- | ------------------------------------------------------------ | +| Description | The total bytes that all pipe sinks can transfer per second.When given a value less than or equal to 0, it means no limit. default value is -1, which means no limit. | +| Type | double | +| Default | -1 | +| Effective | Hot reload | + +### 4.30 RatisConsensus Configuration + +- config_node_ratis_log_appender_buffer_size_max + +| Name | config_node_ratis_log_appender_buffer_size_max | +| ----------- | ------------------------------------------------------------ | +| Description | max payload size for a single log-sync-RPC from leader to follower of ConfigNode (in byte, by default 16MB) | +| Type | int32 | +| Default | 16777216 | +| Effective | Restart required. | + +- schema_region_ratis_log_appender_buffer_size_max + +| Name | schema_region_ratis_log_appender_buffer_size_max | +| ----------- | ------------------------------------------------------------ | +| Description | max payload size for a single log-sync-RPC from leader to follower of SchemaRegion (in byte, by default 16MB) | +| Type | int32 | +| Default | 16777216 | +| Effective | Restart required. | + +- data_region_ratis_log_appender_buffer_size_max + +| Name | data_region_ratis_log_appender_buffer_size_max | +| ----------- | ------------------------------------------------------------ | +| Description | max payload size for a single log-sync-RPC from leader to follower of DataRegion (in byte, by default 16MB) | +| Type | int32 | +| Default | 16777216 | +| Effective | Restart required. | + +- config_node_ratis_snapshot_trigger_threshold + +| Name | config_node_ratis_snapshot_trigger_threshold | +| ----------- | ------------------------------------------------------------ | +| Description | max numbers of snapshot_trigger_threshold logs to trigger a snapshot of Confignode | +| Type | int32 | +| Default | 400,000 | +| Effective | Restart required. | + +- schema_region_ratis_snapshot_trigger_threshold + +| Name | schema_region_ratis_snapshot_trigger_threshold | +| ----------- | ------------------------------------------------------------ | +| Description | max numbers of snapshot_trigger_threshold logs to trigger a snapshot of SchemaRegion | +| Type | int32 | +| Default | 400,000 | +| Effective | Restart required. | + +- data_region_ratis_snapshot_trigger_threshold + +| Name | data_region_ratis_snapshot_trigger_threshold | +| ----------- | ------------------------------------------------------------ | +| Description | max numbers of snapshot_trigger_threshold logs to trigger a snapshot of DataRegion | +| Type | int32 | +| Default | 400,000 | +| Effective | Restart required. | + +- config_node_ratis_log_unsafe_flush_enable + +| Name | config_node_ratis_log_unsafe_flush_enable | +| ----------- | ------------------------------------------------------ | +| Description | Is confignode allowed flushing Raft Log asynchronously | +| Type | boolean | +| Default | false | +| Effective | Restart required. | + +- schema_region_ratis_log_unsafe_flush_enable + +| Name | schema_region_ratis_log_unsafe_flush_enable | +| ----------- | -------------------------------------------------------- | +| Description | Is schemaregion allowed flushing Raft Log asynchronously | +| Type | boolean | +| Default | false | +| Effective | Restart required. | + +- data_region_ratis_log_unsafe_flush_enable + +| Name | data_region_ratis_log_unsafe_flush_enable | +| ----------- | ------------------------------------------------------ | +| Description | Is dataregion allowed flushing Raft Log asynchronously | +| Type | boolean | +| Default | false | +| Effective | Restart required. | + +- config_node_ratis_log_segment_size_max_in_byte + +| Name | config_node_ratis_log_segment_size_max_in_byte | +| ----------- | ------------------------------------------------------------ | +| Description | max capacity of a RaftLog segment file of confignode (in byte, by default 24MB) | +| Type | int32 | +| Default | 25165824 | +| Effective | Restart required. | + +- schema_region_ratis_log_segment_size_max_in_byte + +| Name | schema_region_ratis_log_segment_size_max_in_byte | +| ----------- | ------------------------------------------------------------ | +| Description | max capacity of a RaftLog segment file of schemaregion (in byte, by default 24MB) | +| Type | int32 | +| Default | 25165824 | +| Effective | Restart required. | + +- data_region_ratis_log_segment_size_max_in_byte + +| Name | data_region_ratis_log_segment_size_max_in_byte | +| ----------- | ------------------------------------------------------------ | +| Description | max capacity of a RaftLog segment file of dataregion(in byte, by default 24MB) | +| Type | int32 | +| Default | 25165824 | +| Effective | Restart required. | + +- config_node_simple_consensus_log_segment_size_max_in_byte + +| Name | data_region_ratis_log_segment_size_max_in_byte | +| ----------- | ------------------------------------------------------------ | +| Description | max capacity of a simple log segment file of confignode(in byte, by default 24MB) | +| Type | int32 | +| Default | 25165824 | +| Effective | Restart required. | + +- config_node_ratis_grpc_flow_control_window + +| Name | config_node_ratis_grpc_flow_control_window | +| ----------- | ---------------------------------------------------------- | +| Description | confignode flow control window for ratis grpc log appender | +| Type | int32 | +| Default | 4194304 | +| Effective | Restart required. | + +- schema_region_ratis_grpc_flow_control_window + +| Name | schema_region_ratis_grpc_flow_control_window | +| ----------- | ------------------------------------------------------------ | +| Description | schema region flow control window for ratis grpc log appender | +| Type | int32 | +| Default | 4194304 | +| Effective | Restart required. | + +- data_region_ratis_grpc_flow_control_window + +| Name | data_region_ratis_grpc_flow_control_window | +| ----------- | ----------------------------------------------------------- | +| Description | data region flow control window for ratis grpc log appender | +| Type | int32 | +| Default | 4194304 | +| Effective | Restart required. | + +- config_node_ratis_grpc_leader_outstanding_appends_max + +| Name | config_node_ratis_grpc_leader_outstanding_appends_max | +| ----------- | ----------------------------------------------------- | +| Description | config node grpc line concurrency threshold | +| Type | int32 | +| Default | 128 | +| Effective | Restart required. | + +- schema_region_ratis_grpc_leader_outstanding_appends_max + +| Name | schema_region_ratis_grpc_leader_outstanding_appends_max | +| ----------- | ------------------------------------------------------- | +| Description | schema region grpc line concurrency threshold | +| Type | int32 | +| Default | 128 | +| Effective | Restart required. | + +- data_region_ratis_grpc_leader_outstanding_appends_max + +| Name | data_region_ratis_grpc_leader_outstanding_appends_max | +| ----------- | ----------------------------------------------------- | +| Description | data region grpc line concurrency threshold | +| Type | int32 | +| Default | 128 | +| Effective | Restart required. | + +- config_node_ratis_log_force_sync_num + +| Name | config_node_ratis_log_force_sync_num | +| ----------- | ------------------------------------ | +| Description | config node fsync threshold | +| Type | int32 | +| Default | 128 | +| Effective | Restart required. | + +- schema_region_ratis_log_force_sync_num + +| Name | schema_region_ratis_log_force_sync_num | +| ----------- | -------------------------------------- | +| Description | schema region fsync threshold | +| Type | int32 | +| Default | 128 | +| Effective | Restart required. | + +- data_region_ratis_log_force_sync_num + +| Name | data_region_ratis_log_force_sync_num | +| ----------- | ------------------------------------ | +| Description | data region fsync threshold | +| Type | int32 | +| Default | 128 | +| Effective | Restart required. | + +- config_node_ratis_rpc_leader_election_timeout_min_ms + +| Name | config_node_ratis_rpc_leader_election_timeout_min_ms | +| ----------- | ---------------------------------------------------- | +| Description | confignode leader min election timeout | +| Type | int32 | +| Default | 2000ms | +| Effective | Restart required. | + +- schema_region_ratis_rpc_leader_election_timeout_min_ms + +| Name | schema_region_ratis_rpc_leader_election_timeout_min_ms | +| ----------- | ------------------------------------------------------ | +| Description | schema region leader min election timeout | +| Type | int32 | +| Default | 2000ms | +| Effective | Restart required. | + +- data_region_ratis_rpc_leader_election_timeout_min_ms + +| Name | data_region_ratis_rpc_leader_election_timeout_min_ms | +| ----------- | ---------------------------------------------------- | +| Description | data region leader min election timeout | +| Type | int32 | +| Default | 2000ms | +| Effective | Restart required. | + +- config_node_ratis_rpc_leader_election_timeout_max_ms + +| Name | config_node_ratis_rpc_leader_election_timeout_max_ms | +| ----------- | ---------------------------------------------------- | +| Description | confignode leader max election timeout | +| Type | int32 | +| Default | 4000ms | +| Effective | Restart required. | + +- schema_region_ratis_rpc_leader_election_timeout_max_ms + +| Name | schema_region_ratis_rpc_leader_election_timeout_max_ms | +| ----------- | ------------------------------------------------------ | +| Description | schema region leader max election timeout | +| Type | int32 | +| Default | 4000ms | +| Effective | Restart required. | + +- data_region_ratis_rpc_leader_election_timeout_max_ms + +| Name | data_region_ratis_rpc_leader_election_timeout_max_ms | +| ----------- | ---------------------------------------------------- | +| Description | data region leader max election timeout | +| Type | int32 | +| Default | 4000ms | +| Effective | Restart required. | + +- config_node_ratis_request_timeout_ms + +| Name | config_node_ratis_request_timeout_ms | +| ----------- | --------------------------------------- | +| Description | confignode ratis client retry threshold | +| Type | int32 | +| Default | 10000 | +| Effective | Restart required. | + +- schema_region_ratis_request_timeout_ms + +| Name | schema_region_ratis_request_timeout_ms | +| ----------- | ------------------------------------------ | +| Description | schema region ratis client retry threshold | +| Type | int32 | +| Default | 10000 | +| Effective | Restart required. | + +- data_region_ratis_request_timeout_ms + +| Name | data_region_ratis_request_timeout_ms | +| ----------- | ---------------------------------------- | +| Description | data region ratis client retry threshold | +| Type | int32 | +| Default | 10000 | +| Effective | Restart required. | + +- config_node_ratis_max_retry_attempts + +| Name | config_node_ratis_max_retry_attempts | +| ----------- | ------------------------------------ | +| Description | confignode ratis client retry times | +| Type | int32 | +| Default | 10 | +| Effective | Restart required. | + +- config_node_ratis_initial_sleep_time_ms + +| Name | config_node_ratis_initial_sleep_time_ms | +| ----------- | ------------------------------------------ | +| Description | confignode ratis client initial sleep time | +| Type | int32 | +| Default | 100ms | +| Effective | Restart required. | + +- config_node_ratis_max_sleep_time_ms + +| Name | config_node_ratis_max_sleep_time_ms | +| ----------- | -------------------------------------------- | +| Description | confignode ratis client max retry sleep time | +| Type | int32 | +| Default | 10000 | +| Effective | Restart required. | + +- schema_region_ratis_max_retry_attempts + +| Name | schema_region_ratis_max_retry_attempts | +| ----------- | ------------------------------------------ | +| Description | schema region ratis client max retry times | +| Type | int32 | +| Default | 10 | +| Effective | Restart required. | + +- schema_region_ratis_initial_sleep_time_ms + +| Name | schema_region_ratis_initial_sleep_time_ms | +| ----------- | ------------------------------------------ | +| Description | schema region ratis client init sleep time | +| Type | int32 | +| Default | 100ms | +| Effective | Restart required. | + +- schema_region_ratis_max_sleep_time_ms + +| Name | schema_region_ratis_max_sleep_time_ms | +| ----------- | ----------------------------------------- | +| Description | schema region ratis client max sleep time | +| Type | int32 | +| Default | 1000 | +| Effective | Restart required. | + +- data_region_ratis_max_retry_attempts + +| Name | data_region_ratis_max_retry_attempts | +| ----------- | --------------------------------------------- | +| Description | data region ratis client max retry sleep time | +| Type | int32 | +| Default | 10 | +| Effective | Restart required. | + +- data_region_ratis_initial_sleep_time_ms + +| Name | data_region_ratis_initial_sleep_time_ms | +| ----------- | ---------------------------------------- | +| Description | data region ratis client init sleep time | +| Type | int32 | +| Default | 100ms | +| Effective | Restart required. | + +- data_region_ratis_max_sleep_time_ms + +| Name | data_region_ratis_max_sleep_time_ms | +| ----------- | --------------------------------------------- | +| Description | data region ratis client max retry sleep time | +| Type | int32 | +| Default | 1000 | +| Effective | Restart required. | + +- ratis_first_election_timeout_min_ms + +| Name | ratis_first_election_timeout_min_ms | +| ----------- | ----------------------------------- | +| Description | Ratis first election min timeout | +| Type | int64 | +| Default | 50 (ms) | +| Effective | Restart required. | + +- ratis_first_election_timeout_max_ms + +| Name | ratis_first_election_timeout_max_ms | +| ----------- | ----------------------------------- | +| Description | Ratis first election max timeout | +| Type | int64 | +| Default | 150 (ms) | +| Effective | Restart required. | + +- config_node_ratis_preserve_logs_num_when_purge + +| Name | config_node_ratis_preserve_logs_num_when_purge | +| ----------- | ------------------------------------------------------------ | +| Description | confignode snapshot preserves certain logs when taking snapshot and purge | +| Type | int32 | +| Default | 1000 | +| Effective | Restart required. | + +- schema_region_ratis_preserve_logs_num_when_purge + +| Name | schema_region_ratis_preserve_logs_num_when_purge | +| ----------- | ------------------------------------------------------------ | +| Description | schema region snapshot preserves certain logs when taking snapshot and purge | +| Type | int32 | +| Default | 1000 | +| Effective | Restart required. | + +- data_region_ratis_preserve_logs_num_when_purge + +| Name | data_region_ratis_preserve_logs_num_when_purge | +| ----------- | ------------------------------------------------------------ | +| Description | data region snapshot preserves certain logs when taking snapshot and purge | +| Type | int32 | +| Default | 1000 | +| Effective | Restart required. | + +- config_node_ratis_log_max_size + +| Name | config_node_ratis_log_max_size | +| ----------- | -------------------------------------- | +| Description | config node Raft Log disk size control | +| Type | int64 | +| Default | 2147483648 (2GB) | +| Effective | Restart required. | + +- schema_region_ratis_log_max_size + +| Name | schema_region_ratis_log_max_size | +| ----------- | ---------------------------------------- | +| Description | schema region Raft Log disk size control | +| Type | int64 | +| Default | 2147483648 (2GB) | +| Effective | Restart required. | + +- data_region_ratis_log_max_size + +| Name | data_region_ratis_log_max_size | +| ----------- | -------------------------------------- | +| Description | data region Raft Log disk size control | +| Type | int64 | +| Default | 21474836480 (20GB) | +| Effective | Restart required. | + +- config_node_ratis_periodic_snapshot_interval + +| Name | config_node_ratis_periodic_snapshot_interval | +| ----------- | -------------------------------------------- | +| Description | config node Raft periodic snapshot interval | +| Type | int64 | +| Default | 86400 (s) | +| Effective | Restart required. | + +- schema_region_ratis_periodic_snapshot_interval + +| Name | schema_region_ratis_preserve_logs_num_when_purge | +| ----------- | ------------------------------------------------ | +| Description | schema region Raft periodic snapshot interval | +| Type | int64 | +| Default | 86400 (s) | +| Effective | Restart required. | + +- data_region_ratis_periodic_snapshot_interval + +| Name | data_region_ratis_preserve_logs_num_when_purge | +| ----------- | ---------------------------------------------- | +| Description | data region Raft periodic snapshot interval | +| Type | int64 | +| Default | 86400 (s) | +| Effective | Restart required. | + +### 4.31 IoTConsensusV2 Configuration + +- iot_consensus_v2_pipeline_size + +| Name | iot_consensus_v2_pipeline_size | +| ----------- | ------------------------------------------------------------ | +| Description | Default event buffer size for connector and receiver in iot consensus v2 | +| Type | int | +| Default | 5 | +| Effective | Restart required. | + +- iot_consensus_v2_mode + +| Name | iot_consensus_v2_pipeline_size | +| ----------- | ------------------------------ | +| Description | IoTConsensusV2 mode. | +| Type | String | +| Default | batch | +| Effective | Restart required. | + +### 4.32 Procedure Configuration + +- procedure_core_worker_thread_count + +| Name | procedure_core_worker_thread_count | +| ----------- | ------------------------------------- | +| Description | Default number of worker thread count | +| Type | int32 | +| Default | 4 | +| Effective | Restart required. | + +- procedure_completed_clean_interval + +| Name | procedure_completed_clean_interval | +| ----------- | ------------------------------------------------------------ | +| Description | Default time interval of completed procedure cleaner work in, time unit is second | +| Type | int32 | +| Default | 30(s) | +| Effective | Restart required. | + +- procedure_completed_evict_ttl + +| Name | procedure_completed_evict_ttl | +| ----------- | ------------------------------------------------------- | +| Description | Default ttl of completed procedure, time unit is second | +| Type | int32 | +| Default | 60(s) | +| Effective | Restart required. | + +### 4.33 MQTT Broker Configuration + +- enable_mqtt_service + +| Name | enable_mqtt_service。 | +| ----------- | ----------------------------------- | +| Description | whether to enable the mqtt service. | +| Type | Boolean | +| Default | false | +| Effective | Hot reload | + +- mqtt_host + +| Name | mqtt_host | +| ----------- | ------------------------------ | +| Description | the mqtt service binding host. | +| Type | String | +| Default | 127.0.0.1 | +| Effective | Hot reload | + +- mqtt_port + +| Name | mqtt_port | +| ----------- | ------------------------------ | +| Description | the mqtt service binding port. | +| Type | int32 | +| Default | 1883 | +| Effective | Hot reload | + +- mqtt_handler_pool_size + +| Name | mqtt_handler_pool_size | +| ----------- | ---------------------------------------------------- | +| Description | the handler pool size for handing the mqtt messages. | +| Type | int32 | +| Default | 1 | +| Effective | Hot reload | + +- mqtt_payload_formatter + +| Name | mqtt_payload_formatter | +| ----------- | ----------------------------------- | +| Description | the mqtt message payload formatter. | +| Type | String | +| Default | json | +| Effective | Hot reload | + +- mqtt_max_message_size + +| Name | mqtt_max_message_size | +| ----------- | ---------------------------------- | +| Description | max length of mqtt message in byte | +| Type | int32 | +| Default | 1048576 | +| Effective | Hot reload | + +### 4.34 Audit log Configuration + +- enable_audit_log + +| Name | enable_audit_log | +| ----------- | -------------------------------- | +| Description | whether to enable the audit log. | +| Type | Boolean | +| Default | false | +| Effective | Restart required. | + +- audit_log_storage + +| Name | audit_log_storage | +| ----------- | ----------------------------- | +| Description | Output location of audit logs | +| Type | String | +| Default | IOTDB,LOGGER | +| Effective | Restart required. | + +- audit_log_operation + +| Name | audit_log_operation | +| ----------- | ------------------------------------------------------------ | +| Description | whether enable audit log for DML operation of datawhether enable audit log for DDL operation of schemawhether enable audit log for QUERY operation of data and schema | +| Type | String | +| Default | DML,DDL,QUERY | +| Effective | Restart required. | + +- enable_audit_log_for_native_insert_api + +| Name | enable_audit_log_for_native_insert_api | +| ----------- | ---------------------------------------------- | +| Description | whether the local write api records audit logs | +| Type | Boolean | +| Default | true | +| Effective | Restart required. | + +### 4.35 White List Configuration + +- enable_white_list + +| Name | enable_white_list | +| ----------- | ------------------------- | +| Description | whether enable white list | +| Type | Boolean | +| Default | false | +| Effective | Hot reload | + +### 4.36 IoTDB-AI Configuration + +- model_inference_execution_thread_count + +| Name | model_inference_execution_thread_count | +| ----------- | ------------------------------------------------------------ | +| Description | The thread count which can be used for model inference operation. | +| Type | int | +| Default | 5 | +| Effective | Restart required. | + +### 4.37 Load TsFile Configuration + +- load_clean_up_task_execution_delay_time_seconds + +| Name | load_clean_up_task_execution_delay_time_seconds | +| ----------- | ------------------------------------------------------------ | +| Description | Load clean up task is used to clean up the unsuccessful loaded tsfile after a certain period of time. | +| Type | int | +| Default | 1800 | +| Effective | Hot reload | + +- load_write_throughput_bytes_per_second + +| Name | load_write_throughput_bytes_per_second | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum bytes per second of disk write throughput when loading tsfile. | +| Type | int | +| Default | -1 | +| Effective | Hot reload | + +- load_active_listening_enable + +| Name | load_active_listening_enable | +| ----------- | ------------------------------------------------------------ | +| Description | Whether to enable the active listening mode for tsfile loading. | +| Type | Boolean | +| Default | true | +| Effective | Hot reload | + +- load_active_listening_dirs + +| Name | load_active_listening_dirs | +| ----------- | ------------------------------------------------------------ | +| Description | The directory to be actively listened for tsfile loading.Multiple directories should be separated by a ','. | +| Type | String | +| Default | ext/load/pending | +| Effective | Hot reload | + +- load_active_listening_fail_dir + +| Name | load_active_listening_fail_dir | +| ----------- | ------------------------------------------------------------ | +| Description | The directory where tsfiles are moved if the active listening mode fails to load them. | +| Type | String | +| Default | ext/load/failed | +| Effective | Hot reload | + +- load_active_listening_max_thread_num + +| Name | load_active_listening_max_thread_num | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum number of threads that can be used to load tsfile actively.The default value, when this parameter is commented out or <= 0, use CPU core number. | +| Type | Long | +| Default | 0 | +| Effective | Restart required. | + +- load_active_listening_check_interval_seconds + +| Name | load_active_listening_check_interval_seconds | +| ----------- | ------------------------------------------------------------ | +| Description | The interval specified in seconds for the active listening mode to check the directory specified in `load_active_listening_dirs`.The active listening mode will check the directory every `load_active_listening_check_interval_seconds seconds`. | +| Type | Long | +| Default | 5 | +| Effective | Restart required. | + +* last_cache_operation_on_load + +|Name| last_cache_operation_on_load | +|:---:|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +|Description| The operation performed to LastCache when a TsFile is successfully loaded. `UPDATE`: use the data in the TsFile to update LastCache; `UPDATE_NO_BLOB`: similar to UPDATE, but will invalidate LastCache for blob series; `CLEAN_DEVICE`: invalidate LastCache of devices contained in the TsFile; `CLEAN_ALL`: clean the whole LastCache. | +|Type| String | +|Default| UPDATE_NO_BLOB | +|Effective| Effective after restart | + +* cache_last_values_for_load + +|Name| cache_last_values_for_load | +|:---:|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +|Description| Whether to cache last values before loading a TsFile. Only effective when `last_cache_operation_on_load=UPDATE_NO_BLOB` or `last_cache_operation_on_load=UPDATE`. When set to true, blob series will be ignored even with `last_cache_operation_on_load=UPDATE`. Enabling this will increase the memory footprint during loading TsFiles. | +|Type| Boolean | +|Default| true | +|Effective| Effective after restart | + +* cache_last_values_memory_budget_in_byte + +|Name| cache_last_values_memory_budget_in_byte | +|:---:|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +|Description| When `cache_last_values_for_load=true`, the maximum memory that can be used to cache last values. If this value is exceeded, the cached values will be abandoned and last values will be read from the TsFile in a streaming manner. | +|Type| int32 | +|Default| 4194304 | +|Effective| Effective after restart | + + +### 4.38 Dispatch Retry Configuration + +- enable_retry_for_unknown_error + +| Name | enable_retry_for_unknown_error | +| ----------- | ------------------------------------------------------------ | +| Description | The maximum retrying time for write request remotely dispatching, time unit is milliseconds. | +| Type | Long | +| Default | 60000 | +| Effective | Hot reload | + +- enable_retry_for_unknown_error + +| Name | enable_retry_for_unknown_error | +| ----------- | ------------------------------------ | +| Description | Whether retrying for unknown errors. | +| Type | boolean | +| Default | false | +| Effective | Hot reload | \ No newline at end of file diff --git a/src/zh/UserGuide/Master/Table/Reference/System-Config-Manual_apache.md b/src/zh/UserGuide/Master/Table/Reference/System-Config-Manual_apache.md index 8e1cf7175..953763cd7 100644 --- a/src/zh/UserGuide/Master/Table/Reference/System-Config-Manual_apache.md +++ b/src/zh/UserGuide/Master/Table/Reference/System-Config-Manual_apache.md @@ -1034,7 +1034,7 @@ IoTDB 配置文件位于 IoTDB 安装目录:`conf`文件夹下。 | 名字 | datanode_memory_proportion | | ------------ | ---------------------------------------------------- | -| 描述 | 存储引擎、查询引擎、元数据、共识、流处理引擎和空闲内存比例 | +| 描述 | 存储引擎、查询引擎、元数据、共识、流处理引擎和空闲内存的分配比例。自 V2.0.11 起,空闲内存的一半将作为 RPC 层 AutoResizingBuffer 的总内存预算,用于限制 framed transport 读写及压缩、解压缓冲区的总体内存占用。 | | 类型 | Ratio | | 默认值 | 3:3:1:1:1:1 | | 改后生效方式 | 重启服务生效 | diff --git a/src/zh/UserGuide/Master/Tree/Background-knowledge/Data-Type.md b/src/zh/UserGuide/Master/Tree/Background-knowledge/Data-Type.md index ae763fce8..49ba9bd32 100644 --- a/src/zh/UserGuide/Master/Tree/Background-knowledge/Data-Type.md +++ b/src/zh/UserGuide/Master/Tree/Background-knowledge/Data-Type.md @@ -47,7 +47,7 @@ IoTDB 支持以下十种数据类型: CREATE TIMESERIES root.vehicle.d0.s0 WITH DATATYPE=FLOAT, ENCODING=RLE, 'MAX_POINT_NUMBER'='2'; ``` -若不指定,系统会按照配置文件 `iotdb-system.properties` 中的 [float_precision](../Reference/Common-Config-Manual.md) 项配置(默认为 2 位)。 +若不指定,系统会按照配置文件 `iotdb-system.properties` 中的 `float_precision` 项配置(默认为 2 位)。 ### 1.2 数据类型兼容性 diff --git a/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Database-Resources_apache.md b/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Database-Resources_apache.md index 9eae6bfb5..45c833716 100644 --- a/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Database-Resources_apache.md +++ b/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Database-Resources_apache.md @@ -145,7 +145,7 @@ -> 提供灵活的内存配置选项,用户可在datanode-env文件中进行调整,详细信息和配置指南请参见 [datanode-env](../Reference/DataNode-Config-Manual.md#_2-环境配置项-datanode-env-sh-bat) +> 提供灵活的内存配置选项,用户可在datanode-env文件中进行调整,详细信息和配置指南请参见 [datanode-env](../Reference/System-Config-Manual_apache.md#_2-2-datanode-env-sh-bat) ## 3. 存储(磁盘) ### 3.1 存储空间 diff --git a/src/zh/UserGuide/Master/Tree/Reference/System-Config-Manual_apache.md b/src/zh/UserGuide/Master/Tree/Reference/System-Config-Manual_apache.md new file mode 100644 index 000000000..7ebe90fa5 --- /dev/null +++ b/src/zh/UserGuide/Master/Tree/Reference/System-Config-Manual_apache.md @@ -0,0 +1,3336 @@ + + +# 配置参数 + +IoTDB 配置文件位于 IoTDB 安装目录:`conf`文件夹下。 + +- `confignode-env.sh/bat`:环境配置项的配置文件,可以配置 ConfigNode 的内存大小。 +- `datanode-env.sh/bat`:环境配置项的配置文件,可以配置 DataNode 的内存大小。 +- `iotdb-system.properties`:IoTDB 的配置文件。 +- `iotdb-system.properties.template`:IoTDB 的配置文件模版。 + +## 1. 修改配置: + +在 `iotdb-system.properties` 文件中已存在的参数可以直接进行修改。对于那些在 `iotdb-system.properties` 中未列出的参数,可以从 `iotdb-system.properties.template` 配置文件模板中找到相应的参数,然后将其复制到 `iotdb-system.properties` 文件中进行修改。 + +### 1.1 改后生效方式 + +不同的配置参数有不同的生效方式,分为以下三种: + +- 仅允许在第一次启动服务前修改: 在第一次启动 ConfigNode/DataNode 后即禁止修改,修改会导致 ConfigNode/DataNode 无法启动。 +- 重启服务生效: ConfigNode/DataNode 启动后仍可修改,但需要重启 ConfigNode/DataNode 后才生效。 +- 热加载: 可在 ConfigNode/DataNode 运行时修改,修改后通过 Session 或 Cli 发送 `load configuration` 或 `set configuration key1 = 'value1'` 命令(SQL)至 IoTDB 使配置生效。 + +## 2. 环境配置项 + +### 2.1 confignode-env.sh/bat + +环境配置项主要用于对 ConfigNode 运行的 Java 环境相关参数进行配置,如 JVM 相关配置。ConfigNode 启动时,此部分配置会被传给 JVM,详细配置项说明如下: + +- MEMORY_SIZE + +| 名字 | MEMORY_SIZE | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB ConfigNode 启动时分配的内存大小 | +| 类型 | String | +| 默认值 | 取决于操作系统和机器配置。默认为机器内存的十分之三,最多会被设置为 16G。 | +| 改后生效方式 | 重启服务生效 | + +- ON_HEAP_MEMORY + +| 名字 | ON_HEAP_MEMORY | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB ConfigNode 能使用的堆内内存大小, 曾用名: MAX_HEAP_SIZE | +| 类型 | String | +| 默认值 | 取决于MEMORY_SIZE的配置。 | +| 改后生效方式 | 重启服务生效 | + +- OFF_HEAP_MEMORY + +| 名字 | OFF_HEAP_MEMORY | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB ConfigNode 能使用的堆外内存大小, 曾用名: MAX_DIRECT_MEMORY_SIZE | +| 类型 | String | +| 默认值 | 取决于MEMORY_SIZE的配置。 | +| 改后生效方式 | 重启服务生效 | + +### 2.2 datanode-env.sh/bat + +环境配置项主要用于对 DataNode 运行的 Java 环境相关参数进行配置,如 JVM 相关配置。DataNode/Standalone 启动时,此部分配置会被传给 JVM,详细配置项说明如下: + +- MEMORY_SIZE + +| 名字 | MEMORY_SIZE | +| ------------ | ---------------------------------------------------- | +| 描述 | IoTDB DataNode 启动时分配的内存大小 | +| 类型 | String | +| 默认值 | 取决于操作系统和机器配置。默认为机器内存的二分之一。 | +| 改后生效方式 | 重启服务生效 | + +- ON_HEAP_MEMORY + +| 名字 | ON_HEAP_MEMORY | +| ------------ | ---------------------------------------------------------- | +| 描述 | IoTDB DataNode 能使用的堆内内存大小, 曾用名: MAX_HEAP_SIZE | +| 类型 | String | +| 默认值 | 取决于MEMORY_SIZE的配置。 | +| 改后生效方式 | 重启服务生效 | + +- OFF_HEAP_MEMORY + +| 名字 | OFF_HEAP_MEMORY | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB DataNode 能使用的堆外内存大小, 曾用名: MAX_DIRECT_MEMORY_SIZE | +| 类型 | String | +| 默认值 | 取决于MEMORY_SIZE的配置 | +| 改后生效方式 | 重启服务生效 | + + +## 3. 系统配置项(iotdb-system.properties.template) + +### 3.1 集群管理 + +- cluster_name + +| 名字 | cluster_name | +| -------- |--------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| 描述 | 集群名称 | +| 类型 | String | +| 默认值 | default_cluster | +| 修改方式 | CLI 中执行语句 `set configuration cluster_name = 'xxx'` (xxx为希望修改成的集群名称) | +| 注意 | 此修改通过网络分发至每个节点。在网络波动或者有节点宕机的情况下,不保证能够在全部节点修改成功。未修改成功的节点重启时无法加入集群,此时需要手动修改该节点的配置文件中的cluster_name项,再重启。正常情况下,不建议通过手动修改配置文件的方式修改集群名称,不建议通过`load configuration`的方式热加载。 | + +### 3.2 SeedConfigNode 配置 + +- cn_seed_config_node + +| 名字 | cn_seed_config_node | +| ------------ | ------------------------------------------------------------ | +| 描述 | 目标 ConfigNode 地址,ConfigNode 通过此地址加入集群,推荐使用 SeedConfigNode。V1.2.2 及以前曾用名是 cn_target_config_node_list | +| 类型 | String | +| 默认值 | 127.0.0.1:10710 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- dn_seed_config_node + +| 名字 | dn_seed_config_node | +| ------------ | ------------------------------------------------------------ | +| 描述 | ConfigNode 地址,DataNode 启动时通过此地址加入集群,推荐使用 SeedConfigNode。V1.2.2 及以前曾用名是 dn_target_config_node_list | +| 类型 | String | +| 默认值 | 127.0.0.1:10710 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +### 3.3 Node RPC 配置 + +- cn_internal_address + +| 名字 | cn_internal_address | +| ------------ | ---------------------------- | +| 描述 | ConfigNode 集群内部地址 | +| 类型 | String | +| 默认值 | 127.0.0.1 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- cn_internal_port + +| 名字 | cn_internal_port | +| ------------ | ---------------------------- | +| 描述 | ConfigNode 集群服务监听端口 | +| 类型 | Short Int : [0,65535] | +| 默认值 | 10710 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- cn_consensus_port + +| 名字 | cn_consensus_port | +| ------------ | ----------------------------- | +| 描述 | ConfigNode 的共识协议通信端口 | +| 类型 | Short Int : [0,65535] | +| 默认值 | 10720 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- dn_rpc_address + +| 名字 | dn_rpc_address | +| ------------ |----------------| +| 描述 | 客户端 RPC 服务监听地址 | +| 类型 | String | +| 默认值 | 127.0.0.1 | +| 改后生效方式 | 重启服务生效 | + +- dn_rpc_port + +| 名字 | dn_rpc_port | +| ------------ | ----------------------- | +| 描述 | Client RPC 服务监听端口 | +| 类型 | Short Int : [0,65535] | +| 默认值 | 6667 | +| 改后生效方式 | 重启服务生效 | + +- dn_internal_address + +| 名字 | dn_internal_address | +| ------------ | ---------------------------- | +| 描述 | DataNode 内网通信地址 | +| 类型 | string | +| 默认值 | 127.0.0.1 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- dn_internal_port + +| 名字 | dn_internal_port | +| ------------ | ---------------------------- | +| 描述 | DataNode 内网通信端口 | +| 类型 | int | +| 默认值 | 10730 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- dn_mpp_data_exchange_port + +| 名字 | dn_mpp_data_exchange_port | +| ------------ | ---------------------------- | +| 描述 | MPP 数据交换端口 | +| 类型 | int | +| 默认值 | 10740 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- dn_schema_region_consensus_port + +| 名字 | dn_schema_region_consensus_port | +| ------------ | ------------------------------------- | +| 描述 | DataNode 元数据副本的共识协议通信端口 | +| 类型 | int | +| 默认值 | 10750 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- dn_data_region_consensus_port + +| 名字 | dn_data_region_consensus_port | +| ------------ | ----------------------------------- | +| 描述 | DataNode 数据副本的共识协议通信端口 | +| 类型 | int | +| 默认值 | 10760 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- dn_join_cluster_retry_interval_ms + +| 名字 | dn_join_cluster_retry_interval_ms | +| ------------ | --------------------------------- | +| 描述 | DataNode 再次重试加入集群等待时间 | +| 类型 | long | +| 默认值 | 5000 | +| 改后生效方式 | 重启服务生效 | + +### 3.4 副本配置 + +- config_node_consensus_protocol_class + +| 名字 | config_node_consensus_protocol_class | +| ------------ | ------------------------------------------------ | +| 描述 | ConfigNode 副本的共识协议,仅支持 RatisConsensus | +| 类型 | String | +| 默认值 | org.apache.iotdb.consensus.ratis.RatisConsensus | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- schema_replication_factor + +| 名字 | schema_replication_factor | +| ------------ | ---------------------------------- | +| 描述 | Database 的默认元数据副本数 | +| 类型 | int32 | +| 默认值 | 1 | +| 改后生效方式 | 重启服务后对**新的 Database** 生效 | + +- schema_region_consensus_protocol_class + +| 名字 | schema_region_consensus_protocol_class | +| ------------ | ----------------------------------------------------- | +| 描述 | 元数据副本的共识协议,多副本时只能使用 RatisConsensus | +| 类型 | String | +| 默认值 | org.apache.iotdb.consensus.ratis.RatisConsensus | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- data_replication_factor + +| 名字 | data_replication_factor | +| ------------ | ---------------------------------- | +| 描述 | Database 的默认数据副本数 | +| 类型 | int32 | +| 默认值 | 1 | +| 改后生效方式 | 重启服务后对**新的 Database** 生效 | + +- data_region_consensus_protocol_class + +| 名字 | data_region_consensus_protocol_class | +| ------------ | ------------------------------------------------------------ | +| 描述 | 数据副本的共识协议,多副本时可以使用 IoTConsensus 或 RatisConsensus | +| 类型 | String | +| 默认值 | org.apache.iotdb.consensus.iot.IoTConsensus | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +### 3.5 目录配置 + +- cn_system_dir + +| 名字 | cn_system_dir | +| ------------ | ----------------------------------------------------------- | +| 描述 | ConfigNode 系统数据存储路径 | +| 类型 | String | +| 默认值 | data/confignode/system(Windows:data\\configndoe\\system) | +| 改后生效方式 | 重启服务生效 | + +- cn_consensus_dir + +| 名字 | cn_consensus_dir | +| ------------ | ------------------------------------------------------------ | +| 描述 | ConfigNode 共识协议数据存储路径 | +| 类型 | String | +| 默认值 | data/confignode/consensus(Windows:data\\configndoe\\consensus) | +| 改后生效方式 | 重启服务生效 | + +- cn_pipe_receiver_file_dir + +| 名字 | cn_pipe_receiver_file_dir | +| ------------ | ------------------------------------------------------------ | +| 描述 | ConfigNode中pipe接收者用于存储文件的目录路径。 | +| 类型 | String | +| 默认值 | data/confignode/system/pipe/receiver(Windows:data\\confignode\\system\\pipe\\receiver) | +| 改后生效方式 | 重启服务生效 | + +- dn_system_dir + +| 名字 | dn_system_dir | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB 元数据存储路径,默认存放在和 sbin 目录同级的 data 目录下。相对路径的起始目录与操作系统相关,建议使用绝对路径。 | +| 类型 | String | +| 默认值 | data/datanode/system(Windows:data\\datanode\\system) | +| 改后生效方式 | 重启服务生效 | + +- dn_data_dirs + +| 名字 | dn_data_dirs | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB 数据存储路径,默认存放在和 sbin 目录同级的 data 目录下。相对路径的起始目录与操作系统相关,建议使用绝对路径。 | +| 类型 | String | +| 默认值 | data/datanode/data(Windows:data\\datanode\\data) | +| 改后生效方式 | 重启服务生效 | + +- dn_multi_dir_strategy + +| 名字 | dn_multi_dir_strategy | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB 在 data_dirs 中为 TsFile 选择目录时采用的策略。可使用简单类名或类名全称。系统提供以下三种策略:
1. SequenceStrategy:IoTDB 按顺序选择目录,依次遍历 data_dirs 中的所有目录,并不断轮循;
2. MaxDiskUsableSpaceFirstStrategy:IoTDB 优先选择 data_dirs 中对应磁盘空余空间最大的目录;
您可以通过以下方法完成用户自定义策略:
1. 继承 org.apache.iotdb.db.storageengine.rescon.disk.strategy.DirectoryStrategy 类并实现自身的 Strategy 方法;
2. 将实现的类的完整类名(包名加类名,UserDefineStrategyPackage)填写到该配置项;
3. 将该类 jar 包添加到工程中。 | +| 类型 | String | +| 默认值 | SequenceStrategy | +| 改后生效方式 | 热加载 | + +- dn_consensus_dir + +| 名字 | dn_consensus_dir | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB 共识层日志存储路径,默认存放在和 sbin 目录同级的 data 目录下。相对路径的起始目录与操作系统相关,建议使用绝对路径。 | +| 类型 | String | +| 默认值 | data/datanode/consensus(Windows:data\\datanode\\consensus) | +| 改后生效方式 | 重启服务生效 | + +- dn_wal_dirs + +| 名字 | dn_wal_dirs | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB 写前日志存储路径,默认存放在和 sbin 目录同级的 data 目录下。相对路径的起始目录与操作系统相关,建议使用绝对路径。 | +| 类型 | String | +| 默认值 | data/datanode/wal(Windows:data\\datanode\\wal) | +| 改后生效方式 | 重启服务生效 | + +- dn_tracing_dir + +| 名字 | dn_tracing_dir | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB 追踪根目录路径,默认存放在和 sbin 目录同级的 data 目录下。相对路径的起始目录与操作系统相关,建议使用绝对路径。 | +| 类型 | String | +| 默认值 | datanode/tracing(Windows:datanode\\tracing) | +| 改后生效方式 | 重启服务生效 | + +- dn_sync_dir + +| 名字 | dn_sync_dir | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB sync 存储路径,默认存放在和 sbin 目录同级的 data 目录下。相对路径的起始目录与操作系统相关,建议使用绝对路径。 | +| 类型 | String | +| 默认值 | data/datanode/sync(Windows:data\\datanode\\sync) | +| 改后生效方式 | 重启服务生效 | + +- sort_tmp_dir + +| 名字 | sort_tmp_dir | +| ------------ | ------------------------------------------------- | +| 描述 | 用于配置排序操作的临时目录。 | +| 类型 | String | +| 默认值 | data/datanode/tmp(Windows:data\\datanode\\tmp) | +| 改后生效方式 | 重启服务生效 | + +- dn_pipe_receiver_file_dirs + +| 名字 | dn_pipe_receiver_file_dirs | +| ------------ | ------------------------------------------------------------ | +| 描述 | DataNode中pipe接收者用于存储文件的目录路径。 | +| 类型 | String | +| 默认值 | data/datanode/system/pipe/receiver(Windows:data\\datanode\\system\\pipe\\receiver) | +| 改后生效方式 | 重启服务生效 | + +- iot_consensus_v2_receiver_file_dirs + +| 名字 | iot_consensus_v2_receiver_file_dirs | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTConsensus V2中接收者用于存储文件的目录路径。 | +| 类型 | String | +| 默认值 | data/datanode/system/pipe/consensus/receiver(Windows:data\\datanode\\system\\pipe\\consensus\\receiver) | +| 改后生效方式 | 重启服务生效 | + +- iot_consensus_v2_deletion_file_dir + +| 名字 | iot_consensus_v2_deletion_file_dir | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTConsensus V2中删除操作用于存储文件的目录路径。 | +| 类型 | String | +| 默认值 | data/datanode/system/pipe/consensus/deletion(Windows:data\\datanode\\system\\pipe\\consensus\\deletion) | +| 改后生效方式 | 重启服务生效 | + +### 3.6 监控配置 + +- cn_metric_reporter_list + +| 名字 | cn_metric_reporter_list | +| ------------ | -------------------------------------------------- | +| 描述 | confignode中用于配置监控模块的数据需要报告的系统。 | +| 类型 | String | +| 默认值 | 无 | +| 改后生效方式 | 重启服务生效 | + +- cn_metric_level + +| 名字 | cn_metric_level | +| ------------ | ------------------------------------------ | +| 描述 | confignode中控制监控模块收集数据的详细程度 | +| 类型 | String | +| 默认值 | IMPORTANT | +| 改后生效方式 | 重启服务生效 | + +- cn_metric_async_collect_period + +| 名字 | cn_metric_async_collect_period | +| ------------ | -------------------------------------------------- | +| 描述 | confignode中某些监控数据异步收集的周期,单位是秒。 | +| 类型 | int | +| 默认值 | 5 | +| 改后生效方式 | 重启服务生效 | + +- cn_metric_prometheus_reporter_port + +| 名字 | cn_metric_prometheus_reporter_port | +| ------------ | ------------------------------------------------------ | +| 描述 | confignode中Prometheus报告者用于监控数据报告的端口号。 | +| 类型 | int | +| 默认值 | 9091 | +| 改后生效方式 | 重启服务生效 | + +- dn_metric_reporter_list + +| 名字 | dn_metric_reporter_list | +| ------------ | ------------------------------------------------ | +| 描述 | DataNode中用于配置监控模块的数据需要报告的系统。 | +| 类型 | String | +| 默认值 | 无 | +| 改后生效方式 | 重启服务生效 | + +- dn_metric_level + +| 名字 | dn_metric_level | +| ------------ | ---------------------------------------- | +| 描述 | DataNode中控制监控模块收集数据的详细程度 | +| 类型 | String | +| 默认值 | IMPORTANT | +| 改后生效方式 | 重启服务生效 | + +- dn_metric_async_collect_period + +| 名字 | dn_metric_async_collect_period | +| ------------ | ------------------------------------------------ | +| 描述 | DataNode中某些监控数据异步收集的周期,单位是秒。 | +| 类型 | int | +| 默认值 | 5 | +| 改后生效方式 | 重启服务生效 | + +- dn_metric_prometheus_reporter_port + +| 名字 | dn_metric_prometheus_reporter_port | +| ------------ | ---------------------------------------------------- | +| 描述 | DataNode中Prometheus报告者用于监控数据报告的端口号。 | +| 类型 | int | +| 默认值 | 9092 | +| 改后生效方式 | 重启服务生效 | + +- dn_metric_internal_reporter_type + +| 名字 | dn_metric_internal_reporter_type | +| ------------ | ------------------------------------------------------------ | +| 描述 | DataNode中监控模块内部报告者的种类,用于内部监控和检查数据是否已经成功写入和刷新。 | +| 类型 | String | +| 默认值 | IOTDB | +| 改后生效方式 | 重启服务生效 | + +### 3.7 SSL 配置 + +- enable_thrift_ssl + +| 名字 | enable_thrift_ssl | +| ------------ | ------------------------------------------------------------ | +| 描述 | 当enable_thrift_ssl配置为true时,将通过dn_rpc_port使用 SSL 加密进行通信 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- enable_https + +| 名字 | enable_https | +| ------------ | ------------------------------ | +| 描述 | REST Service 是否开启 SSL 配置 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- key_store_path + +| 名字 | key_store_path | +| ------------ | -------------- | +| 描述 | ssl证书路径 | +| 类型 | String | +| 默认值 | 无 | +| 改后生效方式 | 重启服务生效 | + +- key_store_pwd + +| 名字 | key_store_pwd | +| ------------ | ------------- | +| 描述 | ssl证书密码 | +| 类型 | String | +| 默认值 | 无 | +| 改后生效方式 | 重启服务生效 | + +### 3.8 连接配置 + +- cn_rpc_thrift_compression_enable + +| 名字 | cn_rpc_thrift_compression_enable | +| ------------ | -------------------------------- | +| 描述 | 是否启用 thrift 的压缩机制。 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- cn_rpc_max_concurrent_client_num + +| 名字 | cn_rpc_max_concurrent_client_num | +| ------------ |---------------------------------| +| 描述 | 最大连接数。 | +| 类型 | int | +| 默认值 | 3000 | +| 改后生效方式 | 重启服务生效 | + +- cn_connection_timeout_ms + +| 名字 | cn_connection_timeout_ms | +| ------------ | ------------------------ | +| 描述 | 节点连接超时时间 | +| 类型 | int | +| 默认值 | 60000 | +| 改后生效方式 | 重启服务生效 | + +- cn_selector_thread_nums_of_client_manager + +| 名字 | cn_selector_thread_nums_of_client_manager | +| ------------ | ----------------------------------------- | +| 描述 | 客户端异步线程管理的选择器线程数量 | +| 类型 | int | +| 默认值 | 1 | +| 改后生效方式 | 重启服务生效 | + +- cn_max_client_count_for_each_node_in_client_manager + +| 名字 | cn_max_client_count_for_each_node_in_client_manager | +| ------------ | --------------------------------------------------- | +| 描述 | 单 ClientManager 中路由到每个节点的最大 Client 个数 | +| 类型 | int | +| 默认值 | 300 | +| 改后生效方式 | 重启服务生效 | + +- dn_session_timeout_threshold + +| 名字 | dn_session_timeout_threshold | +| ------------ | ---------------------------- | +| 描述 | 最大的会话空闲时间 | +| 类型 | int | +| 默认值 | 0 | +| 改后生效方式 | 重启服务生效 | + +- dn_rpc_thrift_compression_enable + +| 名字 | dn_rpc_thrift_compression_enable | +| ------------ | -------------------------------- | +| 描述 | 是否启用 thrift 的压缩机制 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- dn_rpc_advanced_compression_enable + +| 名字 | dn_rpc_advanced_compression_enable | +| ------------ | ---------------------------------- | +| 描述 | 是否启用 thrift 的自定制压缩机制 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- dn_rpc_selector_thread_count + +| 名字 | rpc_selector_thread_count | +| ------------ | ------------------------- | +| 描述 | rpc 选择器线程数量 | +| 类型 | int | +| 默认值 | 1 | +| 改后生效方式 | 重启服务生效 | + +- dn_rpc_min_concurrent_client_num + +| 名字 | rpc_min_concurrent_client_num | +| ------------ | ----------------------------- | +| 描述 | 最小连接数 | +| 类型 | Short Int : [0,65535] | +| 默认值 | 1 | +| 改后生效方式 | 重启服务生效 | + +- dn_rpc_max_concurrent_client_num + +| 名字 | dn_rpc_max_concurrent_client_num | +| ------------ |----------------------------------| +| 描述 | 最大连接数 | +| 类型 | Short Int : [0,65535] | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- dn_thrift_max_frame_size + +| 名字 | dn_thrift_max_frame_size | +| ------------ |-------------------------------------------------------------------------------------------------------------------| +| 描述 | RPC 请求/响应的最大字节数 | +| 类型 | int | +|默认值| 默认为0,即根据启动时DNJVM的配置参数自动计算:
a. min(64MB, dn_alloc_memory/64)
b.若用户手动配置了dn_thrift_max_frame_size,仍然使用用户指定的大小 | +| 改后生效方式 | 重启服务生效 | + +- dn_thrift_init_buffer_size + +| 名字 | dn_thrift_init_buffer_size | +| ------------ | -------------------------- | +| 描述 | 字节数 | +| 类型 | long | +| 默认值 | 1024 | +| 改后生效方式 | 重启服务生效 | + +- dn_connection_timeout_ms + +| 名字 | dn_connection_timeout_ms | +| ------------ | ------------------------ | +| 描述 | 节点连接超时时间 | +| 类型 | int | +| 默认值 | 60000 | +| 改后生效方式 | 重启服务生效 | + +- dn_selector_thread_count_of_client_manager + +| 名字 | dn_selector_thread_count_of_client_manager | +| ------------ | ------------------------------------------------------------ | +| 描述 | selector thread (TAsyncClientManager) nums for async thread in a clientManagerclientManager中异步线程的选择器线程(TAsyncClientManager)编号 | +| 类型 | int | +| 默认值 | 1 | +| 改后生效方式 | 重启服务生效 | + +- dn_max_client_count_for_each_node_in_client_manager + +| 名字 | dn_max_client_count_for_each_node_in_client_manager | +| ------------ | --------------------------------------------------- | +| 描述 | 单 ClientManager 中路由到每个节点的最大 Client 个数 | +| 类型 | int | +| 默认值 | 300 | +| 改后生效方式 | 重启服务生效 | + +### 3.9 对象存储管理 + +- remote_tsfile_cache_dirs + +| 名字 | remote_tsfile_cache_dirs | +| ------------ | ------------------------ | +| 描述 | 云端存储在本地的缓存目录 | +| 类型 | String | +| 默认值 | data/datanode/data/cache | +| 改后生效方式 | 重启服务生效 | + +- remote_tsfile_cache_page_size_in_kb + +| 名字 | remote_tsfile_cache_page_size_in_kb | +| ------------ | ----------------------------------- | +| 描述 | 云端存储在本地缓存文件的块大小 | +| 类型 | int | +| 默认值 | 20480 | +| 改后生效方式 | 重启服务生效 | + +- remote_tsfile_cache_max_disk_usage_in_mb + +| 名字 | remote_tsfile_cache_max_disk_usage_in_mb | +| ------------ | ---------------------------------------- | +| 描述 | 云端存储本地缓存的最大磁盘占用大小 | +| 类型 | long | +| 默认值 | 51200 | +| 改后生效方式 | 重启服务生效 | + +- object_storage_type + +| 名字 | object_storage_type | +| ------------ | ------------------- | +| 描述 | 云端存储类型 | +| 类型 | String | +| 默认值 | AWS_S3 | +| 改后生效方式 | 重启服务生效 | + +- object_storage_endpoint + +| 名字 | object_storage_endpoint | +| ------------ | ----------------------- | +| 描述 | 云端存储的 endpoint | +| 类型 | String | +| 默认值 | 无 | +| 改后生效方式 | 重启服务生效 | + +- object_storage_bucket + +| 名字 | object_storage_bucket | +| ------------ | ---------------------- | +| 描述 | 云端存储 bucket 的名称 | +| 类型 | String | +| 默认值 | iotdb_data | +| 改后生效方式 | 重启服务生效 | + +- object_storage_access_key + +| 名字 | object_storage_access_key | +| ------------ | ------------------------- | +| 描述 | 云端存储的验证信息 key | +| 类型 | String | +| 默认值 | 无 | +| 改后生效方式 | 重启服务生效 | + +- object_storage_access_secret + +| 名字 | object_storage_access_secret | +| ------------ | ---------------------------- | +| 描述 | 云端存储的验证信息 secret | +| 类型 | String | +| 默认值 | 无 | +| 改后生效方式 | 重启服务生效 | + +### 3.10 多级管理 + +- dn_default_space_usage_thresholds + +| 名字 | dn_default_space_usage_thresholds | +| ------------ | ------------------------------------------------------------ | +| 描述 | 定义每个层级数据目录的最小剩余空间比例;当剩余空间少于该比例时,数据会被自动迁移至下一个层级;当最后一个层级的剩余存储空间到低于此阈值时,会将系统置为 READ_ONLY | +| 类型 | double | +| 默认值 | 0.85 | +| 改后生效方式 | 热加载 | + +- dn_tier_full_policy + +| 名字 | dn_tier_full_policy | +| ------------ | ------------------------------------------------------------ | +| 描述 | 如何处理最后一层数据,当其已用空间高于其dn_default_space_usage_threshold时。| +| 类型 | String | +| 默认值 | NULL | +| 改后生效方式 | 热加载 | + +- migrate_thread_count + +| 名字 | migrate_thread_count | +| ------------ | ---------------------------------------- | +| 描述 | DataNode数据目录中迁移操作的线程池大小。 | +| 类型 | int | +| 默认值 | 1 | +| 改后生效方式 | 热加载 | + +- tiered_storage_migrate_speed_limit_bytes_per_sec + +| 名字 | tiered_storage_migrate_speed_limit_bytes_per_sec | +| ------------ | ------------------------------------------------ | +| 描述 | 限制不同存储层级之间的数据迁移速度。 | +| 类型 | int | +| 默认值 | 10485760 | +| 改后生效方式 | 热加载 | + +### 3.11 REST服务配置 + +- enable_rest_service + +| 名字 | enable_rest_service | +| ------------ | ------------------- | +| 描述 | 是否开启Rest服务。 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- rest_service_port + +| 名字 | rest_service_port | +| ------------ | ------------------ | +| 描述 | Rest服务监听端口号 | +| 类型 | int32 | +| 默认值 | 18080 | +| 改后生效方式 | 重启服务生效 | + +- enable_swagger + +| 名字 | enable_swagger | +| ------------ | --------------------------------- | +| 描述 | 是否启用swagger来展示rest接口信息 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- rest_query_default_row_size_limit + +| 名字 | rest_query_default_row_size_limit | +| ------------ | --------------------------------- | +| 描述 | 一次查询能返回的结果集最大行数 | +| 类型 | int32 | +| 默认值 | 10000 | +| 改后生效方式 | 重启服务生效 | + +- cache_expire_in_seconds + +| 名字 | cache_expire_in_seconds | +| ------------ | -------------------------------- | +| 描述 | 用户登录信息缓存的过期时间(秒) | +| 类型 | int32 | +| 默认值 | 28800 | +| 改后生效方式 | 重启服务生效 | + +- cache_max_num + +| 名字 | cache_max_num | +| ------------ | ------------------------ | +| 描述 | 缓存中存储的最大用户数量 | +| 类型 | int32 | +| 默认值 | 100 | +| 改后生效方式 | 重启服务生效 | + +- cache_init_num + +| 名字 | cache_init_num | +| ------------ | -------------- | +| 描述 | 缓存初始容量 | +| 类型 | int32 | +| 默认值 | 10 | +| 改后生效方式 | 重启服务生效 | + +- client_auth + +| 名字 | client_auth | +| ------------ | ---------------------- | +| 描述 | 是否需要客户端身份验证 | +| 类型 | boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- trust_store_path + +| 名字 | trust_store_path | +| ------------ | ----------------------- | +| 描述 | keyStore 密码(非必填) | +| 类型 | String | +| 默认值 | "" | +| 改后生效方式 | 重启服务生效 | + +- trust_store_pwd + +| 名字 | trust_store_pwd | +| ------------ | ------------------------- | +| 描述 | trustStore 密码(非必填) | +| 类型 | String | +| 默认值 | "" | +| 改后生效方式 | 重启服务生效 | + +- idle_timeout_in_seconds + +| 名字 | idle_timeout_in_seconds | +| ------------ | ----------------------- | +| 描述 | SSL 超时时间,单位为秒 | +| 类型 | int32 | +| 默认值 | 5000 | +| 改后生效方式 | 重启服务生效 | + +### 3.12 负载均衡配置 + +- series_slot_num + +| 名字 | series_slot_num | +| ------------ | ---------------------------- | +| 描述 | 序列分区槽数 | +| 类型 | int32 | +| 默认值 | 10000 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- series_partition_executor_class + +| 名字 | series_partition_executor_class | +| ------------ | ------------------------------------------------------------ | +| 描述 | 序列分区哈希函数 | +| 类型 | String | +| 默认值 | org.apache.iotdb.commons.partition.executor.hash.BKDRHashExecutor | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- schema_region_group_extension_policy + +| 名字 | schema_region_group_extension_policy | +| ------------ | ------------------------------------ | +| 描述 | SchemaRegionGroup 的扩容策略 | +| 类型 | string | +| 默认值 | AUTO | +| 改后生效方式 | 重启服务生效 | + +- default_schema_region_group_num_per_database + +| 名字 | default_schema_region_group_num_per_database | +| ------------ | ------------------------------------------------------------ | +| 描述 | 当选用 CUSTOM-SchemaRegionGroup 扩容策略时,此参数为每个 Database 拥有的 SchemaRegionGroup 数量;当选用 AUTO-SchemaRegionGroup 扩容策略时,此参数为每个 Database 最少拥有的 SchemaRegionGroup 数量 | +| 类型 | int | +| 默认值 | 1 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_per_data_node + +| 名字 | schema_region_per_data_node | +| ------------ | -------------------------------------------------- | +| 描述 | 期望每个 DataNode 可管理的 SchemaRegion 的最大数量 | +| 类型 | double | +| 默认值 | 1.0 | +| 改后生效方式 | 重启服务生效 | + +- data_region_group_extension_policy + +| 名字 | data_region_group_extension_policy | +| ------------ | ---------------------------------- | +| 描述 | DataRegionGroup 的扩容策略 | +| 类型 | string | +| 默认值 | AUTO | +| 改后生效方式 | 重启服务生效 | + +- default_data_region_group_num_per_database + +| 名字 | default_data_region_group_per_database | +| ------------ | ------------------------------------------------------------ | +| 描述 | 当选用 CUSTOM-DataRegionGroup 扩容策略时,此参数为每个 Database 拥有的 DataRegionGroup 数量;当选用 AUTO-DataRegionGroup 扩容策略时,此参数为每个 Database 最少拥有的 DataRegionGroup 数量 | +| 类型 | int | +| 默认值 | 2 | +| 改后生效方式 | 重启服务生效 | + +- data_region_per_data_node + +| 名字 | data_region_per_data_node | +| ------------ | ------------------------------------------------ | +| 描述 | 期望每个 DataNode 可管理的 DataRegion 的最大数量 | +| 类型 | double | +| 默认值 | CPU 核心数的一半 | +| 改后生效方式 | 重启服务生效 | + +- enable_auto_leader_balance_for_ratis_consensus + +| 名字 | enable_auto_leader_balance_for_ratis_consensus | +| ------------ | ---------------------------------------------- | +| 描述 | 是否为 Ratis 共识协议开启自动均衡 leader 策略 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 重启服务生效 | + +- enable_auto_leader_balance_for_iot_consensus + +| 名字 | enable_auto_leader_balance_for_iot_consensus | +| ------------ | -------------------------------------------- | +| 描述 | 是否为 IoT 共识协议开启自动均衡 leader 策略 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 重启服务生效 | + +### 3.13 集群管理 + +- time_partition_origin + +| 名字 | time_partition_origin | +| ------------ | ------------------------------------------------------------ | +| 描述 | Database 数据时间分区的起始点,即从哪个时间点开始计算时间分区。 | +| 类型 | Long | +| 单位 | 毫秒 | +| 默认值 | 0 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- time_partition_interval + +| 名字 | time_partition_interval | +| ------------ | ------------------------------- | +| 描述 | Database 默认的数据时间分区间隔 | +| 类型 | Long | +| 单位 | 毫秒 | +| 默认值 | 604800000 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- heartbeat_interval_in_ms + +| 名字 | heartbeat_interval_in_ms | +| ------------ | ------------------------ | +| 描述 | 集群节点间的心跳间隔 | +| 类型 | Long | +| 单位 | ms | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- disk_space_warning_threshold + +| 名字 | disk_space_warning_threshold | +| ------------ | ---------------------------- | +| 描述 | DataNode 磁盘剩余阈值 | +| 类型 | double(percentage) | +| 默认值 | 0.05 | +| 改后生效方式 | 重启服务生效 | + +### 3.14 内存控制配置 + +- datanode_memory_proportion + +| 名字 | datanode_memory_proportion | +| ------------ | ---------------------------------------------------- | +| 描述 | 存储引擎、查询引擎、元数据、共识、流处理引擎和空闲内存的分配比例。自 V2.0.11 起,空闲内存的一半将作为 RPC 层 AutoResizingBuffer 的总内存预算,用于限制 framed transport 读写及压缩、解压缓冲区的总体内存占用。 | +| 类型 | Ratio | +| 默认值 | 3:3:1:1:1:1 | +| 改后生效方式 | 重启服务生效 | + +- schema_memory_proportion + +| 名字 | schema_memory_proportion | +| ------------ | ------------------------------------------------------------ | +| 描述 | Schema 相关的内存如何在 SchemaRegion、SchemaCache 和 PartitionCache 之间分配 | +| 类型 | Ratio | +| 默认值 | 5:4:1 | +| 改后生效方式 | 重启服务生效 | + +- storage_engine_memory_proportion + +| 名字 | storage_engine_memory_proportion | +| ------------ | -------------------------------- | +| 描述 | 写入和合并占存储内存比例 | +| 类型 | Ratio | +| 默认值 | 8:2 | +| 改后生效方式 | 重启服务生效 | + +- write_memory_proportion + +| 名字 | write_memory_proportion | +| ------------ | -------------------------------------------- | +| 描述 | Memtable 和 TimePartitionInfo 占写入内存比例 | +| 类型 | Ratio | +| 默认值 | 19:1 | +| 改后生效方式 | 重启服务生效 | + +- primitive_array_size + +| 名字 | primitive_array_size | +| ------------ | ---------------------------------------- | +| 描述 | 数组池中的原始数组大小(每个数组的长度) | +| 类型 | int32 | +| 默认值 | 64 | +| 改后生效方式 | 重启服务生效 | + +- chunk_metadata_size_proportion + +| 名字 | chunk_metadata_size_proportion | +| ------------ | -------------------------------------------- | +| 描述 | 在数据压缩过程中,用于存储块元数据的内存比例 | +| 类型 | Double | +| 默认值 | 0.1 | +| 改后生效方式 | 重启服务生效 | + +- flush_proportion + +| 名字 | flush_proportion | +| ------------ | ------------------------------------------------------------ | +| 描述 | 调用flush disk的写入内存比例,默认0.4,若有极高的写入负载力(比如batch=1000),可以设置为低于默认值,比如0.2 | +| 类型 | Double | +| 默认值 | 0.4 | +| 改后生效方式 | 重启服务生效 | + +- buffered_arrays_memory_proportion + +| 名字 | buffered_arrays_memory_proportion | +| ------------ | --------------------------------------- | +| 描述 | 为缓冲数组分配的写入内存比例,默认为0.6 | +| 类型 | Double | +| 默认值 | 0.6 | +| 改后生效方式 | 重启服务生效 | + +- reject_proportion + +| 名字 | reject_proportion | +| ------------ | ------------------------------------------------------------ | +| 描述 | 拒绝插入的写入内存比例,默认0.8,若有极高的写入负载力(比如batch=1000)并且物理内存足够大,它可以设置为高于默认值,如0.9 | +| 类型 | Double | +| 默认值 | 0.8 | +| 改后生效方式 | 重启服务生效 | + +- device_path_cache_proportion + +| 名字 | device_path_cache_proportion | +| ------------ | --------------------------------------------------- | +| 描述 | 在内存中分配给设备路径缓存(DevicePathCache)的比例 | +| 类型 | Double | +| 默认值 | 0.05 | +| 改后生效方式 | 重启服务生效 | + +- write_memory_variation_report_proportion + +| 名字 | write_memory_variation_report_proportion | +| ------------ | ------------------------------------------------------------ | +| 描述 | 如果 DataRegion 的内存增加超过写入可用内存的一定比例,则向系统报告。默认值为0.001 | +| 类型 | Double | +| 默认值 | 0.001 | +| 改后生效方式 | 重启服务生效 | + +- check_period_when_insert_blocked + +| 名字 | check_period_when_insert_blocked | +| ------------ | ------------------------------------------------------------ | +| 描述 | 当插入被拒绝时,等待时间(以毫秒为单位)去再次检查系统,默认为50。若插入被拒绝,读取负载低,可以设置大一些。 | +| 类型 | int32 | +| 默认值 | 50 | +| 改后生效方式 | 重启服务生效 | + +- io_task_queue_size_for_flushing + +| 名字 | io_task_queue_size_for_flushing | +| ------------ | -------------------------------- | +| 描述 | ioTaskQueue 的大小。默认值为10。 | +| 类型 | int32 | +| 默认值 | 10 | +| 改后生效方式 | 重启服务生效 | + +- enable_query_memory_estimation + +| 名字 | enable_query_memory_estimation | +| ------------ | ------------------------------------------------------------ | +| 描述 | 开启后会预估每次查询的内存使用量,如果超过可用内存,会拒绝本次查询 | +| 类型 | bool | +| 默认值 | true | +| 改后生效方式 | 热加载 | + +### 3.15 元数据引擎配置 + +- schema_engine_mode + +| 名字 | schema_engine_mode | +| ------------ | ------------------------------------------------------------ | +| 描述 | 元数据引擎的运行模式,支持 Memory 和 PBTree;PBTree 模式下支持将内存中暂时不用的序列元数据实时置换到磁盘上,需要使用时再加载进内存;此参数在集群中所有的 DataNode 上务必保持相同。 | +| 类型 | string | +| 默认值 | Memory | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- partition_cache_size + +| 名字 | partition_cache_size | +| ------------ | ------------------------------ | +| 描述 | 分区信息缓存的最大缓存条目数。 | +| 类型 | Int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- sync_mlog_period_in_ms + +| 名字 | sync_mlog_period_in_ms | +| ------------ | ------------------------------------------------------------ | +| 描述 | mlog定期刷新到磁盘的周期,单位毫秒。如果该参数为0,则表示每次对元数据的更新操作都会被立即写到磁盘上。 | +| 类型 | Int64 | +| 默认值 | 100 | +| 改后生效方式 | 重启服务生效 | + +- tag_attribute_flush_interval + +| 名字 | tag_attribute_flush_interval | +| ------------ | -------------------------------------------------- | +| 描述 | 标签和属性记录的间隔数,达到此记录数量时将强制刷盘 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- tag_attribute_total_size + +| 名字 | tag_attribute_total_size | +| ------------ | ---------------------------------------- | +| 描述 | 每个时间序列标签和属性的最大持久化字节数 | +| 类型 | int32 | +| 默认值 | 700 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- max_measurement_num_of_internal_request + +| 名字 | max_measurement_num_of_internal_request | +| ------------ | ------------------------------------------------------------ | +| 描述 | 一次注册序列请求中若物理量过多,在系统内部执行时将被拆分为若干个轻量级的子请求,每个子请求中的物理量数目不超过此参数设置的最大值。 | +| 类型 | Int32 | +| 默认值 | 10000 | +| 改后生效方式 | 重启服务生效 | + +- datanode_schema_cache_eviction_policy + +| 名字 | datanode_schema_cache_eviction_policy | +| ------------ | ----------------------------------------------------- | +| 描述 | 当 Schema 缓存达到其最大容量时,Schema 缓存的淘汰策略 | +| 类型 | String | +| 默认值 | FIFO | +| 改后生效方式 | 重启服务生效 | + +- cluster_timeseries_limit_threshold + +| 名字 | cluster_timeseries_limit_threshold | +| ------------ | ---------------------------------- | +| 描述 | 集群中可以创建的时间序列的最大数量 | +| 类型 | Int32 | +| 默认值 | -1 | +| 改后生效方式 | 重启服务生效 | + +- cluster_device_limit_threshold + +| 名字 | cluster_device_limit_threshold | +| ------------ | ------------------------------ | +| 描述 | 集群中可以创建的最大设备数量 | +| 类型 | Int32 | +| 默认值 | -1 | +| 改后生效方式 | 重启服务生效 | + +- database_limit_threshold + +| 名字 | database_limit_threshold | +| ------------ | ------------------------------ | +| 描述 | 集群中可以创建的最大数据库数量 | +| 类型 | Int32 | +| 默认值 | -1 | +| 改后生效方式 | 重启服务生效 | + +### 3.16 自动推断数据类型 + +- enable_auto_create_schema + +| 名字 | enable_auto_create_schema | +| ------------ | -------------------------------------- | +| 描述 | 当写入的序列不存在时,是否自动创建序列 | +| 取值 | true or false | +| 默认值 | true | +| 改后生效方式 | 重启服务生效 | + +- default_storage_group_level + +| 名字 | default_storage_group_level | +| ------------ | ------------------------------------------------------------ | +| 描述 | 当写入的数据不存在且自动创建序列时,若需要创建相应的 database,将序列路径的哪一层当做 database。例如,如果我们接到一个新序列 root.sg0.d1.s2, 并且 level=1, 那么 root.sg0 被视为database(因为 root 是 level 0 层) | +| 取值 | int32 | +| 默认值 | 1 | +| 改后生效方式 | 重启服务生效 | + +- boolean_string_infer_type + +| 名字 | boolean_string_infer_type | +| ------------ | ------------------------------------------ | +| 描述 | "true" 或者 "false" 字符串被推断的数据类型 | +| 取值 | BOOLEAN 或者 TEXT | +| 默认值 | BOOLEAN | +| 改后生效方式 | 热加载 | + +- integer_string_infer_type + +| 名字 | integer_string_infer_type | +| ------------ | --------------------------------- | +| 描述 | 整型字符串推断的数据类型 | +| 取值 | INT32, INT64, FLOAT, DOUBLE, TEXT | +| 默认值 | DOUBLE | +| 改后生效方式 | 热加载 | + +- floating_string_infer_type + +| 名字 | floating_string_infer_type | +| ------------ | ----------------------------- | +| 描述 | "6.7"等字符串被推断的数据类型 | +| 取值 | DOUBLE, FLOAT or TEXT | +| 默认值 | DOUBLE | +| 改后生效方式 | 热加载 | + +- nan_string_infer_type + +| 名字 | nan_string_infer_type | +| ------------ | ---------------------------- | +| 描述 | "NaN" 字符串被推断的数据类型 | +| 取值 | DOUBLE, FLOAT or TEXT | +| 默认值 | DOUBLE | +| 改后生效方式 | 热加载 | + +- default_boolean_encoding + +| 名字 | default_boolean_encoding | +| ------------ | ------------------------ | +| 描述 | BOOLEAN 类型编码格式 | +| 取值 | PLAIN, RLE | +| 默认值 | RLE | +| 改后生效方式 | 热加载 | + +- default_int32_encoding + +| 名字 | default_int32_encoding | +| ------------ | -------------------------------------- | +| 描述 | int32 类型编码格式 | +| 取值 | PLAIN, RLE, TS_2DIFF, REGULAR, GORILLA | +| 默认值 | TS_2DIFF | +| 改后生效方式 | 热加载 | + +- default_int64_encoding + +| 名字 | default_int64_encoding | +| ------------ | -------------------------------------- | +| 描述 | int64 类型编码格式 | +| 取值 | PLAIN, RLE, TS_2DIFF, REGULAR, GORILLA | +| 默认值 | TS_2DIFF | +| 改后生效方式 | 热加载 | + +- default_float_encoding + +| 名字 | default_float_encoding | +| ------------ | ----------------------------- | +| 描述 | float 类型编码格式 | +| 取值 | PLAIN, RLE, TS_2DIFF, GORILLA | +| 默认值 | GORILLA | +| 改后生效方式 | 热加载 | + +- default_double_encoding + +| 名字 | default_double_encoding | +| ------------ | ----------------------------- | +| 描述 | double 类型编码格式 | +| 取值 | PLAIN, RLE, TS_2DIFF, GORILLA | +| 默认值 | GORILLA | +| 改后生效方式 | 热加载 | + +- default_text_encoding + +| 名字 | default_text_encoding | +| ------------ | --------------------- | +| 描述 | text 类型编码格式 | +| 取值 | PLAIN | +| 默认值 | PLAIN | +| 改后生效方式 | 热加载 | + +* boolean_compressor + +| 名字 | boolean_compressor | +| -------------- | ----------------------------------------------------------------------- | +| 描述 | 启用自动创建模式时,BOOLEAN 数据类型的压缩方式 (V2.0.6 版本开始支持) | +| 类型 | String | +| 默认值 | LZ4 | +| 改后生效方式 | 热加载 | + +* int32_compressor + +| 名字 | int32_compressor | +| -------------- | ------------------------------------------------------------------------- | +| 描述 | 启用自动创建模式时,INT32/DATE 数据类型的压缩方式(V2.0.6 版本开始支持) | +| 类型 | String | +| 默认值 | LZ4 | +| 改后生效方式 | 热加载 | + +* int64_compressor + +| 名字 | int64_compressor | +| -------------- | ------------------------------------------------------------------------------ | +| 描述 | 启用自动创建模式时,INT64/TIMESTAMP 数据类型的压缩方式(V2.0.6 版本开始支持) | +| 类型 | String | +| 默认值 | LZ4 | +| 改后生效方式 | 热加载 | + +* float_compressor + +| 名字 | float_compressor | +| -------------- | -------------------------------------------------------------------- | +| 描述 | 启用自动创建模式时,FLOAT 数据类型的压缩方式(V2.0.6 版本开始支持) | +| 类型 | String | +| 默认值 | LZ4 | +| 改后生效方式 | 热加载 | + +* double_compressor + +| 名字 | double_compressor | +| -------------- | --------------------------------------------------------------------- | +| 描述 | 启用自动创建模式时,DOUBLE 数据类型的压缩方式(V2.0.6 版本开始支持) | +| 类型 | String | +| 默认值 | LZ4 | +| 改后生效方式 | 热加载 | + +* text_compressor + +| 名字 | text_compressor | +| -------------- | -------------------------------------------------------------------------------- | +| 描述 | 启用自动创建模式时,TEXT/BINARY/BLOB 数据类型的压缩方式(V2.0.6 版本开始支持 ) | +| 类型 | String | +| 默认值 | LZ4 | +| 改后生效方式 | 热加载 | + + + +### 3.17 查询配置 + +- read_consistency_level + +| 名字 | read_consistency_level | +| ------------ | ------------------------------------------------------------ | +| 描述 | 查询一致性等级,取值 “strong” 时从 Leader 副本查询,取值 “weak” 时随机查询一个副本。 | +| 类型 | String | +| 默认值 | strong | +| 改后生效方式 | 重启服务生效 | + +- meta_data_cache_enable + +| 名字 | meta_data_cache_enable | +| ------------ | ------------------------------------------------------------ | +| 描述 | 是否缓存元数据(包括 BloomFilter、Chunk Metadata 和 TimeSeries Metadata。) | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 重启服务生效 | + +- chunk_timeseriesmeta_free_memory_proportion + +| 名字 | chunk_timeseriesmeta_free_memory_proportion | +| ------------ | ------------------------------------------------------------ | +| 描述 | 读取内存分配比例,BloomFilterCache、ChunkCache、TimeseriesMetadataCache、数据集查询的内存和可用内存的查询。参数形式为a : b : c : d : e,其中a、b、c、d、e为整数。 例如“1 : 1 : 1 : 1 : 1” ,“1 : 100 : 200 : 300 : 400” 。 | +| 类型 | String | +| 默认值 | 1 : 100 : 200 : 300 : 400 | +| 改后生效方式 | 重启服务生效 | + +- enable_last_cache + +| 名字 | enable_last_cache | +| ------------ | ------------------ | +| 描述 | 是否开启最新点缓存 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 重启服务生效 | + +- mpp_data_exchange_core_pool_size + +| 名字 | mpp_data_exchange_core_pool_size | +| ------------ | -------------------------------- | +| 描述 | MPP 数据交换线程池核心线程数 | +| 类型 | int32 | +| 默认值 | 10 | +| 改后生效方式 | 重启服务生效 | + +- mpp_data_exchange_max_pool_size + +| 名字 | mpp_data_exchange_max_pool_size | +| ------------ | ------------------------------- | +| 描述 | MPP 数据交换线程池最大线程数 | +| 类型 | int32 | +| 默认值 | 10 | +| 改后生效方式 | 重启服务生效 | + +- mpp_data_exchange_keep_alive_time_in_ms + +| 名字 | mpp_data_exchange_keep_alive_time_in_ms | +| ------------ | --------------------------------------- | +| 描述 | MPP 数据交换最大等待时间 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- driver_task_execution_time_slice_in_ms + +| 名字 | driver_task_execution_time_slice_in_ms | +| ------------ | -------------------------------------- | +| 描述 | 单个 DriverTask 最长执行时间(ms) | +| 类型 | int32 | +| 默认值 | 200 | +| 改后生效方式 | 重启服务生效 | + +- max_tsblock_size_in_bytes + +| 名字 | max_tsblock_size_in_bytes | +| ------------ | ------------------------------- | +| 描述 | 单个 TsBlock 的最大容量(byte) | +| 类型 | int32 | +| 默认值 | 131072 | +| 改后生效方式 | 重启服务生效 | + +- max_tsblock_line_numbers + +| 名字 | max_tsblock_line_numbers | +| ------------ | ------------------------ | +| 描述 | 单个 TsBlock 的最大行数 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- slow_query_threshold + +| 名字 | slow_query_threshold | +| ------------ |----------------------| +| 描述 | 慢查询的时间阈值。单位:毫秒。 | +| 类型 | long | +| 默认值 | 3000 | +| 改后生效方式 | 热加载 | + +- query_cost_stat_window + +| 名字 | query_cost_stat_window | +| ------------ |--------------------| +| 描述 | 查询耗时统计的窗口,单位为分钟。 | +| 类型 | Int32 | +| 默认值 | 0 | +| 改后生效方式 | 热加载 | + +- query_timeout_threshold + +| 名字 | query_timeout_threshold | +| ------------ | -------------------------------- | +| 描述 | 查询的最大执行时间。单位:毫秒。 | +| 类型 | Int32 | +| 默认值 | 60000 | +| 改后生效方式 | 重启服务生效 | + +- max_allowed_concurrent_queries + +| 名字 | max_allowed_concurrent_queries | +| ------------ | ------------------------------ | +| 描述 | 允许的最大并发查询数量。 | +| 类型 | Int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- query_thread_count + +| 名字 | query_thread_count | +| ------------ | ------------------------------------------------------------ | +| 描述 | 当 IoTDB 对内存中的数据进行查询时,最多启动多少个线程来执行该操作。如果该值小于等于 0,那么采用机器所安装的 CPU 核的数量。 | +| 类型 | Int32 | +| 默认值 | 0 | +| 改后生效方式 | 重启服务生效 | + +- degree_of_query_parallelism + +| 名字 | degree_of_query_parallelism | +| ------------ | ------------------------------------------------------------ | +| 描述 | 设置单个查询片段实例将创建的 pipeline 驱动程序数量,也就是查询操作的并行度。 | +| 类型 | Int32 | +| 默认值 | 0 | +| 改后生效方式 | 重启服务生效 | + +- mode_map_size_threshold + +| 名字 | mode_map_size_threshold | +| ------------ | ---------------------------------------------- | +| 描述 | 计算 MODE 聚合函数时,计数映射可以增长到的阈值 | +| 类型 | Int32 | +| 默认值 | 10000 | +| 改后生效方式 | 重启服务生效 | + +- batch_size + +| 名字 | batch_size | +| ------------ | ---------------------------------------------------------- | +| 描述 | 服务器中每次迭代的数据量(数据条目,即不同时间戳的数量。) | +| 类型 | Int32 | +| 默认值 | 100000 | +| 改后生效方式 | 重启服务生效 | + +- sort_buffer_size_in_bytes + +| 名字 | sort_buffer_size_in_bytes | +| ------------ |------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| 描述 | 设置外部排序操作中使用的内存缓冲区大小 | +| 类型 | long | +| 默认值 | 1048576(V2.0.6 之前版本)
0(V2.0.6 及之后版本),当值小于等于 0 时,由系统自动进行计算,计算公式为:`sort_buffer_size_in_bytes = Math.min(32 * 1024 * 1024, 堆内内存 * 查询引擎内存比例 * 查询执行内存比例 / 查询线程数 / 2)` | +| 改后生效方式 | 热加载 | + +- merge_threshold_of_explain_analyze + +| 名字 | merge_threshold_of_explain_analyze | +| ------------ | ------------------------------------------------------------ | +| 描述 | 用于设置在 `EXPLAIN ANALYZE` 语句的结果集中操作符(operator)数量的合并阈值。 | +| 类型 | int | +| 默认值 | 10 | +| 改后生效方式 | 热加载 | + +### 3.18 TTL配置 + +- ttl_check_interval + +| 名字 | ttl_check_interval | +| ------------ | -------------------------------------- | +| 描述 | ttl 检查任务的间隔,单位 ms,默认为 2h | +| 类型 | int | +| 默认值 | 7200000 | +| 改后生效方式 | 重启服务生效 | + +- max_expired_time + +| 名字 | max_expired_time | +| ------------ | ------------------------------------------------------------ | +| 描述 | 如果一个文件中存在设备已经过期超过此时间,那么这个文件将被立即整理。单位 ms,默认为一个月 | +| 类型 | int | +| 默认值 | 2592000000 | +| 改后生效方式 | 重启服务生效 | + +- expired_data_ratio + +| 名字 | expired_data_ratio | +| ------------ | ------------------------------------------------------------ | +| 描述 | 过期设备比例。如果一个文件中过期设备的比率超过这个值,那么这个文件中的过期数据将通过 compaction 清理。 | +| 类型 | float | +| 默认值 | 0.3 | +| 改后生效方式 | 重启服务生效 | + +### 3.19 存储引擎配置 + +- timestamp_precision + +| 名字 | timestamp_precision | +| ------------ | ---------------------------- | +| 描述 | 时间戳精度,支持 ms、us、ns | +| 类型 | String | +| 默认值 | ms | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- timestamp_precision_check_enabled + +| 名字 | timestamp_precision_check_enabled | +| ------------ | --------------------------------- | +| 描述 | 用于控制是否启用时间戳精度检查 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- max_waiting_time_when_insert_blocked + +| 名字 | max_waiting_time_when_insert_blocked | +| ------------ | ----------------------------------------------- | +| 描述 | 当插入请求等待超过这个时间,则抛出异常,单位 ms | +| 类型 | Int32 | +| 默认值 | 10000 | +| 改后生效方式 | 重启服务生效 | + +- handle_system_error + +| 名字 | handle_system_error | +| ------------ | ------------------------------------ | +| 描述 | 当系统遇到不可恢复的错误时的处理方法 | +| 类型 | String | +| 默认值 | CHANGE_TO_READ_ONLY | +| 改后生效方式 | 重启服务生效 | + +- enable_timed_flush_seq_memtable + +| 名字 | enable_timed_flush_seq_memtable | +| ------------ | ------------------------------- | +| 描述 | 是否开启定时刷盘顺序 memtable | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 热加载 | + +- seq_memtable_flush_interval_in_ms + +| 名字 | seq_memtable_flush_interval_in_ms | +| ------------ | ------------------------------------------------------------ | +| 描述 | 当 memTable 的创建时间小于当前时间减去该值时,该 memtable 需要被刷盘 | +| 类型 | long | +| 默认值 | 600000 | +| 改后生效方式 | 热加载 | + +- seq_memtable_flush_check_interval_in_ms + +| 名字 | seq_memtable_flush_check_interval_in_ms | +| ------------ | ---------------------------------------- | +| 描述 | 检查顺序 memtable 是否需要刷盘的时间间隔 | +| 类型 | long | +| 默认值 | 30000 | +| 改后生效方式 | 热加载 | + +- enable_timed_flush_unseq_memtable + +| 名字 | enable_timed_flush_unseq_memtable | +| ------------ | --------------------------------- | +| 描述 | 是否开启定时刷新乱序 memtable | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 热加载 | + +- unseq_memtable_flush_interval_in_ms + +| 名字 | unseq_memtable_flush_interval_in_ms | +| ------------ | ------------------------------------------------------------ | +| 描述 | 当 memTable 的创建时间小于当前时间减去该值时,该 memtable 需要被刷盘 | +| 类型 | long | +| 默认值 | 600000 | +| 改后生效方式 | 热加载 | + +- unseq_memtable_flush_check_interval_in_ms + +| 名字 | unseq_memtable_flush_check_interval_in_ms | +| ------------ | ----------------------------------------- | +| 描述 | 检查乱序 memtable 是否需要刷盘的时间间隔 | +| 类型 | long | +| 默认值 | 30000 | +| 改后生效方式 | 热加载 | + +- tvlist_sort_algorithm + +| 名字 | tvlist_sort_algorithm | +| ------------ | ------------------------ | +| 描述 | memtable中数据的排序方法 | +| 类型 | String | +| 默认值 | TIM | +| 改后生效方式 | 重启服务生效 | + +- avg_series_point_number_threshold + +| 名字 | avg_series_point_number_threshold | +| ------------ | ------------------------------------------------ | +| 描述 | 内存中平均每个时间序列点数最大值,达到触发 flush | +| 类型 | int32 | +| 默认值 | 100000 | +| 改后生效方式 | 重启服务生效 | + +- flush_thread_count + +| 名字 | flush_thread_count | +| ------------ | ------------------------------------------------------------ | +| 描述 | 当 IoTDB 将内存中的数据写入磁盘时,最多启动多少个线程来执行该操作。如果该值小于等于 0,那么采用机器所安装的 CPU 核的数量。默认值为 0。 | +| 类型 | int32 | +| 默认值 | 0 | +| 改后生效方式 | 重启服务生效 | + +- enable_partial_insert + +| 名字 | enable_partial_insert | +| ------------ | ------------------------------------------------------------ | +| 描述 | 在一次 insert 请求中,如果部分测点写入失败,是否继续写入其他测点。 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 重启服务生效 | + +- recovery_log_interval_in_ms + +| 名字 | recovery_log_interval_in_ms | +| ------------ | ----------------------------------------- | +| 描述 | data region的恢复过程中打印日志信息的间隔 | +| 类型 | Int32 | +| 默认值 | 5000 | +| 改后生效方式 | 重启服务生效 | + +- 0.13_data_insert_adapt + +| 名字 | 0.13_data_insert_adapt | +| ------------ | ------------------------------------------------------- | +| 描述 | 如果 0.13 版本客户端进行写入,需要将此配置项设置为 true | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- enable_tsfile_validation + +| 名字 | enable_tsfile_validation | +| ------------ | -------------------------------------- | +| 描述 | Flush, Load 或合并后验证 tsfile 正确性 | +| 类型 | boolean | +| 默认值 | false | +| 改后生效方式 | 热加载 | + +- tier_ttl_in_ms + +| 名字 | tier_ttl_in_ms | +| ------------ | ----------------------------------------- | +| 描述 | 定义每个层级负责的数据范围,通过 TTL 表示 | +| 类型 | long | +| 默认值 | -1 | +| 改后生效方式 | 重启服务生效 | + + +### 3.20 合并配置 + +- enable_seq_space_compaction + +| 名字 | enable_seq_space_compaction | +| ------------ | -------------------------------------- | +| 描述 | 顺序空间内合并,开启顺序文件之间的合并 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 热加载 | + +- enable_unseq_space_compaction + +| 名字 | enable_unseq_space_compaction | +| ------------ | -------------------------------------- | +| 描述 | 乱序空间内合并,开启乱序文件之间的合并 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 热加载 | + +- enable_cross_space_compaction + +| 名字 | enable_cross_space_compaction | +| ------------ | ------------------------------------------ | +| 描述 | 跨空间合并,开启将乱序文件合并到顺序文件中 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 热加载 | + +- enable_auto_repair_compaction + +| 名字 | enable_auto_repair_compaction | +| ------------ | ----------------------------- | +| 描述 | 启用通过合并操作自动修复未排序文件的功能 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 热加载 | + +- cross_selector + +| 名字 | cross_selector | +| ------------ |----------------| +| 描述 | 跨空间合并任务的选择器 | +| 类型 | String | +| 默认值 | rewrite | +| 改后生效方式 | 重启服务生效 | + +- cross_performer + +| 名字 | cross_performer | +| ------------ |-----------------------------------| +| 描述 | 跨空间合并任务的执行器,可选项:read_point 和 fast | +| 类型 | String | +| 默认值 | fast | +| 改后生效方式 | 热加载 | + +- inner_seq_selector + +| 名字 | inner_seq_selector | +| ------------ |------------------------------------------------------------------------| +| 描述 | 顺序空间内合并任务的选择器,可选 size_tiered_single_\target,size_tiered_multi_target | +| 类型 | String | +| 默认值 | size_tiered_multi_target | +| 改后生效方式 | 热加载 | + +- inner_seq_performer + +| 名字 | inner_seq_performer | +| ------------ |--------------------------------------| +| 描述 | 顺序空间内合并任务的执行器,可选项是 read_chunk 和 fast | +| 类型 | String | +| 默认值 | read_chunk | +| 改后生效方式 | 热加载 | + +- inner_unseq_selector + +| 名字 | inner_unseq_selector | +| ------------ |-------------------------------------------------------------------------| +| 描述 | 乱序空间内合并任务的选择器,可选 size_tiered_single_\target,size_tiered_multi_target | +| 类型 | String | +| 默认值 | size_tiered_multi_target | +| 改后生效方式 | 热加载 | + +- inner_unseq_performer + +| 名字 | inner_unseq_performer | +| ------------ |--------------------------------------| +| 描述 | 乱序空间内合并任务的执行器,可选项是 read_point 和 fast | +| 类型 | String | +| 默认值 | fast | +| 改后生效方式 | 热加载 | + +- compaction_priority + +| 名字 | compaction_priority | +| ------------ |-------------------------------------------------------------------------------------------| +| 描述 | 合并时的优先级。INNER_CROSS:优先执行空间内合并,优先减少文件数量;CROSS_INNER:优先执行跨空间合并,优先清理乱序文件;BALANCE:交替执行两种合并类型。 | +| 类型 | String | +| 默认值 | INNER_CROSS | +| 改后生效方式 | 重启服务生效 | + +- candidate_compaction_task_queue_size + +| 名字 | candidate_compaction_task_queue_size | +| ------------ | ------------------------------------ | +| 描述 | 待选合并任务队列容量 | +| 类型 | int32 | +| 默认值 | 50 | +| 改后生效方式 | 重启服务生效 | + +- target_compaction_file_size + +| 名字 | target_compaction_file_size | +| ------------ |-----------------------------------------------------------------------------------------------------------------------------------------------| +| 描述 | 该参数作用于两个场景:1. 空间内合并的目标文件大小 2. 跨空间合并中待选序列文件的大小需小于 target_compaction_file_size * 1.5 多数情况下,跨空间合并的目标文件大小不会超过此阈值,即便超出,幅度也不会过大 。 默认值:2GB ,单位:byte | +| 类型 | Long | +| 默认值 | 2147483648 | +| 改后生效方式 | 热加载 | + +- inner_compaction_total_file_size_threshold + +| 名字 | inner_compaction_total_file_size_threshold | +| ------------ |--------------------------------------------| +| 描述 | 空间内合并的文件总大小阈值,单位:byte | +| 类型 | Long | +| 默认值 | 10737418240 | +| 改后生效方式 | 热加载 | + +- inner_compaction_total_file_num_threshold + +| 名字 | inner_compaction_total_file_num_threshold | +| ------------ | ----------------------------------------- | +| 描述 | 空间内合并的文件总数阈值 | +| 类型 | int32 | +| 默认值 | 100 | +| 改后生效方式 | 热加载 | + +- max_level_gap_in_inner_compaction + +| 名字 | max_level_gap_in_inner_compaction | +| ------------ | -------------------------------------- | +| 描述 | 空间内合并筛选的最大层级差 | +| 类型 | int32 | +| 默认值 | 2 | +| 改后生效方式 | 热加载 | + +- target_chunk_size + +| 名字 | target_chunk_size | +| ------------ |--------------------------------------------------| +| 描述 | 刷盘与合并操作的目标数据块大小, 若内存表中某条时序数据的大小超过该值,数据会被刷盘至多个数据块 | +| 类型 | Long | +| 默认值 | 1600000 | +| 改后生效方式 | 重启服务生效 | + +- target_chunk_point_num + +| 名字 | target_chunk_point_num | +| ------------ |------------------------------------------------------| +| 描述 | 刷盘与合并操作中单个数据块的目标点数, 若内存表中某条时序数据的点数超过该值,数据会被刷盘至多个数据块中 | +| 类型 | Long | +| 默认值 | 100000 | +| 改后生效方式 | 重启服务生效 | + +- chunk_size_lower_bound_in_compaction + +| 名字 | chunk_size_lower_bound_in_compaction | +| ------------ |--------------------------------------| +| 描述 | 若数据块大小低于此阈值,则会被反序列化为数据点,默认值为128字节 | +| 类型 | Long | +| 默认值 | 128 | +| 改后生效方式 | 重启服务生效 | + +- chunk_point_num_lower_bound_in_compaction + +| 名字 | chunk_point_num_lower_bound_in_compaction | +| ------------ |------------------------------------------| +| 描述 | 若数据块内的数据点数低于此阈值,则会被反序列化为数据点 | +| 类型 | Long | +| 默认值 | 100 | +| 改后生效方式 | 重启服务生效 | + +- inner_compaction_candidate_file_num + +| 名字 | inner_compaction_candidate_file_num | +| ------------ | ---------------------------------------- | +| 描述 | 空间内合并待选文件筛选的文件数量要求 | +| 类型 | int32 | +| 默认值 | 30 | +| 改后生效方式 | 热加载 | + +- max_cross_compaction_candidate_file_num + +| 名字 | max_cross_compaction_candidate_file_num | +| ------------ | --------------------------------------- | +| 描述 | 跨空间合并待选文件筛选的文件数量上限 | +| 类型 | int32 | +| 默认值 | 500 | +| 改后生效方式 | 热加载 | + +- max_cross_compaction_candidate_file_size + +| 名字 | max_cross_compaction_candidate_file_size | +| ------------ |------------------------------------------| +| 描述 | 跨空间合并待选文件筛选的总大小上限 | +| 类型 | Long | +| 默认值 | 5368709120 | +| 改后生效方式 | 热加载 | + +- min_cross_compaction_unseq_file_level + +| 名字 | min_cross_compaction_unseq_file_level | +| ------------ |---------------------------------------| +| 描述 | 可被选为待选文件的乱序文件的最小空间内合并层级 | +| 类型 | int32 | +| 默认值 | 1 | +| 改后生效方式 | 热加载 | + +- compaction_thread_count + +| 名字 | compaction_thread_count | +| ------------ | ----------------------- | +| 描述 | 执行合并任务的线程数目 | +| 类型 | int32 | +| 默认值 | 10 | +| 改后生效方式 | 热加载 | + +- compaction_max_aligned_series_num_in_one_batch + +| 名字 | compaction_max_aligned_series_num_in_one_batch | +| ------------ | ---------------------------------------------- | +| 描述 | 对齐序列合并一次执行时处理的值列数量 | +| 类型 | int32 | +| 默认值 | 10 | +| 改后生效方式 | 热加载 | + +- compaction_schedule_interval_in_ms + +| 名字 | compaction_schedule_interval_in_ms | +| ------------ |------------------------------------| +| 描述 | 合并调度的时间间隔,单位 ms | +| 类型 | Long | +| 默认值 | 60000 | +| 改后生效方式 | 重启服务生效 | + +- compaction_write_throughput_mb_per_sec + +| 名字 | compaction_write_throughput_mb_per_sec | +| ------------ |----------------------------------------| +| 描述 | 合并操作每秒可达到的写入吞吐量上限, 小于或等于 0 的取值表示无限制 | +| 类型 | int32 | +| 默认值 | 16 | +| 改后生效方式 | 重启服务生效 | + +- compaction_read_throughput_mb_per_sec + +| 名字 | compaction_read_throughput_mb_per_sec | +| --------- | ---------------------------------------------------- | +| 描述 | 合并每秒读吞吐限制,单位为 megabyte,小于或等于 0 的取值表示无限制 | +| 类型 | int32 | +| 默认值 | 0 | +| Effective | 热加载 | + +- compaction_read_operation_per_sec + +| 名字 | compaction_read_operation_per_sec | +| --------- | ------------------------------------------- | +| 描述 | 合并每秒读操作数量限制,小于或等于 0 的取值表示无限制 | +| 类型 | int32 | +| 默认值 | 0 | +| Effective | 热加载 | + +- sub_compaction_thread_count + +| 名字 | sub_compaction_thread_count | +| ------------ | ------------------------------------------------------------ | +| 描述 | 每个合并任务的子任务线程数,只对跨空间合并和乱序空间内合并生效 | +| 类型 | int32 | +| 默认值 | 4 | +| 改后生效方式 | 热加载 | + +- inner_compaction_task_selection_disk_redundancy + +| 名字 | inner_compaction_task_selection_disk_redundancy | +| ------------ | ----------------------------------------------- | +| 描述 | 定义了磁盘可用空间的冗余值,仅用于内部压缩 | +| 类型 | double | +| 默认值 | 0.05 | +| 改后生效方式 | 热加载 | + +- inner_compaction_task_selection_mods_file_threshold + +| 名字 | inner_compaction_task_selection_mods_file_threshold | +| ------------ | --------------------------------------------------- | +| 描述 | 定义了mods文件大小的阈值,仅用于内部压缩。 | +| 类型 | long | +| 默认值 | 131072 | +| 改后生效方式 | 热加载 | + +- compaction_schedule_thread_num + +| 名字 | compaction_schedule_thread_num | +| ------------ | ------------------------------ | +| 描述 | 选择合并任务的线程数量 | +| 类型 | int32 | +| 默认值 | 4 | +| 改后生效方式 | 热加载 | + +### 3.21 写前日志配置 + +- wal_mode + +| 名字 | wal_mode | +| ------------ | ------------------------------------------------------------ | +| 描述 | 写前日志的写入模式. DISABLE 模式下会关闭写前日志;SYNC 模式下写入请求会在成功写入磁盘后返回; ASYNC 模式下写入请求返回时可能尚未成功写入磁盘后。 | +| 类型 | String | +| 默认值 | ASYNC | +| 改后生效方式 | 重启服务生效 | + +- max_wal_nodes_num + +| 名字 | max_wal_nodes_num | +| ------------ | ----------------------------------------------------- | +| 描述 | 写前日志节点的最大数量,默认值 0 表示数量由系统控制。 | +| 类型 | int32 | +| 默认值 | 0 | +| 改后生效方式 | 重启服务生效 | + +- wal_async_mode_fsync_delay_in_ms + +| 名字 | wal_async_mode_fsync_delay_in_ms | +| ------------ | ------------------------------------------- | +| 描述 | async 模式下写前日志调用 fsync 前的等待时间 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 热加载 | + +- wal_sync_mode_fsync_delay_in_ms + +| 名字 | wal_sync_mode_fsync_delay_in_ms | +| ------------ | ------------------------------------------ | +| 描述 | sync 模式下写前日志调用 fsync 前的等待时间 | +| 类型 | int32 | +| 默认值 | 3 | +| 改后生效方式 | 热加载 | + +- wal_buffer_size_in_byte + +| 名字 | wal_buffer_size_in_byte | +| ------------ | ----------------------- | +| 描述 | 写前日志的 buffer 大小 | +| 类型 | int32 | +| 默认值 | 33554432 | +| 改后生效方式 | 重启服务生效 | + +- wal_buffer_queue_capacity + +| 名字 | wal_buffer_queue_capacity | +| ------------ | ------------------------- | +| 描述 | 写前日志阻塞队列大小上限 | +| 类型 | int32 | +| 默认值 | 500 | +| 改后生效方式 | 重启服务生效 | + +- wal_file_size_threshold_in_byte + +| 名字 | wal_file_size_threshold_in_byte | +| ------------ | ------------------------------- | +| 描述 | 写前日志文件封口阈值 | +| 类型 | int32 | +| 默认值 | 31457280 | +| 改后生效方式 | 热加载 | + +- wal_min_effective_info_ratio + +| 名字 | wal_min_effective_info_ratio | +| ------------ | ---------------------------- | +| 描述 | 写前日志最小有效信息比 | +| 类型 | double | +| 默认值 | 0.1 | +| 改后生效方式 | 热加载 | + +- wal_memtable_snapshot_threshold_in_byte + +| 名字 | wal_memtable_snapshot_threshold_in_byte | +| ------------ | ---------------------------------------- | +| 描述 | 触发写前日志中内存表快照的内存表大小阈值 | +| 类型 | int64 | +| 默认值 | 8388608 | +| 改后生效方式 | 热加载 | + +- max_wal_memtable_snapshot_num + +| 名字 | max_wal_memtable_snapshot_num | +| ------------ | ------------------------------ | +| 描述 | 写前日志中内存表的最大数量上限 | +| 类型 | int32 | +| 默认值 | 1 | +| 改后生效方式 | 热加载 | + +- delete_wal_files_period_in_ms + +| 名字 | delete_wal_files_period_in_ms | +| ------------ | ----------------------------- | +| 描述 | 删除写前日志的检查间隔 | +| 类型 | int64 | +| 默认值 | 20000 | +| 改后生效方式 | 热加载 | + +- wal_throttle_threshold_in_byte + +| 名字 | wal_throttle_threshold_in_byte | +| ------------ | ------------------------------------------------------------ | +| 描述 | 在IoTConsensus中,当WAL文件的大小达到一定阈值时,会开始对写入操作进行节流,以控制写入速度。 | +| 类型 | long | +| 默认值 | 53687091200 | +| 改后生效方式 | 热加载 | + +- iot_consensus_cache_window_time_in_ms + +| 名字 | iot_consensus_cache_window_time_in_ms | +| ------------ | ---------------------------------------- | +| 描述 | 在IoTConsensus中,写缓存的最大等待时间。 | +| 类型 | long | +| 默认值 | -1 | +| 改后生效方式 | 热加载 | + +- enable_wal_compression + +| 名字 | iot_consensus_cache_window_time_in_ms | +| ------------ | ------------------------------------- | +| 描述 | 用于控制是否启用WAL的压缩。 | +| 类型 | boolean | +| 默认值 | true | +| 改后生效方式 | 热加载 | + +### 3.22 IoT 共识协议配置 + +当Region配置了IoTConsensus共识协议之后,下述的配置项才会生效 + +- data_region_iot_max_log_entries_num_per_batch + +| 名字 | data_region_iot_max_log_entries_num_per_batch | +| ------------ | --------------------------------------------- | +| 描述 | IoTConsensus batch 的最大日志条数 | +| 类型 | int32 | +| 默认值 | 1024 | +| 改后生效方式 | 重启服务生效 | + +- data_region_iot_max_size_per_batch + +| 名字 | data_region_iot_max_size_per_batch | +| ------------ | ---------------------------------- | +| 描述 | IoTConsensus batch 的最大大小 | +| 类型 | int32 | +| 默认值 | 16777216 | +| 改后生效方式 | 重启服务生效 | + +- data_region_iot_max_pending_batches_num + +| 名字 | data_region_iot_max_pending_batches_num | +| ------------ | --------------------------------------- | +| 描述 | IoTConsensus batch 的流水线并发阈值 | +| 类型 | int32 | +| 默认值 | 5 | +| 改后生效方式 | 重启服务生效 | + +- data_region_iot_max_memory_ratio_for_queue + +| 名字 | data_region_iot_max_memory_ratio_for_queue | +| ------------ | ------------------------------------------ | +| 描述 | IoTConsensus 队列内存分配比例 | +| 类型 | double | +| 默认值 | 0.6 | +| 改后生效方式 | 重启服务生效 | + +- region_migration_speed_limit_bytes_per_second + +| 名字 | region_migration_speed_limit_bytes_per_second | +| ------------ | --------------------------------------------- | +| 描述 | 定义了在region迁移过程中,数据传输的最大速率 | +| 类型 | long | +| 默认值 | 33554432 | +| 改后生效方式 | 重启服务生效 | + +### 3.23 TsFile配置 + +- group_size_in_byte + +| 名字 | group_size_in_byte | +| ------------ | ---------------------------------------------- | +| 描述 | 每次将内存中的数据写入到磁盘时的最大写入字节数 | +| 类型 | int32 | +| 默认值 | 134217728 | +| 改后生效方式 | 热加载 | + +- page_size_in_byte + +| 名字 | page_size_in_byte | +| ------------ | ---------------------------------------------------- | +| 描述 | 内存中每个列写出时,写成的单页最大的大小,单位为字节 | +| 类型 | int32 | +| 默认值 | 65536 | +| 改后生效方式 | 热加载 | + +- max_number_of_points_in_page + +| 名字 | max_number_of_points_in_page | +| ------------ | ------------------------------------------------- | +| 描述 | 一个页中最多包含的数据点(时间戳-值的二元组)数量 | +| 类型 | int32 | +| 默认值 | 10000 | +| 改后生效方式 | 热加载 | + +- pattern_matching_threshold + +| 名字 | pattern_matching_threshold | +| ------------ | ------------------------------ | +| 描述 | 正则表达式匹配时最大的匹配次数 | +| 类型 | int32 | +| 默认值 | 1000000 | +| 改后生效方式 | 热加载 | + +- float_precision + +| 名字 | float_precision | +| ------------ | ------------------------------------------------------------ | +| 描述 | 浮点数精度,为小数点后数字的位数 | +| 类型 | int32 | +| 默认值 | 默认为 2 位。注意:32 位浮点数的十进制精度为 7 位,64 位浮点数的十进制精度为 15 位。如果设置超过机器精度将没有实际意义。 | +| 改后生效方式 | 热加载 | + +- value_encoder + +| 名字 | value_encoder | +| ------------ | ------------------------------------- | +| 描述 | value 列编码方式 | +| 类型 | 枚举 String: “TS_2DIFF”,“PLAIN”,“RLE” | +| 默认值 | PLAIN | +| 改后生效方式 | 热加载 | + +- compressor + +| 名字 | compressor | +| ------------ | ------------------------------------------------------------ | +| 描述 | 数据压缩方法; 对齐序列中时间列的压缩方法 | +| 类型 | 枚举 String : "UNCOMPRESSED", "SNAPPY", "LZ4", "ZSTD", "LZMA2" | +| 默认值 | LZ4 | +| 改后生效方式 | 热加载 | + +- encrypt_flag + +| 名字 | encrypt_flag | +| ------------ | ---------------------------- | +| 描述 | 用于开启或关闭数据加密功能。 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- encrypt_type + +| 名字 | encrypt_type | +| ------------ | ------------------------------------- | +| 描述 | 数据加密的方法。 | +| 类型 | String | +| 默认值 | org.apache.tsfile.encrypt.UNENCRYPTED | +| 改后生效方式 | 重启服务生效 | + +- encrypt_key_path + +| 名字 | encrypt_key_path | +| ------------ | ---------------------------- | +| 描述 | 数据加密使用的密钥来源路径。 | +| 类型 | String | +| 默认值 | 无 | +| 改后生效方式 | 重启服务生效 | + +### 3.24 授权配置 + +- authorizer_provider_class + +| 名字 | authorizer_provider_class | +| ------------ | ------------------------------------------------------------ | +| 描述 | 权限服务的类名 | +| 类型 | String | +| 默认值 | org.apache.iotdb.commons.auth.authorizer.LocalFileAuthorizer | +| 改后生效方式 | 重启服务生效 | + +- iotdb_server_encrypt_decrypt_provider + +| 名字 | iotdb_server_encrypt_decrypt_provider | +| ------------ | ------------------------------------------------------------ | +| 描述 | 用于用户密码加密的类 | +| 类型 | String | +| 默认值 | org.apache.iotdb.commons.security.encrypt.MessageDigestEncrypt | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- iotdb_server_encrypt_decrypt_provider_parameter + +| 名字 | iotdb_server_encrypt_decrypt_provider_parameter | +| ------------ | ----------------------------------------------- | +| 描述 | 用于初始化用户密码加密类的参数 | +| 类型 | String | +| 默认值 | 无 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- author_cache_size + +| 名字 | author_cache_size | +| ------------ | ------------------------ | +| 描述 | 用户缓存与角色缓存的大小 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- author_cache_expire_time + +| 名字 | author_cache_expire_time | +| ------------ | -------------------------------------- | +| 描述 | 用户缓存与角色缓存的有效期,单位为分钟 | +| 类型 | int32 | +| 默认值 | 30 | +| 改后生效方式 | 重启服务生效 | + +### 3.25 UDF配置 + +- udf_initial_byte_array_length_for_memory_control + +| 名字 | udf_initial_byte_array_length_for_memory_control | +| ------------ | ------------------------------------------------------------ | +| 描述 | 用于评估UDF查询中文本字段的内存使用情况。建议将此值设置为略大于所有文本的平均长度记录。 | +| 类型 | int32 | +| 默认值 | 48 | +| 改后生效方式 | 重启服务生效 | + +- udf_memory_budget_in_mb + +| 名字 | udf_memory_budget_in_mb | +| ------------ | ------------------------------------------------------------ | +| 描述 | 在一个UDF查询中使用多少内存(以 MB 为单位)。上限为已分配内存的 20% 用于读取。 | +| 类型 | Float | +| 默认值 | 30.0 | +| 改后生效方式 | 重启服务生效 | + +- udf_reader_transformer_collector_memory_proportion + +| 名字 | udf_reader_transformer_collector_memory_proportion | +| ------------ | --------------------------------------------------------- | +| 描述 | UDF内存分配比例。参数形式为a : b : c,其中a、b、c为整数。 | +| 类型 | String | +| 默认值 | 1:1:1 | +| 改后生效方式 | 重启服务生效 | + +- udf_lib_dir + +| 名字 | udf_lib_dir | +| ------------ | ---------------------------- | +| 描述 | UDF 日志及jar文件存储路径 | +| 类型 | String | +| 默认值 | ext/udf(Windows:ext\\udf) | +| 改后生效方式 | 重启服务生效 | + +### 3.26 触发器配置 + +- trigger_lib_dir + +| 名字 | trigger_lib_dir | +| ------------ | ----------------------- | +| 描述 | 触发器 JAR 包存放的目录 | +| 类型 | String | +| 默认值 | ext/trigger | +| 改后生效方式 | 重启服务生效 | + +- stateful_trigger_retry_num_when_not_found + +| 名字 | stateful_trigger_retry_num_when_not_found | +| ------------ | ---------------------------------------------- | +| 描述 | 有状态触发器触发无法找到触发器实例时的重试次数 | +| 类型 | Int32 | +| 默认值 | 3 | +| 改后生效方式 | 重启服务生效 | + +### 3.27 SELECT-INTO配置 + +- into_operation_buffer_size_in_byte + +| 名字 | into_operation_buffer_size_in_byte | +| ------------ | ------------------------------------------------------------ | +| 描述 | 执行 select-into 语句时,待写入数据占用的最大内存(单位:Byte) | +| 类型 | long | +| 默认值 | 104857600 | +| 改后生效方式 | 热加载 | + +- select_into_insert_tablet_plan_row_limit + +| 名字 | select_into_insert_tablet_plan_row_limit | +| ------------ | ------------------------------------------------------------ | +| 描述 | 执行 select-into 语句时,一个 insert-tablet-plan 中可以处理的最大行数 | +| 类型 | int32 | +| 默认值 | 10000 | +| 改后生效方式 | 热加载 | + +- into_operation_execution_thread_count + +| 名字 | into_operation_execution_thread_count | +| ------------ | ------------------------------------------ | +| 描述 | SELECT INTO 中执行写入任务的线程池的线程数 | +| 类型 | int32 | +| 默认值 | 2 | +| 改后生效方式 | 重启服务生效 | + +### 3.28 连续查询配置 +- continuous_query_submit_thread_count + +| 名字 | continuous_query_execution_thread | +| ------------ | --------------------------------- | +| 描述 | 执行连续查询任务的线程池的线程数 | +| 类型 | int32 | +| 默认值 | 2 | +| 改后生效方式 | 重启服务生效 | + +- continuous_query_min_every_interval_in_ms + +| 名字 | continuous_query_min_every_interval_in_ms | +| ------------ | ----------------------------------------- | +| 描述 | 连续查询执行时间间隔的最小值 | +| 类型 | long (duration) | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +### 3.29 PIPE配置 + +- pipe_lib_dir + +| 名字 | pipe_lib_dir | +| ------------ | -------------------------- | +| 描述 | 自定义 Pipe 插件的存放目录 | +| 类型 | string | +| 默认值 | ext/pipe | +| 改后生效方式 | 暂不支持修改 | + +- pipe_subtask_executor_max_thread_num + +| 名字 | pipe_subtask_executor_max_thread_num | +| ------------ | ------------------------------------------------------------ | +| 描述 | pipe 子任务 processor、sink 中各自可以使用的最大线程数。实际值将是 min(pipe_subtask_executor_max_thread_num, max(1, CPU核心数 / 2))。 | +| 类型 | int | +| 默认值 | 5 | +| 改后生效方式 | 重启服务生效 | + +- pipe_sink_timeout_ms + +| 名字 | pipe_sink_timeout_ms | +| ------------ | --------------------------------------------- | +| 描述 | thrift 客户端的连接超时时间(以毫秒为单位)。 | +| 类型 | int | +| 默认值 | 900000 | +| 改后生效方式 | 重启服务生效 | + +- pipe_sink_selector_number + +| 名字 | pipe_sink_selector_number | +| ------------ | ------------------------------------------------------------ | +| 描述 | 在 iotdb-thrift-async-sink 插件中可以使用的最大执行结果处理线程数量。 建议将此值设置为小于或等于 pipe_sink_max_client_number。 | +| 类型 | int | +| 默认值 | 4 | +| 改后生效方式 | 重启服务生效 | + +- pipe_sink_max_client_number + +| 名字 | pipe_sink_max_client_number | +| ------------ | ----------------------------------------------------------- | +| 描述 | 在 iotdb-thrift-async-sink 插件中可以使用的最大客户端数量。 | +| 类型 | int | +| 默认值 | 16 | +| 改后生效方式 | 重启服务生效 | + +- pipe_air_gap_receiver_enabled + +| 名字 | pipe_air_gap_receiver_enabled | +| ------------ | ------------------------------------------------------------ | +| 描述 | 是否启用通过网闸接收 pipe 数据。接收器只能在 tcp 模式下返回 0 或 1,以指示数据是否成功接收。 \| | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- pipe_air_gap_receiver_port + +| 名字 | pipe_air_gap_receiver_port | +| ------------ | ------------------------------------ | +| 描述 | 服务器通过网闸接收 pipe 数据的端口。 | +| 类型 | int | +| 默认值 | 9780 | +| 改后生效方式 | 重启服务生效 | + +- pipe_all_sinks_rate_limit_bytes_per_second + +| 名字 | pipe_all_sinks_rate_limit_bytes_per_second | +| ------------ | ------------------------------------------------------------ | +| 描述 | 所有 pipe sink 每秒可以传输的总字节数。当给定的值小于或等于 0 时,表示没有限制。默认值是 -1,表示没有限制。 | +| 类型 | double | +| 默认值 | -1 | +| 改后生效方式 | 热加载 | + +### 3.30 Ratis共识协议配置 + +当Region配置了RatisConsensus共识协议之后,下述的配置项才会生效 + +- config_node_ratis_log_appender_buffer_size_max + +| 名字 | config_node_ratis_log_appender_buffer_size_max | +| ------------ | ---------------------------------------------- | +| 描述 | confignode 一次同步日志RPC最大的传输字节限制 | +| 类型 | int32 | +| 默认值 | 16777216 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_log_appender_buffer_size_max + +| 名字 | schema_region_ratis_log_appender_buffer_size_max | +| ------------ | ------------------------------------------------ | +| 描述 | schema region 一次同步日志RPC最大的传输字节限制 | +| 类型 | int32 | +| 默认值 | 16777216 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_log_appender_buffer_size_max + +| 名字 | data_region_ratis_log_appender_buffer_size_max | +| ------------ | ---------------------------------------------- | +| 描述 | data region 一次同步日志RPC最大的传输字节限制 | +| 类型 | int32 | +| 默认值 | 16777216 | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_snapshot_trigger_threshold + +| 名字 | config_node_ratis_snapshot_trigger_threshold | +| ------------ | -------------------------------------------- | +| 描述 | confignode 触发snapshot需要的日志条数 | +| 类型 | int32 | +| 默认值 | 400,000 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_snapshot_trigger_threshold + +| 名字 | schema_region_ratis_snapshot_trigger_threshold | +| ------------ | ---------------------------------------------- | +| 描述 | schema region 触发snapshot需要的日志条数 | +| 类型 | int32 | +| 默认值 | 400,000 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_snapshot_trigger_threshold + +| 名字 | data_region_ratis_snapshot_trigger_threshold | +| ------------ | -------------------------------------------- | +| 描述 | data region 触发snapshot需要的日志条数 | +| 类型 | int32 | +| 默认值 | 400,000 | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_log_unsafe_flush_enable + +| 名字 | config_node_ratis_log_unsafe_flush_enable | +| ------------ | ----------------------------------------- | +| 描述 | confignode 是否允许Raft日志异步刷盘 | +| 类型 | boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_log_unsafe_flush_enable + +| 名字 | schema_region_ratis_log_unsafe_flush_enable | +| ------------ | ------------------------------------------- | +| 描述 | schema region 是否允许Raft日志异步刷盘 | +| 类型 | boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_log_unsafe_flush_enable + +| 名字 | data_region_ratis_log_unsafe_flush_enable | +| ------------ | ----------------------------------------- | +| 描述 | data region 是否允许Raft日志异步刷盘 | +| 类型 | boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_log_segment_size_max_in_byte + +| 名字 | config_node_ratis_log_segment_size_max_in_byte | +| ------------ | ---------------------------------------------- | +| 描述 | confignode 一个RaftLog日志段文件的大小 | +| 类型 | int32 | +| 默认值 | 25165824 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_log_segment_size_max_in_byte + +| 名字 | schema_region_ratis_log_segment_size_max_in_byte | +| ------------ | ------------------------------------------------ | +| 描述 | schema region 一个RaftLog日志段文件的大小 | +| 类型 | int32 | +| 默认值 | 25165824 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_log_segment_size_max_in_byte + +| 名字 | data_region_ratis_log_segment_size_max_in_byte | +| ------------ | ---------------------------------------------- | +| 描述 | data region 一个RaftLog日志段文件的大小 | +| 类型 | int32 | +| 默认值 | 25165824 | +| 改后生效方式 | 重启服务生效 | + +- config_node_simple_consensus_log_segment_size_max_in_byte + +| 名字 | data_region_ratis_log_segment_size_max_in_byte | +| ------------ | ---------------------------------------------- | +| 描述 | Confignode 简单共识协议一个Log日志段文件的大小 | +| 类型 | int32 | +| 默认值 | 25165824 | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_grpc_flow_control_window + +| 名字 | config_node_ratis_grpc_flow_control_window | +| ------------ | ------------------------------------------ | +| 描述 | confignode grpc 流式拥塞窗口大小 | +| 类型 | int32 | +| 默认值 | 4194304 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_grpc_flow_control_window + +| 名字 | schema_region_ratis_grpc_flow_control_window | +| ------------ | -------------------------------------------- | +| 描述 | schema region grpc 流式拥塞窗口大小 | +| 类型 | int32 | +| 默认值 | 4194304 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_grpc_flow_control_window + +| 名字 | data_region_ratis_grpc_flow_control_window | +| ------------ | ------------------------------------------ | +| 描述 | data region grpc 流式拥塞窗口大小 | +| 类型 | int32 | +| 默认值 | 4194304 | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_grpc_leader_outstanding_appends_max + +| 名字 | config_node_ratis_grpc_leader_outstanding_appends_max | +| ------------ | ----------------------------------------------------- | +| 描述 | config node grpc 流水线并发阈值 | +| 类型 | int32 | +| 默认值 | 128 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_grpc_leader_outstanding_appends_max + +| 名字 | schema_region_ratis_grpc_leader_outstanding_appends_max | +| ------------ | ------------------------------------------------------- | +| 描述 | schema region grpc 流水线并发阈值 | +| 类型 | int32 | +| 默认值 | 128 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_grpc_leader_outstanding_appends_max + +| 名字 | data_region_ratis_grpc_leader_outstanding_appends_max | +| ------------ | ----------------------------------------------------- | +| 描述 | data region grpc 流水线并发阈值 | +| 类型 | int32 | +| 默认值 | 128 | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_log_force_sync_num + +| 名字 | config_node_ratis_log_force_sync_num | +| ------------ | ------------------------------------ | +| 描述 | config node fsync 阈值 | +| 类型 | int32 | +| 默认值 | 128 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_log_force_sync_num + +| 名字 | schema_region_ratis_log_force_sync_num | +| ------------ | -------------------------------------- | +| 描述 | schema region fsync 阈值 | +| 类型 | int32 | +| 默认值 | 128 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_log_force_sync_num + +| 名字 | data_region_ratis_log_force_sync_num | +| ------------ | ------------------------------------ | +| 描述 | data region fsync 阈值 | +| 类型 | int32 | +| 默认值 | 128 | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_rpc_leader_election_timeout_min_ms + +| 名字 | config_node_ratis_rpc_leader_election_timeout_min_ms | +| ------------ | ---------------------------------------------------- | +| 描述 | confignode leader 选举超时最小值 | +| 类型 | int32 | +| 默认值 | 2000ms | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_rpc_leader_election_timeout_min_ms + +| 名字 | schema_region_ratis_rpc_leader_election_timeout_min_ms | +| ------------ | ------------------------------------------------------ | +| 描述 | schema region leader 选举超时最小值 | +| 类型 | int32 | +| 默认值 | 2000ms | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_rpc_leader_election_timeout_min_ms + +| 名字 | data_region_ratis_rpc_leader_election_timeout_min_ms | +| ------------ | ---------------------------------------------------- | +| 描述 | data region leader 选举超时最小值 | +| 类型 | int32 | +| 默认值 | 2000ms | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_rpc_leader_election_timeout_max_ms + +| 名字 | config_node_ratis_rpc_leader_election_timeout_max_ms | +| ------------ | ---------------------------------------------------- | +| 描述 | confignode leader 选举超时最大值 | +| 类型 | int32 | +| 默认值 | 4000ms | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_rpc_leader_election_timeout_max_ms + +| 名字 | schema_region_ratis_rpc_leader_election_timeout_max_ms | +| ------------ | ------------------------------------------------------ | +| 描述 | schema region leader 选举超时最大值 | +| 类型 | int32 | +| 默认值 | 4000ms | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_rpc_leader_election_timeout_max_ms + +| 名字 | data_region_ratis_rpc_leader_election_timeout_max_ms | +| ------------ | ---------------------------------------------------- | +| 描述 | data region leader 选举超时最大值 | +| 类型 | int32 | +| 默认值 | 4000ms | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_request_timeout_ms + +| 名字 | config_node_ratis_request_timeout_ms | +| ------------ | ------------------------------------ | +| 描述 | confignode Raft 客户端重试超时 | +| 类型 | int32 | +| 默认值 | 10000 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_request_timeout_ms + +| 名字 | schema_region_ratis_request_timeout_ms | +| ------------ | -------------------------------------- | +| 描述 | schema region Raft 客户端重试超时 | +| 类型 | int32 | +| 默认值 | 10000 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_request_timeout_ms + +| 名字 | data_region_ratis_request_timeout_ms | +| ------------ | ------------------------------------ | +| 描述 | data region Raft 客户端重试超时 | +| 类型 | int32 | +| 默认值 | 10000 | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_max_retry_attempts + +| 名字 | config_node_ratis_max_retry_attempts | +| ------------ | ------------------------------------ | +| 描述 | confignode Raft客户端最大重试次数 | +| 类型 | int32 | +| 默认值 | 10 | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_initial_sleep_time_ms + +| 名字 | config_node_ratis_initial_sleep_time_ms | +| ------------ | --------------------------------------- | +| 描述 | confignode Raft客户端初始重试睡眠时长 | +| 类型 | int32 | +| 默认值 | 100ms | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_max_sleep_time_ms + +| 名字 | config_node_ratis_max_sleep_time_ms | +| ------------ | ------------------------------------- | +| 描述 | confignode Raft客户端最大重试睡眠时长 | +| 类型 | int32 | +| 默认值 | 10000 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_max_retry_attempts + +| 名字 | schema_region_ratis_max_retry_attempts | +| ------------ | -------------------------------------- | +| 描述 | schema region Raft客户端最大重试次数 | +| 类型 | int32 | +| 默认值 | 10 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_initial_sleep_time_ms + +| 名字 | schema_region_ratis_initial_sleep_time_ms | +| ------------ | ----------------------------------------- | +| 描述 | schema region Raft客户端初始重试睡眠时长 | +| 类型 | int32 | +| 默认值 | 100ms | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_max_sleep_time_ms + +| 名字 | schema_region_ratis_max_sleep_time_ms | +| ------------ | ---------------------------------------- | +| 描述 | schema region Raft客户端最大重试睡眠时长 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_max_retry_attempts + +| 名字 | data_region_ratis_max_retry_attempts | +| ------------ | ------------------------------------ | +| 描述 | data region Raft客户端最大重试次数 | +| 类型 | int32 | +| 默认值 | 10 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_initial_sleep_time_ms + +| 名字 | data_region_ratis_initial_sleep_time_ms | +| ------------ | --------------------------------------- | +| 描述 | data region Raft客户端初始重试睡眠时长 | +| 类型 | int32 | +| 默认值 | 100ms | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_max_sleep_time_ms + +| 名字 | data_region_ratis_max_sleep_time_ms | +| ------------ | -------------------------------------- | +| 描述 | data region Raft客户端最大重试睡眠时长 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- ratis_first_election_timeout_min_ms + +| 名字 | ratis_first_election_timeout_min_ms | +| ------------ | ----------------------------------- | +| 描述 | Ratis协议首次选举最小超时时间 | +| 类型 | int64 | +| 默认值 | 50 (ms) | +| 改后生效方式 | 重启服务生效 | + +- ratis_first_election_timeout_max_ms + +| 名字 | ratis_first_election_timeout_max_ms | +| ------------ | ----------------------------------- | +| 描述 | Ratis协议首次选举最大超时时间 | +| 类型 | int64 | +| 默认值 | 150 (ms) | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_preserve_logs_num_when_purge + +| 名字 | config_node_ratis_preserve_logs_num_when_purge | +| ------------ | ---------------------------------------------- | +| 描述 | confignode snapshot后保持一定数量日志不删除 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_preserve_logs_num_when_purge + +| 名字 | schema_region_ratis_preserve_logs_num_when_purge | +| ------------ | ------------------------------------------------ | +| 描述 | schema region snapshot后保持一定数量日志不删除 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_preserve_logs_num_when_purge + +| 名字 | data_region_ratis_preserve_logs_num_when_purge | +| ------------ | ---------------------------------------------- | +| 描述 | data region snapshot后保持一定数量日志不删除 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_log_max_size + +| 名字 | config_node_ratis_log_max_size | +| ------------ | ----------------------------------- | +| 描述 | config node磁盘Raft Log最大占用空间 | +| 类型 | int64 | +| 默认值 | 2147483648 (2GB) | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_log_max_size + +| 名字 | schema_region_ratis_log_max_size | +| ------------ | -------------------------------------- | +| 描述 | schema region 磁盘Raft Log最大占用空间 | +| 类型 | int64 | +| 默认值 | 2147483648 (2GB) | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_log_max_size + +| 名字 | data_region_ratis_log_max_size | +| ------------ | ------------------------------------ | +| 描述 | data region 磁盘Raft Log最大占用空间 | +| 类型 | int64 | +| 默认值 | 21474836480 (20GB) | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_periodic_snapshot_interval + +| 名字 | config_node_ratis_periodic_snapshot_interval | +| ------------ | -------------------------------------------- | +| 描述 | config node定期snapshot的间隔时间 | +| 类型 | int64 | +| 默认值 | 86400 (秒) | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_periodic_snapshot_interval + +| 名字 | schema_region_ratis_preserve_logs_num_when_purge | +| ------------ | ------------------------------------------------ | +| 描述 | schema region定期snapshot的间隔时间 | +| 类型 | int64 | +| 默认值 | 86400 (秒) | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_periodic_snapshot_interval + +| 名字 | data_region_ratis_preserve_logs_num_when_purge | +| ------------ | ---------------------------------------------- | +| 描述 | data region定期snapshot的间隔时间 | +| 类型 | int64 | +| 默认值 | 86400 (秒) | +| 改后生效方式 | 重启服务生效 | + +### 3.31 IoTConsensusV2配置 + +- iot_consensus_v2_pipeline_size + +| 名字 | iot_consensus_v2_pipeline_size | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTConsensus V2中连接器(connector)和接收器(receiver)的默认事件缓冲区大小。 | +| 类型 | int | +| 默认值 | 5 | +| 改后生效方式 | 重启服务生效 | + +- iot_consensus_v2_mode + +| 名字 | iot_consensus_v2_pipeline_size | +| ------------ | ----------------------------------- | +| 描述 | IoTConsensus V2使用的共识协议模式。 | +| 类型 | String | +| 默认值 | batch | +| 改后生效方式 | 重启服务生效 | + +### 3.32 Procedure 配置 + +- procedure_core_worker_thread_count + +| 名字 | procedure_core_worker_thread_count | +| ------------ | ---------------------------------- | +| 描述 | 工作线程数量 | +| 类型 | int32 | +| 默认值 | 4 | +| 改后生效方式 | 重启服务生效 | + +- procedure_completed_clean_interval + +| 名字 | procedure_completed_clean_interval | +| ------------ | ---------------------------------- | +| 描述 | 清理已完成的 procedure 时间间隔 | +| 类型 | int32 | +| 默认值 | 30(s) | +| 改后生效方式 | 重启服务生效 | + +- procedure_completed_evict_ttl + +| 名字 | procedure_completed_evict_ttl | +| ------------ | --------------------------------- | +| 描述 | 已完成的 procedure 的数据保留时间 | +| 类型 | int32 | +| 默认值 | 60(s) | +| 改后生效方式 | 重启服务生效 | + +### 3.33 MQTT代理配置 + +- enable_mqtt_service + +| 名字 | enable_mqtt_service。 | +| ------------ | --------------------- | +| 描述 | 是否开启MQTT服务 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 热加载 | + +- mqtt_host + +| 名字 | mqtt_host | +| ------------ | -------------------- | +| 描述 | MQTT服务绑定的host。 | +| 类型 | String | +| 默认值 | 127.0.0.1 | +| 改后生效方式 | 热加载 | + +- mqtt_port + +| 名字 | mqtt_port | +| ------------ | -------------------- | +| 描述 | MQTT服务绑定的port。 | +| 类型 | int32 | +| 默认值 | 1883 | +| 改后生效方式 | 热加载 | + +- mqtt_handler_pool_size + +| 名字 | mqtt_handler_pool_size | +| ------------ | ---------------------------------- | +| 描述 | 用于处理MQTT消息的处理程序池大小。 | +| 类型 | int32 | +| 默认值 | 1 | +| 改后生效方式 | 热加载 | + +- mqtt_payload_formatter + +| 名字 | mqtt_payload_formatter | +| ------------ | ---------------------------- | +| 描述 | MQTT消息有效负载格式化程序。 | +| 类型 | String | +| 默认值 | json | +| 改后生效方式 | 热加载 | + +- mqtt_max_message_size + +| 名字 | mqtt_max_message_size | +| ------------ | ------------------------------------ | +| 描述 | MQTT消息的最大长度(以字节为单位)。 | +| 类型 | int32 | +| 默认值 | 1048576 | +| 改后生效方式 | 热加载 | + +### 3.34 审计日志配置 + +- enable_audit_log + +| 名字 | enable_audit_log | +| ------------ | ------------------------------ | +| 描述 | 用于控制是否启用审计日志功能。 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- audit_log_storage + +| 名字 | audit_log_storage | +| ------------ | -------------------------- | +| 描述 | 定义了审计日志的输出位置。 | +| 类型 | String | +| 默认值 | IOTDB,LOGGER | +| 改后生效方式 | 重启服务生效 | + +- audit_log_operation + +| 名字 | audit_log_operation | +| ------------ | -------------------------------------- | +| 描述 | 定义了哪些类型的操作需要记录审计日志。 | +| 类型 | String | +| 默认值 | DML,DDL,QUERY | +| 改后生效方式 | 重启服务生效 | + +- enable_audit_log_for_native_insert_api + +| 名字 | enable_audit_log_for_native_insert_api | +| ------------ | -------------------------------------- | +| 描述 | 用于控制本地写入API是否记录审计日志。 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 重启服务生效 | + +### 3.35 白名单配置 +- enable_white_list + +| 名字 | enable_white_list | +| ------------ | ----------------- | +| 描述 | 是否启用白名单。 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 热加载 | + +### 3.36 IoTDB-AI 配置 + +- model_inference_execution_thread_count + +| 名字 | model_inference_execution_thread_count | +| ------------ | -------------------------------------- | +| 描述 | 用于模型推理操作的线程数。 | +| 类型 | int | +| 默认值 | 5 | +| 改后生效方式 | 重启服务生效 | + +### 3.37 TsFile 主动监听&加载功能配置 + +- load_clean_up_task_execution_delay_time_seconds + +| 名字 | load_clean_up_task_execution_delay_time_seconds | +| ------------ | ------------------------------------------------------------ | +| 描述 | 在加载TsFile失败后,系统将等待多长时间才会执行清理任务来清除这些未成功加载的TsFile。 | +| 类型 | int | +| 默认值 | 1800 | +| 改后生效方式 | 热加载 | + +- load_write_throughput_bytes_per_second + +| 名字 | load_write_throughput_bytes_per_second | +| ------------ | -------------------------------------- | +| 描述 | 加载TsFile时磁盘写入的最大字节数每秒。 | +| 类型 | int | +| 默认值 | -1 | +| 改后生效方式 | 热加载 | + +- load_active_listening_enable + +| 名字 | load_active_listening_enable | +| ------------ | ------------------------------------------------------------ | +| 描述 | 是否开启 DataNode 主动监听并且加载 tsfile 的功能(默认开启)。 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 热加载 | + +- load_active_listening_dirs + +| 名字 | load_active_listening_dirs | +| ------------ | ------------------------------------------------------------ | +| 描述 | 需要监听的目录(自动包括目录中的子目录),如有多个使用 “,“ 隔开默认的目录为 ext/load/pending(支持热装载)。 | +| 类型 | String | +| 默认值 | ext/load/pending | +| 改后生效方式 | 热加载 | + +- load_active_listening_fail_dir + +| 名字 | load_active_listening_fail_dir | +| ------------ | ---------------------------------------------------------- | +| 描述 | 执行加载 tsfile 文件失败后将文件转存的目录,只能配置一个。 | +| 类型 | String | +| 默认值 | ext/load/failed | +| 改后生效方式 | 热加载 | + +- load_active_listening_max_thread_num + +| 名字 | load_active_listening_max_thread_num | +| ------------ | ------------------------------------------------------------ | +| 描述 | 同时执行加载 tsfile 任务的最大线程数,参数被注释掉时的默值为 max(1, CPU 核心数 / 2),当用户设置的值不在这个区间[1, CPU核心数 /2]内时,会设置为默认值 (1, CPU 核心数 / 2)。 | +| 类型 | Long | +| 默认值 | 0 | +| 改后生效方式 | 重启服务生效 | + +- load_active_listening_check_interval_seconds + +| 名字 | load_active_listening_check_interval_seconds | +| ------------ | ------------------------------------------------------------ | +| 描述 | 主动监听轮询间隔,单位秒。主动监听 tsfile 的功能是通过轮询检查文件夹实现的。该配置指定了两次检查 load_active_listening_dirs 的时间间隔,每次检查完成 load_active_listening_check_interval_seconds 秒后,会执行下一次检查。当用户设置的轮询间隔小于 1 时,会被设置为默认值 5 秒。 | +| 类型 | Long | +| 默认值 | 5 | +| 改后生效方式 | 重启服务生效 | + + +* last_cache_operation_on_load + +|名字| last_cache_operation_on_load | +|:---:|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +|描述| 当成功加载一个 TsFile 时,对 LastCache 执行的操作。`UPDATE`:使用 TsFile 中的数据更新 LastCache;`UPDATE_NO_BLOB`:与 UPDATE 类似,但会使 blob 序列的 LastCache 失效;`CLEAN_DEVICE`:使 TsFile 中包含的设备的 LastCache 失效;`CLEAN_ALL`:清空整个 LastCache。 | +|类型| String | +|默认值| UPDATE_NO_BLOB | +|改后生效方式| 重启后生效 | + +* cache_last_values_for_load + +|名字| cache_last_values_for_load | +|:---:|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +|描述| 在加载 TsFile 之前是否缓存最新值(last values)。仅在 `last_cache_operation_on_load=UPDATE_NO_BLOB` 或 `last_cache_operation_on_load=UPDATE` 时生效。当设置为 true 时,即使 `last_cache_operation_on_load=UPDATE`,也会忽略 blob 序列。启用此选项会在加载 TsFile 期间增加内存占用。 | +|类型| Boolean | +|默认值| true | +|改后生效方式| 重启后生效 | + +* cache_last_values_memory_budget_in_byte + +|名字| cache_last_values_memory_budget_in_byte | +|:---:|:----------------------------------------------------------------------------------------------------| +|描述| 当 `cache_last_values_for_load=true` 时,用于缓存最新值的最大内存大小(以字节为单位)。如果超过该值,缓存的值将被丢弃,并以流式方式直接从 TsFile 中读取最新值。 | +|类型| int32 | +|默认值| 4194304 | +|改后生效方式| 重启后生效 | + + +### 3.38 分发重试配置 + +- enable_retry_for_unknown_error + +| 名字 | enable_retry_for_unknown_error | +| ------------ | ------------------------------------------------------------ | +| 描述 | 在遇到未知错误时,写请求远程分发的最大重试时间,单位是毫秒。 | +| 类型 | Long | +| 默认值 | 60000 | +| 改后生效方式 | 热加载 | + +- enable_retry_for_unknown_error + +| 名字 | enable_retry_for_unknown_error | +| ------------ | -------------------------------- | +| 描述 | 用于控制是否对未知错误进行重试。 | +| 类型 | boolean | +| 默认值 | false | +| 改后生效方式 | 热加载 | \ No newline at end of file diff --git a/src/zh/UserGuide/latest-Table/Reference/System-Config-Manual_apache.md b/src/zh/UserGuide/latest-Table/Reference/System-Config-Manual_apache.md index 8e1cf7175..953763cd7 100644 --- a/src/zh/UserGuide/latest-Table/Reference/System-Config-Manual_apache.md +++ b/src/zh/UserGuide/latest-Table/Reference/System-Config-Manual_apache.md @@ -1034,7 +1034,7 @@ IoTDB 配置文件位于 IoTDB 安装目录:`conf`文件夹下。 | 名字 | datanode_memory_proportion | | ------------ | ---------------------------------------------------- | -| 描述 | 存储引擎、查询引擎、元数据、共识、流处理引擎和空闲内存比例 | +| 描述 | 存储引擎、查询引擎、元数据、共识、流处理引擎和空闲内存的分配比例。自 V2.0.11 起,空闲内存的一半将作为 RPC 层 AutoResizingBuffer 的总内存预算,用于限制 framed transport 读写及压缩、解压缓冲区的总体内存占用。 | | 类型 | Ratio | | 默认值 | 3:3:1:1:1:1 | | 改后生效方式 | 重启服务生效 | diff --git a/src/zh/UserGuide/latest/Background-knowledge/Data-Type.md b/src/zh/UserGuide/latest/Background-knowledge/Data-Type.md index ae763fce8..49ba9bd32 100644 --- a/src/zh/UserGuide/latest/Background-knowledge/Data-Type.md +++ b/src/zh/UserGuide/latest/Background-knowledge/Data-Type.md @@ -47,7 +47,7 @@ IoTDB 支持以下十种数据类型: CREATE TIMESERIES root.vehicle.d0.s0 WITH DATATYPE=FLOAT, ENCODING=RLE, 'MAX_POINT_NUMBER'='2'; ``` -若不指定,系统会按照配置文件 `iotdb-system.properties` 中的 [float_precision](../Reference/Common-Config-Manual.md) 项配置(默认为 2 位)。 +若不指定,系统会按照配置文件 `iotdb-system.properties` 中的 `float_precision` 项配置(默认为 2 位)。 ### 1.2 数据类型兼容性 diff --git a/src/zh/UserGuide/latest/Deployment-and-Maintenance/Database-Resources_apache.md b/src/zh/UserGuide/latest/Deployment-and-Maintenance/Database-Resources_apache.md index 9eae6bfb5..45c833716 100644 --- a/src/zh/UserGuide/latest/Deployment-and-Maintenance/Database-Resources_apache.md +++ b/src/zh/UserGuide/latest/Deployment-and-Maintenance/Database-Resources_apache.md @@ -145,7 +145,7 @@ -> 提供灵活的内存配置选项,用户可在datanode-env文件中进行调整,详细信息和配置指南请参见 [datanode-env](../Reference/DataNode-Config-Manual.md#_2-环境配置项-datanode-env-sh-bat) +> 提供灵活的内存配置选项,用户可在datanode-env文件中进行调整,详细信息和配置指南请参见 [datanode-env](../Reference/System-Config-Manual_apache.md#_2-2-datanode-env-sh-bat) ## 3. 存储(磁盘) ### 3.1 存储空间 diff --git a/src/zh/UserGuide/latest/Reference/System-Config-Manual_apache.md b/src/zh/UserGuide/latest/Reference/System-Config-Manual_apache.md new file mode 100644 index 000000000..7ebe90fa5 --- /dev/null +++ b/src/zh/UserGuide/latest/Reference/System-Config-Manual_apache.md @@ -0,0 +1,3336 @@ + + +# 配置参数 + +IoTDB 配置文件位于 IoTDB 安装目录:`conf`文件夹下。 + +- `confignode-env.sh/bat`:环境配置项的配置文件,可以配置 ConfigNode 的内存大小。 +- `datanode-env.sh/bat`:环境配置项的配置文件,可以配置 DataNode 的内存大小。 +- `iotdb-system.properties`:IoTDB 的配置文件。 +- `iotdb-system.properties.template`:IoTDB 的配置文件模版。 + +## 1. 修改配置: + +在 `iotdb-system.properties` 文件中已存在的参数可以直接进行修改。对于那些在 `iotdb-system.properties` 中未列出的参数,可以从 `iotdb-system.properties.template` 配置文件模板中找到相应的参数,然后将其复制到 `iotdb-system.properties` 文件中进行修改。 + +### 1.1 改后生效方式 + +不同的配置参数有不同的生效方式,分为以下三种: + +- 仅允许在第一次启动服务前修改: 在第一次启动 ConfigNode/DataNode 后即禁止修改,修改会导致 ConfigNode/DataNode 无法启动。 +- 重启服务生效: ConfigNode/DataNode 启动后仍可修改,但需要重启 ConfigNode/DataNode 后才生效。 +- 热加载: 可在 ConfigNode/DataNode 运行时修改,修改后通过 Session 或 Cli 发送 `load configuration` 或 `set configuration key1 = 'value1'` 命令(SQL)至 IoTDB 使配置生效。 + +## 2. 环境配置项 + +### 2.1 confignode-env.sh/bat + +环境配置项主要用于对 ConfigNode 运行的 Java 环境相关参数进行配置,如 JVM 相关配置。ConfigNode 启动时,此部分配置会被传给 JVM,详细配置项说明如下: + +- MEMORY_SIZE + +| 名字 | MEMORY_SIZE | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB ConfigNode 启动时分配的内存大小 | +| 类型 | String | +| 默认值 | 取决于操作系统和机器配置。默认为机器内存的十分之三,最多会被设置为 16G。 | +| 改后生效方式 | 重启服务生效 | + +- ON_HEAP_MEMORY + +| 名字 | ON_HEAP_MEMORY | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB ConfigNode 能使用的堆内内存大小, 曾用名: MAX_HEAP_SIZE | +| 类型 | String | +| 默认值 | 取决于MEMORY_SIZE的配置。 | +| 改后生效方式 | 重启服务生效 | + +- OFF_HEAP_MEMORY + +| 名字 | OFF_HEAP_MEMORY | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB ConfigNode 能使用的堆外内存大小, 曾用名: MAX_DIRECT_MEMORY_SIZE | +| 类型 | String | +| 默认值 | 取决于MEMORY_SIZE的配置。 | +| 改后生效方式 | 重启服务生效 | + +### 2.2 datanode-env.sh/bat + +环境配置项主要用于对 DataNode 运行的 Java 环境相关参数进行配置,如 JVM 相关配置。DataNode/Standalone 启动时,此部分配置会被传给 JVM,详细配置项说明如下: + +- MEMORY_SIZE + +| 名字 | MEMORY_SIZE | +| ------------ | ---------------------------------------------------- | +| 描述 | IoTDB DataNode 启动时分配的内存大小 | +| 类型 | String | +| 默认值 | 取决于操作系统和机器配置。默认为机器内存的二分之一。 | +| 改后生效方式 | 重启服务生效 | + +- ON_HEAP_MEMORY + +| 名字 | ON_HEAP_MEMORY | +| ------------ | ---------------------------------------------------------- | +| 描述 | IoTDB DataNode 能使用的堆内内存大小, 曾用名: MAX_HEAP_SIZE | +| 类型 | String | +| 默认值 | 取决于MEMORY_SIZE的配置。 | +| 改后生效方式 | 重启服务生效 | + +- OFF_HEAP_MEMORY + +| 名字 | OFF_HEAP_MEMORY | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB DataNode 能使用的堆外内存大小, 曾用名: MAX_DIRECT_MEMORY_SIZE | +| 类型 | String | +| 默认值 | 取决于MEMORY_SIZE的配置 | +| 改后生效方式 | 重启服务生效 | + + +## 3. 系统配置项(iotdb-system.properties.template) + +### 3.1 集群管理 + +- cluster_name + +| 名字 | cluster_name | +| -------- |--------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| 描述 | 集群名称 | +| 类型 | String | +| 默认值 | default_cluster | +| 修改方式 | CLI 中执行语句 `set configuration cluster_name = 'xxx'` (xxx为希望修改成的集群名称) | +| 注意 | 此修改通过网络分发至每个节点。在网络波动或者有节点宕机的情况下,不保证能够在全部节点修改成功。未修改成功的节点重启时无法加入集群,此时需要手动修改该节点的配置文件中的cluster_name项,再重启。正常情况下,不建议通过手动修改配置文件的方式修改集群名称,不建议通过`load configuration`的方式热加载。 | + +### 3.2 SeedConfigNode 配置 + +- cn_seed_config_node + +| 名字 | cn_seed_config_node | +| ------------ | ------------------------------------------------------------ | +| 描述 | 目标 ConfigNode 地址,ConfigNode 通过此地址加入集群,推荐使用 SeedConfigNode。V1.2.2 及以前曾用名是 cn_target_config_node_list | +| 类型 | String | +| 默认值 | 127.0.0.1:10710 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- dn_seed_config_node + +| 名字 | dn_seed_config_node | +| ------------ | ------------------------------------------------------------ | +| 描述 | ConfigNode 地址,DataNode 启动时通过此地址加入集群,推荐使用 SeedConfigNode。V1.2.2 及以前曾用名是 dn_target_config_node_list | +| 类型 | String | +| 默认值 | 127.0.0.1:10710 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +### 3.3 Node RPC 配置 + +- cn_internal_address + +| 名字 | cn_internal_address | +| ------------ | ---------------------------- | +| 描述 | ConfigNode 集群内部地址 | +| 类型 | String | +| 默认值 | 127.0.0.1 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- cn_internal_port + +| 名字 | cn_internal_port | +| ------------ | ---------------------------- | +| 描述 | ConfigNode 集群服务监听端口 | +| 类型 | Short Int : [0,65535] | +| 默认值 | 10710 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- cn_consensus_port + +| 名字 | cn_consensus_port | +| ------------ | ----------------------------- | +| 描述 | ConfigNode 的共识协议通信端口 | +| 类型 | Short Int : [0,65535] | +| 默认值 | 10720 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- dn_rpc_address + +| 名字 | dn_rpc_address | +| ------------ |----------------| +| 描述 | 客户端 RPC 服务监听地址 | +| 类型 | String | +| 默认值 | 127.0.0.1 | +| 改后生效方式 | 重启服务生效 | + +- dn_rpc_port + +| 名字 | dn_rpc_port | +| ------------ | ----------------------- | +| 描述 | Client RPC 服务监听端口 | +| 类型 | Short Int : [0,65535] | +| 默认值 | 6667 | +| 改后生效方式 | 重启服务生效 | + +- dn_internal_address + +| 名字 | dn_internal_address | +| ------------ | ---------------------------- | +| 描述 | DataNode 内网通信地址 | +| 类型 | string | +| 默认值 | 127.0.0.1 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- dn_internal_port + +| 名字 | dn_internal_port | +| ------------ | ---------------------------- | +| 描述 | DataNode 内网通信端口 | +| 类型 | int | +| 默认值 | 10730 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- dn_mpp_data_exchange_port + +| 名字 | dn_mpp_data_exchange_port | +| ------------ | ---------------------------- | +| 描述 | MPP 数据交换端口 | +| 类型 | int | +| 默认值 | 10740 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- dn_schema_region_consensus_port + +| 名字 | dn_schema_region_consensus_port | +| ------------ | ------------------------------------- | +| 描述 | DataNode 元数据副本的共识协议通信端口 | +| 类型 | int | +| 默认值 | 10750 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- dn_data_region_consensus_port + +| 名字 | dn_data_region_consensus_port | +| ------------ | ----------------------------------- | +| 描述 | DataNode 数据副本的共识协议通信端口 | +| 类型 | int | +| 默认值 | 10760 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- dn_join_cluster_retry_interval_ms + +| 名字 | dn_join_cluster_retry_interval_ms | +| ------------ | --------------------------------- | +| 描述 | DataNode 再次重试加入集群等待时间 | +| 类型 | long | +| 默认值 | 5000 | +| 改后生效方式 | 重启服务生效 | + +### 3.4 副本配置 + +- config_node_consensus_protocol_class + +| 名字 | config_node_consensus_protocol_class | +| ------------ | ------------------------------------------------ | +| 描述 | ConfigNode 副本的共识协议,仅支持 RatisConsensus | +| 类型 | String | +| 默认值 | org.apache.iotdb.consensus.ratis.RatisConsensus | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- schema_replication_factor + +| 名字 | schema_replication_factor | +| ------------ | ---------------------------------- | +| 描述 | Database 的默认元数据副本数 | +| 类型 | int32 | +| 默认值 | 1 | +| 改后生效方式 | 重启服务后对**新的 Database** 生效 | + +- schema_region_consensus_protocol_class + +| 名字 | schema_region_consensus_protocol_class | +| ------------ | ----------------------------------------------------- | +| 描述 | 元数据副本的共识协议,多副本时只能使用 RatisConsensus | +| 类型 | String | +| 默认值 | org.apache.iotdb.consensus.ratis.RatisConsensus | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- data_replication_factor + +| 名字 | data_replication_factor | +| ------------ | ---------------------------------- | +| 描述 | Database 的默认数据副本数 | +| 类型 | int32 | +| 默认值 | 1 | +| 改后生效方式 | 重启服务后对**新的 Database** 生效 | + +- data_region_consensus_protocol_class + +| 名字 | data_region_consensus_protocol_class | +| ------------ | ------------------------------------------------------------ | +| 描述 | 数据副本的共识协议,多副本时可以使用 IoTConsensus 或 RatisConsensus | +| 类型 | String | +| 默认值 | org.apache.iotdb.consensus.iot.IoTConsensus | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +### 3.5 目录配置 + +- cn_system_dir + +| 名字 | cn_system_dir | +| ------------ | ----------------------------------------------------------- | +| 描述 | ConfigNode 系统数据存储路径 | +| 类型 | String | +| 默认值 | data/confignode/system(Windows:data\\configndoe\\system) | +| 改后生效方式 | 重启服务生效 | + +- cn_consensus_dir + +| 名字 | cn_consensus_dir | +| ------------ | ------------------------------------------------------------ | +| 描述 | ConfigNode 共识协议数据存储路径 | +| 类型 | String | +| 默认值 | data/confignode/consensus(Windows:data\\configndoe\\consensus) | +| 改后生效方式 | 重启服务生效 | + +- cn_pipe_receiver_file_dir + +| 名字 | cn_pipe_receiver_file_dir | +| ------------ | ------------------------------------------------------------ | +| 描述 | ConfigNode中pipe接收者用于存储文件的目录路径。 | +| 类型 | String | +| 默认值 | data/confignode/system/pipe/receiver(Windows:data\\confignode\\system\\pipe\\receiver) | +| 改后生效方式 | 重启服务生效 | + +- dn_system_dir + +| 名字 | dn_system_dir | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB 元数据存储路径,默认存放在和 sbin 目录同级的 data 目录下。相对路径的起始目录与操作系统相关,建议使用绝对路径。 | +| 类型 | String | +| 默认值 | data/datanode/system(Windows:data\\datanode\\system) | +| 改后生效方式 | 重启服务生效 | + +- dn_data_dirs + +| 名字 | dn_data_dirs | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB 数据存储路径,默认存放在和 sbin 目录同级的 data 目录下。相对路径的起始目录与操作系统相关,建议使用绝对路径。 | +| 类型 | String | +| 默认值 | data/datanode/data(Windows:data\\datanode\\data) | +| 改后生效方式 | 重启服务生效 | + +- dn_multi_dir_strategy + +| 名字 | dn_multi_dir_strategy | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB 在 data_dirs 中为 TsFile 选择目录时采用的策略。可使用简单类名或类名全称。系统提供以下三种策略:
1. SequenceStrategy:IoTDB 按顺序选择目录,依次遍历 data_dirs 中的所有目录,并不断轮循;
2. MaxDiskUsableSpaceFirstStrategy:IoTDB 优先选择 data_dirs 中对应磁盘空余空间最大的目录;
您可以通过以下方法完成用户自定义策略:
1. 继承 org.apache.iotdb.db.storageengine.rescon.disk.strategy.DirectoryStrategy 类并实现自身的 Strategy 方法;
2. 将实现的类的完整类名(包名加类名,UserDefineStrategyPackage)填写到该配置项;
3. 将该类 jar 包添加到工程中。 | +| 类型 | String | +| 默认值 | SequenceStrategy | +| 改后生效方式 | 热加载 | + +- dn_consensus_dir + +| 名字 | dn_consensus_dir | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB 共识层日志存储路径,默认存放在和 sbin 目录同级的 data 目录下。相对路径的起始目录与操作系统相关,建议使用绝对路径。 | +| 类型 | String | +| 默认值 | data/datanode/consensus(Windows:data\\datanode\\consensus) | +| 改后生效方式 | 重启服务生效 | + +- dn_wal_dirs + +| 名字 | dn_wal_dirs | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB 写前日志存储路径,默认存放在和 sbin 目录同级的 data 目录下。相对路径的起始目录与操作系统相关,建议使用绝对路径。 | +| 类型 | String | +| 默认值 | data/datanode/wal(Windows:data\\datanode\\wal) | +| 改后生效方式 | 重启服务生效 | + +- dn_tracing_dir + +| 名字 | dn_tracing_dir | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB 追踪根目录路径,默认存放在和 sbin 目录同级的 data 目录下。相对路径的起始目录与操作系统相关,建议使用绝对路径。 | +| 类型 | String | +| 默认值 | datanode/tracing(Windows:datanode\\tracing) | +| 改后生效方式 | 重启服务生效 | + +- dn_sync_dir + +| 名字 | dn_sync_dir | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTDB sync 存储路径,默认存放在和 sbin 目录同级的 data 目录下。相对路径的起始目录与操作系统相关,建议使用绝对路径。 | +| 类型 | String | +| 默认值 | data/datanode/sync(Windows:data\\datanode\\sync) | +| 改后生效方式 | 重启服务生效 | + +- sort_tmp_dir + +| 名字 | sort_tmp_dir | +| ------------ | ------------------------------------------------- | +| 描述 | 用于配置排序操作的临时目录。 | +| 类型 | String | +| 默认值 | data/datanode/tmp(Windows:data\\datanode\\tmp) | +| 改后生效方式 | 重启服务生效 | + +- dn_pipe_receiver_file_dirs + +| 名字 | dn_pipe_receiver_file_dirs | +| ------------ | ------------------------------------------------------------ | +| 描述 | DataNode中pipe接收者用于存储文件的目录路径。 | +| 类型 | String | +| 默认值 | data/datanode/system/pipe/receiver(Windows:data\\datanode\\system\\pipe\\receiver) | +| 改后生效方式 | 重启服务生效 | + +- iot_consensus_v2_receiver_file_dirs + +| 名字 | iot_consensus_v2_receiver_file_dirs | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTConsensus V2中接收者用于存储文件的目录路径。 | +| 类型 | String | +| 默认值 | data/datanode/system/pipe/consensus/receiver(Windows:data\\datanode\\system\\pipe\\consensus\\receiver) | +| 改后生效方式 | 重启服务生效 | + +- iot_consensus_v2_deletion_file_dir + +| 名字 | iot_consensus_v2_deletion_file_dir | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTConsensus V2中删除操作用于存储文件的目录路径。 | +| 类型 | String | +| 默认值 | data/datanode/system/pipe/consensus/deletion(Windows:data\\datanode\\system\\pipe\\consensus\\deletion) | +| 改后生效方式 | 重启服务生效 | + +### 3.6 监控配置 + +- cn_metric_reporter_list + +| 名字 | cn_metric_reporter_list | +| ------------ | -------------------------------------------------- | +| 描述 | confignode中用于配置监控模块的数据需要报告的系统。 | +| 类型 | String | +| 默认值 | 无 | +| 改后生效方式 | 重启服务生效 | + +- cn_metric_level + +| 名字 | cn_metric_level | +| ------------ | ------------------------------------------ | +| 描述 | confignode中控制监控模块收集数据的详细程度 | +| 类型 | String | +| 默认值 | IMPORTANT | +| 改后生效方式 | 重启服务生效 | + +- cn_metric_async_collect_period + +| 名字 | cn_metric_async_collect_period | +| ------------ | -------------------------------------------------- | +| 描述 | confignode中某些监控数据异步收集的周期,单位是秒。 | +| 类型 | int | +| 默认值 | 5 | +| 改后生效方式 | 重启服务生效 | + +- cn_metric_prometheus_reporter_port + +| 名字 | cn_metric_prometheus_reporter_port | +| ------------ | ------------------------------------------------------ | +| 描述 | confignode中Prometheus报告者用于监控数据报告的端口号。 | +| 类型 | int | +| 默认值 | 9091 | +| 改后生效方式 | 重启服务生效 | + +- dn_metric_reporter_list + +| 名字 | dn_metric_reporter_list | +| ------------ | ------------------------------------------------ | +| 描述 | DataNode中用于配置监控模块的数据需要报告的系统。 | +| 类型 | String | +| 默认值 | 无 | +| 改后生效方式 | 重启服务生效 | + +- dn_metric_level + +| 名字 | dn_metric_level | +| ------------ | ---------------------------------------- | +| 描述 | DataNode中控制监控模块收集数据的详细程度 | +| 类型 | String | +| 默认值 | IMPORTANT | +| 改后生效方式 | 重启服务生效 | + +- dn_metric_async_collect_period + +| 名字 | dn_metric_async_collect_period | +| ------------ | ------------------------------------------------ | +| 描述 | DataNode中某些监控数据异步收集的周期,单位是秒。 | +| 类型 | int | +| 默认值 | 5 | +| 改后生效方式 | 重启服务生效 | + +- dn_metric_prometheus_reporter_port + +| 名字 | dn_metric_prometheus_reporter_port | +| ------------ | ---------------------------------------------------- | +| 描述 | DataNode中Prometheus报告者用于监控数据报告的端口号。 | +| 类型 | int | +| 默认值 | 9092 | +| 改后生效方式 | 重启服务生效 | + +- dn_metric_internal_reporter_type + +| 名字 | dn_metric_internal_reporter_type | +| ------------ | ------------------------------------------------------------ | +| 描述 | DataNode中监控模块内部报告者的种类,用于内部监控和检查数据是否已经成功写入和刷新。 | +| 类型 | String | +| 默认值 | IOTDB | +| 改后生效方式 | 重启服务生效 | + +### 3.7 SSL 配置 + +- enable_thrift_ssl + +| 名字 | enable_thrift_ssl | +| ------------ | ------------------------------------------------------------ | +| 描述 | 当enable_thrift_ssl配置为true时,将通过dn_rpc_port使用 SSL 加密进行通信 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- enable_https + +| 名字 | enable_https | +| ------------ | ------------------------------ | +| 描述 | REST Service 是否开启 SSL 配置 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- key_store_path + +| 名字 | key_store_path | +| ------------ | -------------- | +| 描述 | ssl证书路径 | +| 类型 | String | +| 默认值 | 无 | +| 改后生效方式 | 重启服务生效 | + +- key_store_pwd + +| 名字 | key_store_pwd | +| ------------ | ------------- | +| 描述 | ssl证书密码 | +| 类型 | String | +| 默认值 | 无 | +| 改后生效方式 | 重启服务生效 | + +### 3.8 连接配置 + +- cn_rpc_thrift_compression_enable + +| 名字 | cn_rpc_thrift_compression_enable | +| ------------ | -------------------------------- | +| 描述 | 是否启用 thrift 的压缩机制。 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- cn_rpc_max_concurrent_client_num + +| 名字 | cn_rpc_max_concurrent_client_num | +| ------------ |---------------------------------| +| 描述 | 最大连接数。 | +| 类型 | int | +| 默认值 | 3000 | +| 改后生效方式 | 重启服务生效 | + +- cn_connection_timeout_ms + +| 名字 | cn_connection_timeout_ms | +| ------------ | ------------------------ | +| 描述 | 节点连接超时时间 | +| 类型 | int | +| 默认值 | 60000 | +| 改后生效方式 | 重启服务生效 | + +- cn_selector_thread_nums_of_client_manager + +| 名字 | cn_selector_thread_nums_of_client_manager | +| ------------ | ----------------------------------------- | +| 描述 | 客户端异步线程管理的选择器线程数量 | +| 类型 | int | +| 默认值 | 1 | +| 改后生效方式 | 重启服务生效 | + +- cn_max_client_count_for_each_node_in_client_manager + +| 名字 | cn_max_client_count_for_each_node_in_client_manager | +| ------------ | --------------------------------------------------- | +| 描述 | 单 ClientManager 中路由到每个节点的最大 Client 个数 | +| 类型 | int | +| 默认值 | 300 | +| 改后生效方式 | 重启服务生效 | + +- dn_session_timeout_threshold + +| 名字 | dn_session_timeout_threshold | +| ------------ | ---------------------------- | +| 描述 | 最大的会话空闲时间 | +| 类型 | int | +| 默认值 | 0 | +| 改后生效方式 | 重启服务生效 | + +- dn_rpc_thrift_compression_enable + +| 名字 | dn_rpc_thrift_compression_enable | +| ------------ | -------------------------------- | +| 描述 | 是否启用 thrift 的压缩机制 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- dn_rpc_advanced_compression_enable + +| 名字 | dn_rpc_advanced_compression_enable | +| ------------ | ---------------------------------- | +| 描述 | 是否启用 thrift 的自定制压缩机制 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- dn_rpc_selector_thread_count + +| 名字 | rpc_selector_thread_count | +| ------------ | ------------------------- | +| 描述 | rpc 选择器线程数量 | +| 类型 | int | +| 默认值 | 1 | +| 改后生效方式 | 重启服务生效 | + +- dn_rpc_min_concurrent_client_num + +| 名字 | rpc_min_concurrent_client_num | +| ------------ | ----------------------------- | +| 描述 | 最小连接数 | +| 类型 | Short Int : [0,65535] | +| 默认值 | 1 | +| 改后生效方式 | 重启服务生效 | + +- dn_rpc_max_concurrent_client_num + +| 名字 | dn_rpc_max_concurrent_client_num | +| ------------ |----------------------------------| +| 描述 | 最大连接数 | +| 类型 | Short Int : [0,65535] | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- dn_thrift_max_frame_size + +| 名字 | dn_thrift_max_frame_size | +| ------------ |-------------------------------------------------------------------------------------------------------------------| +| 描述 | RPC 请求/响应的最大字节数 | +| 类型 | int | +|默认值| 默认为0,即根据启动时DNJVM的配置参数自动计算:
a. min(64MB, dn_alloc_memory/64)
b.若用户手动配置了dn_thrift_max_frame_size,仍然使用用户指定的大小 | +| 改后生效方式 | 重启服务生效 | + +- dn_thrift_init_buffer_size + +| 名字 | dn_thrift_init_buffer_size | +| ------------ | -------------------------- | +| 描述 | 字节数 | +| 类型 | long | +| 默认值 | 1024 | +| 改后生效方式 | 重启服务生效 | + +- dn_connection_timeout_ms + +| 名字 | dn_connection_timeout_ms | +| ------------ | ------------------------ | +| 描述 | 节点连接超时时间 | +| 类型 | int | +| 默认值 | 60000 | +| 改后生效方式 | 重启服务生效 | + +- dn_selector_thread_count_of_client_manager + +| 名字 | dn_selector_thread_count_of_client_manager | +| ------------ | ------------------------------------------------------------ | +| 描述 | selector thread (TAsyncClientManager) nums for async thread in a clientManagerclientManager中异步线程的选择器线程(TAsyncClientManager)编号 | +| 类型 | int | +| 默认值 | 1 | +| 改后生效方式 | 重启服务生效 | + +- dn_max_client_count_for_each_node_in_client_manager + +| 名字 | dn_max_client_count_for_each_node_in_client_manager | +| ------------ | --------------------------------------------------- | +| 描述 | 单 ClientManager 中路由到每个节点的最大 Client 个数 | +| 类型 | int | +| 默认值 | 300 | +| 改后生效方式 | 重启服务生效 | + +### 3.9 对象存储管理 + +- remote_tsfile_cache_dirs + +| 名字 | remote_tsfile_cache_dirs | +| ------------ | ------------------------ | +| 描述 | 云端存储在本地的缓存目录 | +| 类型 | String | +| 默认值 | data/datanode/data/cache | +| 改后生效方式 | 重启服务生效 | + +- remote_tsfile_cache_page_size_in_kb + +| 名字 | remote_tsfile_cache_page_size_in_kb | +| ------------ | ----------------------------------- | +| 描述 | 云端存储在本地缓存文件的块大小 | +| 类型 | int | +| 默认值 | 20480 | +| 改后生效方式 | 重启服务生效 | + +- remote_tsfile_cache_max_disk_usage_in_mb + +| 名字 | remote_tsfile_cache_max_disk_usage_in_mb | +| ------------ | ---------------------------------------- | +| 描述 | 云端存储本地缓存的最大磁盘占用大小 | +| 类型 | long | +| 默认值 | 51200 | +| 改后生效方式 | 重启服务生效 | + +- object_storage_type + +| 名字 | object_storage_type | +| ------------ | ------------------- | +| 描述 | 云端存储类型 | +| 类型 | String | +| 默认值 | AWS_S3 | +| 改后生效方式 | 重启服务生效 | + +- object_storage_endpoint + +| 名字 | object_storage_endpoint | +| ------------ | ----------------------- | +| 描述 | 云端存储的 endpoint | +| 类型 | String | +| 默认值 | 无 | +| 改后生效方式 | 重启服务生效 | + +- object_storage_bucket + +| 名字 | object_storage_bucket | +| ------------ | ---------------------- | +| 描述 | 云端存储 bucket 的名称 | +| 类型 | String | +| 默认值 | iotdb_data | +| 改后生效方式 | 重启服务生效 | + +- object_storage_access_key + +| 名字 | object_storage_access_key | +| ------------ | ------------------------- | +| 描述 | 云端存储的验证信息 key | +| 类型 | String | +| 默认值 | 无 | +| 改后生效方式 | 重启服务生效 | + +- object_storage_access_secret + +| 名字 | object_storage_access_secret | +| ------------ | ---------------------------- | +| 描述 | 云端存储的验证信息 secret | +| 类型 | String | +| 默认值 | 无 | +| 改后生效方式 | 重启服务生效 | + +### 3.10 多级管理 + +- dn_default_space_usage_thresholds + +| 名字 | dn_default_space_usage_thresholds | +| ------------ | ------------------------------------------------------------ | +| 描述 | 定义每个层级数据目录的最小剩余空间比例;当剩余空间少于该比例时,数据会被自动迁移至下一个层级;当最后一个层级的剩余存储空间到低于此阈值时,会将系统置为 READ_ONLY | +| 类型 | double | +| 默认值 | 0.85 | +| 改后生效方式 | 热加载 | + +- dn_tier_full_policy + +| 名字 | dn_tier_full_policy | +| ------------ | ------------------------------------------------------------ | +| 描述 | 如何处理最后一层数据,当其已用空间高于其dn_default_space_usage_threshold时。| +| 类型 | String | +| 默认值 | NULL | +| 改后生效方式 | 热加载 | + +- migrate_thread_count + +| 名字 | migrate_thread_count | +| ------------ | ---------------------------------------- | +| 描述 | DataNode数据目录中迁移操作的线程池大小。 | +| 类型 | int | +| 默认值 | 1 | +| 改后生效方式 | 热加载 | + +- tiered_storage_migrate_speed_limit_bytes_per_sec + +| 名字 | tiered_storage_migrate_speed_limit_bytes_per_sec | +| ------------ | ------------------------------------------------ | +| 描述 | 限制不同存储层级之间的数据迁移速度。 | +| 类型 | int | +| 默认值 | 10485760 | +| 改后生效方式 | 热加载 | + +### 3.11 REST服务配置 + +- enable_rest_service + +| 名字 | enable_rest_service | +| ------------ | ------------------- | +| 描述 | 是否开启Rest服务。 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- rest_service_port + +| 名字 | rest_service_port | +| ------------ | ------------------ | +| 描述 | Rest服务监听端口号 | +| 类型 | int32 | +| 默认值 | 18080 | +| 改后生效方式 | 重启服务生效 | + +- enable_swagger + +| 名字 | enable_swagger | +| ------------ | --------------------------------- | +| 描述 | 是否启用swagger来展示rest接口信息 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- rest_query_default_row_size_limit + +| 名字 | rest_query_default_row_size_limit | +| ------------ | --------------------------------- | +| 描述 | 一次查询能返回的结果集最大行数 | +| 类型 | int32 | +| 默认值 | 10000 | +| 改后生效方式 | 重启服务生效 | + +- cache_expire_in_seconds + +| 名字 | cache_expire_in_seconds | +| ------------ | -------------------------------- | +| 描述 | 用户登录信息缓存的过期时间(秒) | +| 类型 | int32 | +| 默认值 | 28800 | +| 改后生效方式 | 重启服务生效 | + +- cache_max_num + +| 名字 | cache_max_num | +| ------------ | ------------------------ | +| 描述 | 缓存中存储的最大用户数量 | +| 类型 | int32 | +| 默认值 | 100 | +| 改后生效方式 | 重启服务生效 | + +- cache_init_num + +| 名字 | cache_init_num | +| ------------ | -------------- | +| 描述 | 缓存初始容量 | +| 类型 | int32 | +| 默认值 | 10 | +| 改后生效方式 | 重启服务生效 | + +- client_auth + +| 名字 | client_auth | +| ------------ | ---------------------- | +| 描述 | 是否需要客户端身份验证 | +| 类型 | boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- trust_store_path + +| 名字 | trust_store_path | +| ------------ | ----------------------- | +| 描述 | keyStore 密码(非必填) | +| 类型 | String | +| 默认值 | "" | +| 改后生效方式 | 重启服务生效 | + +- trust_store_pwd + +| 名字 | trust_store_pwd | +| ------------ | ------------------------- | +| 描述 | trustStore 密码(非必填) | +| 类型 | String | +| 默认值 | "" | +| 改后生效方式 | 重启服务生效 | + +- idle_timeout_in_seconds + +| 名字 | idle_timeout_in_seconds | +| ------------ | ----------------------- | +| 描述 | SSL 超时时间,单位为秒 | +| 类型 | int32 | +| 默认值 | 5000 | +| 改后生效方式 | 重启服务生效 | + +### 3.12 负载均衡配置 + +- series_slot_num + +| 名字 | series_slot_num | +| ------------ | ---------------------------- | +| 描述 | 序列分区槽数 | +| 类型 | int32 | +| 默认值 | 10000 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- series_partition_executor_class + +| 名字 | series_partition_executor_class | +| ------------ | ------------------------------------------------------------ | +| 描述 | 序列分区哈希函数 | +| 类型 | String | +| 默认值 | org.apache.iotdb.commons.partition.executor.hash.BKDRHashExecutor | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- schema_region_group_extension_policy + +| 名字 | schema_region_group_extension_policy | +| ------------ | ------------------------------------ | +| 描述 | SchemaRegionGroup 的扩容策略 | +| 类型 | string | +| 默认值 | AUTO | +| 改后生效方式 | 重启服务生效 | + +- default_schema_region_group_num_per_database + +| 名字 | default_schema_region_group_num_per_database | +| ------------ | ------------------------------------------------------------ | +| 描述 | 当选用 CUSTOM-SchemaRegionGroup 扩容策略时,此参数为每个 Database 拥有的 SchemaRegionGroup 数量;当选用 AUTO-SchemaRegionGroup 扩容策略时,此参数为每个 Database 最少拥有的 SchemaRegionGroup 数量 | +| 类型 | int | +| 默认值 | 1 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_per_data_node + +| 名字 | schema_region_per_data_node | +| ------------ | -------------------------------------------------- | +| 描述 | 期望每个 DataNode 可管理的 SchemaRegion 的最大数量 | +| 类型 | double | +| 默认值 | 1.0 | +| 改后生效方式 | 重启服务生效 | + +- data_region_group_extension_policy + +| 名字 | data_region_group_extension_policy | +| ------------ | ---------------------------------- | +| 描述 | DataRegionGroup 的扩容策略 | +| 类型 | string | +| 默认值 | AUTO | +| 改后生效方式 | 重启服务生效 | + +- default_data_region_group_num_per_database + +| 名字 | default_data_region_group_per_database | +| ------------ | ------------------------------------------------------------ | +| 描述 | 当选用 CUSTOM-DataRegionGroup 扩容策略时,此参数为每个 Database 拥有的 DataRegionGroup 数量;当选用 AUTO-DataRegionGroup 扩容策略时,此参数为每个 Database 最少拥有的 DataRegionGroup 数量 | +| 类型 | int | +| 默认值 | 2 | +| 改后生效方式 | 重启服务生效 | + +- data_region_per_data_node + +| 名字 | data_region_per_data_node | +| ------------ | ------------------------------------------------ | +| 描述 | 期望每个 DataNode 可管理的 DataRegion 的最大数量 | +| 类型 | double | +| 默认值 | CPU 核心数的一半 | +| 改后生效方式 | 重启服务生效 | + +- enable_auto_leader_balance_for_ratis_consensus + +| 名字 | enable_auto_leader_balance_for_ratis_consensus | +| ------------ | ---------------------------------------------- | +| 描述 | 是否为 Ratis 共识协议开启自动均衡 leader 策略 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 重启服务生效 | + +- enable_auto_leader_balance_for_iot_consensus + +| 名字 | enable_auto_leader_balance_for_iot_consensus | +| ------------ | -------------------------------------------- | +| 描述 | 是否为 IoT 共识协议开启自动均衡 leader 策略 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 重启服务生效 | + +### 3.13 集群管理 + +- time_partition_origin + +| 名字 | time_partition_origin | +| ------------ | ------------------------------------------------------------ | +| 描述 | Database 数据时间分区的起始点,即从哪个时间点开始计算时间分区。 | +| 类型 | Long | +| 单位 | 毫秒 | +| 默认值 | 0 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- time_partition_interval + +| 名字 | time_partition_interval | +| ------------ | ------------------------------- | +| 描述 | Database 默认的数据时间分区间隔 | +| 类型 | Long | +| 单位 | 毫秒 | +| 默认值 | 604800000 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- heartbeat_interval_in_ms + +| 名字 | heartbeat_interval_in_ms | +| ------------ | ------------------------ | +| 描述 | 集群节点间的心跳间隔 | +| 类型 | Long | +| 单位 | ms | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- disk_space_warning_threshold + +| 名字 | disk_space_warning_threshold | +| ------------ | ---------------------------- | +| 描述 | DataNode 磁盘剩余阈值 | +| 类型 | double(percentage) | +| 默认值 | 0.05 | +| 改后生效方式 | 重启服务生效 | + +### 3.14 内存控制配置 + +- datanode_memory_proportion + +| 名字 | datanode_memory_proportion | +| ------------ | ---------------------------------------------------- | +| 描述 | 存储引擎、查询引擎、元数据、共识、流处理引擎和空闲内存的分配比例。自 V2.0.11 起,空闲内存的一半将作为 RPC 层 AutoResizingBuffer 的总内存预算,用于限制 framed transport 读写及压缩、解压缓冲区的总体内存占用。 | +| 类型 | Ratio | +| 默认值 | 3:3:1:1:1:1 | +| 改后生效方式 | 重启服务生效 | + +- schema_memory_proportion + +| 名字 | schema_memory_proportion | +| ------------ | ------------------------------------------------------------ | +| 描述 | Schema 相关的内存如何在 SchemaRegion、SchemaCache 和 PartitionCache 之间分配 | +| 类型 | Ratio | +| 默认值 | 5:4:1 | +| 改后生效方式 | 重启服务生效 | + +- storage_engine_memory_proportion + +| 名字 | storage_engine_memory_proportion | +| ------------ | -------------------------------- | +| 描述 | 写入和合并占存储内存比例 | +| 类型 | Ratio | +| 默认值 | 8:2 | +| 改后生效方式 | 重启服务生效 | + +- write_memory_proportion + +| 名字 | write_memory_proportion | +| ------------ | -------------------------------------------- | +| 描述 | Memtable 和 TimePartitionInfo 占写入内存比例 | +| 类型 | Ratio | +| 默认值 | 19:1 | +| 改后生效方式 | 重启服务生效 | + +- primitive_array_size + +| 名字 | primitive_array_size | +| ------------ | ---------------------------------------- | +| 描述 | 数组池中的原始数组大小(每个数组的长度) | +| 类型 | int32 | +| 默认值 | 64 | +| 改后生效方式 | 重启服务生效 | + +- chunk_metadata_size_proportion + +| 名字 | chunk_metadata_size_proportion | +| ------------ | -------------------------------------------- | +| 描述 | 在数据压缩过程中,用于存储块元数据的内存比例 | +| 类型 | Double | +| 默认值 | 0.1 | +| 改后生效方式 | 重启服务生效 | + +- flush_proportion + +| 名字 | flush_proportion | +| ------------ | ------------------------------------------------------------ | +| 描述 | 调用flush disk的写入内存比例,默认0.4,若有极高的写入负载力(比如batch=1000),可以设置为低于默认值,比如0.2 | +| 类型 | Double | +| 默认值 | 0.4 | +| 改后生效方式 | 重启服务生效 | + +- buffered_arrays_memory_proportion + +| 名字 | buffered_arrays_memory_proportion | +| ------------ | --------------------------------------- | +| 描述 | 为缓冲数组分配的写入内存比例,默认为0.6 | +| 类型 | Double | +| 默认值 | 0.6 | +| 改后生效方式 | 重启服务生效 | + +- reject_proportion + +| 名字 | reject_proportion | +| ------------ | ------------------------------------------------------------ | +| 描述 | 拒绝插入的写入内存比例,默认0.8,若有极高的写入负载力(比如batch=1000)并且物理内存足够大,它可以设置为高于默认值,如0.9 | +| 类型 | Double | +| 默认值 | 0.8 | +| 改后生效方式 | 重启服务生效 | + +- device_path_cache_proportion + +| 名字 | device_path_cache_proportion | +| ------------ | --------------------------------------------------- | +| 描述 | 在内存中分配给设备路径缓存(DevicePathCache)的比例 | +| 类型 | Double | +| 默认值 | 0.05 | +| 改后生效方式 | 重启服务生效 | + +- write_memory_variation_report_proportion + +| 名字 | write_memory_variation_report_proportion | +| ------------ | ------------------------------------------------------------ | +| 描述 | 如果 DataRegion 的内存增加超过写入可用内存的一定比例,则向系统报告。默认值为0.001 | +| 类型 | Double | +| 默认值 | 0.001 | +| 改后生效方式 | 重启服务生效 | + +- check_period_when_insert_blocked + +| 名字 | check_period_when_insert_blocked | +| ------------ | ------------------------------------------------------------ | +| 描述 | 当插入被拒绝时,等待时间(以毫秒为单位)去再次检查系统,默认为50。若插入被拒绝,读取负载低,可以设置大一些。 | +| 类型 | int32 | +| 默认值 | 50 | +| 改后生效方式 | 重启服务生效 | + +- io_task_queue_size_for_flushing + +| 名字 | io_task_queue_size_for_flushing | +| ------------ | -------------------------------- | +| 描述 | ioTaskQueue 的大小。默认值为10。 | +| 类型 | int32 | +| 默认值 | 10 | +| 改后生效方式 | 重启服务生效 | + +- enable_query_memory_estimation + +| 名字 | enable_query_memory_estimation | +| ------------ | ------------------------------------------------------------ | +| 描述 | 开启后会预估每次查询的内存使用量,如果超过可用内存,会拒绝本次查询 | +| 类型 | bool | +| 默认值 | true | +| 改后生效方式 | 热加载 | + +### 3.15 元数据引擎配置 + +- schema_engine_mode + +| 名字 | schema_engine_mode | +| ------------ | ------------------------------------------------------------ | +| 描述 | 元数据引擎的运行模式,支持 Memory 和 PBTree;PBTree 模式下支持将内存中暂时不用的序列元数据实时置换到磁盘上,需要使用时再加载进内存;此参数在集群中所有的 DataNode 上务必保持相同。 | +| 类型 | string | +| 默认值 | Memory | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- partition_cache_size + +| 名字 | partition_cache_size | +| ------------ | ------------------------------ | +| 描述 | 分区信息缓存的最大缓存条目数。 | +| 类型 | Int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- sync_mlog_period_in_ms + +| 名字 | sync_mlog_period_in_ms | +| ------------ | ------------------------------------------------------------ | +| 描述 | mlog定期刷新到磁盘的周期,单位毫秒。如果该参数为0,则表示每次对元数据的更新操作都会被立即写到磁盘上。 | +| 类型 | Int64 | +| 默认值 | 100 | +| 改后生效方式 | 重启服务生效 | + +- tag_attribute_flush_interval + +| 名字 | tag_attribute_flush_interval | +| ------------ | -------------------------------------------------- | +| 描述 | 标签和属性记录的间隔数,达到此记录数量时将强制刷盘 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- tag_attribute_total_size + +| 名字 | tag_attribute_total_size | +| ------------ | ---------------------------------------- | +| 描述 | 每个时间序列标签和属性的最大持久化字节数 | +| 类型 | int32 | +| 默认值 | 700 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- max_measurement_num_of_internal_request + +| 名字 | max_measurement_num_of_internal_request | +| ------------ | ------------------------------------------------------------ | +| 描述 | 一次注册序列请求中若物理量过多,在系统内部执行时将被拆分为若干个轻量级的子请求,每个子请求中的物理量数目不超过此参数设置的最大值。 | +| 类型 | Int32 | +| 默认值 | 10000 | +| 改后生效方式 | 重启服务生效 | + +- datanode_schema_cache_eviction_policy + +| 名字 | datanode_schema_cache_eviction_policy | +| ------------ | ----------------------------------------------------- | +| 描述 | 当 Schema 缓存达到其最大容量时,Schema 缓存的淘汰策略 | +| 类型 | String | +| 默认值 | FIFO | +| 改后生效方式 | 重启服务生效 | + +- cluster_timeseries_limit_threshold + +| 名字 | cluster_timeseries_limit_threshold | +| ------------ | ---------------------------------- | +| 描述 | 集群中可以创建的时间序列的最大数量 | +| 类型 | Int32 | +| 默认值 | -1 | +| 改后生效方式 | 重启服务生效 | + +- cluster_device_limit_threshold + +| 名字 | cluster_device_limit_threshold | +| ------------ | ------------------------------ | +| 描述 | 集群中可以创建的最大设备数量 | +| 类型 | Int32 | +| 默认值 | -1 | +| 改后生效方式 | 重启服务生效 | + +- database_limit_threshold + +| 名字 | database_limit_threshold | +| ------------ | ------------------------------ | +| 描述 | 集群中可以创建的最大数据库数量 | +| 类型 | Int32 | +| 默认值 | -1 | +| 改后生效方式 | 重启服务生效 | + +### 3.16 自动推断数据类型 + +- enable_auto_create_schema + +| 名字 | enable_auto_create_schema | +| ------------ | -------------------------------------- | +| 描述 | 当写入的序列不存在时,是否自动创建序列 | +| 取值 | true or false | +| 默认值 | true | +| 改后生效方式 | 重启服务生效 | + +- default_storage_group_level + +| 名字 | default_storage_group_level | +| ------------ | ------------------------------------------------------------ | +| 描述 | 当写入的数据不存在且自动创建序列时,若需要创建相应的 database,将序列路径的哪一层当做 database。例如,如果我们接到一个新序列 root.sg0.d1.s2, 并且 level=1, 那么 root.sg0 被视为database(因为 root 是 level 0 层) | +| 取值 | int32 | +| 默认值 | 1 | +| 改后生效方式 | 重启服务生效 | + +- boolean_string_infer_type + +| 名字 | boolean_string_infer_type | +| ------------ | ------------------------------------------ | +| 描述 | "true" 或者 "false" 字符串被推断的数据类型 | +| 取值 | BOOLEAN 或者 TEXT | +| 默认值 | BOOLEAN | +| 改后生效方式 | 热加载 | + +- integer_string_infer_type + +| 名字 | integer_string_infer_type | +| ------------ | --------------------------------- | +| 描述 | 整型字符串推断的数据类型 | +| 取值 | INT32, INT64, FLOAT, DOUBLE, TEXT | +| 默认值 | DOUBLE | +| 改后生效方式 | 热加载 | + +- floating_string_infer_type + +| 名字 | floating_string_infer_type | +| ------------ | ----------------------------- | +| 描述 | "6.7"等字符串被推断的数据类型 | +| 取值 | DOUBLE, FLOAT or TEXT | +| 默认值 | DOUBLE | +| 改后生效方式 | 热加载 | + +- nan_string_infer_type + +| 名字 | nan_string_infer_type | +| ------------ | ---------------------------- | +| 描述 | "NaN" 字符串被推断的数据类型 | +| 取值 | DOUBLE, FLOAT or TEXT | +| 默认值 | DOUBLE | +| 改后生效方式 | 热加载 | + +- default_boolean_encoding + +| 名字 | default_boolean_encoding | +| ------------ | ------------------------ | +| 描述 | BOOLEAN 类型编码格式 | +| 取值 | PLAIN, RLE | +| 默认值 | RLE | +| 改后生效方式 | 热加载 | + +- default_int32_encoding + +| 名字 | default_int32_encoding | +| ------------ | -------------------------------------- | +| 描述 | int32 类型编码格式 | +| 取值 | PLAIN, RLE, TS_2DIFF, REGULAR, GORILLA | +| 默认值 | TS_2DIFF | +| 改后生效方式 | 热加载 | + +- default_int64_encoding + +| 名字 | default_int64_encoding | +| ------------ | -------------------------------------- | +| 描述 | int64 类型编码格式 | +| 取值 | PLAIN, RLE, TS_2DIFF, REGULAR, GORILLA | +| 默认值 | TS_2DIFF | +| 改后生效方式 | 热加载 | + +- default_float_encoding + +| 名字 | default_float_encoding | +| ------------ | ----------------------------- | +| 描述 | float 类型编码格式 | +| 取值 | PLAIN, RLE, TS_2DIFF, GORILLA | +| 默认值 | GORILLA | +| 改后生效方式 | 热加载 | + +- default_double_encoding + +| 名字 | default_double_encoding | +| ------------ | ----------------------------- | +| 描述 | double 类型编码格式 | +| 取值 | PLAIN, RLE, TS_2DIFF, GORILLA | +| 默认值 | GORILLA | +| 改后生效方式 | 热加载 | + +- default_text_encoding + +| 名字 | default_text_encoding | +| ------------ | --------------------- | +| 描述 | text 类型编码格式 | +| 取值 | PLAIN | +| 默认值 | PLAIN | +| 改后生效方式 | 热加载 | + +* boolean_compressor + +| 名字 | boolean_compressor | +| -------------- | ----------------------------------------------------------------------- | +| 描述 | 启用自动创建模式时,BOOLEAN 数据类型的压缩方式 (V2.0.6 版本开始支持) | +| 类型 | String | +| 默认值 | LZ4 | +| 改后生效方式 | 热加载 | + +* int32_compressor + +| 名字 | int32_compressor | +| -------------- | ------------------------------------------------------------------------- | +| 描述 | 启用自动创建模式时,INT32/DATE 数据类型的压缩方式(V2.0.6 版本开始支持) | +| 类型 | String | +| 默认值 | LZ4 | +| 改后生效方式 | 热加载 | + +* int64_compressor + +| 名字 | int64_compressor | +| -------------- | ------------------------------------------------------------------------------ | +| 描述 | 启用自动创建模式时,INT64/TIMESTAMP 数据类型的压缩方式(V2.0.6 版本开始支持) | +| 类型 | String | +| 默认值 | LZ4 | +| 改后生效方式 | 热加载 | + +* float_compressor + +| 名字 | float_compressor | +| -------------- | -------------------------------------------------------------------- | +| 描述 | 启用自动创建模式时,FLOAT 数据类型的压缩方式(V2.0.6 版本开始支持) | +| 类型 | String | +| 默认值 | LZ4 | +| 改后生效方式 | 热加载 | + +* double_compressor + +| 名字 | double_compressor | +| -------------- | --------------------------------------------------------------------- | +| 描述 | 启用自动创建模式时,DOUBLE 数据类型的压缩方式(V2.0.6 版本开始支持) | +| 类型 | String | +| 默认值 | LZ4 | +| 改后生效方式 | 热加载 | + +* text_compressor + +| 名字 | text_compressor | +| -------------- | -------------------------------------------------------------------------------- | +| 描述 | 启用自动创建模式时,TEXT/BINARY/BLOB 数据类型的压缩方式(V2.0.6 版本开始支持 ) | +| 类型 | String | +| 默认值 | LZ4 | +| 改后生效方式 | 热加载 | + + + +### 3.17 查询配置 + +- read_consistency_level + +| 名字 | read_consistency_level | +| ------------ | ------------------------------------------------------------ | +| 描述 | 查询一致性等级,取值 “strong” 时从 Leader 副本查询,取值 “weak” 时随机查询一个副本。 | +| 类型 | String | +| 默认值 | strong | +| 改后生效方式 | 重启服务生效 | + +- meta_data_cache_enable + +| 名字 | meta_data_cache_enable | +| ------------ | ------------------------------------------------------------ | +| 描述 | 是否缓存元数据(包括 BloomFilter、Chunk Metadata 和 TimeSeries Metadata。) | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 重启服务生效 | + +- chunk_timeseriesmeta_free_memory_proportion + +| 名字 | chunk_timeseriesmeta_free_memory_proportion | +| ------------ | ------------------------------------------------------------ | +| 描述 | 读取内存分配比例,BloomFilterCache、ChunkCache、TimeseriesMetadataCache、数据集查询的内存和可用内存的查询。参数形式为a : b : c : d : e,其中a、b、c、d、e为整数。 例如“1 : 1 : 1 : 1 : 1” ,“1 : 100 : 200 : 300 : 400” 。 | +| 类型 | String | +| 默认值 | 1 : 100 : 200 : 300 : 400 | +| 改后生效方式 | 重启服务生效 | + +- enable_last_cache + +| 名字 | enable_last_cache | +| ------------ | ------------------ | +| 描述 | 是否开启最新点缓存 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 重启服务生效 | + +- mpp_data_exchange_core_pool_size + +| 名字 | mpp_data_exchange_core_pool_size | +| ------------ | -------------------------------- | +| 描述 | MPP 数据交换线程池核心线程数 | +| 类型 | int32 | +| 默认值 | 10 | +| 改后生效方式 | 重启服务生效 | + +- mpp_data_exchange_max_pool_size + +| 名字 | mpp_data_exchange_max_pool_size | +| ------------ | ------------------------------- | +| 描述 | MPP 数据交换线程池最大线程数 | +| 类型 | int32 | +| 默认值 | 10 | +| 改后生效方式 | 重启服务生效 | + +- mpp_data_exchange_keep_alive_time_in_ms + +| 名字 | mpp_data_exchange_keep_alive_time_in_ms | +| ------------ | --------------------------------------- | +| 描述 | MPP 数据交换最大等待时间 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- driver_task_execution_time_slice_in_ms + +| 名字 | driver_task_execution_time_slice_in_ms | +| ------------ | -------------------------------------- | +| 描述 | 单个 DriverTask 最长执行时间(ms) | +| 类型 | int32 | +| 默认值 | 200 | +| 改后生效方式 | 重启服务生效 | + +- max_tsblock_size_in_bytes + +| 名字 | max_tsblock_size_in_bytes | +| ------------ | ------------------------------- | +| 描述 | 单个 TsBlock 的最大容量(byte) | +| 类型 | int32 | +| 默认值 | 131072 | +| 改后生效方式 | 重启服务生效 | + +- max_tsblock_line_numbers + +| 名字 | max_tsblock_line_numbers | +| ------------ | ------------------------ | +| 描述 | 单个 TsBlock 的最大行数 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- slow_query_threshold + +| 名字 | slow_query_threshold | +| ------------ |----------------------| +| 描述 | 慢查询的时间阈值。单位:毫秒。 | +| 类型 | long | +| 默认值 | 3000 | +| 改后生效方式 | 热加载 | + +- query_cost_stat_window + +| 名字 | query_cost_stat_window | +| ------------ |--------------------| +| 描述 | 查询耗时统计的窗口,单位为分钟。 | +| 类型 | Int32 | +| 默认值 | 0 | +| 改后生效方式 | 热加载 | + +- query_timeout_threshold + +| 名字 | query_timeout_threshold | +| ------------ | -------------------------------- | +| 描述 | 查询的最大执行时间。单位:毫秒。 | +| 类型 | Int32 | +| 默认值 | 60000 | +| 改后生效方式 | 重启服务生效 | + +- max_allowed_concurrent_queries + +| 名字 | max_allowed_concurrent_queries | +| ------------ | ------------------------------ | +| 描述 | 允许的最大并发查询数量。 | +| 类型 | Int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- query_thread_count + +| 名字 | query_thread_count | +| ------------ | ------------------------------------------------------------ | +| 描述 | 当 IoTDB 对内存中的数据进行查询时,最多启动多少个线程来执行该操作。如果该值小于等于 0,那么采用机器所安装的 CPU 核的数量。 | +| 类型 | Int32 | +| 默认值 | 0 | +| 改后生效方式 | 重启服务生效 | + +- degree_of_query_parallelism + +| 名字 | degree_of_query_parallelism | +| ------------ | ------------------------------------------------------------ | +| 描述 | 设置单个查询片段实例将创建的 pipeline 驱动程序数量,也就是查询操作的并行度。 | +| 类型 | Int32 | +| 默认值 | 0 | +| 改后生效方式 | 重启服务生效 | + +- mode_map_size_threshold + +| 名字 | mode_map_size_threshold | +| ------------ | ---------------------------------------------- | +| 描述 | 计算 MODE 聚合函数时,计数映射可以增长到的阈值 | +| 类型 | Int32 | +| 默认值 | 10000 | +| 改后生效方式 | 重启服务生效 | + +- batch_size + +| 名字 | batch_size | +| ------------ | ---------------------------------------------------------- | +| 描述 | 服务器中每次迭代的数据量(数据条目,即不同时间戳的数量。) | +| 类型 | Int32 | +| 默认值 | 100000 | +| 改后生效方式 | 重启服务生效 | + +- sort_buffer_size_in_bytes + +| 名字 | sort_buffer_size_in_bytes | +| ------------ |------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| 描述 | 设置外部排序操作中使用的内存缓冲区大小 | +| 类型 | long | +| 默认值 | 1048576(V2.0.6 之前版本)
0(V2.0.6 及之后版本),当值小于等于 0 时,由系统自动进行计算,计算公式为:`sort_buffer_size_in_bytes = Math.min(32 * 1024 * 1024, 堆内内存 * 查询引擎内存比例 * 查询执行内存比例 / 查询线程数 / 2)` | +| 改后生效方式 | 热加载 | + +- merge_threshold_of_explain_analyze + +| 名字 | merge_threshold_of_explain_analyze | +| ------------ | ------------------------------------------------------------ | +| 描述 | 用于设置在 `EXPLAIN ANALYZE` 语句的结果集中操作符(operator)数量的合并阈值。 | +| 类型 | int | +| 默认值 | 10 | +| 改后生效方式 | 热加载 | + +### 3.18 TTL配置 + +- ttl_check_interval + +| 名字 | ttl_check_interval | +| ------------ | -------------------------------------- | +| 描述 | ttl 检查任务的间隔,单位 ms,默认为 2h | +| 类型 | int | +| 默认值 | 7200000 | +| 改后生效方式 | 重启服务生效 | + +- max_expired_time + +| 名字 | max_expired_time | +| ------------ | ------------------------------------------------------------ | +| 描述 | 如果一个文件中存在设备已经过期超过此时间,那么这个文件将被立即整理。单位 ms,默认为一个月 | +| 类型 | int | +| 默认值 | 2592000000 | +| 改后生效方式 | 重启服务生效 | + +- expired_data_ratio + +| 名字 | expired_data_ratio | +| ------------ | ------------------------------------------------------------ | +| 描述 | 过期设备比例。如果一个文件中过期设备的比率超过这个值,那么这个文件中的过期数据将通过 compaction 清理。 | +| 类型 | float | +| 默认值 | 0.3 | +| 改后生效方式 | 重启服务生效 | + +### 3.19 存储引擎配置 + +- timestamp_precision + +| 名字 | timestamp_precision | +| ------------ | ---------------------------- | +| 描述 | 时间戳精度,支持 ms、us、ns | +| 类型 | String | +| 默认值 | ms | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- timestamp_precision_check_enabled + +| 名字 | timestamp_precision_check_enabled | +| ------------ | --------------------------------- | +| 描述 | 用于控制是否启用时间戳精度检查 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- max_waiting_time_when_insert_blocked + +| 名字 | max_waiting_time_when_insert_blocked | +| ------------ | ----------------------------------------------- | +| 描述 | 当插入请求等待超过这个时间,则抛出异常,单位 ms | +| 类型 | Int32 | +| 默认值 | 10000 | +| 改后生效方式 | 重启服务生效 | + +- handle_system_error + +| 名字 | handle_system_error | +| ------------ | ------------------------------------ | +| 描述 | 当系统遇到不可恢复的错误时的处理方法 | +| 类型 | String | +| 默认值 | CHANGE_TO_READ_ONLY | +| 改后生效方式 | 重启服务生效 | + +- enable_timed_flush_seq_memtable + +| 名字 | enable_timed_flush_seq_memtable | +| ------------ | ------------------------------- | +| 描述 | 是否开启定时刷盘顺序 memtable | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 热加载 | + +- seq_memtable_flush_interval_in_ms + +| 名字 | seq_memtable_flush_interval_in_ms | +| ------------ | ------------------------------------------------------------ | +| 描述 | 当 memTable 的创建时间小于当前时间减去该值时,该 memtable 需要被刷盘 | +| 类型 | long | +| 默认值 | 600000 | +| 改后生效方式 | 热加载 | + +- seq_memtable_flush_check_interval_in_ms + +| 名字 | seq_memtable_flush_check_interval_in_ms | +| ------------ | ---------------------------------------- | +| 描述 | 检查顺序 memtable 是否需要刷盘的时间间隔 | +| 类型 | long | +| 默认值 | 30000 | +| 改后生效方式 | 热加载 | + +- enable_timed_flush_unseq_memtable + +| 名字 | enable_timed_flush_unseq_memtable | +| ------------ | --------------------------------- | +| 描述 | 是否开启定时刷新乱序 memtable | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 热加载 | + +- unseq_memtable_flush_interval_in_ms + +| 名字 | unseq_memtable_flush_interval_in_ms | +| ------------ | ------------------------------------------------------------ | +| 描述 | 当 memTable 的创建时间小于当前时间减去该值时,该 memtable 需要被刷盘 | +| 类型 | long | +| 默认值 | 600000 | +| 改后生效方式 | 热加载 | + +- unseq_memtable_flush_check_interval_in_ms + +| 名字 | unseq_memtable_flush_check_interval_in_ms | +| ------------ | ----------------------------------------- | +| 描述 | 检查乱序 memtable 是否需要刷盘的时间间隔 | +| 类型 | long | +| 默认值 | 30000 | +| 改后生效方式 | 热加载 | + +- tvlist_sort_algorithm + +| 名字 | tvlist_sort_algorithm | +| ------------ | ------------------------ | +| 描述 | memtable中数据的排序方法 | +| 类型 | String | +| 默认值 | TIM | +| 改后生效方式 | 重启服务生效 | + +- avg_series_point_number_threshold + +| 名字 | avg_series_point_number_threshold | +| ------------ | ------------------------------------------------ | +| 描述 | 内存中平均每个时间序列点数最大值,达到触发 flush | +| 类型 | int32 | +| 默认值 | 100000 | +| 改后生效方式 | 重启服务生效 | + +- flush_thread_count + +| 名字 | flush_thread_count | +| ------------ | ------------------------------------------------------------ | +| 描述 | 当 IoTDB 将内存中的数据写入磁盘时,最多启动多少个线程来执行该操作。如果该值小于等于 0,那么采用机器所安装的 CPU 核的数量。默认值为 0。 | +| 类型 | int32 | +| 默认值 | 0 | +| 改后生效方式 | 重启服务生效 | + +- enable_partial_insert + +| 名字 | enable_partial_insert | +| ------------ | ------------------------------------------------------------ | +| 描述 | 在一次 insert 请求中,如果部分测点写入失败,是否继续写入其他测点。 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 重启服务生效 | + +- recovery_log_interval_in_ms + +| 名字 | recovery_log_interval_in_ms | +| ------------ | ----------------------------------------- | +| 描述 | data region的恢复过程中打印日志信息的间隔 | +| 类型 | Int32 | +| 默认值 | 5000 | +| 改后生效方式 | 重启服务生效 | + +- 0.13_data_insert_adapt + +| 名字 | 0.13_data_insert_adapt | +| ------------ | ------------------------------------------------------- | +| 描述 | 如果 0.13 版本客户端进行写入,需要将此配置项设置为 true | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- enable_tsfile_validation + +| 名字 | enable_tsfile_validation | +| ------------ | -------------------------------------- | +| 描述 | Flush, Load 或合并后验证 tsfile 正确性 | +| 类型 | boolean | +| 默认值 | false | +| 改后生效方式 | 热加载 | + +- tier_ttl_in_ms + +| 名字 | tier_ttl_in_ms | +| ------------ | ----------------------------------------- | +| 描述 | 定义每个层级负责的数据范围,通过 TTL 表示 | +| 类型 | long | +| 默认值 | -1 | +| 改后生效方式 | 重启服务生效 | + + +### 3.20 合并配置 + +- enable_seq_space_compaction + +| 名字 | enable_seq_space_compaction | +| ------------ | -------------------------------------- | +| 描述 | 顺序空间内合并,开启顺序文件之间的合并 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 热加载 | + +- enable_unseq_space_compaction + +| 名字 | enable_unseq_space_compaction | +| ------------ | -------------------------------------- | +| 描述 | 乱序空间内合并,开启乱序文件之间的合并 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 热加载 | + +- enable_cross_space_compaction + +| 名字 | enable_cross_space_compaction | +| ------------ | ------------------------------------------ | +| 描述 | 跨空间合并,开启将乱序文件合并到顺序文件中 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 热加载 | + +- enable_auto_repair_compaction + +| 名字 | enable_auto_repair_compaction | +| ------------ | ----------------------------- | +| 描述 | 启用通过合并操作自动修复未排序文件的功能 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 热加载 | + +- cross_selector + +| 名字 | cross_selector | +| ------------ |----------------| +| 描述 | 跨空间合并任务的选择器 | +| 类型 | String | +| 默认值 | rewrite | +| 改后生效方式 | 重启服务生效 | + +- cross_performer + +| 名字 | cross_performer | +| ------------ |-----------------------------------| +| 描述 | 跨空间合并任务的执行器,可选项:read_point 和 fast | +| 类型 | String | +| 默认值 | fast | +| 改后生效方式 | 热加载 | + +- inner_seq_selector + +| 名字 | inner_seq_selector | +| ------------ |------------------------------------------------------------------------| +| 描述 | 顺序空间内合并任务的选择器,可选 size_tiered_single_\target,size_tiered_multi_target | +| 类型 | String | +| 默认值 | size_tiered_multi_target | +| 改后生效方式 | 热加载 | + +- inner_seq_performer + +| 名字 | inner_seq_performer | +| ------------ |--------------------------------------| +| 描述 | 顺序空间内合并任务的执行器,可选项是 read_chunk 和 fast | +| 类型 | String | +| 默认值 | read_chunk | +| 改后生效方式 | 热加载 | + +- inner_unseq_selector + +| 名字 | inner_unseq_selector | +| ------------ |-------------------------------------------------------------------------| +| 描述 | 乱序空间内合并任务的选择器,可选 size_tiered_single_\target,size_tiered_multi_target | +| 类型 | String | +| 默认值 | size_tiered_multi_target | +| 改后生效方式 | 热加载 | + +- inner_unseq_performer + +| 名字 | inner_unseq_performer | +| ------------ |--------------------------------------| +| 描述 | 乱序空间内合并任务的执行器,可选项是 read_point 和 fast | +| 类型 | String | +| 默认值 | fast | +| 改后生效方式 | 热加载 | + +- compaction_priority + +| 名字 | compaction_priority | +| ------------ |-------------------------------------------------------------------------------------------| +| 描述 | 合并时的优先级。INNER_CROSS:优先执行空间内合并,优先减少文件数量;CROSS_INNER:优先执行跨空间合并,优先清理乱序文件;BALANCE:交替执行两种合并类型。 | +| 类型 | String | +| 默认值 | INNER_CROSS | +| 改后生效方式 | 重启服务生效 | + +- candidate_compaction_task_queue_size + +| 名字 | candidate_compaction_task_queue_size | +| ------------ | ------------------------------------ | +| 描述 | 待选合并任务队列容量 | +| 类型 | int32 | +| 默认值 | 50 | +| 改后生效方式 | 重启服务生效 | + +- target_compaction_file_size + +| 名字 | target_compaction_file_size | +| ------------ |-----------------------------------------------------------------------------------------------------------------------------------------------| +| 描述 | 该参数作用于两个场景:1. 空间内合并的目标文件大小 2. 跨空间合并中待选序列文件的大小需小于 target_compaction_file_size * 1.5 多数情况下,跨空间合并的目标文件大小不会超过此阈值,即便超出,幅度也不会过大 。 默认值:2GB ,单位:byte | +| 类型 | Long | +| 默认值 | 2147483648 | +| 改后生效方式 | 热加载 | + +- inner_compaction_total_file_size_threshold + +| 名字 | inner_compaction_total_file_size_threshold | +| ------------ |--------------------------------------------| +| 描述 | 空间内合并的文件总大小阈值,单位:byte | +| 类型 | Long | +| 默认值 | 10737418240 | +| 改后生效方式 | 热加载 | + +- inner_compaction_total_file_num_threshold + +| 名字 | inner_compaction_total_file_num_threshold | +| ------------ | ----------------------------------------- | +| 描述 | 空间内合并的文件总数阈值 | +| 类型 | int32 | +| 默认值 | 100 | +| 改后生效方式 | 热加载 | + +- max_level_gap_in_inner_compaction + +| 名字 | max_level_gap_in_inner_compaction | +| ------------ | -------------------------------------- | +| 描述 | 空间内合并筛选的最大层级差 | +| 类型 | int32 | +| 默认值 | 2 | +| 改后生效方式 | 热加载 | + +- target_chunk_size + +| 名字 | target_chunk_size | +| ------------ |--------------------------------------------------| +| 描述 | 刷盘与合并操作的目标数据块大小, 若内存表中某条时序数据的大小超过该值,数据会被刷盘至多个数据块 | +| 类型 | Long | +| 默认值 | 1600000 | +| 改后生效方式 | 重启服务生效 | + +- target_chunk_point_num + +| 名字 | target_chunk_point_num | +| ------------ |------------------------------------------------------| +| 描述 | 刷盘与合并操作中单个数据块的目标点数, 若内存表中某条时序数据的点数超过该值,数据会被刷盘至多个数据块中 | +| 类型 | Long | +| 默认值 | 100000 | +| 改后生效方式 | 重启服务生效 | + +- chunk_size_lower_bound_in_compaction + +| 名字 | chunk_size_lower_bound_in_compaction | +| ------------ |--------------------------------------| +| 描述 | 若数据块大小低于此阈值,则会被反序列化为数据点,默认值为128字节 | +| 类型 | Long | +| 默认值 | 128 | +| 改后生效方式 | 重启服务生效 | + +- chunk_point_num_lower_bound_in_compaction + +| 名字 | chunk_point_num_lower_bound_in_compaction | +| ------------ |------------------------------------------| +| 描述 | 若数据块内的数据点数低于此阈值,则会被反序列化为数据点 | +| 类型 | Long | +| 默认值 | 100 | +| 改后生效方式 | 重启服务生效 | + +- inner_compaction_candidate_file_num + +| 名字 | inner_compaction_candidate_file_num | +| ------------ | ---------------------------------------- | +| 描述 | 空间内合并待选文件筛选的文件数量要求 | +| 类型 | int32 | +| 默认值 | 30 | +| 改后生效方式 | 热加载 | + +- max_cross_compaction_candidate_file_num + +| 名字 | max_cross_compaction_candidate_file_num | +| ------------ | --------------------------------------- | +| 描述 | 跨空间合并待选文件筛选的文件数量上限 | +| 类型 | int32 | +| 默认值 | 500 | +| 改后生效方式 | 热加载 | + +- max_cross_compaction_candidate_file_size + +| 名字 | max_cross_compaction_candidate_file_size | +| ------------ |------------------------------------------| +| 描述 | 跨空间合并待选文件筛选的总大小上限 | +| 类型 | Long | +| 默认值 | 5368709120 | +| 改后生效方式 | 热加载 | + +- min_cross_compaction_unseq_file_level + +| 名字 | min_cross_compaction_unseq_file_level | +| ------------ |---------------------------------------| +| 描述 | 可被选为待选文件的乱序文件的最小空间内合并层级 | +| 类型 | int32 | +| 默认值 | 1 | +| 改后生效方式 | 热加载 | + +- compaction_thread_count + +| 名字 | compaction_thread_count | +| ------------ | ----------------------- | +| 描述 | 执行合并任务的线程数目 | +| 类型 | int32 | +| 默认值 | 10 | +| 改后生效方式 | 热加载 | + +- compaction_max_aligned_series_num_in_one_batch + +| 名字 | compaction_max_aligned_series_num_in_one_batch | +| ------------ | ---------------------------------------------- | +| 描述 | 对齐序列合并一次执行时处理的值列数量 | +| 类型 | int32 | +| 默认值 | 10 | +| 改后生效方式 | 热加载 | + +- compaction_schedule_interval_in_ms + +| 名字 | compaction_schedule_interval_in_ms | +| ------------ |------------------------------------| +| 描述 | 合并调度的时间间隔,单位 ms | +| 类型 | Long | +| 默认值 | 60000 | +| 改后生效方式 | 重启服务生效 | + +- compaction_write_throughput_mb_per_sec + +| 名字 | compaction_write_throughput_mb_per_sec | +| ------------ |----------------------------------------| +| 描述 | 合并操作每秒可达到的写入吞吐量上限, 小于或等于 0 的取值表示无限制 | +| 类型 | int32 | +| 默认值 | 16 | +| 改后生效方式 | 重启服务生效 | + +- compaction_read_throughput_mb_per_sec + +| 名字 | compaction_read_throughput_mb_per_sec | +| --------- | ---------------------------------------------------- | +| 描述 | 合并每秒读吞吐限制,单位为 megabyte,小于或等于 0 的取值表示无限制 | +| 类型 | int32 | +| 默认值 | 0 | +| Effective | 热加载 | + +- compaction_read_operation_per_sec + +| 名字 | compaction_read_operation_per_sec | +| --------- | ------------------------------------------- | +| 描述 | 合并每秒读操作数量限制,小于或等于 0 的取值表示无限制 | +| 类型 | int32 | +| 默认值 | 0 | +| Effective | 热加载 | + +- sub_compaction_thread_count + +| 名字 | sub_compaction_thread_count | +| ------------ | ------------------------------------------------------------ | +| 描述 | 每个合并任务的子任务线程数,只对跨空间合并和乱序空间内合并生效 | +| 类型 | int32 | +| 默认值 | 4 | +| 改后生效方式 | 热加载 | + +- inner_compaction_task_selection_disk_redundancy + +| 名字 | inner_compaction_task_selection_disk_redundancy | +| ------------ | ----------------------------------------------- | +| 描述 | 定义了磁盘可用空间的冗余值,仅用于内部压缩 | +| 类型 | double | +| 默认值 | 0.05 | +| 改后生效方式 | 热加载 | + +- inner_compaction_task_selection_mods_file_threshold + +| 名字 | inner_compaction_task_selection_mods_file_threshold | +| ------------ | --------------------------------------------------- | +| 描述 | 定义了mods文件大小的阈值,仅用于内部压缩。 | +| 类型 | long | +| 默认值 | 131072 | +| 改后生效方式 | 热加载 | + +- compaction_schedule_thread_num + +| 名字 | compaction_schedule_thread_num | +| ------------ | ------------------------------ | +| 描述 | 选择合并任务的线程数量 | +| 类型 | int32 | +| 默认值 | 4 | +| 改后生效方式 | 热加载 | + +### 3.21 写前日志配置 + +- wal_mode + +| 名字 | wal_mode | +| ------------ | ------------------------------------------------------------ | +| 描述 | 写前日志的写入模式. DISABLE 模式下会关闭写前日志;SYNC 模式下写入请求会在成功写入磁盘后返回; ASYNC 模式下写入请求返回时可能尚未成功写入磁盘后。 | +| 类型 | String | +| 默认值 | ASYNC | +| 改后生效方式 | 重启服务生效 | + +- max_wal_nodes_num + +| 名字 | max_wal_nodes_num | +| ------------ | ----------------------------------------------------- | +| 描述 | 写前日志节点的最大数量,默认值 0 表示数量由系统控制。 | +| 类型 | int32 | +| 默认值 | 0 | +| 改后生效方式 | 重启服务生效 | + +- wal_async_mode_fsync_delay_in_ms + +| 名字 | wal_async_mode_fsync_delay_in_ms | +| ------------ | ------------------------------------------- | +| 描述 | async 模式下写前日志调用 fsync 前的等待时间 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 热加载 | + +- wal_sync_mode_fsync_delay_in_ms + +| 名字 | wal_sync_mode_fsync_delay_in_ms | +| ------------ | ------------------------------------------ | +| 描述 | sync 模式下写前日志调用 fsync 前的等待时间 | +| 类型 | int32 | +| 默认值 | 3 | +| 改后生效方式 | 热加载 | + +- wal_buffer_size_in_byte + +| 名字 | wal_buffer_size_in_byte | +| ------------ | ----------------------- | +| 描述 | 写前日志的 buffer 大小 | +| 类型 | int32 | +| 默认值 | 33554432 | +| 改后生效方式 | 重启服务生效 | + +- wal_buffer_queue_capacity + +| 名字 | wal_buffer_queue_capacity | +| ------------ | ------------------------- | +| 描述 | 写前日志阻塞队列大小上限 | +| 类型 | int32 | +| 默认值 | 500 | +| 改后生效方式 | 重启服务生效 | + +- wal_file_size_threshold_in_byte + +| 名字 | wal_file_size_threshold_in_byte | +| ------------ | ------------------------------- | +| 描述 | 写前日志文件封口阈值 | +| 类型 | int32 | +| 默认值 | 31457280 | +| 改后生效方式 | 热加载 | + +- wal_min_effective_info_ratio + +| 名字 | wal_min_effective_info_ratio | +| ------------ | ---------------------------- | +| 描述 | 写前日志最小有效信息比 | +| 类型 | double | +| 默认值 | 0.1 | +| 改后生效方式 | 热加载 | + +- wal_memtable_snapshot_threshold_in_byte + +| 名字 | wal_memtable_snapshot_threshold_in_byte | +| ------------ | ---------------------------------------- | +| 描述 | 触发写前日志中内存表快照的内存表大小阈值 | +| 类型 | int64 | +| 默认值 | 8388608 | +| 改后生效方式 | 热加载 | + +- max_wal_memtable_snapshot_num + +| 名字 | max_wal_memtable_snapshot_num | +| ------------ | ------------------------------ | +| 描述 | 写前日志中内存表的最大数量上限 | +| 类型 | int32 | +| 默认值 | 1 | +| 改后生效方式 | 热加载 | + +- delete_wal_files_period_in_ms + +| 名字 | delete_wal_files_period_in_ms | +| ------------ | ----------------------------- | +| 描述 | 删除写前日志的检查间隔 | +| 类型 | int64 | +| 默认值 | 20000 | +| 改后生效方式 | 热加载 | + +- wal_throttle_threshold_in_byte + +| 名字 | wal_throttle_threshold_in_byte | +| ------------ | ------------------------------------------------------------ | +| 描述 | 在IoTConsensus中,当WAL文件的大小达到一定阈值时,会开始对写入操作进行节流,以控制写入速度。 | +| 类型 | long | +| 默认值 | 53687091200 | +| 改后生效方式 | 热加载 | + +- iot_consensus_cache_window_time_in_ms + +| 名字 | iot_consensus_cache_window_time_in_ms | +| ------------ | ---------------------------------------- | +| 描述 | 在IoTConsensus中,写缓存的最大等待时间。 | +| 类型 | long | +| 默认值 | -1 | +| 改后生效方式 | 热加载 | + +- enable_wal_compression + +| 名字 | iot_consensus_cache_window_time_in_ms | +| ------------ | ------------------------------------- | +| 描述 | 用于控制是否启用WAL的压缩。 | +| 类型 | boolean | +| 默认值 | true | +| 改后生效方式 | 热加载 | + +### 3.22 IoT 共识协议配置 + +当Region配置了IoTConsensus共识协议之后,下述的配置项才会生效 + +- data_region_iot_max_log_entries_num_per_batch + +| 名字 | data_region_iot_max_log_entries_num_per_batch | +| ------------ | --------------------------------------------- | +| 描述 | IoTConsensus batch 的最大日志条数 | +| 类型 | int32 | +| 默认值 | 1024 | +| 改后生效方式 | 重启服务生效 | + +- data_region_iot_max_size_per_batch + +| 名字 | data_region_iot_max_size_per_batch | +| ------------ | ---------------------------------- | +| 描述 | IoTConsensus batch 的最大大小 | +| 类型 | int32 | +| 默认值 | 16777216 | +| 改后生效方式 | 重启服务生效 | + +- data_region_iot_max_pending_batches_num + +| 名字 | data_region_iot_max_pending_batches_num | +| ------------ | --------------------------------------- | +| 描述 | IoTConsensus batch 的流水线并发阈值 | +| 类型 | int32 | +| 默认值 | 5 | +| 改后生效方式 | 重启服务生效 | + +- data_region_iot_max_memory_ratio_for_queue + +| 名字 | data_region_iot_max_memory_ratio_for_queue | +| ------------ | ------------------------------------------ | +| 描述 | IoTConsensus 队列内存分配比例 | +| 类型 | double | +| 默认值 | 0.6 | +| 改后生效方式 | 重启服务生效 | + +- region_migration_speed_limit_bytes_per_second + +| 名字 | region_migration_speed_limit_bytes_per_second | +| ------------ | --------------------------------------------- | +| 描述 | 定义了在region迁移过程中,数据传输的最大速率 | +| 类型 | long | +| 默认值 | 33554432 | +| 改后生效方式 | 重启服务生效 | + +### 3.23 TsFile配置 + +- group_size_in_byte + +| 名字 | group_size_in_byte | +| ------------ | ---------------------------------------------- | +| 描述 | 每次将内存中的数据写入到磁盘时的最大写入字节数 | +| 类型 | int32 | +| 默认值 | 134217728 | +| 改后生效方式 | 热加载 | + +- page_size_in_byte + +| 名字 | page_size_in_byte | +| ------------ | ---------------------------------------------------- | +| 描述 | 内存中每个列写出时,写成的单页最大的大小,单位为字节 | +| 类型 | int32 | +| 默认值 | 65536 | +| 改后生效方式 | 热加载 | + +- max_number_of_points_in_page + +| 名字 | max_number_of_points_in_page | +| ------------ | ------------------------------------------------- | +| 描述 | 一个页中最多包含的数据点(时间戳-值的二元组)数量 | +| 类型 | int32 | +| 默认值 | 10000 | +| 改后生效方式 | 热加载 | + +- pattern_matching_threshold + +| 名字 | pattern_matching_threshold | +| ------------ | ------------------------------ | +| 描述 | 正则表达式匹配时最大的匹配次数 | +| 类型 | int32 | +| 默认值 | 1000000 | +| 改后生效方式 | 热加载 | + +- float_precision + +| 名字 | float_precision | +| ------------ | ------------------------------------------------------------ | +| 描述 | 浮点数精度,为小数点后数字的位数 | +| 类型 | int32 | +| 默认值 | 默认为 2 位。注意:32 位浮点数的十进制精度为 7 位,64 位浮点数的十进制精度为 15 位。如果设置超过机器精度将没有实际意义。 | +| 改后生效方式 | 热加载 | + +- value_encoder + +| 名字 | value_encoder | +| ------------ | ------------------------------------- | +| 描述 | value 列编码方式 | +| 类型 | 枚举 String: “TS_2DIFF”,“PLAIN”,“RLE” | +| 默认值 | PLAIN | +| 改后生效方式 | 热加载 | + +- compressor + +| 名字 | compressor | +| ------------ | ------------------------------------------------------------ | +| 描述 | 数据压缩方法; 对齐序列中时间列的压缩方法 | +| 类型 | 枚举 String : "UNCOMPRESSED", "SNAPPY", "LZ4", "ZSTD", "LZMA2" | +| 默认值 | LZ4 | +| 改后生效方式 | 热加载 | + +- encrypt_flag + +| 名字 | encrypt_flag | +| ------------ | ---------------------------- | +| 描述 | 用于开启或关闭数据加密功能。 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- encrypt_type + +| 名字 | encrypt_type | +| ------------ | ------------------------------------- | +| 描述 | 数据加密的方法。 | +| 类型 | String | +| 默认值 | org.apache.tsfile.encrypt.UNENCRYPTED | +| 改后生效方式 | 重启服务生效 | + +- encrypt_key_path + +| 名字 | encrypt_key_path | +| ------------ | ---------------------------- | +| 描述 | 数据加密使用的密钥来源路径。 | +| 类型 | String | +| 默认值 | 无 | +| 改后生效方式 | 重启服务生效 | + +### 3.24 授权配置 + +- authorizer_provider_class + +| 名字 | authorizer_provider_class | +| ------------ | ------------------------------------------------------------ | +| 描述 | 权限服务的类名 | +| 类型 | String | +| 默认值 | org.apache.iotdb.commons.auth.authorizer.LocalFileAuthorizer | +| 改后生效方式 | 重启服务生效 | + +- iotdb_server_encrypt_decrypt_provider + +| 名字 | iotdb_server_encrypt_decrypt_provider | +| ------------ | ------------------------------------------------------------ | +| 描述 | 用于用户密码加密的类 | +| 类型 | String | +| 默认值 | org.apache.iotdb.commons.security.encrypt.MessageDigestEncrypt | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- iotdb_server_encrypt_decrypt_provider_parameter + +| 名字 | iotdb_server_encrypt_decrypt_provider_parameter | +| ------------ | ----------------------------------------------- | +| 描述 | 用于初始化用户密码加密类的参数 | +| 类型 | String | +| 默认值 | 无 | +| 改后生效方式 | 仅允许在第一次启动服务前修改 | + +- author_cache_size + +| 名字 | author_cache_size | +| ------------ | ------------------------ | +| 描述 | 用户缓存与角色缓存的大小 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- author_cache_expire_time + +| 名字 | author_cache_expire_time | +| ------------ | -------------------------------------- | +| 描述 | 用户缓存与角色缓存的有效期,单位为分钟 | +| 类型 | int32 | +| 默认值 | 30 | +| 改后生效方式 | 重启服务生效 | + +### 3.25 UDF配置 + +- udf_initial_byte_array_length_for_memory_control + +| 名字 | udf_initial_byte_array_length_for_memory_control | +| ------------ | ------------------------------------------------------------ | +| 描述 | 用于评估UDF查询中文本字段的内存使用情况。建议将此值设置为略大于所有文本的平均长度记录。 | +| 类型 | int32 | +| 默认值 | 48 | +| 改后生效方式 | 重启服务生效 | + +- udf_memory_budget_in_mb + +| 名字 | udf_memory_budget_in_mb | +| ------------ | ------------------------------------------------------------ | +| 描述 | 在一个UDF查询中使用多少内存(以 MB 为单位)。上限为已分配内存的 20% 用于读取。 | +| 类型 | Float | +| 默认值 | 30.0 | +| 改后生效方式 | 重启服务生效 | + +- udf_reader_transformer_collector_memory_proportion + +| 名字 | udf_reader_transformer_collector_memory_proportion | +| ------------ | --------------------------------------------------------- | +| 描述 | UDF内存分配比例。参数形式为a : b : c,其中a、b、c为整数。 | +| 类型 | String | +| 默认值 | 1:1:1 | +| 改后生效方式 | 重启服务生效 | + +- udf_lib_dir + +| 名字 | udf_lib_dir | +| ------------ | ---------------------------- | +| 描述 | UDF 日志及jar文件存储路径 | +| 类型 | String | +| 默认值 | ext/udf(Windows:ext\\udf) | +| 改后生效方式 | 重启服务生效 | + +### 3.26 触发器配置 + +- trigger_lib_dir + +| 名字 | trigger_lib_dir | +| ------------ | ----------------------- | +| 描述 | 触发器 JAR 包存放的目录 | +| 类型 | String | +| 默认值 | ext/trigger | +| 改后生效方式 | 重启服务生效 | + +- stateful_trigger_retry_num_when_not_found + +| 名字 | stateful_trigger_retry_num_when_not_found | +| ------------ | ---------------------------------------------- | +| 描述 | 有状态触发器触发无法找到触发器实例时的重试次数 | +| 类型 | Int32 | +| 默认值 | 3 | +| 改后生效方式 | 重启服务生效 | + +### 3.27 SELECT-INTO配置 + +- into_operation_buffer_size_in_byte + +| 名字 | into_operation_buffer_size_in_byte | +| ------------ | ------------------------------------------------------------ | +| 描述 | 执行 select-into 语句时,待写入数据占用的最大内存(单位:Byte) | +| 类型 | long | +| 默认值 | 104857600 | +| 改后生效方式 | 热加载 | + +- select_into_insert_tablet_plan_row_limit + +| 名字 | select_into_insert_tablet_plan_row_limit | +| ------------ | ------------------------------------------------------------ | +| 描述 | 执行 select-into 语句时,一个 insert-tablet-plan 中可以处理的最大行数 | +| 类型 | int32 | +| 默认值 | 10000 | +| 改后生效方式 | 热加载 | + +- into_operation_execution_thread_count + +| 名字 | into_operation_execution_thread_count | +| ------------ | ------------------------------------------ | +| 描述 | SELECT INTO 中执行写入任务的线程池的线程数 | +| 类型 | int32 | +| 默认值 | 2 | +| 改后生效方式 | 重启服务生效 | + +### 3.28 连续查询配置 +- continuous_query_submit_thread_count + +| 名字 | continuous_query_execution_thread | +| ------------ | --------------------------------- | +| 描述 | 执行连续查询任务的线程池的线程数 | +| 类型 | int32 | +| 默认值 | 2 | +| 改后生效方式 | 重启服务生效 | + +- continuous_query_min_every_interval_in_ms + +| 名字 | continuous_query_min_every_interval_in_ms | +| ------------ | ----------------------------------------- | +| 描述 | 连续查询执行时间间隔的最小值 | +| 类型 | long (duration) | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +### 3.29 PIPE配置 + +- pipe_lib_dir + +| 名字 | pipe_lib_dir | +| ------------ | -------------------------- | +| 描述 | 自定义 Pipe 插件的存放目录 | +| 类型 | string | +| 默认值 | ext/pipe | +| 改后生效方式 | 暂不支持修改 | + +- pipe_subtask_executor_max_thread_num + +| 名字 | pipe_subtask_executor_max_thread_num | +| ------------ | ------------------------------------------------------------ | +| 描述 | pipe 子任务 processor、sink 中各自可以使用的最大线程数。实际值将是 min(pipe_subtask_executor_max_thread_num, max(1, CPU核心数 / 2))。 | +| 类型 | int | +| 默认值 | 5 | +| 改后生效方式 | 重启服务生效 | + +- pipe_sink_timeout_ms + +| 名字 | pipe_sink_timeout_ms | +| ------------ | --------------------------------------------- | +| 描述 | thrift 客户端的连接超时时间(以毫秒为单位)。 | +| 类型 | int | +| 默认值 | 900000 | +| 改后生效方式 | 重启服务生效 | + +- pipe_sink_selector_number + +| 名字 | pipe_sink_selector_number | +| ------------ | ------------------------------------------------------------ | +| 描述 | 在 iotdb-thrift-async-sink 插件中可以使用的最大执行结果处理线程数量。 建议将此值设置为小于或等于 pipe_sink_max_client_number。 | +| 类型 | int | +| 默认值 | 4 | +| 改后生效方式 | 重启服务生效 | + +- pipe_sink_max_client_number + +| 名字 | pipe_sink_max_client_number | +| ------------ | ----------------------------------------------------------- | +| 描述 | 在 iotdb-thrift-async-sink 插件中可以使用的最大客户端数量。 | +| 类型 | int | +| 默认值 | 16 | +| 改后生效方式 | 重启服务生效 | + +- pipe_air_gap_receiver_enabled + +| 名字 | pipe_air_gap_receiver_enabled | +| ------------ | ------------------------------------------------------------ | +| 描述 | 是否启用通过网闸接收 pipe 数据。接收器只能在 tcp 模式下返回 0 或 1,以指示数据是否成功接收。 \| | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- pipe_air_gap_receiver_port + +| 名字 | pipe_air_gap_receiver_port | +| ------------ | ------------------------------------ | +| 描述 | 服务器通过网闸接收 pipe 数据的端口。 | +| 类型 | int | +| 默认值 | 9780 | +| 改后生效方式 | 重启服务生效 | + +- pipe_all_sinks_rate_limit_bytes_per_second + +| 名字 | pipe_all_sinks_rate_limit_bytes_per_second | +| ------------ | ------------------------------------------------------------ | +| 描述 | 所有 pipe sink 每秒可以传输的总字节数。当给定的值小于或等于 0 时,表示没有限制。默认值是 -1,表示没有限制。 | +| 类型 | double | +| 默认值 | -1 | +| 改后生效方式 | 热加载 | + +### 3.30 Ratis共识协议配置 + +当Region配置了RatisConsensus共识协议之后,下述的配置项才会生效 + +- config_node_ratis_log_appender_buffer_size_max + +| 名字 | config_node_ratis_log_appender_buffer_size_max | +| ------------ | ---------------------------------------------- | +| 描述 | confignode 一次同步日志RPC最大的传输字节限制 | +| 类型 | int32 | +| 默认值 | 16777216 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_log_appender_buffer_size_max + +| 名字 | schema_region_ratis_log_appender_buffer_size_max | +| ------------ | ------------------------------------------------ | +| 描述 | schema region 一次同步日志RPC最大的传输字节限制 | +| 类型 | int32 | +| 默认值 | 16777216 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_log_appender_buffer_size_max + +| 名字 | data_region_ratis_log_appender_buffer_size_max | +| ------------ | ---------------------------------------------- | +| 描述 | data region 一次同步日志RPC最大的传输字节限制 | +| 类型 | int32 | +| 默认值 | 16777216 | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_snapshot_trigger_threshold + +| 名字 | config_node_ratis_snapshot_trigger_threshold | +| ------------ | -------------------------------------------- | +| 描述 | confignode 触发snapshot需要的日志条数 | +| 类型 | int32 | +| 默认值 | 400,000 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_snapshot_trigger_threshold + +| 名字 | schema_region_ratis_snapshot_trigger_threshold | +| ------------ | ---------------------------------------------- | +| 描述 | schema region 触发snapshot需要的日志条数 | +| 类型 | int32 | +| 默认值 | 400,000 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_snapshot_trigger_threshold + +| 名字 | data_region_ratis_snapshot_trigger_threshold | +| ------------ | -------------------------------------------- | +| 描述 | data region 触发snapshot需要的日志条数 | +| 类型 | int32 | +| 默认值 | 400,000 | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_log_unsafe_flush_enable + +| 名字 | config_node_ratis_log_unsafe_flush_enable | +| ------------ | ----------------------------------------- | +| 描述 | confignode 是否允许Raft日志异步刷盘 | +| 类型 | boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_log_unsafe_flush_enable + +| 名字 | schema_region_ratis_log_unsafe_flush_enable | +| ------------ | ------------------------------------------- | +| 描述 | schema region 是否允许Raft日志异步刷盘 | +| 类型 | boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_log_unsafe_flush_enable + +| 名字 | data_region_ratis_log_unsafe_flush_enable | +| ------------ | ----------------------------------------- | +| 描述 | data region 是否允许Raft日志异步刷盘 | +| 类型 | boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_log_segment_size_max_in_byte + +| 名字 | config_node_ratis_log_segment_size_max_in_byte | +| ------------ | ---------------------------------------------- | +| 描述 | confignode 一个RaftLog日志段文件的大小 | +| 类型 | int32 | +| 默认值 | 25165824 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_log_segment_size_max_in_byte + +| 名字 | schema_region_ratis_log_segment_size_max_in_byte | +| ------------ | ------------------------------------------------ | +| 描述 | schema region 一个RaftLog日志段文件的大小 | +| 类型 | int32 | +| 默认值 | 25165824 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_log_segment_size_max_in_byte + +| 名字 | data_region_ratis_log_segment_size_max_in_byte | +| ------------ | ---------------------------------------------- | +| 描述 | data region 一个RaftLog日志段文件的大小 | +| 类型 | int32 | +| 默认值 | 25165824 | +| 改后生效方式 | 重启服务生效 | + +- config_node_simple_consensus_log_segment_size_max_in_byte + +| 名字 | data_region_ratis_log_segment_size_max_in_byte | +| ------------ | ---------------------------------------------- | +| 描述 | Confignode 简单共识协议一个Log日志段文件的大小 | +| 类型 | int32 | +| 默认值 | 25165824 | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_grpc_flow_control_window + +| 名字 | config_node_ratis_grpc_flow_control_window | +| ------------ | ------------------------------------------ | +| 描述 | confignode grpc 流式拥塞窗口大小 | +| 类型 | int32 | +| 默认值 | 4194304 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_grpc_flow_control_window + +| 名字 | schema_region_ratis_grpc_flow_control_window | +| ------------ | -------------------------------------------- | +| 描述 | schema region grpc 流式拥塞窗口大小 | +| 类型 | int32 | +| 默认值 | 4194304 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_grpc_flow_control_window + +| 名字 | data_region_ratis_grpc_flow_control_window | +| ------------ | ------------------------------------------ | +| 描述 | data region grpc 流式拥塞窗口大小 | +| 类型 | int32 | +| 默认值 | 4194304 | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_grpc_leader_outstanding_appends_max + +| 名字 | config_node_ratis_grpc_leader_outstanding_appends_max | +| ------------ | ----------------------------------------------------- | +| 描述 | config node grpc 流水线并发阈值 | +| 类型 | int32 | +| 默认值 | 128 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_grpc_leader_outstanding_appends_max + +| 名字 | schema_region_ratis_grpc_leader_outstanding_appends_max | +| ------------ | ------------------------------------------------------- | +| 描述 | schema region grpc 流水线并发阈值 | +| 类型 | int32 | +| 默认值 | 128 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_grpc_leader_outstanding_appends_max + +| 名字 | data_region_ratis_grpc_leader_outstanding_appends_max | +| ------------ | ----------------------------------------------------- | +| 描述 | data region grpc 流水线并发阈值 | +| 类型 | int32 | +| 默认值 | 128 | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_log_force_sync_num + +| 名字 | config_node_ratis_log_force_sync_num | +| ------------ | ------------------------------------ | +| 描述 | config node fsync 阈值 | +| 类型 | int32 | +| 默认值 | 128 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_log_force_sync_num + +| 名字 | schema_region_ratis_log_force_sync_num | +| ------------ | -------------------------------------- | +| 描述 | schema region fsync 阈值 | +| 类型 | int32 | +| 默认值 | 128 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_log_force_sync_num + +| 名字 | data_region_ratis_log_force_sync_num | +| ------------ | ------------------------------------ | +| 描述 | data region fsync 阈值 | +| 类型 | int32 | +| 默认值 | 128 | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_rpc_leader_election_timeout_min_ms + +| 名字 | config_node_ratis_rpc_leader_election_timeout_min_ms | +| ------------ | ---------------------------------------------------- | +| 描述 | confignode leader 选举超时最小值 | +| 类型 | int32 | +| 默认值 | 2000ms | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_rpc_leader_election_timeout_min_ms + +| 名字 | schema_region_ratis_rpc_leader_election_timeout_min_ms | +| ------------ | ------------------------------------------------------ | +| 描述 | schema region leader 选举超时最小值 | +| 类型 | int32 | +| 默认值 | 2000ms | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_rpc_leader_election_timeout_min_ms + +| 名字 | data_region_ratis_rpc_leader_election_timeout_min_ms | +| ------------ | ---------------------------------------------------- | +| 描述 | data region leader 选举超时最小值 | +| 类型 | int32 | +| 默认值 | 2000ms | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_rpc_leader_election_timeout_max_ms + +| 名字 | config_node_ratis_rpc_leader_election_timeout_max_ms | +| ------------ | ---------------------------------------------------- | +| 描述 | confignode leader 选举超时最大值 | +| 类型 | int32 | +| 默认值 | 4000ms | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_rpc_leader_election_timeout_max_ms + +| 名字 | schema_region_ratis_rpc_leader_election_timeout_max_ms | +| ------------ | ------------------------------------------------------ | +| 描述 | schema region leader 选举超时最大值 | +| 类型 | int32 | +| 默认值 | 4000ms | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_rpc_leader_election_timeout_max_ms + +| 名字 | data_region_ratis_rpc_leader_election_timeout_max_ms | +| ------------ | ---------------------------------------------------- | +| 描述 | data region leader 选举超时最大值 | +| 类型 | int32 | +| 默认值 | 4000ms | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_request_timeout_ms + +| 名字 | config_node_ratis_request_timeout_ms | +| ------------ | ------------------------------------ | +| 描述 | confignode Raft 客户端重试超时 | +| 类型 | int32 | +| 默认值 | 10000 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_request_timeout_ms + +| 名字 | schema_region_ratis_request_timeout_ms | +| ------------ | -------------------------------------- | +| 描述 | schema region Raft 客户端重试超时 | +| 类型 | int32 | +| 默认值 | 10000 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_request_timeout_ms + +| 名字 | data_region_ratis_request_timeout_ms | +| ------------ | ------------------------------------ | +| 描述 | data region Raft 客户端重试超时 | +| 类型 | int32 | +| 默认值 | 10000 | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_max_retry_attempts + +| 名字 | config_node_ratis_max_retry_attempts | +| ------------ | ------------------------------------ | +| 描述 | confignode Raft客户端最大重试次数 | +| 类型 | int32 | +| 默认值 | 10 | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_initial_sleep_time_ms + +| 名字 | config_node_ratis_initial_sleep_time_ms | +| ------------ | --------------------------------------- | +| 描述 | confignode Raft客户端初始重试睡眠时长 | +| 类型 | int32 | +| 默认值 | 100ms | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_max_sleep_time_ms + +| 名字 | config_node_ratis_max_sleep_time_ms | +| ------------ | ------------------------------------- | +| 描述 | confignode Raft客户端最大重试睡眠时长 | +| 类型 | int32 | +| 默认值 | 10000 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_max_retry_attempts + +| 名字 | schema_region_ratis_max_retry_attempts | +| ------------ | -------------------------------------- | +| 描述 | schema region Raft客户端最大重试次数 | +| 类型 | int32 | +| 默认值 | 10 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_initial_sleep_time_ms + +| 名字 | schema_region_ratis_initial_sleep_time_ms | +| ------------ | ----------------------------------------- | +| 描述 | schema region Raft客户端初始重试睡眠时长 | +| 类型 | int32 | +| 默认值 | 100ms | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_max_sleep_time_ms + +| 名字 | schema_region_ratis_max_sleep_time_ms | +| ------------ | ---------------------------------------- | +| 描述 | schema region Raft客户端最大重试睡眠时长 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_max_retry_attempts + +| 名字 | data_region_ratis_max_retry_attempts | +| ------------ | ------------------------------------ | +| 描述 | data region Raft客户端最大重试次数 | +| 类型 | int32 | +| 默认值 | 10 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_initial_sleep_time_ms + +| 名字 | data_region_ratis_initial_sleep_time_ms | +| ------------ | --------------------------------------- | +| 描述 | data region Raft客户端初始重试睡眠时长 | +| 类型 | int32 | +| 默认值 | 100ms | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_max_sleep_time_ms + +| 名字 | data_region_ratis_max_sleep_time_ms | +| ------------ | -------------------------------------- | +| 描述 | data region Raft客户端最大重试睡眠时长 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- ratis_first_election_timeout_min_ms + +| 名字 | ratis_first_election_timeout_min_ms | +| ------------ | ----------------------------------- | +| 描述 | Ratis协议首次选举最小超时时间 | +| 类型 | int64 | +| 默认值 | 50 (ms) | +| 改后生效方式 | 重启服务生效 | + +- ratis_first_election_timeout_max_ms + +| 名字 | ratis_first_election_timeout_max_ms | +| ------------ | ----------------------------------- | +| 描述 | Ratis协议首次选举最大超时时间 | +| 类型 | int64 | +| 默认值 | 150 (ms) | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_preserve_logs_num_when_purge + +| 名字 | config_node_ratis_preserve_logs_num_when_purge | +| ------------ | ---------------------------------------------- | +| 描述 | confignode snapshot后保持一定数量日志不删除 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_preserve_logs_num_when_purge + +| 名字 | schema_region_ratis_preserve_logs_num_when_purge | +| ------------ | ------------------------------------------------ | +| 描述 | schema region snapshot后保持一定数量日志不删除 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_preserve_logs_num_when_purge + +| 名字 | data_region_ratis_preserve_logs_num_when_purge | +| ------------ | ---------------------------------------------- | +| 描述 | data region snapshot后保持一定数量日志不删除 | +| 类型 | int32 | +| 默认值 | 1000 | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_log_max_size + +| 名字 | config_node_ratis_log_max_size | +| ------------ | ----------------------------------- | +| 描述 | config node磁盘Raft Log最大占用空间 | +| 类型 | int64 | +| 默认值 | 2147483648 (2GB) | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_log_max_size + +| 名字 | schema_region_ratis_log_max_size | +| ------------ | -------------------------------------- | +| 描述 | schema region 磁盘Raft Log最大占用空间 | +| 类型 | int64 | +| 默认值 | 2147483648 (2GB) | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_log_max_size + +| 名字 | data_region_ratis_log_max_size | +| ------------ | ------------------------------------ | +| 描述 | data region 磁盘Raft Log最大占用空间 | +| 类型 | int64 | +| 默认值 | 21474836480 (20GB) | +| 改后生效方式 | 重启服务生效 | + +- config_node_ratis_periodic_snapshot_interval + +| 名字 | config_node_ratis_periodic_snapshot_interval | +| ------------ | -------------------------------------------- | +| 描述 | config node定期snapshot的间隔时间 | +| 类型 | int64 | +| 默认值 | 86400 (秒) | +| 改后生效方式 | 重启服务生效 | + +- schema_region_ratis_periodic_snapshot_interval + +| 名字 | schema_region_ratis_preserve_logs_num_when_purge | +| ------------ | ------------------------------------------------ | +| 描述 | schema region定期snapshot的间隔时间 | +| 类型 | int64 | +| 默认值 | 86400 (秒) | +| 改后生效方式 | 重启服务生效 | + +- data_region_ratis_periodic_snapshot_interval + +| 名字 | data_region_ratis_preserve_logs_num_when_purge | +| ------------ | ---------------------------------------------- | +| 描述 | data region定期snapshot的间隔时间 | +| 类型 | int64 | +| 默认值 | 86400 (秒) | +| 改后生效方式 | 重启服务生效 | + +### 3.31 IoTConsensusV2配置 + +- iot_consensus_v2_pipeline_size + +| 名字 | iot_consensus_v2_pipeline_size | +| ------------ | ------------------------------------------------------------ | +| 描述 | IoTConsensus V2中连接器(connector)和接收器(receiver)的默认事件缓冲区大小。 | +| 类型 | int | +| 默认值 | 5 | +| 改后生效方式 | 重启服务生效 | + +- iot_consensus_v2_mode + +| 名字 | iot_consensus_v2_pipeline_size | +| ------------ | ----------------------------------- | +| 描述 | IoTConsensus V2使用的共识协议模式。 | +| 类型 | String | +| 默认值 | batch | +| 改后生效方式 | 重启服务生效 | + +### 3.32 Procedure 配置 + +- procedure_core_worker_thread_count + +| 名字 | procedure_core_worker_thread_count | +| ------------ | ---------------------------------- | +| 描述 | 工作线程数量 | +| 类型 | int32 | +| 默认值 | 4 | +| 改后生效方式 | 重启服务生效 | + +- procedure_completed_clean_interval + +| 名字 | procedure_completed_clean_interval | +| ------------ | ---------------------------------- | +| 描述 | 清理已完成的 procedure 时间间隔 | +| 类型 | int32 | +| 默认值 | 30(s) | +| 改后生效方式 | 重启服务生效 | + +- procedure_completed_evict_ttl + +| 名字 | procedure_completed_evict_ttl | +| ------------ | --------------------------------- | +| 描述 | 已完成的 procedure 的数据保留时间 | +| 类型 | int32 | +| 默认值 | 60(s) | +| 改后生效方式 | 重启服务生效 | + +### 3.33 MQTT代理配置 + +- enable_mqtt_service + +| 名字 | enable_mqtt_service。 | +| ------------ | --------------------- | +| 描述 | 是否开启MQTT服务 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 热加载 | + +- mqtt_host + +| 名字 | mqtt_host | +| ------------ | -------------------- | +| 描述 | MQTT服务绑定的host。 | +| 类型 | String | +| 默认值 | 127.0.0.1 | +| 改后生效方式 | 热加载 | + +- mqtt_port + +| 名字 | mqtt_port | +| ------------ | -------------------- | +| 描述 | MQTT服务绑定的port。 | +| 类型 | int32 | +| 默认值 | 1883 | +| 改后生效方式 | 热加载 | + +- mqtt_handler_pool_size + +| 名字 | mqtt_handler_pool_size | +| ------------ | ---------------------------------- | +| 描述 | 用于处理MQTT消息的处理程序池大小。 | +| 类型 | int32 | +| 默认值 | 1 | +| 改后生效方式 | 热加载 | + +- mqtt_payload_formatter + +| 名字 | mqtt_payload_formatter | +| ------------ | ---------------------------- | +| 描述 | MQTT消息有效负载格式化程序。 | +| 类型 | String | +| 默认值 | json | +| 改后生效方式 | 热加载 | + +- mqtt_max_message_size + +| 名字 | mqtt_max_message_size | +| ------------ | ------------------------------------ | +| 描述 | MQTT消息的最大长度(以字节为单位)。 | +| 类型 | int32 | +| 默认值 | 1048576 | +| 改后生效方式 | 热加载 | + +### 3.34 审计日志配置 + +- enable_audit_log + +| 名字 | enable_audit_log | +| ------------ | ------------------------------ | +| 描述 | 用于控制是否启用审计日志功能。 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 重启服务生效 | + +- audit_log_storage + +| 名字 | audit_log_storage | +| ------------ | -------------------------- | +| 描述 | 定义了审计日志的输出位置。 | +| 类型 | String | +| 默认值 | IOTDB,LOGGER | +| 改后生效方式 | 重启服务生效 | + +- audit_log_operation + +| 名字 | audit_log_operation | +| ------------ | -------------------------------------- | +| 描述 | 定义了哪些类型的操作需要记录审计日志。 | +| 类型 | String | +| 默认值 | DML,DDL,QUERY | +| 改后生效方式 | 重启服务生效 | + +- enable_audit_log_for_native_insert_api + +| 名字 | enable_audit_log_for_native_insert_api | +| ------------ | -------------------------------------- | +| 描述 | 用于控制本地写入API是否记录审计日志。 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 重启服务生效 | + +### 3.35 白名单配置 +- enable_white_list + +| 名字 | enable_white_list | +| ------------ | ----------------- | +| 描述 | 是否启用白名单。 | +| 类型 | Boolean | +| 默认值 | false | +| 改后生效方式 | 热加载 | + +### 3.36 IoTDB-AI 配置 + +- model_inference_execution_thread_count + +| 名字 | model_inference_execution_thread_count | +| ------------ | -------------------------------------- | +| 描述 | 用于模型推理操作的线程数。 | +| 类型 | int | +| 默认值 | 5 | +| 改后生效方式 | 重启服务生效 | + +### 3.37 TsFile 主动监听&加载功能配置 + +- load_clean_up_task_execution_delay_time_seconds + +| 名字 | load_clean_up_task_execution_delay_time_seconds | +| ------------ | ------------------------------------------------------------ | +| 描述 | 在加载TsFile失败后,系统将等待多长时间才会执行清理任务来清除这些未成功加载的TsFile。 | +| 类型 | int | +| 默认值 | 1800 | +| 改后生效方式 | 热加载 | + +- load_write_throughput_bytes_per_second + +| 名字 | load_write_throughput_bytes_per_second | +| ------------ | -------------------------------------- | +| 描述 | 加载TsFile时磁盘写入的最大字节数每秒。 | +| 类型 | int | +| 默认值 | -1 | +| 改后生效方式 | 热加载 | + +- load_active_listening_enable + +| 名字 | load_active_listening_enable | +| ------------ | ------------------------------------------------------------ | +| 描述 | 是否开启 DataNode 主动监听并且加载 tsfile 的功能(默认开启)。 | +| 类型 | Boolean | +| 默认值 | true | +| 改后生效方式 | 热加载 | + +- load_active_listening_dirs + +| 名字 | load_active_listening_dirs | +| ------------ | ------------------------------------------------------------ | +| 描述 | 需要监听的目录(自动包括目录中的子目录),如有多个使用 “,“ 隔开默认的目录为 ext/load/pending(支持热装载)。 | +| 类型 | String | +| 默认值 | ext/load/pending | +| 改后生效方式 | 热加载 | + +- load_active_listening_fail_dir + +| 名字 | load_active_listening_fail_dir | +| ------------ | ---------------------------------------------------------- | +| 描述 | 执行加载 tsfile 文件失败后将文件转存的目录,只能配置一个。 | +| 类型 | String | +| 默认值 | ext/load/failed | +| 改后生效方式 | 热加载 | + +- load_active_listening_max_thread_num + +| 名字 | load_active_listening_max_thread_num | +| ------------ | ------------------------------------------------------------ | +| 描述 | 同时执行加载 tsfile 任务的最大线程数,参数被注释掉时的默值为 max(1, CPU 核心数 / 2),当用户设置的值不在这个区间[1, CPU核心数 /2]内时,会设置为默认值 (1, CPU 核心数 / 2)。 | +| 类型 | Long | +| 默认值 | 0 | +| 改后生效方式 | 重启服务生效 | + +- load_active_listening_check_interval_seconds + +| 名字 | load_active_listening_check_interval_seconds | +| ------------ | ------------------------------------------------------------ | +| 描述 | 主动监听轮询间隔,单位秒。主动监听 tsfile 的功能是通过轮询检查文件夹实现的。该配置指定了两次检查 load_active_listening_dirs 的时间间隔,每次检查完成 load_active_listening_check_interval_seconds 秒后,会执行下一次检查。当用户设置的轮询间隔小于 1 时,会被设置为默认值 5 秒。 | +| 类型 | Long | +| 默认值 | 5 | +| 改后生效方式 | 重启服务生效 | + + +* last_cache_operation_on_load + +|名字| last_cache_operation_on_load | +|:---:|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +|描述| 当成功加载一个 TsFile 时,对 LastCache 执行的操作。`UPDATE`:使用 TsFile 中的数据更新 LastCache;`UPDATE_NO_BLOB`:与 UPDATE 类似,但会使 blob 序列的 LastCache 失效;`CLEAN_DEVICE`:使 TsFile 中包含的设备的 LastCache 失效;`CLEAN_ALL`:清空整个 LastCache。 | +|类型| String | +|默认值| UPDATE_NO_BLOB | +|改后生效方式| 重启后生效 | + +* cache_last_values_for_load + +|名字| cache_last_values_for_load | +|:---:|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +|描述| 在加载 TsFile 之前是否缓存最新值(last values)。仅在 `last_cache_operation_on_load=UPDATE_NO_BLOB` 或 `last_cache_operation_on_load=UPDATE` 时生效。当设置为 true 时,即使 `last_cache_operation_on_load=UPDATE`,也会忽略 blob 序列。启用此选项会在加载 TsFile 期间增加内存占用。 | +|类型| Boolean | +|默认值| true | +|改后生效方式| 重启后生效 | + +* cache_last_values_memory_budget_in_byte + +|名字| cache_last_values_memory_budget_in_byte | +|:---:|:----------------------------------------------------------------------------------------------------| +|描述| 当 `cache_last_values_for_load=true` 时,用于缓存最新值的最大内存大小(以字节为单位)。如果超过该值,缓存的值将被丢弃,并以流式方式直接从 TsFile 中读取最新值。 | +|类型| int32 | +|默认值| 4194304 | +|改后生效方式| 重启后生效 | + + +### 3.38 分发重试配置 + +- enable_retry_for_unknown_error + +| 名字 | enable_retry_for_unknown_error | +| ------------ | ------------------------------------------------------------ | +| 描述 | 在遇到未知错误时,写请求远程分发的最大重试时间,单位是毫秒。 | +| 类型 | Long | +| 默认值 | 60000 | +| 改后生效方式 | 热加载 | + +- enable_retry_for_unknown_error + +| 名字 | enable_retry_for_unknown_error | +| ------------ | -------------------------------- | +| 描述 | 用于控制是否对未知错误进行重试。 | +| 类型 | boolean | +| 默认值 | false | +| 改后生效方式 | 热加载 | \ No newline at end of file From ddee3b5866b332d93727c3d4b5e7f67406899713 Mon Sep 17 00:00:00 2001 From: leto-bbq Date: Fri, 28 Aug 2026 09:49:05 +0800 Subject: [PATCH 2/2] Update chunk_timeseriesmeta_free_memory_proportion description and default value --- .../Master/Table/Reference/System-Config-Manual_apache.md | 4 ++-- .../Master/Tree/Reference/System-Config-Manual_apache.md | 4 ++-- .../latest-Table/Reference/System-Config-Manual_apache.md | 4 ++-- src/UserGuide/latest/Reference/System-Config-Manual_apache.md | 4 ++-- .../Master/Table/Reference/System-Config-Manual_apache.md | 4 ++-- .../Master/Tree/Reference/System-Config-Manual_apache.md | 4 ++-- .../latest-Table/Reference/System-Config-Manual_apache.md | 4 ++-- .../UserGuide/latest/Reference/System-Config-Manual_apache.md | 4 ++-- 8 files changed, 16 insertions(+), 16 deletions(-) diff --git a/src/UserGuide/Master/Table/Reference/System-Config-Manual_apache.md b/src/UserGuide/Master/Table/Reference/System-Config-Manual_apache.md index 149c1011c..5f004db62 100644 --- a/src/UserGuide/Master/Table/Reference/System-Config-Manual_apache.md +++ b/src/UserGuide/Master/Table/Reference/System-Config-Manual_apache.md @@ -1461,9 +1461,9 @@ The `iotdb-system.properties` file contains various configurations for managing | Name | chunk_timeseriesmeta_free_memory_proportion | | ----------- | ------------------------------------------------------------ | -| Description | Read memory Allocation Ratio: BloomFilterCache : ChunkCache : TimeSeriesMetadataCache : Coordinator : Operators : DataExchange : timeIndex in TsFileResourceList : others.The parameter form is a:b:c:d:e:f:g:h, where a, b, c, d, e, f, g and h are integers. for example: 1:1:1:1:1:1:1:1 , 1:100:200:50:200:200:200:50 | +| Description | Read memory Allocation Ratio: BloomFilterCache : ChunkCache : TimeSeriesMetadataCache : Coordinator : Operators : DataExchange : timeIndex in TsFileResourceList : others. The parameter form is a:b:c:d:e:f:g:h, where a, b, c, d, e, f, g and h are integers. For example: 1:1:1:1:1:1:1:1, 1:100:200:50:200:200:200:50 | | Type | String | -| Default | 1 : 100 : 200 : 300 : 400 | +| Default | 1 : 100 : 200 : 50 : 200 : 200 : 200 : 50 | | Effective | Restart required. | - enable_last_cache diff --git a/src/UserGuide/Master/Tree/Reference/System-Config-Manual_apache.md b/src/UserGuide/Master/Tree/Reference/System-Config-Manual_apache.md index 898aceb61..7da3c363b 100644 --- a/src/UserGuide/Master/Tree/Reference/System-Config-Manual_apache.md +++ b/src/UserGuide/Master/Tree/Reference/System-Config-Manual_apache.md @@ -1461,9 +1461,9 @@ The `iotdb-system.properties` file contains various configurations for managing | Name | chunk_timeseriesmeta_free_memory_proportion | | ----------- | ------------------------------------------------------------ | -| Description | Read memory Allocation Ratio: BloomFilterCache : ChunkCache : TimeSeriesMetadataCache : Coordinator : Operators : DataExchange : timeIndex in TsFileResourceList : others.The parameter form is a:b:c:d:e:f:g:h, where a, b, c, d, e, f, g and h are integers. for example: 1:1:1:1:1:1:1:1 , 1:100:200:50:200:200:200:50 | +| Description | Read memory Allocation Ratio: BloomFilterCache : ChunkCache : TimeSeriesMetadataCache : Coordinator : Operators : DataExchange : timeIndex in TsFileResourceList : others. The parameter form is a:b:c:d:e:f:g:h, where a, b, c, d, e, f, g and h are integers. For example: 1:1:1:1:1:1:1:1, 1:100:200:50:200:200:200:50 | | Type | String | -| Default | 1 : 100 : 200 : 300 : 400 | +| Default | 1 : 100 : 200 : 50 : 200 : 200 : 200 : 50 | | Effective | Restart required. | - enable_last_cache diff --git a/src/UserGuide/latest-Table/Reference/System-Config-Manual_apache.md b/src/UserGuide/latest-Table/Reference/System-Config-Manual_apache.md index 149c1011c..5f004db62 100644 --- a/src/UserGuide/latest-Table/Reference/System-Config-Manual_apache.md +++ b/src/UserGuide/latest-Table/Reference/System-Config-Manual_apache.md @@ -1461,9 +1461,9 @@ The `iotdb-system.properties` file contains various configurations for managing | Name | chunk_timeseriesmeta_free_memory_proportion | | ----------- | ------------------------------------------------------------ | -| Description | Read memory Allocation Ratio: BloomFilterCache : ChunkCache : TimeSeriesMetadataCache : Coordinator : Operators : DataExchange : timeIndex in TsFileResourceList : others.The parameter form is a:b:c:d:e:f:g:h, where a, b, c, d, e, f, g and h are integers. for example: 1:1:1:1:1:1:1:1 , 1:100:200:50:200:200:200:50 | +| Description | Read memory Allocation Ratio: BloomFilterCache : ChunkCache : TimeSeriesMetadataCache : Coordinator : Operators : DataExchange : timeIndex in TsFileResourceList : others. The parameter form is a:b:c:d:e:f:g:h, where a, b, c, d, e, f, g and h are integers. For example: 1:1:1:1:1:1:1:1, 1:100:200:50:200:200:200:50 | | Type | String | -| Default | 1 : 100 : 200 : 300 : 400 | +| Default | 1 : 100 : 200 : 50 : 200 : 200 : 200 : 50 | | Effective | Restart required. | - enable_last_cache diff --git a/src/UserGuide/latest/Reference/System-Config-Manual_apache.md b/src/UserGuide/latest/Reference/System-Config-Manual_apache.md index 898aceb61..7da3c363b 100644 --- a/src/UserGuide/latest/Reference/System-Config-Manual_apache.md +++ b/src/UserGuide/latest/Reference/System-Config-Manual_apache.md @@ -1461,9 +1461,9 @@ The `iotdb-system.properties` file contains various configurations for managing | Name | chunk_timeseriesmeta_free_memory_proportion | | ----------- | ------------------------------------------------------------ | -| Description | Read memory Allocation Ratio: BloomFilterCache : ChunkCache : TimeSeriesMetadataCache : Coordinator : Operators : DataExchange : timeIndex in TsFileResourceList : others.The parameter form is a:b:c:d:e:f:g:h, where a, b, c, d, e, f, g and h are integers. for example: 1:1:1:1:1:1:1:1 , 1:100:200:50:200:200:200:50 | +| Description | Read memory Allocation Ratio: BloomFilterCache : ChunkCache : TimeSeriesMetadataCache : Coordinator : Operators : DataExchange : timeIndex in TsFileResourceList : others. The parameter form is a:b:c:d:e:f:g:h, where a, b, c, d, e, f, g and h are integers. For example: 1:1:1:1:1:1:1:1, 1:100:200:50:200:200:200:50 | | Type | String | -| Default | 1 : 100 : 200 : 300 : 400 | +| Default | 1 : 100 : 200 : 50 : 200 : 200 : 200 : 50 | | Effective | Restart required. | - enable_last_cache diff --git a/src/zh/UserGuide/Master/Table/Reference/System-Config-Manual_apache.md b/src/zh/UserGuide/Master/Table/Reference/System-Config-Manual_apache.md index 953763cd7..f17cf920d 100644 --- a/src/zh/UserGuide/Master/Table/Reference/System-Config-Manual_apache.md +++ b/src/zh/UserGuide/Master/Table/Reference/System-Config-Manual_apache.md @@ -1438,9 +1438,9 @@ IoTDB 配置文件位于 IoTDB 安装目录:`conf`文件夹下。 | 名字 | chunk_timeseriesmeta_free_memory_proportion | | ------------ | ------------------------------------------------------------ | -| 描述 | 读取内存分配比例,BloomFilterCache、ChunkCache、TimeseriesMetadataCache、数据集查询的内存和可用内存的查询。参数形式为a : b : c : d : e,其中a、b、c、d、e为整数。 例如“1 : 1 : 1 : 1 : 1” ,“1 : 100 : 200 : 300 : 400” 。 | +| 描述 | 读取内存分配比例:BloomFilterCache : ChunkCache : TimeSeriesMetadataCache : Coordinator : Operators : DataExchange : TsFileResourceList 中的 timeIndex : 其他。参数形式为 a:b:c:d:e:f:g:h,其中 a、b、c、d、e、f、g、h 为整数。例如“1:1:1:1:1:1:1:1”,“1:100:200:50:200:200:200:50”。 | | 类型 | String | -| 默认值 | 1 : 100 : 200 : 300 : 400 | +| 默认值 | 1 : 100 : 200 : 50 : 200 : 200 : 200 : 50 | | 改后生效方式 | 重启服务生效 | - enable_last_cache diff --git a/src/zh/UserGuide/Master/Tree/Reference/System-Config-Manual_apache.md b/src/zh/UserGuide/Master/Tree/Reference/System-Config-Manual_apache.md index 7ebe90fa5..731388322 100644 --- a/src/zh/UserGuide/Master/Tree/Reference/System-Config-Manual_apache.md +++ b/src/zh/UserGuide/Master/Tree/Reference/System-Config-Manual_apache.md @@ -1438,9 +1438,9 @@ IoTDB 配置文件位于 IoTDB 安装目录:`conf`文件夹下。 | 名字 | chunk_timeseriesmeta_free_memory_proportion | | ------------ | ------------------------------------------------------------ | -| 描述 | 读取内存分配比例,BloomFilterCache、ChunkCache、TimeseriesMetadataCache、数据集查询的内存和可用内存的查询。参数形式为a : b : c : d : e,其中a、b、c、d、e为整数。 例如“1 : 1 : 1 : 1 : 1” ,“1 : 100 : 200 : 300 : 400” 。 | +| 描述 | 读取内存分配比例:BloomFilterCache : ChunkCache : TimeSeriesMetadataCache : Coordinator : Operators : DataExchange : TsFileResourceList 中的 timeIndex : 其他。参数形式为 a:b:c:d:e:f:g:h,其中 a、b、c、d、e、f、g、h 为整数。例如“1:1:1:1:1:1:1:1”,“1:100:200:50:200:200:200:50”。 | | 类型 | String | -| 默认值 | 1 : 100 : 200 : 300 : 400 | +| 默认值 | 1 : 100 : 200 : 50 : 200 : 200 : 200 : 50 | | 改后生效方式 | 重启服务生效 | - enable_last_cache diff --git a/src/zh/UserGuide/latest-Table/Reference/System-Config-Manual_apache.md b/src/zh/UserGuide/latest-Table/Reference/System-Config-Manual_apache.md index 953763cd7..f17cf920d 100644 --- a/src/zh/UserGuide/latest-Table/Reference/System-Config-Manual_apache.md +++ b/src/zh/UserGuide/latest-Table/Reference/System-Config-Manual_apache.md @@ -1438,9 +1438,9 @@ IoTDB 配置文件位于 IoTDB 安装目录:`conf`文件夹下。 | 名字 | chunk_timeseriesmeta_free_memory_proportion | | ------------ | ------------------------------------------------------------ | -| 描述 | 读取内存分配比例,BloomFilterCache、ChunkCache、TimeseriesMetadataCache、数据集查询的内存和可用内存的查询。参数形式为a : b : c : d : e,其中a、b、c、d、e为整数。 例如“1 : 1 : 1 : 1 : 1” ,“1 : 100 : 200 : 300 : 400” 。 | +| 描述 | 读取内存分配比例:BloomFilterCache : ChunkCache : TimeSeriesMetadataCache : Coordinator : Operators : DataExchange : TsFileResourceList 中的 timeIndex : 其他。参数形式为 a:b:c:d:e:f:g:h,其中 a、b、c、d、e、f、g、h 为整数。例如“1:1:1:1:1:1:1:1”,“1:100:200:50:200:200:200:50”。 | | 类型 | String | -| 默认值 | 1 : 100 : 200 : 300 : 400 | +| 默认值 | 1 : 100 : 200 : 50 : 200 : 200 : 200 : 50 | | 改后生效方式 | 重启服务生效 | - enable_last_cache diff --git a/src/zh/UserGuide/latest/Reference/System-Config-Manual_apache.md b/src/zh/UserGuide/latest/Reference/System-Config-Manual_apache.md index 7ebe90fa5..731388322 100644 --- a/src/zh/UserGuide/latest/Reference/System-Config-Manual_apache.md +++ b/src/zh/UserGuide/latest/Reference/System-Config-Manual_apache.md @@ -1438,9 +1438,9 @@ IoTDB 配置文件位于 IoTDB 安装目录:`conf`文件夹下。 | 名字 | chunk_timeseriesmeta_free_memory_proportion | | ------------ | ------------------------------------------------------------ | -| 描述 | 读取内存分配比例,BloomFilterCache、ChunkCache、TimeseriesMetadataCache、数据集查询的内存和可用内存的查询。参数形式为a : b : c : d : e,其中a、b、c、d、e为整数。 例如“1 : 1 : 1 : 1 : 1” ,“1 : 100 : 200 : 300 : 400” 。 | +| 描述 | 读取内存分配比例:BloomFilterCache : ChunkCache : TimeSeriesMetadataCache : Coordinator : Operators : DataExchange : TsFileResourceList 中的 timeIndex : 其他。参数形式为 a:b:c:d:e:f:g:h,其中 a、b、c、d、e、f、g、h 为整数。例如“1:1:1:1:1:1:1:1”,“1:100:200:50:200:200:200:50”。 | | 类型 | String | -| 默认值 | 1 : 100 : 200 : 300 : 400 | +| 默认值 | 1 : 100 : 200 : 50 : 200 : 200 : 200 : 50 | | 改后生效方式 | 重启服务生效 | - enable_last_cache