如何恢复 accumulo 中的 geomesa 索引 table?

How to restore geomesa index table in accumulo?

在我的 accumulo db 中丢失了 2 个索引表:...02726、...02727。 我的命名空间没有它,但在 geomesa 表中它们存在。为什么会发生这种情况以及如何恢复它们?我无法通过 util

获取数据

geomesa-accumulo export

我的累积数据

root@accumulo myNamespace.geomesa> tables -ns myNamespace
geomesa
geomesa_SignalBuilder_attr_cam_time_v8_02712
geomesa_SignalBuilder_attr_cam_time_v8_02716
geomesa_SignalBuilder_attr_cam_time_v8_02723
geomesa_SignalBuilder_attr_cam_time_v8_02724
geomesa_SignalBuilder_attr_cam_time_v8_02725
geomesa_SignalBuilder_z2_geo_v5_02712
geomesa_SignalBuilder_z2_geo_v5_02716
geomesa_SignalBuilder_z2_geo_v5_02723
geomesa_SignalBuilder_z2_geo_v5_02724
geomesa_SignalBuilder_z2_geo_v5_02725
geomesa_SignalBuilder_z3_geo_time_v7_02712
geomesa_SignalBuilder_z3_geo_time_v7_02716
geomesa_SignalBuilder_z3_geo_time_v7_02723
geomesa_SignalBuilder_z3_geo_time_v7_02724
geomesa_SignalBuilder_z3_geo_time_v7_02725
geomesa_stats
root@accumulo myNamespace.geomesa> 
root@accumulo myNamespace.geomesa> 
root@accumulo myNamespace.geomesa> 
root@accumulo myNamespace.geomesa> table myNamespace.geomesa
root@accumulo myNamespace.geomesa> scan
SignalBuilder~attributes : []    *geo:Point,time:Date,cam:String:keep-stats=true,imei:String,dir:Double,alt:Double,vlc:Double,sl:Integer,ds:Integer,dir_y:Double,poi_azimuth_x:Double,poi_azimuth_y:Double;geomesa.stats.enable='true',geomesa.feature.expiry='time(30 days)',geomesa.z.splits='4',geomesa.table.partition='time',geomesa.index.dtg='time',geomesa.attr.splits='4',geomesa.indices='z3:7:3:geo:time,z2:5:3:geo,attr:8:3:cam:time',geomesa.z3.interval='week'
SignalBuilder~stats-date : []    2022-04-11T10:11:14.134Z
SignalBuilder~table.attr.cam.time.v8.02712 : []    myNamespace.geomesa_SignalBuilder_attr_cam_time_v8_02712
SignalBuilder~table.attr.cam.time.v8.02716 : []    myNamespace.geomesa_SignalBuilder_attr_cam_time_v8_02716
SignalBuilder~table.attr.cam.time.v8.02723 : []    myNamespace.geomesa_SignalBuilder_attr_cam_time_v8_02723
SignalBuilder~table.attr.cam.time.v8.02724 : []    myNamespace.geomesa_SignalBuilder_attr_cam_time_v8_02724
SignalBuilder~table.attr.cam.time.v8.02725 : []    myNamespace.geomesa_SignalBuilder_attr_cam_time_v8_02725
SignalBuilder~table.attr.cam.time.v8.02726 : []    myNamespace.geomesa_SignalBuilder_attr_cam_time_v8_02726
SignalBuilder~table.attr.cam.time.v8.02727 : []    myNamespace.geomesa_SignalBuilder_attr_cam_time_v8_02727
SignalBuilder~table.z2.geo.v5.02712 : []    myNamespace.geomesa_SignalBuilder_z2_geo_v5_02712
SignalBuilder~table.z2.geo.v5.02716 : []    myNamespace.geomesa_SignalBuilder_z2_geo_v5_02716
SignalBuilder~table.z2.geo.v5.02723 : []    myNamespace.geomesa_SignalBuilder_z2_geo_v5_02723
SignalBuilder~table.z2.geo.v5.02724 : []    myNamespace.geomesa_SignalBuilder_z2_geo_v5_02724
SignalBuilder~table.z2.geo.v5.02725 : []    myNamespace.geomesa_SignalBuilder_z2_geo_v5_02725
SignalBuilder~table.z2.geo.v5.02726 : []    myNamespace.geomesa_SignalBuilder_z2_geo_v5_02726
SignalBuilder~table.z2.geo.v5.02727 : []    myNamespace.geomesa_SignalBuilder_z2_geo_v5_02727
SignalBuilder~table.z3.geo.time.v7.02712 : []    myNamespace.geomesa_SignalBuilder_z3_geo_time_v7_02712
SignalBuilder~table.z3.geo.time.v7.02716 : []    myNamespace.geomesa_SignalBuilder_z3_geo_time_v7_02716
SignalBuilder~table.z3.geo.time.v7.02723 : []    myNamespace.geomesa_SignalBuilder_z3_geo_time_v7_02723
SignalBuilder~table.z3.geo.time.v7.02724 : []    myNamespace.geomesa_SignalBuilder_z3_geo_time_v7_02724
SignalBuilder~table.z3.geo.time.v7.02725 : []    myNamespace.geomesa_SignalBuilder_z3_geo_time_v7_02725
SignalBuilder~table.z3.geo.time.v7.02726 : []    myNamespace.geomesa_SignalBuilder_z3_geo_time_v7_02726
SignalBuilder~table.z3.geo.time.v7.02727 : []    myNamespace.geomesa_SignalBuilder_z3_geo_time_v7_02727
root@accumulo myNamespace.geomesa> 

很难说为什么没有表,我猜你的集群出了点问题,因为 GeoMesa 不会删除表 AFAIK。

要恢复 export 功能,请通过 Accumulo shell 从目录中删除对缺失表的引用,或者创建与预期名称匹配的新空表。