我们在使用 TDengine 导入约 100GB 数据集时遇到了性能问题。服务器总内存为 198GB,但导入过程中内存占用长期维持在约 20GB,未能充分利用机器资源,导致整体导入速度较慢。
当前导入程序已经做了以下处理:
使用 JDBC 进行批量写入
关闭自动提交以减少事务开销
默认批大小为 10000
设置较长的 HTTP 连接与读写超时
尝试通过 ALTER ALL DNODES 'rpcQueueMemoryAllowed' ... 提高写入队列可用内存
时序数据采用多表 INSERT ... USING stable TAGS(...) VALUES(...) 模式写入
但实际效果上,TDengine 似乎仍然只使用了约 20GB 内存,导入吞吐没有随着可用内存提升而改善。
想请教:
这是否说明还有其他参数在限制写入性能?
是否有更适合 100GB 级数据导入的推荐参数或工具?
当前 JDBC 批量导入方案是否存在明显瓶颈?
我们在使用 TDengine 导入约 100GB 数据集时遇到了性能问题。服务器总内存为 198GB,但导入过程中内存占用长期维持在约 20GB,未能充分利用机器资源,导致整体导入速度较慢。
当前导入程序已经做了以下处理:
使用 JDBC 进行批量写入
关闭自动提交以减少事务开销
默认批大小为 10000
设置较长的 HTTP 连接与读写超时
尝试通过 ALTER ALL DNODES 'rpcQueueMemoryAllowed' ... 提高写入队列可用内存
时序数据采用多表 INSERT ... USING stable TAGS(...) VALUES(...) 模式写入
但实际效果上,TDengine 似乎仍然只使用了约 20GB 内存,导入吞吐没有随着可用内存提升而改善。
想请教:
这是否说明还有其他参数在限制写入性能?
是否有更适合 100GB 级数据导入的推荐参数或工具?
当前 JDBC 批量导入方案是否存在明显瓶颈?