【发布时间】:2019-05-29 20:54:27
【问题描述】:
为了创建索引,Geomesa 在 HBase 中创建了多个表。我有几个问题:
- Geomesa 如何确保这些表同步?
- 如果索引表不同步,对 Geomesa 查询有何影响?
- 如果 Geomesa 无法写入其中一个索引表,会发生什么(通过 write 调用)?
- 表之间的同步是最好的努力,还是 Geomesa 确保数据的可用性具有最终的一致性?
我计划使用 Geomesa 和 Hbase(由 S3 支持)组合来存储我的地理空间数据;数据大小可以增长到 TB 到 PB。
我正在研究 Geomesa 在主表和索引表之间的同步方面有多可靠?
HBase 表:
目录1
catalog1_node_id_v4(主表)
catalog1_node_z2_geom_v5(索引表)
catalog1_node_z3_geom_lastUpdateTime_v6(索引表)
catalog1_node_attr_identifier_geom_lastUpdateTime_v8(索引表)
Geomesa 架构
geomesa-hbase describe-schema -c catalog1 -f 节点
INFO 描述特征“节点”的属性
键 |字符串
命名空间 |字符串
标识符 |字符串(属性索引)
版本号 |字符串
节点ID |字符串
纬度 |整数
经度 |整数
上次更新时间 |日期(时空索引)
标签 |地图
几何 |点(时空索引)(空间索引)
用户数据:
geomesa.index.dtg |上次更新时间
geomesa.indices | z3:6:3:geom:lastUpdateTime,z2:5:3:geom,id:4:3:,attr:8:3:identifier:geom:lastUpdateTime
【问题讨论】:
-
所以如果我更新主表中的一条记录,我还必须手动更新所有索引表?
标签: geolocation geomesa