测绘地理信息   2018, Vol. 43 Issue (1): 1-7
0
大数据时代的GIS软件技术发展[PDF全文]
宋关福1,2, 钟耳顺1,2,3, 李绍俊1,2, 蔡文文1,2, 王少华2,3,4    
1. 北京超图软件股份有限公司,北京,100015;
2. 地理信息基础软件与应用国家测绘地理信息局工程技术研究中心,北京,100101;
3. 中国科学院地理科学与资源研究所,北京,100101;
4. 加州大学圣塔芭芭拉分校,圣塔芭芭拉,美国
摘要: 空间大数据对GIS软件技术的发展提出了新的要求和挑战。但业界对于空间大数据的认知有待明晰,对于如何挖掘大数据的价值尚存疑虑。首先阐述了空间大数据的内涵,在此基础上,提出了大数据时代的GIS基础软件技术,并分析了其应用前景。大数据GIS软件技术包括针对空间大数据处理和挖掘的空间大数据技术,也包括针对经典空间数据管理和处理的对传统GIS功能的分布式重构,同时还需要云GIS技术和跨平台GIS技术作为支撑,提供弹性的计算资源和服务以及支撑跨平台的访问和应用。研究表明,大数据GIS软件技术和产品可以有效地降低大数据挖掘的技术门槛,降低空间大数据挖掘的成本。
关键词: 空间大数据     分布式存储     分布式空间分析     流数据处理     大数据可视化    
Development of GIS Software Technology in the Era of Big Data
SONG Guanfu1,2, ZHONG Ershun1,2,3, LI Shaojun1,2, CAI Wenwen1,2, WANG Shaohua2,3,4    
1. SuperMap Software Co., Ltd., Beijing 100015, China;
2. Engineering Technology Research Center of Geographic Information Basic Software and Application in National Administration of Surveying, Mapping and Geoinformation, Beijing 100101, China;
3. Institute of Geographic Sciences and Natural Resources Research, CAS, Beijing 100101, China;
4. Department of Geography, University of California, Santa Barbara, USA
Abstract: Spatial big data poses new requirements and challenges for GIS software technology. While the whole industry has no clear understanding for spatial big data, and has doubts about how to dig the value of the spatial big data. In this paper, we propose the big data GIS basic software technology and analyze its application potential. It includes spatial big data technology, which is specifically for spatial big data processing and mining. It also includes the distributed reconstruction of traditional GIS function, which is for dramatically performance improvement of classic spatial data management and processing. The big data GIS supporting technology (i.e., cloud GIS technology and cross platform GIS technology) is necessary and used to provide resilient computing resource and service and support cross platform access and application. Big data GIS basic software can reduce the technical threshold for big data mining and reduce the mining cost at the same time.
Key words: spatial big data     distributed storage     distributed spatial analysis     streaming data processing     big data visualization    

国际咨询公司Gartner使用光环曲线来观察新技术发展所处的阶段[1]。对光环曲线体现的技术发展阶段研究表明,学术研究领域,越早介入新技术的研究和探索越好;但生产实践领域,却需要审时度势选择进入的时机,不要在概念炒作顶峰阶段因"时髦"而介入,那时的技术尚不成熟,但过度炒作已导致大家期望很高,很可能投入大量经费却没有相应产出。等到了低谷期,也别因"过时"而错过,这一阶段往往预示着触底反弹的机会[2]

2017年GIS技术的光环曲线如图 1所示。三维GIS正处于复苏期,将进入成熟应用期,云GIS紧随其后进入复苏阶段[3]。尽管IT领域的人工智能已经在过热期——概念炒作的顶峰,但GIS的人工智能刚刚开始萌芽,可能在未来一到两年会出现探索的热潮。大数据GIS已经过了最热的时期,正在进入低谷期,反而是介入空间大数据和大数据GIS技术发展与应用的最佳时机[3, 4]

图 1 2017年GIS软件技术光环曲线 Figure 1 Hype Cycle of GIS Software Technology in 2017

1 空间大数据的内涵

