GeoMesa - 支持的数据存储之间的差异?

时间:2017-03-15 10:13:34

标签: geoserver accumulo geomesa

我浏览了documentation of GeoMesa,目录中公开了许多可以使用的支持数据存储:

  

以下描述了特定的后端实现   章:

    Accumulo Data Store
    Kafka Data Store
    HBase Data Store
    Bigtable Data Store
    Cassandra Data Store

虽然Accumulo和Kafka数据存储文档有很多内容,但HBase,Bigtable和Cassandra并非如此。它没有列出缺少的功能,关于数据存储是否适合在生产中使用的注释。

我找不到这些数据存储的实现级别(如支持/缺失的功能,稳定性等)的比较。

我的问题:

  1. 使用Accumulo,比如Cassandra作为GeoMesa的数据存储,我会有什么好处?
  2. 是否所有数据都存储在同一个实现级别?

1 个答案:

答案 0 :(得分:3)

很棒的问题;这最近出现在GeoMesa user list上。

在高层,所有GeoMesa实现都是GeoTools DataStore,共享类似的命令行工具,并与GeoServer集成。如果您只需要这样的一般访问权限,那么任何数据存储都应该没问题。

GeoMesa的Accumulo支持时间最长,因此还有其他功能,例如将统计数据计算和热图生成推送到数据库服务器。 Accumulo和HBase足够相似,可以直接将这些功能转移到HBase,而且这项工作正在进行中(这在GeoMesa 1.3.x系列中正在发生)。

Accumulo,HBase(以及Google Cloud Bigtable)数据存储支持Spark / Spark SQL。 (截至GeoMesa版本1.3.1。)

对于C *,还有活动部署以达到功能奇偶校验。从我所看到的,C *并没有使添加服务器端查询处理变得非常容易(Accumulo迭代器非常棒; HBase过滤器和协处理器也非常棒)。

Kafka数据存储用于流式传输数据。如果您的应用程序具有流式地理数据,并且您希望生成近乎实时的视图和/或处理它,那么Kafka就适合您。其他数据存储区用于长期持久性,查询和批处理分析。