時間和空間的完美統一!阿里雲時空資料庫正式商業化

大濤學長發表於2019-09-19
經過一段時間公測,得到廣大客戶的熱烈支援,阿里雲時空資料庫已經於2019年9月10日正式商業化售賣!

產品介紹

時空資料庫能夠儲存、管理包括時間序列以及空間地理位置相關的資料。我們的社會生產、經濟活動和社會交往同時空資料密切相關,比如感測器網路、移動網際網路、射頻識別、全球定位系統等裝置時刻輸出時間和空間資料,資料量增長非常迅速,這對儲存和管理時空資料帶來了挑戰,傳統資料庫很難應對時空資料。時空資料是一種高維資料,普通的關係型資料庫更適合於儲存數值和字元型別資料,也缺少相關的運算元。阿里雲時空資料庫具有時空資料模型、時空索引和時空運算元,完全相容SQL及SQL/MM標準,支援時空資料同業務資料一體化儲存、無縫銜接,易於整合使用。 產品首頁 產品使用手冊詳見https://help.aliyun.com/document_detail/116088.html?spm=a2c4g.11174283.6.727.1b22130eu4OBeh

適用場景

交通監控與分析、物流配送、可穿戴裝置監測、新能源車輛監測、LBS、地圖服務等。

產品特性

  • 時間序列資料與空間資料有效統一,滿足大規模時空資料儲存和查詢,方便從多個維度分析和利用資料;
  • 基於PostgreSQL擴充套件,改進PostgreSQL索引,大幅度提升時空檢索效能,同時相容PostgreSQL現有生態;
  • 儲存依託於阿里雲盤古系統,資料可靠性超過6個9;
  • 具有自動備份和恢復能力;
  • 具有完善的高可用架構,支援自動化主機與備機切換;
  • 有時空領域資深專家提供支援,為客戶的業務保駕護航;

產品購買流程

在購買時空資料庫之前,需要先滿足以下前提條件:
  • 您已經註冊了阿里雲賬號並完成實名認證。否則,請先註冊阿里雲賬號。
  • 您已擁有阿里雲專有網路(VPC)。時空資料庫只支援在 VPC 網路建立例項(但之後您可以選擇透過 VPC 或公網訪問例項)。如果沒有 VPC 網路,請登入 專有網路(VPC)控制檯開通 VPC,然後在對應的地域和可用區建立專有網路和交換機。關於建立 VPC 的具體資訊,請參考 建立 VPC
以“華北1(杭州)” 地域為例,下面演示具體建立流程。

ACTION1: 在使用的區域內,建立VPC例項

以“華北1(杭州)”區為例,選擇地域:華東1(杭州),交換機選項中,選擇需要的可用區如“杭州 可用區B”, 後續建立時空資料庫例項,會用到 “地域” 、“可用區”、“VPC”、“交換機” 這幾個概念。
時間和空間的完美統一!阿里雲時空資料庫正式商業化

建立VPC完成之後,可以檢視VPC的詳情

ACTION2: 建立時空資料庫例項


時間和空間的完美統一!阿里雲時空資料庫正式商業化

  1. 地域:華東1(杭州)
  2. 可用區:華東1 可用區B
  3. 版本:選擇基礎版或高可用版。 詳細介紹請參考文件
  4. 專有網路(VPC): 選擇剛剛建立的VPC
  5. 專有網路交換機:選擇剛剛建立的VPC下的交換機

ACTION3: 購買成功之後,登入TSDB控制檯,檢視例項詳情


時間和空間的完美統一!阿里雲時空資料庫正式商業化

ACTION4: 在“例項詳情”頁面中,檢視“公共網路地址” 和 “VPC網路地址”,設定網路白名單。

這裡為了測試方便,VPN和公共網路的引數都設定成“0.0.0.0/0”

ACTION5: 在“例項詳情”頁面中,左側選擇“賬戶管理”進入賬戶建立頁面,建立高許可權賬號


時間和空間的完美統一!阿里雲時空資料庫正式商業化

至此,整個時空資料庫的初始化工作已經完成,可以透過外部網路或VPC專有網路,連線時空資料庫互動。

資料寫入查詢

時空資料庫寫入和查詢非常便利,讀寫採用標準SQL,使用者可以透過JDBC/ODBC驅動運算元據庫,進行讀寫操作。 使用者也可以透過psql互動式終端向時空資料庫寫入和查詢資料,下面是幾個簡單的例子:
建立一個時空表:
CREATE TABLE tsdb_test( uid bigint, time  timestamp, 
                       speed float, position geometry(Point,4326) );
SELECT create_hypertable('tsdb_test', 'time', chunk_time_interval => interval '1 hour');
寫入資料:
INSERT INTO tsdb_test 
VALUES (1001, '2019-03-11 16:34:15', 102.2, ST_SetSRID(ST_MakePoint(10.3,20.1),4326)),
       (1001, '2019-03-11 16:34:16', 100.1, ST_SetSRID(ST_MakePoint(10.4,20.1),4326)),
       (1002, '2019-03-11 16:34:17', 60.0, ST_SetSRID(ST_MakePoint(10.5,20.2),4326)),
       (1002, '2019-03-11 16:34:18', 61.0, ST_SetSRID(ST_MakePoint(10.6,20.2),4326)),
       (1003, '2019-03-11 16:34:20', 39.0, ST_SetSRID(ST_MakePoint(10.7,20.2),4326)),
       (1003, '2019-03-11 16:34:21', 30.0, ST_SetSRID(ST_MakePoint(10.8,20.2),4326));