大数据GIS的适用对象是空间大数据,但空间大数据并不等于海量空间数据。对于已有的经典海量空间数据,即使采用IT大数据技术,如分布式存储、分布式计算等框架去管理、处理和分析,也不会改变其本质,它们还是经典空间数据。因为大数据的"大",不仅仅意味着数据量大[5]

大数据具有体量大、种类多、变化快、价值密度低等特征[6]。体量大、变化快意味着需要更快的软件处理性能,种类多则需要去扩展开发更多的模型。价值密度低意味着大数据是贫矿,即单位体量的矿石能提炼的有价值物质少。贫矿意味着冶炼难度大,计算量大,这是大数据很重要的一个特性。

贫矿是否有开采价值很大程度取决于技术手段。数据的价值等于数据体量乘以价值密度再减去挖掘分析的成本。如果数据体量足够大,技术足够先进,就能有效降低挖掘成本,使数据发挥价值。大数据对于传统的数据分析技术来说确实是无法有效提炼价值信息的贫矿。但随着技术的提高,以前无法冶炼的贫矿也能提炼出有价值的物质。所以大数据核心的价值在于计算,在于挖掘分析的工具和方法。

从数据、信息、知识及智慧(data-to-information-to-knowledge-to-wisdom model,DIKW)金字塔模型[7]来看空间大数据,如图 2所示,在该模型中,数据位于最底层,是记录世界的原始素材;信息在第二层,是数据加工处理后得到的有逻辑的数据;知识在第三层,是经过组织化的信息;最顶层为智慧,是知识经过应用之后得到的,可以用于预测未来。在这个金字塔中,空间大数据是位于最基层的原始素材,是数据。从原始数据中提炼出的有逻辑的数据,才是信息,如从原始测绘数据中加工出的测绘4D产品。大数据挖掘的实质就是从数据里提炼信息和知识的过程,也就是把它从DIKW金字塔底层向上提升的过程[6, 8]

图 2 DIKW金字塔看空间大数据 Figure 2 Spatial Big Data in the DIKW Pyramid

参考大数据的特征,空间大数据可以定义为带有或者隐含有空间位置,具有体量大、变化快、种类多和价值密度低特点,常规软件工具无法处理,需要更先进的技术才能让其具有更强的决策力、洞察力、流程优化能力的数字资产,包括手机信令数据、导航轨迹、车船位置、社交媒体,搜索引擎关键词、电商交易记录、公交卡刷卡记录、水电表数据等。如在社交网络领域,每一条微博或微信的发出,后台服务器记录了其大致位置;利用百度搜索引擎搜索关键词,后台也知道该关键词请求是在什么位置发出的,这些都隐含了空间位置信息,可以归入空间大数据的范畴。

2 大数据GIS技术体系

从DIKW金字塔也可以看出,要实现空间大数据的价值,仅仅有空间大数据还不够,还需要有相应的GIS软件工具以及相应的分析模型。只有这三者结合起来,才能让大数据产生价值。基于此,本文提出了大数据时代的GIS技术体系,并研发了大数据GIS基础软件。

大数据GIS技术体系包括两个非常重要的方面:①空间大数据技术,专门针对空间大数据的处理和挖掘;②传统GIS的分布式重构,专门针对经典空间数据的管理和分析。同时,还包括大数据GIS支撑技术,即云GIS技术和跨平台GIS技术,用于提供弹性的资源和服务以及跨平台的访问和应用能力(见图 3)。

图 3 大数据GIS技术体系 Figure 3 Big Data GIS Technology System

2.1 大数据GIS支撑技术

云计算作为计算资源层,可以支撑上层的大数据处理,没有云计算的大数据是空中楼阁。因此,云GIS[9, 10]也就是大数据GIS的支撑技术。云GIS技术可以归纳为"4+2",即4大服务器软件[11]和2大关键技术。4大服务器软件包括基于微服务架构的GIS应用服务器(如iSever)、云GIS门户平台(如iPortal)、分布式加速的GIS分发服务器(如iExpress)、云GIS服务管理器(如iManager);两大技术包括支持虚拟化,支持容器(Docker)技术和云端互联技术(无缝连接桌面、组件、移动、浏览器端)。

