第1章概述
1.1大数据与时空大数据
随着信息技术快速发展,无所不在的传感器网产生了反映自然和人类活动的百万兆(TB)级到十亿兆(PB)级,乃至万亿兆(EB)级数据。2008年9月,Nature上刊登了一篇名为BigData:Wiklomlcs的文章,“大数据”一词由此拉开序幕。2011年2月,Science
也出版了专刊Dealing with Data。2012年3月,美国投资2亿美元启动大数据研究和发展计划,旨在提高和改进人们从大数据中获取知识的能力。面对大数据时代的挑战与机遇,国际上的专家学者针对大数据处理开展了一系列的探索和研究。2012年,在印度首都新德里举行的“首届大数据分析国际会议”上,与会代表达成共识,认为大数据的表达、检索、挖掘是大数据处理面临的三大挑战。
目前,对大数据的研究已经逐渐发展成为信息科学的主要研究热点之一。然而,迄今为止,“大数据科学”尚未有统一的定义。但是,科学家普遍认为它是以海量的多元异构数据为主要研究对象,以大数据的存储、处理和理解方法为主要研究内容,以新兴的计算技术为主要研究工具,以扩展人类对数据的利用能力为主要目标的一门新兴的综合性学科。它主要针对当前海量(volume)、多元(variety)和高速更新(velocity)数据处理的瓶颈问题,重点研究如何将当前高速发展的计算技术用于数据处理与挖掘、有效地利用数据、从海量多元的数据本身去发现新的知识。
越来越多的数据使世界进入真正的大数据时代。其中,大量与时空位置有关的数据称为时空大数据。据不完全统计,全世界80%以上的数据都与位置、时间相关。因此,时空大数据也是大数据的重要组成部分。时空大数据由于其所在空间的空间实体和空间现象在时间、空间和属性三个方面的固有特征,呈现出多维、语义、时空动态关联的复杂性。因此,时空大数据多维关联描述的形式化表达、关联关系动态建模与多尺度关联分析方法、时空大数据协同计算与重构等都是时空大数据研究的重点和热点:
(1)时空大数据包含对象、过程、事件在空间、时间、语义等方面的关联关系。
(2)时空大数据具有时变、空变、动态、多维演化等特点,这些基于对象、过程、事件的时空变化是可度量的,其变化过程可作为事件来描述,通过对象、过程、事件的关联映射,可建立时空大数据的动态关联模型。
(3)时空大数据具有多尺度特性,可建立时空大数据时空演化关联关系的尺度选择机制;针对不同尺度时空大数据的时空演化特点,可实现对象、过程、事件关联关系的尺度转换与重建,进而实现对时空大数据的多尺度关联分析。
(4)时空大数据时空变化具有多类型、多尺度、多维、动态关联等特点,对关联约束可进行面向任务的分类分级,建立面向任务的关联约束选择、重构与更新机制,根据关联约束之间的相关性,可建立面向任务的关联约束启发式生成方法。
(5)时空大数据具有时间和空间维度上的特点,实时地抽取阶段行为的时空特征,以及参考时空关联约束建立态势模型,实时地觉察、理解和预测导致某特定阶段行为发生的态势。可针对时空大数据事件理解与预测问题,研究空间大数据事件行为的本体建模和规则库构建,为异常事件的模式挖掘和主动预警提供知识保障;可针对相似的行为特征、时空约束和事件级别,来挖掘事件模式并构建大尺度事件及其应对方案的规则库。
1.2时空数据管理现状与发展趋势
1.时空数据模型的发展
时间、空间、属性是空间对象的固有特性。将时间用于空间对象的历史序列,*简单的方法就是米用快照浏览模式,即同样的地理信息系统(geographic information system,GIS)空间数据,均按不同时相单独保存。随着时间序列的增长,这种管理方式所产生的数据量惊人。当需要对空间数据进行时间钻取操作以观察历史变化时,这种快照方式缺乏时空语义,难以反映空间对象时间序列的前后变化及其关系。这种GIS只是解决了海量数据的存储问题,无法呈现空间对象的历史追溯过程。因此,人们开始研究时空数据模型(spatial-temporal data model,STDM)来解决上述问题。
对时空数据模型的研究,始于20世纪70年代末。Berry于1964年提出了能够管理时空数据的地理时空矩阵模型;Thrift于1977年提出了“TGIS3”的概念;Longan从时变数据存储的角度出发,总结了时空立方体、快照序列、基态修正和时空复合共四种时态数据模型;Worboys建立了时空对象模型;Donna提出了一种基于事件的时空数据模型ESTDM,表达了离散时空对象的等级结构,将每个栅格的属性记录到数组中,以表达记录随时间变化的地理现象;Raper等开发了一种面向对象的地形数据模型OOgeomorph;May提出了一种集对象模型与连续场模型于一体的概念框架,并以暴雨为例,阐述了表达事件与过程的动态地理现象的方法。许多学者对时空数据模型有着广泛的关注,并推出了许多新的模型。其中,比较典型的有快照模型、修正基态模型、时空复合数据模型、基于事件的时空数据模型、三维模型、历史图形模型、对象关系模型、面向对象的时空数据模型、联合时空数据模型和移动数据对象模型。针对时空大数据云计算和并行处理的要求,为此,Zhu Dingju提出了云并行时空数据模型的概念、划分方法和数学公式,以智能地找到云并行时空数据模型的*佳参数,用于解决云并行计算环境中并行加速率或并行效率*高的问题的数据模型。
目前,实现大规模时空数据存储管理主要有两种方式:第一种是结合已有的时空索引方法,基于通用的大数据存储管理系统对其进行改造,使之适用于时空数据;另一种是建立单独的分布式并行时空索引结构,不依赖于现有系统,而形成大规模时空数据存储管理的专用系统。
2.时空数据管理面临的挑战
随着数据量级从百万兆(TB)级到十亿兆(PB)级、万亿兆(EB)级的爆炸式增长,时空数据的组织、存储、管理模式和技术体系都将面临空前的挑战。
1)时空数据组织问题
长期以来,地理信息科学领域研究倾向于关注空间属性。在很多传统空间应用中,由于空间数据的采样时间间隔较长,时间信息通常只是作为空间对象的属性之一,用于标识空间数据的采样时间点。随着泛在感知系统的发展和普及,使得连续地、近实时地采集位置信息成为可能,由此产生了大量具有高时空分辨率的数据,传统空间应用中对时间信息的组织方式难以对这些丰富的信息进行充分利用。
时空数据应用往往是同时基于空间维和时间维,所以时空一体化组织需求越来越迫切。然而,现有研究受传统空间应用的影响,在数据组织时虽对空间属性和时间属性的整合展开了尝试,但大部分采用的是时空分治的思想,即以空间优先或时间优先的方式进行数据组织。这种数据组织方式使得空间维和时间维不具备同等权重,难以为后续基于时空范围的数据快速存取和时空高效应用提供有效的底层组织机制。
2)时空数据存储管理问题
经典的集中式架构已经很难应对大规模时空数据存储管理需求。分布式云存储环境下的NoSQL数据系统,具有水平可扩展性强、并发性能好、数据模型灵活等优点,非常适合于大规模数据存储管理。然而,分布式NoSQL数据存储并非专门针对时空数据设计,直接利用这些数据系统存储管理时空数据仍存在一系列技术瓶颈。
(1)难以保证时空数据的局部性。NoSQL数据系统通过划分策略(partitioning),将大规模数据集划分为大小可管理的子数据集,并部署到集群的多个服务器节点上,为系统的水平可扩展性提供解决方案;同时,系统利用数据的均匀分布将负载压力分散到集群中不同的节点上,以平衡负载,应对高并发访问场景。
NoSQL数据存储的划分机制主要是为了让数据均匀地分布在集群中。然而,由于分布式NoSQL数据存储并非专门针对时空数据设计,其划分时没有考虑数据的时空邻近性。因此,在数据划分过程中,可能使得一些原本在时空上相邻的数据对象被分至不同的子划分块中,存储到不同的服务器节点上。这种数据分布方式使得时空应用中数据取回代价大。考虑以下应用场景:查询17~18时经过机场附近的出租车,当时空数据分散在大量不同的子划分块时,面对上述时空查询,即使只对较小时空范围的数据进行取回,仍需要访问大量的子划分块,磁盘访问I/O代价很大。
(2)时空邻近性与负载均衡的权衡问题。为保持数据良好的局部性,针对上述问题,许多研究将空间上或时空上邻近的数据对象尽可能存储在同一子划分块。通过这种方式,上述时空范围查询操作,只需要访问指定时空范围与查询条件对应的子划分块,这样大大减少了对大量无效的子划分块读取,从而提高时空查询的效率。
然而,将时空邻近的数据存储在一起将带来另一个挑战,即数据倾斜问题。感知设备节点的空间不均匀分布、人类移动模式与城市结构的强相关,以及热点事件的产生,都是驱动特定时空范围内数据读写访问请求远大于其他时空范围的因素。如基站分布密度在地理空间上存在的区域不平衡性(10~100倍差异),使得移动手机蜂窝基站数据产生,城市中心地区远多于郊区;每天早晚高峰时期,城市居民对特定路段拥堵情况发出查询请求;数万人在演出活动结束后发送打车请求等等。这些场景中,当数据按照时空邻近性存储时,将不可避免地使得存储相应时空范围的子划分块热度极高,导致集群中相应服务器节点过载。
(3)位置语义决定的数据访问模式带来周期性空间热点问题。时空应用中天然存在着动态热点。除了热点事件的产生之外,其他许多空间热点在时间维上都具有周期性规律。这些具有周期性规律的热点,通常是由空间位置语义决定的。例如,通过对北京微博签到数据分析,研究人员发现,居民倾向于选择在下午时段内,在繁华的商业区进行社交活动,签到数据在11~17时主城区的繁华商业地段这一时空范围内存在热点。若数据按照空间邻近性存储,相应空间范围将在11~17点产生大量数据读写请求,而在其他时间段产生的数据访问请求较少,且该规律呈现出周期性特点。面对这一问题,现有研究在存储管理时空数据时,通常利用不断分裂子划分块来消除热点影响,很少利用空间热点的周期性特征。
3)时空数据应用问题
现有NoSQL数据存储提供的是键值对(key-value)模式的查询,基于行键的数据查询非常高效,但并不天然支持除行键之外其他列上的索引,其在多维度复杂查询上具有局限性。当要进行多维度查询时,需要对整个表进行扫描,这样将导致查询效率低下。因此,其并不适用于具有多维度特征的时空数据查询应用。
除此之外,考虑到时空数据的庞大规模,为了实现高效的时空应用,需要充分发挥分布式数据存储管理平台的并行计算优势。以Hadoop框架和MapReduce模型为代表,它们为并行化时空查询与分析应用提供了有效机制,但现有研究中面向大规模时空数据的应用方法还不够完善,尚未能充分发挥分布式系统架构的并行计算优势。
时空数据模型能够对时间、空间和属性语义等方面的数据实施有效的组织和管理,是能客观、完整地模拟现实地理世界的数据模型,是应对大数据挑战的主要技术抓手,可为时空大数据的组织、存储和管理提供高效的解决方案。在有效组织管理的基础上,通过时空数据建模,可以利用时空大数据快速直观地反映动态变化目标的多时态性和分布性,在航空航天、航海、交通、国土、市政、物流以及救灾等领域有着广阔的应用前景。
1.3时空数据库
1.时空数据库的概念
时空数据库是专门用于处理时空对象的存储、访问、索引、查询的数据库。从发展趋势上看,时空数据库可以看作是空间数据库的扩展,因为研究时空数据库的方法常常是基于空间数据库现有方法的拓展,如R树索引、过滤-精炼的查询处理机制等。在此基础上,时空数据模型必须能够捕捉时空对象的特性并加以处理,而且能够表达时空对象的语法和语义;时空数据索引必须能够提供高效的时空数据检索机制;时空操作和时空查询需要
展开