最近研究geopyspark原本以为大数据研究能告一段落,因为。。。


    开玩笑的,还要一起建设社会主义呢!!
### 背景

    geotrellis作为一个处理遥感数据的框架,对于遥感数据支持的很棒,但是对于矢量数据却有些不足,首先它的样式选择单一,不能像geoserver使用sld自定义出各种样式,其二就是对与矢量的支持稍弱。那为啥么要用geomesa呢?这个框架资料还是比较多的,支持矢量操作,geoserver支持,能提供WFS、WMS服务,所以还是比较看好的。
### 操作

    我们直接看看github地址,按照提示一步步来安装。下载项目,到geodocker-accumulo-geomesa,运行docker-compose(需要自行安装),下载数据(如http://data.gdeltproject.org/events/20170710.export.CSV.zip),拷贝数据到docker上,进入容器环境,执行导入数据命令,数据导入后会自动解析出geom,并建立索引
```
git clone https://github.com/geodocker/geodocker-geomesa.git
cd geodocker-accumulo-geomesa;
docker-compose up
docker ps
docker cp 2016.export.csv geodocker-accumulo-geomesa_accumulo-master_1:/tmp/2016.export.CSV
docker exec -ti geodockeraccumulogeomesa_accumulo-master_1 /usr/bin/bash
cd /opt/geomesa/bin
$ ./geomesa-accumulo ingest -C example-csv -c example -u root -p GisPwd -s example-csv ../examples/ingest/csv/example.csv
```
    按照github的说明就能成功了,然后打完收工。。。好吧事实没有那么理想,官网的镜像有坑,按照他们的方法会发现,根本导不进去数据,出现如下错误,缺jar了
![](https://img2018.cnblogs.com/blog/900982/201812/900982-20181202221155147-2139364989.png)
原因是导入脚本有问题识别zookeeper.jar出现问题,会把指向具体zookeeper.jar的软连接和原来的zookeeper.jar识别出来(我也是请教了官方大佬才知道)
    cd /opt/geomesa/bin执行后,使用vi geomesa-accumulo修改
```
ZOOKEEPER_JAR="$(find -L $ZOOKEEPER_HOME -maxdepth 1 -type f -name *zookeeper*jar)"
```
    为
```
ZOOKEEPER_JAR="$(find -L $ZOOKEEPER_HOME -maxdepth 1 -type f -name *zookeeper*jar | head -n 1)"
```
    接着就导入成功了
![](https://img2018.cnblogs.com/blog/900982/201812/900982-20181202224857822-1163124748.png)
    最后就是使用geoserver发布服务(http://localhost:9090/geoserver/web,admin:geoserver),根据以下的设置设置数据源,并发布服务。
* accumulo.instance.id = accumulo
* accumulo.zookeepers = zookeeper
* accumulo.user = root
* accumulo.password = GisPwd
* accumulo.catalog = geomesa.ingest
### 最后成果

    我分别使用了三份数据,数据量分别是88w、122w、288w,访问wms服务分别需要的时间为4.79s、6.04s、7.27s,速度还是很可观的,还有很大优化空间(目前是单机)。
![](https://img2018.cnblogs.com/blog/900982/201812/900982-20181202222852806-1478907753.png)
![](https://img2018.cnblogs.com/blog/900982/201812/900982-20181202214837315-1743481646.png)
![](https://img2018.cnblogs.com/blog/900982/201812/900982-20181202214849139-1252960511.png)
![](https://img2018.cnblogs.com/blog/900982/201812/900982-20181202220803656-1709770673.png)
PS:如果你是用linux导入数据可能会出现超时的现象,需要添加zookeeper超时设置,延长时间(https://github.com/geodocker/geodocker-geomesa/issues/8)
```

instance.zookeeper.timeout
15000
timeout limit for zookeeper

```
参考链接:
https://github.com/geodocker/geodocker-geomesa
http://planet.qgis.org/planet/tag/geomesa/
https://www.geomesa.org/documentation/tutorials/geodocker-geomesa/geodocker-geomesa-local.html

geodocker-geomesa安装指南的更多相关文章

  1. nGrinder安装指南

    NGrinder 由两个模块组成,其运行环境为 Oracle JDK 1.6 nGrinder controller  web 应用程序,部署在Tomcat 6.x 或更高的版本 nGrinder A ...

  2. postgresql pgsql最新版安装指南及数据存储路径更改及主从配置

    postgresql pgsql最新版安装指南及数据存储路径更改及主从配置 安装指南 首先在apt的list添加你当前系统版本对应的apt列表 目前官网有16.04,14.04,12.04 分别对应下 ...

  3. 全新 Mac 安装指南(编程篇)(环境变量、Shell 终端、SSH 远程连接)

    注:本文专门用于指导对计算机编程与设计(尤其是互联网产品开发与设计)感兴趣的 Mac 新用户,如何在 Mac OS X 系统上配置开发与上网环境,另有<全新 Mac 安装指南(通用篇)>作 ...

  4. 全新 Mac 安装指南(通用篇)(推荐设置、软件安装、推荐软件)

    注:本文将会不定期维护与更新,有需要的朋友请在 Github 上订阅该条 Issues:<全新 Mac 安装指南(通用篇)>. 在 Mac 电脑上只用 Windows 操作系统的同学请看到 ...

  5. ArchLinux安装指南

    将ArchLinux作为进阶Linux发行版,主要看重滚动更新和深入理解Linux的安装过程. 由于是新手,所以先选择在公司电脑上用VMware来安装.然后渐进到借助U盘在win10笔记本上安装双系统 ...

  6. Linux环境中Openfire安装指南

    Linux环境中Openfire安装指南 安装环境: 安装软件:Openfire 4_1_0 http://download.igniterealtime.org/openfire/openfire_ ...

  7. scrapy3_ 安装指南

    安装指南 安装Scrapy 注解 请先阅读 平台安装指南. 下列的安装步骤假定您已经安装好下列程序: Python 2.7 Python Package: pip and setuptools. 现在 ...

  8. storm 原理简介及单机版安装指南——详细版【转】

    storm 原理简介及单机版安装指南 本文翻译自: https://github.com/nathanmarz/storm/wiki/Tutorial 原文链接自:http://www.open-op ...

  9. mac osx 系统 brew install hadoop 安装指南

    mac osx 系统 brew  install hadoop 安装指南   brew install hadoop 配置 core-site.xml:配置hdfs文件地址(记得chmod 对应文件夹 ...

随机推荐

  1. mysql workbench EER图,里面的实线以及虚线的关系

    ERWin里面线代表实体间的三种关系:决定关系(Identifying Relationship),非决定关系(None-Identifying Relationship),多对多(Many-To-M ...

  2. @EnableWebMVC注解理解

    @EnableWebMVC注解用来开启Web MVC的配置支持.也就是写Spring MVC时的时候会用到.

  3. WPF MVVM UI分离之《交互与数据分离》

    在我们使用WPF过程中,不可避免并且超级喜欢使用MVVM框架. 那么,使用MVVM的出发点是视觉与业务逻辑分离,即UI与数据分离 诸如下面的问题: 删除操作,假如需要先执行一部分数据的处理,然后删除界 ...

  4. 我热爱Coding,但厌恶这个IT互联网

    在我十岁的时候,我觉得这个世界上没有什么东西能比我老爸的那台破电脑更好玩的了.后来,我成为一名Web开发爱好者.大学毕业之后,我在一个软件公司工作,那个时候赚得并不多.再后来,我成为一名正式的Web开 ...

  5. Python实现批量新建SecureCRT Session

    最近因为工作需要,我需要在ssh的时候保存几千台网关的session,工作量相当大(也就是ssh的时候需要记住用户名和密码,然后还要再session选项中录入enable密码,相当繁琐),而且设备的用 ...

  6. JavaWeb学习(一) ---- HTTP以及Tomcat的安装及使用

    HTTP 一.协议 双方在交互.通讯的时候,遵循的一种规范,一种规则. 二.HTTP协议 HTTP的全名是:Hypertext Transfer Protocol(超文本传输协议),针对网络上的客户端 ...

  7. Java VisualVM无法检测到本地java程序 的 解决办法

    win10系统下启动jvisualvm应用,报"VisualVM无法检测到本地java程序"的错误!在网上查了一些方法, 大概原因有2种: 1.操作系统的临时文件目录所在的磁盘格式 ...

  8. javascript知识详解之8张思维导图

    学习的道路就是要不断的总结归纳,好记性不如烂笔头,so,下面将po出8张javascript相关的思维导图. 思维导图小tips:思维导图又叫心智图,是表达发射性思维的有效的图形思维工具 ,它简单却又 ...

  9. eclipseIDE for javaee developers 开发环境搭建详解图文

    使用eclipse真的有年头了,相信java程序员没有不知道它的,最近在给团队中新来的应届生做指导,专门讲解了一下Eclipse开发环境的搭建过程,一是帮助他们尽快的熟悉IDE的使用,二也是保证团队开 ...

  10. bzoj 1485 [HNOI2009]有趣的数列 卡特兰数

    把排好序的序列看成一对对括号,要把他们往原数列里塞,所以就是括号序合法方案数 即为卡特兰数 f(n)=Cn2nn+1 求的时候为避免除法,可以O(n)计算每个素数出现次数,最后乘起来,打完之后发现其实 ...