跨平台GIS技术[10, 12]是大数据GIS的另一个支撑技术。IT大数据相关的不少技术都原生于Linux,如Spark、HDFS和MongoDB等都产生于Linux社区,且Linux性能更高、稳定性更好。虽然Windows上也能部署一些大数据环境,但大多用于学习和研究,较少用于生产。因此,GIS基础软件最好能高性能运行于Linux操作系统。这就需要跨平台GIS技术的支撑。

2.2 传统GIS的分布式重构

传统GIS应用中,海量数据已经形成了很大的冲击和挑战。现在B/S架构系统都用瓦片提升用户体验,但瓦片数量巨大,很难管理,复制分发很困难。在矢量数据管理中,当一个数据表记录数过亿时,访问性能会急剧下降。海量数据空间分析计算量非常大,若数据量增长一倍,处理时间可能要增加好几倍,耗时非线性增长。这也是传统GIS应用在数据量增长情况下面临的一个新的挑战。以空间叠加分析测试为例,当有1亿个多边形对象参与运算时,传统算法耗时长达609 min(约10 h),这在很多应用场景中是难以接受的(见表 1)。

表 1 不同计算方法的耗时比较/min Table 1 Comparison of Time Based on Different Computing Methods/min

对传统GIS的分布式重构包括3个方面:空间分析分布式计算改造、空间数据处理分布式计算改造和海量空间数据分布式存储。改造这些技术所用到的分布式存储技术和分布式计算框架都是围绕大数据处理过程发展起来的。

图 4所示,适用于经典空间信息的分布式存储技术,包括Postgres-XL、MongoDB和HDFS等,越往上的查询能力越强,越往下的分布式计算能力更强,需要根据情况选择使用。分布式改造的空间分析和空间数据处理算法很多,如叠加分析、缓冲区分析、空间查询、创建索引、复制数据集、数据集裁剪和批量属性更新等。SuperMap GIS 9D(2018)已经实现了这些改造算法。

图 4 适用于经典空间信息的分布式存储技术 Figure 4 Distributed Storage Technology for Classical Spatial Data

分布式重构效果仍以叠加分析为例(见表 1),经典算法需要609 min,分布式改造后的算法只需要41 min,性能提高了14倍。再如,对某省土地利用数据(2 261×104条记录,68.3 GB)进行叠加分析试验,在32 CPU、64 GB内存的单台计算机上采用传统算法,耗时42 min;重构算法在每节点4 CPU和16 GB内存、4节点情况下,耗时仅2.1 min。虽然后者采用的计算机配置不如前者,但空间分析的性能却提高了约20倍。

在不采用分布式技术改进空间分析算法时,性能提高百分之几十就已经是很大的进步,而分布式改造直接实现数量级的性能提升。

2.3 空间大数据技术

空间大数据技术包含4个方面。

2.3.1 空间大数据的分布式存储技术

以前有基于文件和关系数据库的经典空间数据引擎,还有Web数据引擎[13]。为管理空间大数据,需要新增大数据引擎。如SuperMap GIS 9D(2018)新增了HDFS、MongoDB和Elasticsearch引擎。

2.3.2 大数据的空间分析

SuperMap GIS 9D(2018)已经提供了一些大数据空间分析算法,包括3种模式分析和5种数据汇总,并将根据需求逐步增加。本文通过4个例子来说明大数据的空间分析及其价值。

起讫点(origin destination,OD)分析一般用于计算交通出行中各起点和讫点之间的通行量,可进一步用于职住分析等。图 5是基于北京地铁刷卡记录的OD分析。早上,天通苑居民都向周边区域流出,晚上则相反,证明天通苑是一个名副其实的"睡城";国贸则是早上人群聚集,晚上流出,说明国贸是工作地。图 5还可以反映出天通苑和国贸的人群都流向哪些区域。

图 5 基于北京地铁刷卡记录的OD分析 Figure 5 OD Analysis Based on Bus Card Record of Beijing Metro

