宋关福:面对爆发式增长的空间数据,GIS的“分布式”战术

9月9日下午,2020 GIS 软件技术大会主题大会在北京国际会议中心举行。会上,超图集团总裁、董事宋关福博士作《分布式GIS与空间区块链技术探索》报告,分享了超图“BitDC”五大技术体系之分布式GIS技术体系,并介绍了超图在空间区块链方面的最新探索。

宋关福在GTC 2020主题大会作报告

宋关福认为,GIS软件技术的发展史,就是不断与膨胀的空间数据战斗的历史。2011年-2015年,超图先后在64位计算、多线程计算、GPU计算等高性能计算技术方面进行了探索,以满足不断激增的空间数据处理需求。这一阶段,利用单机算力提升GIS性能的集中式GIS是主流。

随着数据采集技术的不断进步,新一代测绘与设计数据和空间大数据愈发膨胀,GIS软件对其存储、处理和分析面临巨大挑战:分析处理性能骤降,基本无法管理类似手机信令的流式空间大数据。超图在GIS高性能计算上开辟新路径:从集中式GIS转向分布式GIS。

分布式GIS技术是利用多机分布式协同技术和计算资源的横向扩展能力,完成大量并发请求,或分解完成单一复杂任务的GIS技术。事实上,“分布式GIS”不是新概念,20年前就有学者提出,但一直未有真正商业化产品。

今天的分布式GIS技术由多项零散的技术演化而成。超图整合2004年至今的研究成果,构建了分布式GIS技术体系,结构如下:

分布式GIS技术体系的五大技术

1、边缘GIS技术

宋关福用一幅有趣的章鱼图来比喻边缘GIS技术:章鱼只有40%神经元在大脑里,60%分布在八个爪里,所以它的思考是“分布式”的。边缘GIS技术跟章鱼类似,在经典的云和端环境中,分布式的边缘服务器是对云中心的补充,是一种协同。

“过去,端直接访问云中心,会有一定的网络延时,效率比较低。为了解决这个问题,我们就在靠近端的边缘地带部署了边缘服务器,一些访问、数据、计算不再直接发往云中心,而是交给边缘服务器去处理,如有处理不了的,边缘服务器再发往云中心,如此就可以降低网络延时,提高响应效率。

相比带宽消耗较高、实时性比较差的集中式的云GIS,边缘GIS在边缘的地方分解了带宽的压力,有着低带宽消耗、低网络延时的特点,大大提升了系统响应的速度,整体价值体现为:高性能。”

SuperMap GIS 10i(2020)新版本中的边缘服务器,新增支持三维数据分发的工具,包括地形瓦片、S3M瓦片、影像瓦片,可以大幅提升三维服务器的性能。

2、云原生GIS技术

早在三年前,超图就发布了云原生GIS技术:原生为云设计、充分发挥云的弹性和分布式优势的GIS技术,可以让云更好地发挥作用。微服务、容器化、自动编排、持续交付、DevOps是云原生GIS五要素。

早期的Web GIS是单体架构,所有操作在一个程序中启动。微服务化把它拆成若干个模块,每个模块都可以单独部署、单独启动。

容器化部署就是让微服务的小模块在不同的机器上协同开展工作。这样的架构有着细粒度、高弹性、相互独立、故障隔离的特点,大大提高了可用性。

在2018年第一次推出微服务后,今年超图推出了更微的GIS服务:此前,组件和C++内核未解耦分包,现在,组件和C++内核可实现解耦分包。分解得更细致之后,资源消耗更低。如下图三个指标对比:

SuperMap iServer微服务资源消耗

假设单体架构2017为100%,更微的GIS服务出现之后,部署包大小减少至42%,占用内存减少至47%,启动时间缩减至28%。

以云原生的云南地质大数据系统为例,系统有着400TB数据、400+服务实例,数据量非常大。如何调度成百上千的服务实例?这就需要应用SuperMap GIS云原生技术,用SuperMap iManager和kubernetes来实现自动化编排,对多个容器自动化运维管理,可以做到负载均衡、服务自愈、弹性伸缩。

云原生的价值可总结为:高弹性、高可用、高并发。所谓高弹性,就是粒度小了,弹性就高了,当某一个模块访问量大的时候,只要重新启动模块容器即可;高可用,指的是故障发生的频率降低,不容易宕机;高并发是指同样多的计算资源,可以支撑更多的实例运行,并发能力提高。

3、分布式空间分析与处理技术

