iotdb官方文档已经写得很详细,而且默认配置很合理,个别参数需根据业务调整,主要如下:
文件 | 配置 | 值 |
iotdb-engine.properties | rpc_address | 0.0.0.0 默认监听所有IP最方便 |
iotdb-engine.properties | wal_buffer_size | 67108864 64mb,该值决定了单个写入的最大值 |
iotdb-engine.properties | write_read_schema_free_memory_proportion |
6:1:1:2写入型 4:3:1:2通用型(默认) 1:6:1:2查询型 |
iotdb-env.sh | MAX_HEAP_SIZE | 5024M ,使用的最大内存,根据机器实际情况进行配置 |
iotdb-engine.properties | udf_memory_budget_in_mb | 512M,根据实际使用配置,函数的最大使用内存 |
剩下的 基本都能满足,比如thrift最大传输大小默认512m,thrift最大连接数1024,其他集成方面的参数配置也很简单
附1.3.x常用优化参数
default_ttl_in_ms=31536000000
#查询并发数
max_allowed_concurrent_queries=10000
#实际线程工作数 一般cpu*2
query_thread_count=10
#刷盘 占比,盘越强该值约低
flush_proportion=0.4
#PBTree更耗费cpu Memory耗内存
schema_engine_mode=Memory
#时间精度为ms
timestamp_precision=us
#慢查询定义阈值 ms
slow_query_threshold=1000
enable_seq_space_compaction=true
enable_unseq_space_compaction=true
enable_cross_space_compaction=false
#写前日志 DISABLE>ASYNC>SYNC 安全性反之
wal_mode=ASYNC
#wal_buffer_size=268435456
#分区信息存储的最大条目
partition_cache_size=100000
mlog_buffer_size=1048576
#Memtable 和 TimePartitionInfo 占写入内存比例
write_memory_proportion=7:3
#memtable_size_threshold=1368709120
enable_timed_flush_seq_memtable=true
#10min刷盘
seq_memtable_flush_interval_in_ms=600000
# 1min检查一次
seq_memtable_flush_check_interval_in_ms=300000
#乱序文件刷新
enable_timed_flush_unseq_memtable=true
unseq_memtable_flush_interval_in_ms=600000
unseq_memtable_flush_check_interval_in_ms=300000
#序列点 刷新 阈值
avg_series_point_number_threshold=6000
#存储,查询,元数据,流处理引擎,共识层,空闲内存比例
datanode_memory_proportion=2:4:1:1:1:1
#不主动修复合并失败的任务
enable_auto_repair_compaction=false
#allow_compaction=false
#flush_proportion=0.2
io_task_queue_size_for_flushing=20
#udf_memory_budget_in_mb=30.0
#iselect_into_insert_tablet_plan_row_limit=100000
#MPP 数据交换线程池核心线程数
#mpp_data_exchange_core_pool_size=48
#mpp_data_exchange_max_pool_size=48
# TSFILE文件最大大小 16MB*
group_size_in_byte=16777216