热点分析是通过对点要素进行统计学计算,寻找令人感兴趣的异常区域,即热点和冰点。图 6是基于航班轨迹的热点分析结果,反映出美国的东海岸、欧洲和中国是热点。这跟经济发展水平是对应的。

图 6 基于航班轨迹的热点分析 Figure 6 Hot Spot Analysis Based on Global Flight Trajectory

密度分析用于计算要素的空间分布密度,不仅仅计算区域内的影响,还考虑周边的影响。图 7(a)是对全球货轮航迹数据的密度分析,可以看到中国东部的密度甚至高于欧洲和美洲,从侧面反映出中国经济发展状况。图 7(b)为这一分析结果的六边形矢量图的局部放大,每个多边形内都含有代表密度的数值,可以在一定程度上定量反映出不同地区的差异。

图 7 基于全球船舶轨迹的密度分析 Figure 7 Density Analysis Based on Global Ship Trajectory

密度分析也可用于商业选址辅助决策。如可以基于电信上网数据进行大数据挖掘分析某城市女装潜在消费者的人群分布密度。这是女装商家非常感兴趣的信息,可以进行服装店选址或有针对性的广告投放等。

聚合分析与要考虑周边影响的密度分析不同,不考虑边界外的影响,只考虑区域内的统计。这种差异反映在分析结果图上,在密度分析中,每个高值的周围都被次高值包围,类似于平滑效果(见图 7(b)),而聚合分析则是每个单元内的值都跟周围的值无关,能更好地反映区域内部的状态。基于广西柳州时空信息云平台,图 8(a)是通过手机信令数据分析出的人口分布情况,与图 8(b)公安户籍人口分布对比,可以发现存在很大的差异。

图 8 人口分析 Figure 8 Population Analysis

图 9(a)是利用航班轨迹数据挖掘的动态聚合分析结果,每个单元格内的数值和颜色代表该区域内的飞机数量,用于改进机场运营、优化航线等。图 9(b)是重庆出租车早高峰下车点数据的聚合分析结果,采用了三维表达,可以帮助政府部门分析人们的出行行为模式,判断交通顺畅程度,优化公共设施配置等。

图 9 动态聚合分析 Figure 9 Dynamic Aggregation Analysis

2.3.3 流数据分析

大数据的一个显著特点是数据像流水一样,顺序、快速、大量、持续到达,要用可以快速持续计算的工具来处理[2]。SuperMap基于Spark Streaming封装了对流式空间大数据持续处理的组件,一边数据持续流入,另一边持续输出分析结果。SuperMap GIS 9D(2018)提供了地图匹配、路况计算和地理围栏三种常用的流式数据实时计算功能。其中,地理围栏可以实时判断哪些目标落入围栏,并支持进入、保持和退出围栏等细化的状态。图 10是全球航班的地理围栏动态图示,其中黄点代表进入机场附近的航班正在起飞或者降落,而蓝点则为在飞行途中的航班。实时路况计算是另一种常用的流数据实时处理的算法,这个功能也被集成到基础软件中,通过接入浮动车等的位置流数据,便可自动计算实时路况。

图 10 全球航运实时流数据分析 Figure 10 Real Time Flow Data Analysis for Global Air Transport

2.3.4 大数据空间可视化

大数据空间分析与大数据空间可视化密不可分。大数据空间分析算法和大数据空间可视化技术的对应关系如图 11所示,即对于每种空间分析结果,采用哪种或哪几种可视化技术能实现更有效的表达。

图 11 大数据空间分析与可视化效果对应关系 Figure 11 Big Data Spatial Analysis and the Correspondent Visual Effects

同一种可视化效果可以有不同的表达方式。以连线图为例,它可以表达为二维的(图 5),也可以表达为动态的或三维的,还可以采用不同的颜色表达。图 12(a)是用于表达车流的三维动态图;图 12(b)是换颜色放大后的显示,能看到车流在楼宇之间流动的效果。

图 12 车流的动态三维图 Figure 12 Dynamic Flow Diagram of the City Traffic

