我对 IoTDB 的元数据内存瓶颈感到困扰。我想使用第三方存储来管理IoTDB的元数据,但是我对接口的职责和元数据的职责不是很熟悉。我想在 v0.12.3 上开发,但是 MManager 中复杂的接口让我很困惑。希望得到一些帮助和建议。
1 回答
1
我是 IoTDB 的贡献者,主要关注元数据。你的想法很棒,我希望看到它被实施。这是我的建议。也许它会给你带来一些帮助。IoTDB 中的元数据由三部分组成:MTree、Template 和 Tag。主要占用内存的是MTree。MTree 存储所有时间序列和模式。一方面,MTree 为 IoTDB 数据插入提供时间序列存在检查、时间序列自动创建和数据类型检查。另一方面,IoTDB 查询依赖于 MTree 来解析 sql 语句中的路径模式。v0.12.3 中的代码不是那么整洁干净。可以参考v0.13或者master分支,其中MManager的代码已经过简化和打磨。
于 2021-12-02T02:15:08.250 回答