概述
时空数据库能够存储、管理包括时间序列以及空间地理位置相关的数据。传感器网络、移动互联网、射频识别、全球定位系统等设备时刻输出时间和空间数据,数据量增长非常迅速,这对存储和管理时空数据带来了挑战,传统数据库很难应对时空数据。时空数据是一种高维数据,普通的关系型数据库更适合于存储数值和字符类型数据,也缺少相关的算子。时空数据库具有时空数据模型、时空索引和时空算子,完全兼容SQL及SQL/MM标准,支持时空数据同业务数据一体化存储、无缝衔接,易于集成使用。
阿里云时空数据库完全兼容PostgreSQL语法,支持空间、时间混合存储;5月份即将上线公测。
典型场景
1. 地图服务
地图服务是一种非常广泛的应用,便于各类业务数据空间化、空间分析和可视化。这个场景介绍如何使用时空数据库搭建地图服务,并给出架构参考。
方案架构
时空数据库作为存储空间数据(如车辆定位数据)与空间查询引擎,提供后端支持。GeoServer(GeoServer是一款知名的开源地图服务引擎,支持OGC WFS、WMS、WPS等协议,易于部署,有大量的用户)作为地图服务引擎用于空间数据渲染和地图发布,前端客户端采用Leaflet或openlayers框架,同时支持PC/Android/iOS多种类型终端。地图发布的主要流程包括三步:第一步在时空数据库中导入业务数据后;第二步通过GeoServer关联数据库;第三步选择需要发布的图层,并对图层设定相应对式样。
2.人员监护
人员监护应用适用对儿童和老人监护,方便实时查看活动轨迹、健康指标(体温、血压、心跳等);并设定电子围栏(特定区域,比如学校、小区、公园等),当活动人员离开特定区域时触发告警信息。
方案架构
时空数据库存储时空和指标数据,并提供空间查询功能,提供后端支持。GeoServer作为地图服务引擎用于空间数据渲染和地图发布,前端客户端采用Leaflet或openlayers框架。电子围栏服务用于判断移动目标同电子围栏的空间关系,并触发告警信息。
3.车辆监控
车辆监控应用适用于查看车辆当前和历史轨迹,对车辆的行驶区域做限定,当脱离特定路线后能够报警;并对车辆传感器获取一些参数(比如车速、胎压、电池电压等)做实时监测。
方案架构
时空数据库作为存储轨迹及监测指标,提供空间及指标查询功能,提供后端支持。GeoServer作为地图服务引擎用于空间数据渲染、地图发布、时空数据入库,前端客户端采用Leaflet或openlayers框架。电子围栏服务用于判断移动目标同电子围栏的空间关系,并触发告警信息。电子围栏在这里起到过滤器,再地图服务器的WFS服务写入定位和传感器监测数据。
4.物流配送
物流配送应用适合于物流行业,提供导航规划功能,并对物流过程做全程监控。
方案架构
时空数据库作为存储与路径规划引擎,提供后端支持。GeoServer作为地图服务引擎用于空间数据渲染、地图发布、时空数据入库,前端客户端采用Leaflet或openlayers框架。在时空数据库存储路网数据,路网数据是做导航规划的基础;在客户端选择起始点和目的地后,由时空数据库计算最佳导航路线,经客户端确认后把导航路线推送给物流终端。时空数据库充当两个角色:轨迹数据存储和导航路径计算。从物流终端获取的轨迹数据通过地图服务器WFS服务存入时空数据库。
5.轨迹分析
轨迹分析用于计算轨迹之间的关系以及轨迹与专题地图之间的关系;轨迹分析可以用于分析道路拥堵时空特征、人员活动热点区域、异常行驶车辆等,适用业务场景非常广,比如可以用于商业选址、交通优化、公共安全等。
方案架构
地图服务器(GeoServer)接收轨迹输入,轨迹和其它监测数据存入时空数据库;轨迹关联计算用于轨迹聚合计算,识别轨迹之间的关系(如轨迹聚类)和轨迹与地图之间的关系(如以道路作为专题图,车辆轨迹的密集程度反应道路的拥堵情况)。轨迹关联计算涉及大量的时空查询需要利用时空数据库做加速处理。