分布式空间分析与处理技术是基于Spark并行计算框架,把单一复杂的任务分解成多个子任务,发送到不同的服务器中去协同计算,再把结果汇总起来,这样可以数量级提升分析处理性能。

分布式空间分析与处理技术的外延

SuperMap GIS 10i(2020)新版本中,分布式空间分析与处理技术新增支撑对三维数据的分布式处理,例如地形、影像数据等多元数据,在数据接入、数据处理、服务发布环节,都可以使用分布式的技术来提升性能。

这其中不得不提支持Web和分布式计算的Geoprocessing,它提供了一种图示化的、所见即所得的方式,用来构建空间数据分析流程、处理建模,还支持分布式处理算子,可用分布式的算法提高性能。同时,它提供了纯Web版本(Web GP),可以与桌面的GP协同。这在国际范围内是一种创新的尝试。

分布式空间分析与处理技术的价值体现为:高性能,即提高分析处理算法的性能,降低时间消耗。

超图做了某省土地利用(矢量数据)区域汇总分析的测试,4389万记录数据+省区划面数据,如此大量的数据采用传统单机方法需要耗时14.5小时,改为6节点的分布式计算模式后,只需要耗时22分钟,性能提升了40倍。

4、分布式空间数据引擎技术

分布式空间数据引擎技术,就是利用多机协同的分布式数据存储技术,突破空间数据库容量瓶颈。以前数据库记录数超过一个亿时,性能就急剧下降。这就需要分布式空间数据引擎技术,来提高空间数据存储管理性能。

SuperMap分布式空间数据引擎

SuperMap GIS 10i(2020)新版本中,分布式空间数据引擎技术新增支持分布式三维缓存瓦片存储。如倾斜摄影建模数据、点云数据等多源数据,可以把三维瓦片数据存放在MongoDB中,以提高缓存读写的性能。

同时,分布式还能赋能三维GIS游戏引擎,“实力派”三维GIS可以为游戏引擎提供大场景三维数据和GIS分析处理能力,“偶像派”游戏引擎可以为三维GIS提供高仿真渲染效果。

超图还联合Unreal Engine、Unity两大游戏引擎公司,研发了三维GIS插件——超图三维GIS游戏引擎开发包(SuperMap Scene SDKs 10i(2020) for game engines)。未来的数字孪生,也许就要借助这样的方式,来实现更好的可视化效果。

分布式空间数据引擎技术的价值可总结为:大容量和高性能。大容量,就是突破大容量数据的管理;高性能,是指数据大的时候,索引查询的性能大幅度提高。

5、空间区块链技术

数据存储量、性能都很高了,怎么防止别人去篡改数据?这就需要超图今年新发布的空间区块链(Geo-Blockchain)技术。

高安全、可追溯、高可信的区块链,是一种特殊的分布式的数据存储方式,与GIS融合后,就形成了空间区块链,达成了高可信的分布式空间数据库。空间区块链技术的价值就是:高可信。超图空间区块链技术框架选择了扩展性好、流行度高、开源可商用的联盟链Hyperledger Fabric。

由于空间区块链要解决防篡改的问题,性能比较低,空间消耗比较大,重复存储要消耗十几倍的空间消耗,目前还不能做到把所有的空间数据都上链,只能把关键的、要保护的数据上链。如果数据量较大,则需要通过IPFS作为外部存储来配合上链。

空间区块链技术

未来的一段时间,空间区块链技术可应用到国土空间规划与用途管制、不动产登记与交易、自然资源资产与权益管理等自然资源管理相关领域,以及食品、药品监督与溯源、重要物品物流位置管理、城管执法管理等领域中,带来新的应用价值。宋关福说,区块链与GIS的结合才刚刚开始,精彩正在展开。

宋关福总结说,上述五项技术都有着各自的价值。高性能的边缘GIS技术,高可用、高并发、高弹性的云原生GIS技术,高性能的分布式空间分析与处理技术,大容量、高性能的分布式空间数据引擎技术,高可信的空间区块链技术,它们共同组成了分布式GIS技术体系,所以分布式GIS的价值可以总结为“五高、一大”。这些技术和价值将给地理信息技术和应用创造更多可能。

分布式GIS的价值“五高、一大”

会上,超图正式发布了SuperMap GIS 10i (2020),推出了新的GIS基础软件五大技术体系(BitDC),即大数据GIS、人工智能GIS、新一代三维GIS、分布式GIS和跨平台GIS技术体系,丰富和革新了GIS理论与技术,为各行业信息化赋能更强大的地理智慧。

SuperMap GIS 2020 五大技术体系(BitDC)