2017年11月9日,中国测绘地理信息学会学术年会在南京盛大举行。我在主题大会的报告题目是《全面拥抱大数据的GIS基础软件技术》,这是2017 GIS软件技术大会报告《当GIS拥抱大数据》(←点击蓝色文字可直接查看)的精简升级版,内容和结构均有更新。
第二天早饭时遇到美国科学院地理信息科学院士Michael F. Goodchild教授,他赞赏SuperMap的技术成就,但感觉我讲得太快。
非常对不住大家,前面的大会报告非常精彩,议程有所推迟,我是最后一个报告,为了不耽误大家吃晚餐,所以讲得很快。
为了弥补这一遗憾,也为方便没到现场的朋友们一起交流讨论,特为每页PPT配了演讲文字。分享给大家,请朋友们指正。
(本文6800余字,75张PPT配图,阅读约需30分钟)
今天几位院士和专家做了非常精彩的报告,其中有不少提到了人工智能,提到了深度学习。接下来我今天的报告是跟大家讲一个似乎有点“out”的技术——大数据。
为什么说大数据有点“out”?我们看一个工具,Gartner经常会用这个光环曲线来观察新技术发展所处在的阶段。这是我绘制的2017年GIS技术光环曲线,三维GIS已经在复苏期,下一步将进入成熟应用,云GIS也紧跟其后进入复苏阶段,而我们今天讲的大数据GIS正在进入低谷期,所以我说它有点过时,就是说它已经过了最热的时候。
IT领域的人工智能已经在过热期,也就是概念炒作顶峰,但是GIS的人工智能刚刚开始萌芽,可能在未来一到两年会进入探索的热潮。
回到空间大数据,我们先来谈谈对空间大数据的一些思考。
首先,海量空间数据并不等于空间大数据。因为大数据的大,不仅仅意味着数据量大。
最近又产生一个新的问题,对于已有的海量的经典空间数据,用一些IT大数据相关的技术,如分布式存储、分布式计算框架来管理、处理和分析,这些数据是不是就变成大数据了?
我认为也不是。即使用大数IT据的技术去管理它们,但是这些数据的本身性质还没有改变,它们还是经典空间数据。
为什么这么说?我们来看看大数据的几个特征,来自IBM的说法有五个V,我这里引用其中四个:第一个是体量大,第二个是种类多,第三个是变化快,第四个是价值密度低。体量大、变化快意味着需要更快的软件处理性能,种类多意味还要去扩展开发更多的模型,而价值密度低意味着什么?
价值密度低意味着大数据是贫矿,也就是单位体谅的矿石能提炼的有价值物质少。贫矿就意味着冶炼的难度大,计算量大,这是大数据很重要的一个特性。
地矿领域通常用贫矿和富矿来表述矿物品位的高低, 如在金矿品位定级中,富矿每吨含有5-50克黄金,高于50克为特富矿,低于5克为贫矿,含量低于0.3克的金矿,就没有开采价值。
人家都讲大数据有价值,你这里说它是贫矿,贫矿有挖掘价值吗?
我认为,数据的价值=体量×价值密度-挖掘分析的成本,从公式可以开出,如果说数据的体量足够大,如果说技术足够先进降低了挖掘分析的成本,数据就能发挥价值。
对于传统的数据分析技术而言,大数据是无法有效提炼有价值信息的贫矿。不过,是否有开采价值很大程度取决于技术手段,技术提高了,以前无法冶炼的贫矿也能提炼出有价值的物质。
所以大数据核心的价值在于计算,在于挖掘分析的工具和方法。
我们从IT的另外一个工具DIKW金字塔来看看空间大数据。这个模型里数据是最底层的,是记录世界的原始素材;第二层为信息,是加工处理后得到的有逻辑的数据;第三层为知识,是经过组织化的信息;最顶层为智慧,是知识经过应用之后得到的,可以用于预测未来。
在这个金字塔里,空间大数据在哪里?是位于最基层的原始素材,是数据;而我们现有测绘4D产品是信息,是从原始数据当中提炼出来的有逻辑的数据。
大数据挖掘的实质就是从数据里面提炼信息和知识的过程,也就是把它从DIKW金字塔底层往上提升的过程。
所以我们千万不要把已有的经典的空间数据库贴上大数据的标签,因为这样做一点不增值,反而低估了这些信息的价值。
参考一下对大数据的定义,我们也可以定义一下空间大数据,它是带有或者隐含有空间位置的,具有体量大、变化快、种类多和价值密度低这四个特点的,常规的软件工具无法处理的,需要更先进的技术才能够让它具有更强的决策力、洞察力、流程优化能力的数字资产。
哪些数据属于空间大数据?比如手机信令数据、导航轨迹、车船位置、社交媒体,搜索引擎关键词、电商交易记录、公交卡刷卡记录和水电表数据等等,这些都是空间大数据。
其中,每发一条微博和微信,后台服务器都知道我们大致的位置;我们在百度搜索里面搜索关键词,后台也知道这个关键词请求是在什么位置发生的,这些都隐含了空间位置,所以都可以归入空间大数据范畴。
要实现空间大数据的价值,仅仅有空间大数据还不够,还需要有相应的GIS软件工具,还需要相应的分析模型。只有这三个结合起来,才能够让大数据产生价值。
大数据GIS软件的意义何在?在于两个方面:
一是大数据GIS软件可以降低大家挖掘大数据的技术门槛。在此之前能够挖掘空间大数据的单位都是什么?百度、高德、腾讯和其他一些研发实力很强的科研机构。总的来说,空间大数据的挖掘还是局限于少数企业和研究机构,更多单位无法参与,所以我们就需要研究这样的工具软件,把与空间大数据相关的通用的算法和功能都封装出来,让更多的单位可以参与大数据的淘金。
二是可以降低空间大数据挖掘的成本。刚才讲数据价值的公式后面减掉的是成本,成本越低价值就越大。大数据GIS基础软件可以让大家不用从IT大数据的基础层开始做大量二次开发,避免底层的重复劳动,降低大数据挖掘的成本。
2017年8月,超图提出了全面拥抱大数据的GIS技术体系。这个体系里有两根重要的柱子:一个是空间大数据技术,专门针对空间大数据;另外一个是传统GIS功能的分布式重构,针对经典空间数据。同时还需要两个支撑的技术,一个是云GIS技术,另一个是跨平台GIS技术。
我们先介绍两个支撑技术。
云计算作为计算资源层,可以支撑上面大数据的处理,没有云计算的大数据是空中楼阁。因此,云GIS也就是大数据GIS支撑技术。
云GIS技术可以归纳为4+2,即四大服务器软件,和两项技术。
另一个支撑技术是跨平台GIS技术。
IT大数据相关的不少技术都原生于Linux,比如Spark、HDFS和MongoDB等,这些技术都在Linux社区中产生的,而且Linux具有性能更高、稳定性更好的特点。虽然在Windows上也可以部署一些大数据环境,但大多用于学习和研究,较少用于生产。
所以,GIS基础软件最好能支持高性能运行于Linux操作系统中。
接下来介绍大数据GIS架构中的两根柱子,我们先介绍传统GIS的分布式重构,这个重构是针对经典空间数据,而不是空间大数据的。
传统GIS应用中,海量数据已经形成了很大的冲击和挑战。现在我们都用瓦片提升B/S架构系统的用户体验,但是瓦片数量巨大,很难管理,复制分发时都非常痛苦。而在矢量数据管理中,当一个数据表记录数过亿的时候,访问性能急剧下降。最后,海量数据空间分析计算量非常大,而且耗时不是线性增长,数据量增长一倍,耗费的时间可能要增加好几倍。这是让传统的GIS应用在数据量增长的情况下面临的一个新的挑战。
举个例子,我们做了一个Overlay空间分析的测试,当有1亿多边形对象参与运算时,耗时长达10个小时,这么长时间在很多应用场景中是难以接受的。
对传统GIS的分布式重构包括空间分析分布式计算改造、空间数据处理分布式计算改造和海量空间数据分布式存储。改造这些技术所用到的分布式存储技术和分布式计算框架,都是围绕大数据处理过程中发展起来的。
这是适用于经典空间信息的分布式存储技术,包括Postgres-XL、MongoDB和HDFS等,越往上的查询能力越强,越往下的分布式计算能力更强,需要根据情况选择使用。
截止2017年8月底,SuperMap GIS已经完成的分布式改造的空间分析和空间数据处理算法包括:叠加分析、缓冲区分析、空间查询、创建索引、复制数据集、数据集裁剪和批量属性更新等。
分布式重构之后效果如何?我们来看刚才的例子,Overlay分析经典算法需要609分钟,分布式改造后的则只需要41分钟,性能提高了14倍。
这是以某省土地利用数据叠加分析试验,在32CPU的计算机上用传统算法,耗费42分钟;新的算法在每节点4CPU的4个节点情况下,耗时仅2.1分钟。后者计算机配置不如前者,空间分析的性能反倒提高了20倍。
这让我们的负责空间分析的工程师兴奋不已,以前改进空间分析算法的性能,能提高百分之几十就是很大的胜利,现在可以实现数量级的提升。
第二根柱子是空间大数据技术。
空间大数据技术有四个模块,首先是空间大数据的分布式存储技术。
以前有基于文件和关系数据库的经典空间数据引擎,还有Web数据引擎,为管理空间大数据,SuperMap新增了HDFS、MongoDB和Elasticsearch引擎。
第二个是大数据的空间分析。
SuperMap GIS 9D(2018)已经提供了一些大数据空间分析算法,包括3种模式分析和5种数据汇总,以后根据需求还会逐步增加。下面举其中4个例子介绍。
第一个是OD分析,计算各起点和终点间的通行量,比如说住在北京天通苑的人都去哪些区域上班,在国贸上班的人都是从哪些区域来的。
这是重庆的例子,OD分析可以呈现右下方的点这个地方住的人都去哪儿上班了。这种OD分析结果可以做什么?比如,可以用于交通规划辅助决策。
这是基于北京地铁刷卡记录的OD分析。早上天通苑往外走,国贸则往里走,晚上则反过来,充分证明天通苑是一个名副其实的“睡城”。
第二个要介绍热点分析,即对点要素进行统计学计算,寻找热点和冷点。刚才Goodchild教授讲到异常的东西都让人感兴趣,比如说特别高的地方和特别低的地方,这里热点分析就分析大家最感兴趣的热点和冷点。
这是基于航班轨迹的热点分析结果,可以看出热点在哪儿,美国的东海岸、欧洲,还有中国。
第三个要介绍的是密度分析。密度分析计算要素的空间分布密度,不仅仅计算区域内的影响,还考虑周边的影响。
例如,通过对全球货轮航迹数据进行的密度分析,我们可以看到中国东部的密度甚至高于欧洲和美洲,从一个侧面反映了中国经济发展的情况。
上图为放大后的密度分析的效果,可以看到,这个密度分析的结果不是栅格数据,而是由六边形构成的矢量图,每个多边形内都有代表密度的数值。
密度分析可以用于商业选址辅助决策。女人的衣柜里永远少一件衣服,买衣服是她们的天性,商家最想知道的莫过于女装的潜在消费者分布在哪里。
图中所示为上海关心女装的人分布密度,这是基于电信上网数据的大数据挖掘分析的结果。这样的分析结果,可以为女装广告牌选址,甚至为女装店选址提供辅助决策。
最后介绍聚合分析。与密度分析要考虑周边的影响不同,这个算法完全不考虑边界外的影响,只考虑区域内的统计。
本页右侧是公安的户籍人口分布,左侧则是通过手机信令数据分析出的人口分布情况,可以发现有很大的差异。
聚合分析与密度分析看起来很像,比较一下放大图,可以发现二者的区别:左侧的密度分析中,每一个高值的周围,都被较高值包围,是做了平滑的;而右侧的聚合分析则没有,每个单元内的值跟周围没有关系。
这是利用航班轨迹数据挖掘的动态聚合分析结果,每个单元格内的数值和颜色代表该区域内的飞机数量。
这是重庆出租车早高峰下车点数据的聚合分析结果,可以用三维来表达。
时间关系,其他的大数据空间分析不一一介绍。
接下来,我们介绍流数据的实时处理。
大数据的一个显著特点是,数据像流水一样,顺序、快速、大量、持续到达,需要用可以快速持续计算的工具来处理它。SuperMap 基于Spark Streaming封装了对流式空间大数据持续处理的组件,一边数据持续流入,另一边持续输出分析结果。
截至2017年8月,SuperMap 9D提供了地图匹配、路况计算和地理围栏三种流式数据实时计算功能。
其中,地理围栏用于实时判断哪些目标落入围栏,并支持进入、保持和退出围栏等细化的状态。
例如,本页是全球航班的地理围栏动态图示,其中黄点代表进入机场附近的航班,正在起飞或者降落,而蓝点则为在飞行途中的航班。
实时路况计算是另一种常用的流数据实时处理的算法,这个功能也被集成到基础软件中,接入浮动车等的位置流数据,便可自动计算实时路况。
大数据空间可视化也是空间大数据技术不可缺少的内容,前面在介绍大数据空间分析时,已经看到不少针对大数据的可视化的效果。
本页左侧是我们刚提到一部分的大数据空间分析算法,右侧则是空间可视化技术,中间的连线,表明了每一种空间分析的结果,可以用什么可视化技术来表达。
除了前面介绍过的表达OD分析结果的连线图外,还有更炫酷的连线图。
这是用于表达车流的动态图。
也可以换一种颜色来展示,而且可以在三维场景中使用,放大之后,可以看到车流在楼宇之间流动的效果。
这是某机场航站楼飞机起飞降落路线的三维表达,我们看到,飞机大多不是直接降落,而是到机场后先盘旋再降落。
此外,大数据时代还需要实现高性能的动态目标可视化技术。
比如要监控中国空中的飞机,用户需要支持同屏展示数千架飞机实时位置和状态。超图的工程师追求极致,去年实现了5万架飞机的动态可视化,今年又把测试极限推高到50万架飞机。
这是一个三维的例子,实现了对全球5万艘货轮动态位置的可视化。
回顾一下空间大数据技术,包括空间大数据存储管理、大数据的空间分析、流数据实时处理以及大数据空间可视化技术。
在进行大数据挖掘分析之前,还有一个数据清洗的环节,原始数据可能有不少冗余数据、范围错误数据、坐标位置错误和缺失的数据,这些都要先清除掉。清洗之后才可以进行存储,进行进一步的精加工或者做挖掘分析。当然,不同数据源的清洗方法和算法也不一样。
这里介绍一下大数据GIS架构。最基层是空间大数据的分布式存储技术;第二层是基于Spark分布式计算框架封装的大数据GIS组件,在SuperMap iObjects组件中扩展了针对空间大数据的数据管理,空间分析和流数据处理等组件;第三层是服务器GIS软件中基于组件层封装的大数据目录服务、分布式空间分析和流数据;左侧是云和大数据的管理器,用于调用和管理这些计算与服务。最顶层是各种GIS端,包括桌面端、浏览器端和移动端等,封装了大数据目录、空间分析、空间可视化和大数据图表等功能,调用服务器GIS实现相应的功能。
大数据GIS体系中,各软件之间的关系如本图所示。在云计算资源基础上,运行Spark大数据处理框架,SuperMap iObjects组件式GIS则嵌入该框架内部运行,实现对数据的索引、查询、处理和分析;作为云GIS应用服务器的SuperMap iServer则调用组件实现大数据相关功能,并封装成Web Service供各种端调用。而SuperMap iManager则实现对云的调度和对大数据组件运行的管理。
GIS组件嵌入到Spark中运行有两方面意义:首先是便于经典GIS功能的分布式重构,因为这些被重构的空间分析和空间数据处理,需要在Spark框架下运行;如果GIS 组件无法支持Linux,也就无法直接高性能运行于Spark框架内。
其次是便于二次开发扩展大数据分析模型,虽然GIS基础软件已经提供了一些通用的分析模型,但大数据的种类繁多,应用目的不同,常需要针对不同的数据和应用目的进行扩展开发。
我们再整体回顾一下全面拥抱大数据的GIS技术的内容,三部分:空间大数据技术、传统GIS的分布式重构,以及大数据GIS支撑技术。
其中,空间大数据技术包括:空间大数据存储技术、大数据空间分析技术、流数据实时处理技术和大数据空间可视化技术。
传统GIS的分布式重构包括:海量空间数据的分布式存储、空间数据处理的分布式计算改造和空间分析的分布式计算改造。
大数据支撑技术则包括云GIS技术和跨平台GIS技术。
大数据技术的战略意义不在于拥有大数据,而在于拥有大数据挖掘和加工的能力,如果有这个技术,即使别人的大数据你也可以拿来创造价值。
有人可能会说,我没有大数据,别人的大数据不给我怎么办?
一些大数据涉及到他们的用户隐私,确实无法提供给出来,比如通信运营商的服务器记录了每个手机的实时位置,严重涉及到手机用户的隐私,这种情况下怎么办?我们就“把冶炼的装备拉到矿山里去”,可以跟这些单位商量,把分析挖掘这些数据的软件系统部署到他们的内网运行,分析挖掘的结果通常是分布图,已经没有手机用户的隐私信息,可以通过网络发布出来使用。所以对于大数据,我们应该“不求所有,但求所用”。
再举个例子,在智慧城市时空信息云与大数据平台建设中,我们不仅要把城市基础地理信息发布给各个部门使用,而且还应该聚合一些单位的大数据挖掘分析结果数据,提供给大家使用。其中,对于自来水公司、燃气公司、公交公司、出租车公司的大数据,可以跟他协调,把城市基础地理信息发布给他们使用,用于交换他们的大数据,传到时空信息云平台的服务器上挖掘分析,把结果数据叠加到时空信息云平台使用;而对于通讯运营商、电网企业和一些大型互联网企业的大数据,比较难从这些单位内网拿出来使用,可以把挖掘这些大数据的系统部署到这些单位内网运行,把结果传输出来,集成到时空信息云平台。
在报告结束之前,我们再回头来看这个光环曲线。作为学术研究,越早介入新技术的研究和探索越好。但作为生产单位,却并非如此,需要审时度势选择进入的时机,不要在概念炒作顶峰阶段因“时髦”而介入,那时技术不成熟,因为过度炒作导致大家期望很高,很可能投入大量经费却没有相应产出。到了低谷期,也别因“过时”而错过,在这一阶段很可能触底反弹。
随着人工智能的升温,大家对空间大数据的热情正在消减,这时候,反而是大家介入空间大数据和大数据GIS技术发展与应用的最佳时机,再晚可能真out了。
大数据GIS技术还会进一步发展与完善,相关应用也会越来越多。让我们一起拥抱大数据,拥抱地理智慧。谢谢大家!
(感谢郭国章、刘宏恺、曾志明、卢浩、王丹和吴晓燕为审校本文给予的帮助)
往期回顾
(点击标题直接访问)
●空间大数据的内涵与外延 2017-09-14
●当GIS拥抱大数据 | GTC主会场报告(PPT+视频) 2017-08-31
●洪桃李:腾讯大数据应用实践之路(PPT) 2017-08-29
●周成虎院士:GIS的大数据时代展望(PPT) 2017-08-28
●三维、云和大数据GIS技术在光环曲线什么位置?2017-08-23
●多位大咖曾参与中国首套商品化GIS软件,他们都有谁?2017-08-03
●中国GIS基础软件30年 2017-07-20
●GIS软件的四个关键技术方向 217-07-13
●千万别随便称大数据,否则可能会贬低你的数据价值!2017-07-05
●为什么说超图是个三无公司?2017-06-28
●内部PPT释义超图2.0战略 2017-06-22