apache-iotdb - Apache IoTDB 中有哪些不同的摄取方法
问题描述
嗨~这些天我正在使用 IoTDB。我无法决定是使用 JDBC 还是会话来摄取我的数据。谁能解释它们之间的区别?非常感谢。
解决方案
JDBC 使用 SQL 来摄取数据,但会话使用本机二进制协议来摄取数据。sql的优点是易学易懂。但是在使用sql的时候需要付出一些代价。让我们看一个插入sql:
insert into root.sg1.d1 (timestamp, s1) values (1, 1);
可以发现,上面的sql中只有“root.sg1.d1”、“s1”、“1,1”是有意义的数据。这意味着 sql 的其他部分只是一种格式。这些无用的信息会占用带宽。当 IoTDB 获取您的 sql 时,它必须将其解析为耗时的物理计划。相比之下,原生二进制协议具有更紧凑的摄取数据格式,iotdb 可以更轻松地将其转换为物理计划。出于性能考虑,您应该使用会话而不是 JDBC。
您可以从这里获得一些支持:https ://iotdb.apache.org/UserGuide/Master/API/Programming-Java-Native-API.html
推荐阅读
- pytorch - 如何从输入 ID 中获取填充掩码?
- javascript - 使用 setIntervalAsync 启动和重新启动异步函数返回 TypeError 无法将 undefined 或 null 转换为对象
- c - 由于分段错误,我的代码未显示输出
- mysql - 返回组合键MYSQL的一半的最大值
- php - 如何在php中以动态形式关联答案和问题?
- php - 包含父目录中的文件
- python - 不同维度的numpy数组连接错误
- node.js - 运行“npm start”时的 Saleor-Storefront 错误
- python - 如何使用 Python 查找字典中所有键的所有子项
- android - Android 音频播放器不像 WhatsApp 音频播放器那样播放