時間和空間的完美統一!阿里雲時空資料庫正式商業化
經過一段時間公測,得到廣大客戶的熱烈支援,阿里雲時空資料庫已經於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 可用區B
-
版本:選擇基礎版或高可用版。 詳細介紹請參考文件
-
專有網路(VPC): 選擇剛剛建立的VPC
-
專有網路交換機:選擇剛剛建立的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/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 重磅!阿里雲時空資料庫正式免費公測阿里資料庫
- oracle建立臨時表空間和資料表空間以及刪除Oracle
- 坑系列 — 時間和空間的平衡
- Oracle臨時表空間檢視、新增臨時表空間資料檔案、修改預設臨時表空間 方法!Oracle
- 重磅|阿里雲HBase Ganos全新升級,推空間、時空、遙感一體化基礎雲服務阿里
- 清理oracle資料庫空間Oracle資料庫
- 時間複雜度和空間複雜度時間複雜度
- 臨時表空間和回滾表空間使用率查詢
- MYSQL造資料佔用臨時表空間MySql
- 星環科技分散式向量資料庫Transwarp Hippo正式釋出,擴充大語言模型時間和空間維度分散式資料庫模型
- PostgreSQL:表空間-->資料庫-->表SQL資料庫
- 當使用者無限制使用表空間配額且表空間有足夠空間時出現超出表空間的空間限額
- 時間與空間複雜度分析複雜度
- 打造“雲邊一體化”,時序時空資料庫TSDB技術原理深度解密資料庫解密
- 最詳細的解說—時間和空間複雜度複雜度
- MySQL空間最佳化(空間清理)MySql
- SciPy 空間資料
- 時間複雜度O(n)和空間複雜度時間複雜度
- Runloop有效利用空閒時間OOP
- 達夢資料庫表空間等空間大小查詢方法總結資料庫
- JavaScript 資料結構與演算法之美 - 時間和空間複雜度JavaScript資料結構演算法複雜度
- mysql臨時表,臨時表空間,ibtmp1表空間暴增原因初探MySql
- 走近 SDP,感受商業空間的魔力
- 掌握時間與空間:深入探討Golang中的時間戳與時區轉換Golang時間戳
- 查詢時若時間為空,開始時間取今天的零點,結束時間取當前時間
- 表空間和資料檔案的管理
- python批量統計Oracle資料庫的空間使用量PythonOracle資料庫
- oracle11g 查詢臨時表空間的使用率和正在使用臨時表空間的使用者Oracle
- 時間複雜度跟空間複雜度時間複雜度
- 時間複雜度與空間複雜度時間複雜度
- OLAP 伺服器,空間換時間可行嗎?伺服器
- oracle臨時表空間相關Oracle
- 4.2.1.8規劃臨時表空間
- 眾創空間,符合時代需求
- 刪除臨時表空間組
- MySQL InnoDB臨時表空間配置MySql
- oracle dg庫資料檔案空間不足Oracle
- Oracle資料庫閃回區空間不足Oracle資料庫