Geomesa介绍
GeoMesa是一款开源的基于分布式计算系统的面向海量时空数据查询与分析的工具包,它支持多种可扩展的、基于云端的数据存储架构,包括Apache Accumulo, HBase,Cassandra,Google Bigtable,以及用于流计算的Apache Kafka 。同时GeoMesa还可以和Apache Storm一起处理流数据,并使用Spark进行空间分析。 同时,GeoMesa以GeoServer插件的形式为GeoServer提供了读取GeoMesa表的功能。在GeoServer中,GeoMesa表作为一种数据源存在,通过GeoServer,用户可以通过WMS/WFS的形式访问GeoMesa的数据。
Geomesa应用场景
阿里云HBase Ganos产品
https://help.aliyun.com/document_detail/87287.html?spm=a2c4g.11186623.2.4.723e4644ejao4V
阿里云Geomesa课程
https://yq.aliyun.com/live/793
应用场景:
- 物联网(实时定位和历史轨迹)
IoT行业产生的部分数据兼具时序和空间特征。以车联网为例,海量的车辆终端在不断地产生轨迹数据,轨迹数据包含了时间和空间位置。利用Geomesa Hbase (HBase Ganos),实时监测车辆的行驶轨迹、是否偏航、是否进入某个限制区域等。除了实时监控外,还可以进行实时时空查询,如查询某段时间的轨迹,某段时间进入该区域的车辆等。结合大数据分析框架(如Spark)还可以进行穿越分析、区域分布热力图等。
- 智能实时监控
需要实时监控车辆人员位置,以便进行可靠的时间预测等服务。车辆人员的位置需要实时上报,云端需要处理高并发写入并进行实时路径规划、偏航监测等计算,背后都需要大量的时空计算。
Geomesa体系架构
Geomesa应用架构
业务技术选型
业务功能
- 实时监控定位
- 历史轨迹查询
- 时空大数据可视化
技术栈GeoMesa Lambda DataStore
- 数据存储在两个层:transient tier (Kafka)和 a persistent tier(HBase)
- 数据定时写入持久层
- 使⽤用ZK同步数据缓存状态,保证数据⼀次写⼊
- 进⾏数据查询会从两个存储层分别进⾏,然后合并查询结果返回给用户
- Spark数据分析整合
geomesa缺点和解决方式
缺点:一份数据分表、数据冗余
解决方式:加压缩(配置压缩参数,参考文档)
geomesa+Hbase文档说明
https://blog.csdn.net/yangdengxian/article/details/113727936