关于GeoMesa
Geomesa是Apache协议的开源项目,用来处理地理数据的分布式基础引擎。但是Geomesa包含的东西有点多,官网乍一看乱七八糟的。但细看会发现多主要是由于数据源多导致的,其核心的模块就并不多,主要就geomesa-spark-core、geomesa-Spark JTS、geomesa-Spark Sql,在开发过程中发现起始用的最多的也就是geomesa-spark-core了
官网地址
Geomesa官网地址 https://www.geomesa.org/documentation/stable/index.html
Geomesa数据源
Geomesa支持的数据源很多,Hbase、Accumulo 、Cassandra 、Bigtable Redis
、Kafka 、FileSystem 、Geotools等等十几种。
注意Geomesa的FileSystem文件系统是自己定义的数据组织格式,
类似esri gdb这类的存储模式
还有Geomesa并不支持存放在Hdfs中的Shp文件作为数据源,
如果需要这种的需要自己实现Geotools的DataStoreFactory接口,Spi扩展进去就可以
后续的所有代码数据源都使用的GeoTools的数据源,且是本地文件
,因为只是为了实现一些空间分析能力,没有必要直接使用Hbase或其他数据源,
所以也不会有其他数据源的部署教程,如果需要就看官网吧,比很多博客上写的都靠谱。
开发环境
开发工具用的是Idea2020.2
java 1.8
scala 2.11
geomesa 3.0.0
geotools 23.0
主要开发功能
1:Shp数据源的读取和数据转存
2:空间数据裁剪功能
3:缓冲区分析功能
4:两个图层的相交分析功能
5:空间数据查询功能
6:图层差异分析
7:......
以上的分析都不包含图层的展示功能,都是对底层数据的直接处理能力,桌面工具用的QGIS