使用者透過互動終端查詢資料,可以如下:
SELECT time,uid,speed,ST_AsText(position) 
FROM tsdb_test 
WHERE time >'2019-03-11 16:00:00' AND 
      time < '2019-03-11 18:00:00' AND 
      ST_Contains(ST_SetSRID(ST_MakeBox2D(ST_Point(2.4, 5.5),ST_Point(13.0,26.1)),4326),position) ;
+---------------------+---------------+-----------------+---------------------+
| TIME                | UID           | SPEED           | ST_ASTEXT           |
+---------------------+---------------+-----------------+---------------------+
| 2019-03-11 16:34:15 | 1001          |           102.2 | POINT(10.3 20.1)    |
| 2019-03-11 16:34:16 | 1001          |           100.1 | POINT(10.4 20.1)    |
| 2019-03-11 16:34:17 | 1002          |              60 | POINT(10.5 20.2)    |
| 2019-03-11 16:34:18 | 1002          |              61 | POINT(10.6 20.2)    |
| 2019-03-11 16:34:20 | 1003          |              39 | POINT(10.7 20.2)    |
| 2019-03-11 16:34:21 | 1003          |              30 | POINT(10.8 20.2)    |
+---------------------+---------------+-----------------+---------------------+
更新資料:
UPDATE tsdb_test 
set position = ST_SetSRID(ST_MakePoint(11.1,22.2),4326) 
WHERE uid=1002;

時空分析功能

使用者可以使用時間&空間分析函式,對時空資料庫中的表做分析查詢。以共享汽車平臺中車輛資料為背景,舉幾個簡單的例子。

按時間視窗聚合

按照5分鐘為一個聚合時間視窗,獲取共享汽車平臺中車輛的最大速度;常見聚合函式如:sum,max,min,avg等
SELECT uid,time_bucket('5 minutes', time) AS interval, max(speed) 
FROM tsdb_test 
WHERE uid='1002' and 
      time < '2019-04-01 01:13:42' 
GROUP BY uid, interval 
ORDER BY interval DESC;
+---------------+---------------------+---------------+
| UID           | INTERVAL            | MAX           |
+---------------+---------------------+---------------+
| 1002          | 2019-03-11 16:30:00 |            61 |
+---------------+---------------------+---------------+


按時間段和距離過濾

返回某個時間段,與指定物件的距離大於“17米”的車輛。空間範圍函式比如: ST_Distance等使用,參考: 空間物件關係函式
SELECT time,uid,speed,ST_AsText(position) 
FROM tsdb_test 
WHERE time > '2019-01-01 01:02:00' and 
      time < '2019-04-01 01:11:02' and 
      ST_Distance('SRID=4326;POINT(2.4 5.5)'::geometry, position)>17.0;
+---------------------+---------------+-----------------+---------------------+
| TIME                | UID           | SPEED           | ST_ASTEXT           |
+---------------------+---------------+-----------------+---------------------+
| 2019-03-11 16:34:17 | 1002          |              60 | POINT(11.1 22.2)    |
| 2019-03-11 16:34:18 | 1002          |              61 | POINT(11.1 22.2)    |
+---------------------+---------------+-----------------+---------------------+

普通屬性值過濾

根據使用者設定的數值限制條件,返回某時間段內“速度>60”的車輛記錄。比如: “>”, “<”, “=”, “<=”, “>=”, “!=”。ST_AsText的使用,參考: 空間物件輸出函式
SELECT time,uid,speed,ST_AsText(position) 
FROM tsdb_test 
WHERE time > '2019-03-01 01:02:00' and 
      time < '2019-03-15 01:11:02' and 
      speed > 60;
+---------------------+---------------+-----------------+---------------------+
| TIME                | UID           | SPEED           | ST_ASTEXT           |
+---------------------+---------------+-----------------+---------------------+
| 2019-03-11 16:34:15 | 1001          |           102.2 | POINT(10.3 20.1)    |
| 2019-03-11 16:34:16 | 1001          |           100.1 | POINT(10.4 20.1)    |
| 2019-03-11 16:34:18 | 1002          |              61 | POINT(11.1 22.2)    |
+---------------------+---------------+-----------------+---------------------+
關於時空資料庫的具體用法,可以參考阿里雲 時空資料庫-開發指南
阿里雲時空資料庫致力於推動時空領域生態發展,為客戶提供低成本高效能服務,讓時空資料價值線上化!
產品首頁 產品使用手冊詳見https://help.aliyun.com/document_detail/116088.html?spm=a2c4g.11174283.6.727.1b22130eu4OBeh 時空資料庫例項建立
本文作者:胡笳
本文為雲棲社群原創內容,未經允許不得轉載。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69947441/viewspace-2657611/,如需轉載,請註明出處,否則將追究法律責任。

相關文章