THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
目标: 将 cluster 的数据同步到云端(IoTDB/其它数据库/大数据平台)。
基本需求:
1) 将 IoTDB cluster 的数据同步到云端(IoTDB/其它数据库/大数据平台)。
2)最好支持用户自定义插件,用户可自定义将数据投递到不同类型的 数据 sink 端。
设计实现:
一个还不成熟的初步设想是将 sink 端伪装成一个 虚拟的 Raft 节点,插入到所有Data 共识组里去。
优点:
- 可利用共识组已有的数据同步、跟随、SnapShot能力,将历史数据和新增数据同步到sink。
- 由于Raft 的协议特性,Leader 到此节点的数据同步自带数据缓冲能力。
- 一个集群里,此虚拟 Raft 节点可以有多个。有利于实现 load 的 balance。
难点:需要共识层能支持 这种虚拟的 Raft 节点。
- 此 虚拟 Raft 节点 不会参与选举(即:不会变成 Leader)。
- 此 虚拟 Raft 节点不参与投票。
- 此 虚拟 Raft 节点只跟着 Leader 做数据跟随。