五分钟学GIS | Spark Streaming

172 篇文章 55 订阅

Spark Streaming是什么

Spark Streaming 是个批处理的流式(实时)计算框架。在 Spark Streaming 中,处理数据的单位是一批而不是单条,而数据采集却是逐条进行的,因此 Spark Streaming 系统需要设置间隔使得数据汇总到一定的量后再一并操作。如图1所示,Spark Streaming 支持的数据输入源很多,例如:Kafka、Flume、Twitter和简单的 TCP 套接字等等,结果也可以保存在HDFS、数据库等。

Spark Streaming相关概念

**离散流(discretized stream)或DStream:**这是Spark Streaming对内部持续的实时数据流的抽象描述,即我们处理的一个实时数据流,在Spark Streaming中对应于一个DStream 实例;
**批处理时间间隔( batch interval):**前面提到的“Spark Streaming 系统需要设置间隔使得数据汇总到一定的量后再一并操作”,这个间隔就是批处理时间间隔;
**RDD(Resilient Distributed Datasets) ?*弹性分布式数据集, 是分布式内存的一个抽象概念,可以看作是Spark的一个对象,它本身运行于内存中,如读文件是一个RDD,对文件计算是一个RDD,结果集也是一个RDD;
DAG(Directed Acyclic Graph): 有向无环图的意思,在spark里每一个操作生成一个RDD,各个RDD之间存在着依赖关系,这些依赖关系形成的有向无环图即DAG。

Spark Streaming的优点

与传统流式框架相比,Spark Streaming 最大的不同点在于它对待数据是粗粒度的处理方式,即一次处理一小批数据,而其他框架往往采用细粒度的处理模式,即依次处理一条数据。Spark Streaming 这样的设计实现具有以下优点:
1.准实时性:Spark Streaming 内部的实现和调度方式高度依赖 Spark 的 DAG 调度器和 RDD,这就决定了 Spark Streaming 的设计初衷必须是粗粒度方式的,同时,由于 Spark 内部调度器足够快速和高效,可以快速地处理小批量数据,这就获得准实时的特性。
2.可容错性:Spark Streaming 的粗粒度执行方式使其确保“处理且仅处理一次”的特性,同时也可以更方便地实现容错恢复机制。
3. 易学性:由于 Spark Streaming 的 DStream 本质是 RDD 在流式数据上的抽象,因此基于 RDD 的各种操作也有相应的基于 DStream 的版本,这样就大大降低了用户对于新框架的学习成本,在了解 Spark 的情况下用户将很容易使用 Spark Streaming。

实时数据服务简介

随着实时数据量的迅速增长,人们对数据能够即时显示在手机、计算机上的需求越来越强烈。SuperMap iServer 9D 通过提供实时数据服务来满足上述需求。
SuperMap iServer 9D 实时数据服务支持 WebSocket 协议、TCP 协议、HTTP协议以及Kafka专用通讯协议接入数据,可以接入包括 CSV、 JSON 、GeoJSON 格式的实时数据,基于 Spark Streaming 分布式实时计算框架,对接入的实时数据进行过滤、分析处理等,处理后的实时数据支持以 CSV,JSON 或 GeoJSON 格式输出或存储到各种输出目标中,包括 iServer DataStore 和iServer 数据流服务中。

iServer 实时数据服务提供以下分析功能:
1.支持对实时数据进行属性或空间关系的过滤;
2.支持对实时数据进行属性映射,简单的说,就是对数据的字段名重新指定别名以及可进行字段运算添加新的属性字段; 比如,现在传入的数据有”长,宽,高”三个字段,我们可以重新命名,也可以三者进行计算得到“体积”这个属性;
3.支持对实时数据应用地理围栏,首先地理围栏(Geo-fencing)是LBS的一种新应用,就是用一个虚拟的栅栏围出一个虚拟地理边界。在GIS中,我们可理解为某个地物是否进入或者离开某个圈定的地理范围。

接下来,我们来看个地理围栏的应用实例, 如下图所示的全球航运实时数据地理围栏监控,图中黄色的点表示进入地理围栏(各个机场)的飞机,蓝色的表示还未进入机场的飞机,这样我们就可清晰的知道航班进入机场的情况。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值