此外,大数据时代还需要实现高性能的动态目标可视化。例如,要监控中国空中的飞机,用户需要支持同屏展示数千架飞机的实时位置和状态。二维动态目标可视化已经可以实现几十万数量级动态目标,如50万架飞机的实时展示;三维动态目标可视化也可以实现对诸如全球5万艘货轮等目标的动态位置的可视化(见图 13)。

图 13 动态目标实时监控(航运) Figure 13 Real Time Monitoring for Dynamic Objects(Shipping)

3 大数据GIS基础软件

大数据GIS基础软件的架构见图 14。以Su-perMap GIS 9D(2018)为例, 最基层是空间大数据的分布式存储技术;第二层是基于Spark分布式计算框架封装的大数据GIS组件,在SuperMap iOb-jects组件中扩展了针对空间大数据的数据管理、空间分析和流数据处理等组件;第三层是服务器GIS软件中基于组件层封装的大数据目录服务、分布式空间分析服务和流数据服务;云和大数据的管理器用于调用和管理这些计算与服务。最顶层是各种GIS端,包括桌面端、浏览器端和移动端等,封装了大数据目录、空间分析、空间可视化和大数据图表等功能,调用服务器GIS实现相应的功能。

图 14 大数据GIS软件架构 Figure 14 Big Data GIS Software Architecture

在大数据GIS体系中,各软件之间的关系如图 15所示。在云计算资源基础上,运行Spark大数据处理框架,SuperMap iObjects组件式GIS则嵌入该框架内部运行,实现对数据的索引、查询、处理和分析。作为云GIS应用服务器的SuperMap iServer则调用组件实现大数据相关功能,并封装成Web Service供各种端调用。SuperMap iManager则实现对云的调度和对大数据组件运行的管理。

图 15 大数据GIS系列软件之间的关系 Figure 15 Relationship Among Big Data GIS Series Software

GIS组件嵌入到Spark中运行有两方面的意义[14]。一是便于经典GIS功能的分布式重构,因为这些被重构的空间分析和空间数据处理需要在Spark框架下运行。如果GIS组件无法支持Linux,也就无法直接高性能运行于Spark框架。二是便于二次开发扩展大数据分析模型,虽然GIS基础软件已经提供了一些通用的分析模型,但大数据种类繁多, 应用目的不同,需要针对不同的数据类型和应用目的进行扩展开发。

4 大数据GIS技术应用分析

大数据GIS技术的战略意义不在于拥有多少大数据,而在于拥有大数据挖掘和加工的能力。若拥有大数据GIS技术,那么即便没有大数据,也可以将别人的大数据拿来创造价值。以通信运营商为例,因为其服务器记录了每个手机的实时位置,严重涉及到用户隐私,所以这类大数据一般是无法对外共享的。但是如果将分析挖掘这些数据的软件系统部署到运营商的内网运行,分析挖掘的结果(通常是分布图)就不再包含用户隐私信息,就可以通过网络发布出来使用。这就解决了GIS领域经常遇到本单位没有大数据,外单位的大数据又不能直接使用的问题。

当前,在建设智慧城市时空信息云与大数据平台时,不仅要将城市基础地理信息发布给各个部门使用,还应该聚合和发布一些单位的大数据挖掘分析结果数据给大家使用。对于有些单位,包括自来水公司、燃气公司、公交公司、出租车公司等,一般可以与之协调,通过将城市基础地理信息发布给它们使用,来交换其大数据传到平台的服务器上进行挖掘分析,最终将结果数据叠加到平台上使用。对于另外一些单位,包括通讯运营商、电网企业和一些大型互联网企业在内,由于其大数据涉及隐私等问题,一般很难从它们的内网拿出来直接使用。这时可以把挖掘这些大数据的系统部署到这些单位的内网运行,只将结果传输出来,集成到时空信息云平台使用即可。

在城市总体规划编修中,也对大数据提出了新的需求[15]。其中,城市公共空间识别需要导航地图、POI(point of interest)、大众点评数据、浮动车位置数据来实现,城市空间边界划定与利用要用到手机信令数据,城市体系关联度分析需要微博和手机信令数据,城市人口动态模拟依靠出租车位置数据、公交IC卡数据、手机信令数据,城市交通运行监控检测依靠浮动车、电子车牌、车联网数据等。这些研究都需要大数据GIS的支撑。

