目前隨着移動互聯網和物聯網的普遍應用,90%以上的數據是和時間+空間相關的,而愈來愈多的數據應用場景與時間和空間信息密不可分。時間+空間維度的數據(咱們稱之爲時空數據)是一種高維數據,須要更爲高效的數據處理方式來處理,而普通的關係型數據庫更適合於存儲數值和字符類型數據,也缺乏相關的時空算子。在實際應用場景上例如傳感器網絡、移動互聯網、射頻識別、全球定位系統等設備時刻輸出時間和空間數據,數據量增加很是迅速,這對存儲和管理時空數據帶來了挑戰,傳統數據庫很難應對以上場景。阿里雲時空數據庫可以存儲、管理包括時間序列以及空間地理位置相關的數據,時空數據庫具備時空數據模型、時空索引和時空算子,徹底兼容SQL及SQL/MM標準,支持時空數據同業務數據一體化存儲、無縫銜接,易於集成使用。html
5月5日,阿里雲時空數據庫正式開始免費公測,公測期間咱們提供了2core4g+100G雲盤的版本供客戶免費試用。
產品使用手冊:https://help.aliyun.com/document_detail/116088.html?spm=a2c4g.11174283.6.727.1b22130eu4OBeh
公測免費試用頁面:https://common-buy.aliyun.com/?commodityCode=hitsdb_spatialpre#/buy前端
易用(標準SQL接口)sql
SQL是目前最通用的數據庫訪問語言,時空數據庫基於標準PostgreSQL,支持JDBC/ODBC驅動訪問。時空數據同其它業務數據一體化處理,兼容OGC空間計算函數;支持符合OGC規範的WKT和WKB格式數據輸入和輸出。數據庫
寫入性能強勁後端
時空數據,插入是一個強需求,每每有大量設備上報軌跡、指標數據,所以對插入性能要求較高。阿里雲時空數據庫,單機不一樣規格下能夠支持到數萬到數十萬的TPS寫入。安全
高效分析能力服務器
時空數據,除單條的查詢、POI查詢,更多的是其餘的分析類需求。這對時空數據庫的分析能力也是一個挑戰。阿里雲時空支持查詢條件自動選擇分區,高效空間索引,並行的聚合操做等提高分析性能。網絡
自動擴展分區架構
業務對時空數據查詢,每每都會對時間區間進行過濾,所以時空數據一般在分區時,會有一個時間或空間分區的概念。時空數據庫支持自動擴展分區,減小用戶的管理量,不須要人爲的干預自動擴展分區。框架
功能豐富
具備豐富的時間和空間處理查詢函數;支持點(POINT)、線(LINESTRING)、多邊形(POLYGON)、多點(MULTIPOINT)、多線(MULTILINESTRING)、多多邊形(MULTIPOLYGON)和幾何對象集(GEOMETRYCOLLECTION)等幾何類型存儲。
自動保留策略
根據用戶配置,自動刪除過舊數據,極大下降用戶使用成本,減小用戶管理工做。
自動Failover
阿里雲時空數據庫提供全自動Failover機制,一旦所在硬件發生不可恢復的故障,會在很是短的時間內使用其餘硬件替換故障硬件。這樣能夠減小由於不可控故障引起的服務中斷時間。該Failover是全自動的,無需人工干預,用戶也無需擔憂服務因爲硬件故障形成的長時間不可用。
高可靠
時空數據庫是一種高性能時空數據庫,底層存儲創建在阿里雲高效雲盤基礎之上,高效雲盤提供99.9999999%數據高可靠保障。能夠保障時空數據庫數據一旦寫入,基本不會丟失。
阿里雲時空數據庫在生態上很是易於同多種主流產品集成,好比地圖引擎(如GeoServer和MapServer)、地圖編輯系統(如QGIS和ArcGIS for Desktop)、數據分析與可視化產品(如Grafana、Zeppelin和Jupyter)、大數據分析平臺(Spark),知足模塊化集成需求,爲時空數據管理提供有力支撐。
時空數據庫寫入和查詢很是便利,讀寫採用標準SQL,用戶能夠經過JDBC/ODBC驅動操做數據庫,進行讀寫操做。
用戶也能夠經過psql交互式終端向時空數據庫寫入數據,下面是幾個簡單的例子:
INSERT INTO tsdb_test VALUES (1001, '2019-03-11 16:34:15', 1002.2, ST_SetSRID(ST_MakePoint(10.3,20.1),4326)
用戶經過交互終端查詢數據,能夠以下:
SELECT time,uid,speed,dev_type,ST_AsText(position) FROM metrics WHERE time >'2017-01-01 01:02:00' AND time < '2017-01-01 01:11:02' AND ST_Contains(ST_SetSRID(ST_MakeBox2D(ST_Point(12.4, 25.5),ST_Point(13.0,26.1)),4326),position);
關於時空數據庫的具體用法,能夠參考阿里雲時空數據庫文檔:開發指南
地圖服務
地圖服務是一種很是普遍的應用,便於各種業務數據空間化、空間分析和可視化。這個場景介紹如何使用時空數據庫搭建地圖服務,並給出架構參考。
方案架構
時空數據庫做爲存儲空間數據(如車輛定位數據)與空間查詢引擎,提供後端支持。GeoServer(GeoServer是一款知名的開源地圖服務引擎,支持OGC WFS、WMS、WPS等協議,易於部署,有大量的用戶)做爲地圖服務引擎用於空間數據渲染和地圖發佈,前端客戶端採用Leaflet或openlayers框架,同時支持PC/Android/iOS多種類型終端。地圖發佈的主要流程包括三步:第一步在時空數據庫中導入業務數據後;第二步經過GeoServer關聯數據庫;第三步選擇須要發佈的圖層,並對圖層設定相應對式樣。
人員監護應用適用對兒童和老人監護,方便實時查看活動軌跡、健康指標(體溫、血壓、心跳等);並設定電子圍欄(特定區域,好比學校、小區、公園等),當活動人員離開特定區域時觸發告警信息。
方案架構
時空數據庫存儲時空和指標數據,並提供空間查詢功能,提供後端支持。GeoServer做爲地圖服務引擎用於空間數據渲染和地圖發佈,前端客戶端採用Leaflet或openlayers框架。電子圍欄服務用於判斷移動目標同電子圍欄的空間關係,並觸發告警信息。
車輛監控應用適用於查看車輛當前和歷史軌跡,對車輛的行駛區域作限定,當脫離特定路線後可以報警;並對車輛傳感器獲取一些參數(好比車速、胎壓、電池電壓等)作實時監測。
方案架構
時空數據庫做爲存儲軌跡及監測指標,提供空間及指標查詢功能,提供後端支持。GeoServer做爲地圖服務引擎用於空間數據渲染、地圖發佈、時空數據入庫,前端客戶端採用Leaflet或openlayers框架。電子圍欄服務用於判斷移動目標同電子圍欄的空間關係,並觸發告警信息。電子圍欄在這裏起到過濾器,再地圖服務器的WFS服務寫入定位和傳感器監測數據。
物流配送應用適合於物流行業,提供導航規劃功能,並對物流過程作全程監控。
方案架構
時空數據庫做爲存儲與路徑規劃引擎,提供後端支持。GeoServer做爲地圖服務引擎用於空間數據渲染、地圖發佈、時空數據入庫,前端客戶端採用Leaflet或openlayers框架。在時空數據庫存儲路網數據,路網數據是作導航規劃的基礎;在客戶端選擇起始點和目的地後,由時空數據庫計算最佳導航路線,經客戶端確認後把導航路線推送給物流終端。時空數據庫充當兩個角色:軌跡數據存儲和導航路徑計算。從物流終端獲取的軌跡數據經過地圖服務器WFS服務存入時空數據庫。
軌跡分析用於計算軌跡之間的關係以及軌跡與專題地圖之間的關係;軌跡分析能夠用於分析道路擁堵時空特徵、人員活動熱點區域、異常行駛車輛等,適用業務場景很是廣,好比能夠用於商業選址、交通優化、公共安全等。
方案架構
地圖服務器(GeoServer)接收軌跡輸入,軌跡和其它監測數據存入時空數據庫;軌跡關聯計算用於軌跡聚合計算,識別軌跡之間的關係(如軌跡聚類)和軌跡與地圖之間的關係(如以道路做爲專題圖,車輛軌跡的密集程度反應道路的擁堵狀況)。軌跡關聯計算涉及大量的時空查詢須要利用時空數據庫作加速處理。
時空數據庫經過融合時序和空間數據模型,來知足不一樣時空數據場景的要求,更貼近業務;提供多元化索引(空間索引和時序索引等)來知足不一樣類型場景條件查詢需求;提供自動分片及自動刪除過舊數據策略,來下降用戶管理成本,提高便利性。同時還在穩定性、可靠性、運維上提供優化服務,讓用戶可以在融合的PostgreSQL生態下,更專一於本身的業務。
公測免費試用頁面:https://common-buy.aliyun.com/?commodityCode=hitsdb_spatialpre#/buy
產品使用手冊:https://help.aliyun.com/document_detail/116088.html?spm=a2c4g.11174283.6.727.1b22130eu4OBeh
本文做者:焦先
本文爲雲棲社區原創內容,未經容許不得轉載。