SuperMap 9D 实时数据服务学习笔记

Posted yaohuimo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SuperMap 9D 实时数据服务学习笔记相关的知识,希望对你有一定的参考价值。

SuperMap 在9月份发布了结合大数据技术的9D新产品,今天就和大家介绍下iServer9D中的实时数据服务。

1、技术框架

结合Spark的streaming流处理框架,将各种数据进行批量处理、存储。

2、处理的流程

iServer9D的实时数据服务可以通过各种通讯协议对来自互联网、物联网等实时流式数据进行采集、存储和分析,iclient9d可以对实时数据服务进行订阅,iServer会通过WebSocket协议将采集的数据实时推送至订阅的客户端并进行可视化呈现。

1)输入的数据和输出的数据

   

2)iServer 9D 的实时数据服务也提供了一下几种处理方法

  • 属性过滤: 对输入的实时数据进行属性筛选,只显示符合条件的数据      
  • 空间过滤:对输入的数据进行地理空间上的过滤,如只显示某一区域范围的数据
  • 属性映射:对输入的数据进行空间上的位置进行判断(和前一次的位置进行对比),如下图的电子围栏判断 

          

3)部署实时数据服务

     单机部署,iServer 9D内置spark框架 ,启动后,发布对应的实时数据服务和数据流服务即可。同时具备了实时数据服务器、数据流服务器、GIS服务器三个角色

     集群部署,搭建iServer 集群服务后,在主节点发布实时数据服务,将数据流服务推送到各子节点即可

4)发布实时数据服务

需要一个后缀维.streaming的处理模型文件,里面定义了数据来源、过滤条件、数据输出等

 

总结:

不同类型的实时数据,通过iServer筛选发布为数据流服务,客户端可直接在前端调用。也可以通过ES等读取iServer的大数据目录服务,发布成对应服务直接调用

3、应用范例

1)启动iServer9D后,开启spark服务。添加到本地集群(相当于启动了spark的一个work节点)

        

2)访问http://localhost:8080,检查spark环境是否启动正常

3)进入主节点iServer的管理界面,点击发布实时数据服务,数据来源选择流处理模型,勾选数据流服务(即对外输出的服务地址)

4)数据流服务发布成功后,将在SuperMap iServer 服务列表页面中展示出来,单击{servicename}/dataflow 即可访问数据流服务 REST 页面,可以看到广播数据(broadcast)和订阅数据(subscribe)的接口, 订阅即可接收到正在进行流处理的数据

5)使用iclient 前端加载实时数据

在iServer的 &iServer_home\\iClient\\forjavascript\\examples\\leaflet, 编辑dataFlowService.html

 

 前端运行效果如下:

 

以上是关于SuperMap 9D 实时数据服务学习笔记的主要内容,如果未能解决你的问题,请参考以下文章

学习笔记基于JSON数据交换模型的实时支付系统设计和实现

supermap iDesktop 处理数据集及生成场景缓存

《分布式技术原理与算法解析》学习笔记Day14

supermap学习日志

node学习笔记

观《phonegap第三季 angularjs+ionic视频教程 实时发布》学习笔记