当然,在进行大数据挖掘分析之前,还需要有一个数据清洗的环节,即将原始数据中可能存在的冗余数据、范围错误数据、坐标位置错误和缺失数据清洗后才能存储,再用于进一步的精加工或挖掘分析。不同数据源的清洗方法和算法不同,这里不再赘述。

5 结束语

本文提出了大数据GIS技术体系,包括空间大数据技术、传统GIS的分布式重构以及大数据GIS支撑技术。研究大数据GIS技术、研发大数据GIS基础软件至少具有两个方面的意义。一是降低挖掘大数据的技术门槛。能够挖掘空间大数据的单位目前多局限于少数企业和研究机构,如百度、高德、腾讯和其他一些研发实力很强的科研机构,更多单位还无法参与,因此需要研究这样的工具软件,将与空间大数据相关的通用算法和功能都封装出来,让更多单位可以参与大数据的价值挖掘。二是降低空间大数据挖掘的成本。在数据体量和价值密度乘积不变的情况下,成本越低,价值越大。大数据GIS基础软件可以让人们不用从IT大数据的基础层开始做大量二次开发,避免底层重复劳动,降低挖掘成本。

随着人工智能的升温,业界对空间大数据的热情正在消减,这反而是介入空间大数据和大数据GIS技术发展与应用的最佳时机。大数据GIS技术还会进一步发展与完善,相关应用也会越来越多,推动地理智慧更大的提升。

参考文献
[1] Fenn J, Raskino M. Mastering the Hype Cycle[M]. Boston: Harvard Business Press, 2008
[2] 吴志峰, 柴彦威, 党安荣, 等. 地理学碰上"大数据":热反应与冷思考[J]. 地理研究, 2015, 34(12): 2 207–2 221
[3] 王尔琪, 王少华. 未来GIS发展的技术趋势展望[J]. 测绘通报, 2015, (s2): 66–69
[4] 李德仁. 展望大数据时代的地球空间信息学[J]. 测绘学报, 2016, 45(4): 379–384 DOI: 10.11947/j.AGCS.2016.20160057
[5] 李清泉, 李德仁. 大数据GIS[J]. 武汉大学学报·信息科学版, 2014, 39(6): 641–644
[6] Naimi A, Westreich D. Big Data: A Revolution That Will Transform How We Live, Work and Think[J]. Mathematics & Computer Education, 2013, 47(17): 181–183
[7] Rowley J. The Wisdom Hierarchy: Representations of the DIKW Hierarchy[J]. Journal of Information and Communication Science, 2007, 33(2): 163–180 DOI: 10.1177/0165551506070706
[8] 王树良, 丁刚毅, 钟鸣. 大数据下的空间数据挖掘思考[J]. 中国电子科学研究院学报, 2013, 8(1): 8–17
[9] 宋关福. 云计算时代的GIS技术发展漫谈[J]. 测绘与空间地理信息, 2011, 34(s1): 1–4
[10] 宋关福. 十年打造SuperMap三大技术体系[J]. 地理信息世界, 2011, (2): 83–85
[11] 王少华. 超图平台软件创新:SuperMap GIS 8C简介[J]. 地球信息科学学报, 2016, 18(1): 141–142
[12] 蔡文文, 王少华, 钟耳顺, 等. 跨平台开源桌面GIS软件的设计与实现[J]. 测绘通报, 2017, (1): 122–125
[13] 李绍俊. 新一代海量空间数据库引擎——SuperMap SDX+5[J]. 地理信息世界, 2005, 3(2): 3–4
[14] Wang S, Zhong Y, Lu H, et al. Geospatial Big Data Analytics Engine for Spark[C]. ACM SIGSPATIAL International Conference on Advances in Geographic Information Systems, Redondo Beach, California, USA, 2017
[15] 李刚, 高相铎. 大数据时代下的城市规划编制工作流程[J]. 规划师, 2014, (8): 19–24