時序模型介紹
表格存儲的時序模型是針對時間序列數(shù)據(jù)的特點進行設(shè)計,適用于物聯(lián)網(wǎng)設(shè)備監(jiān)控、設(shè)備采集數(shù)據(jù)、機器監(jiān)控數(shù)據(jù)等場景,支持自動構(gòu)建時序元數(shù)據(jù)索引、豐富的時序查詢能力等功能。時序模型通過時序表存儲時間序列數(shù)據(jù),能提供高并發(fā)寫入和查詢以及PB級海量數(shù)據(jù)的低成本存儲。您還可以通過SQL查詢與分析時序數(shù)據(jù)。
模型介紹
表格存儲的時序模型是針對時間序列數(shù)據(jù)的特點進行設(shè)計,適用于物聯(lián)網(wǎng)設(shè)備監(jiān)控、設(shè)備采集數(shù)據(jù)、機器監(jiān)控數(shù)據(jù)等場景。
在表格存儲的時序模型中,采用一張二維的時序表來存儲時序數(shù)據(jù)。每行代表一個時間線在某個時間點的數(shù)據(jù),該行的主鍵部分為時間線標識和時間戳,該行的數(shù)據(jù)列部分為該時間線在該時間戳下的數(shù)據(jù)點,可以有多個數(shù)據(jù)列。主鍵結(jié)構(gòu)和數(shù)據(jù)列的結(jié)構(gòu)無須用戶進行預(yù)先定義,用戶僅需要在寫入時指定數(shù)據(jù)列的列名即可。
一個時序表支持存儲不同度量類別的時序數(shù)據(jù)。以下圖為例,時序表中存儲了溫度(temperature)和濕度(humidity)兩種度量類別的數(shù)據(jù)。
圖中度量名稱(measurement)、數(shù)據(jù)源(data source)和標簽(tags)組成了一個時間線標識。此外,您還可以通過接口更新某個時間序列的元數(shù)據(jù)屬性(attributes),該元數(shù)據(jù)信息可以用于時間線的檢索。
數(shù)據(jù)寫入后,系統(tǒng)會自動提取該時間線的元數(shù)據(jù)信息并自動構(gòu)建索引,支持按照度量名稱、數(shù)據(jù)源以及標簽的組合條件進行時間線檢索。
表格存儲時序模型的主要優(yōu)勢如下:
通用的時序數(shù)據(jù)建模方式,用戶無須預(yù)定義表結(jié)構(gòu)。
支持自動構(gòu)建時間序列的元數(shù)據(jù)索引,支持按照多種組合條件檢索時間序列。
支持SQL查詢以及通過SQL進行聚合統(tǒng)計操作。
服務(wù)能力自動水平擴展、支持高并發(fā)寫入和查詢以及PB級海量數(shù)據(jù)的低成本存儲。
基礎(chǔ)概念
概念 | 描述 |
時序數(shù)據(jù) | 由多個時間序列組成,每個時間序列表示一組按照時間順序排列的數(shù)據(jù)點。除了數(shù)據(jù)點之外,還需要一些元數(shù)據(jù)用來標識一個時間序列。因此時序數(shù)據(jù)由元數(shù)據(jù)和數(shù)據(jù)兩部分組成。
|
時間線 | 在時序數(shù)據(jù)場景中,常用時間線來代指一個時間序列。在表格存儲時序模型中,時間線與時間序列也是等價的說法。 |
時間線元數(shù)據(jù) | 時間線元數(shù)據(jù)也稱為時間序列元數(shù)據(jù),表示一條時間線的標識和屬性信息。時間線標識用來唯一確定一條時間線,屬性信息支持修改,可用于時間線檢索。 |
時間線標識 | 時間線標識也稱為時間序列標識,用來唯一標識一條時間線。在表格存儲的時序模型中,時間線標識由度量名稱、數(shù)據(jù)源和標簽三部分組成。 |
度量名稱 | 時間線數(shù)據(jù)所度量的物理量或者監(jiān)控指標的名稱,例如cpu或net,用于表示該時間序列記錄的是cpu或者網(wǎng)絡(luò)使用率等。 |
數(shù)據(jù)源 | 產(chǎn)生時間線的數(shù)據(jù)源標識,可以為空。 |
標簽 | 時間線的標簽信息。您可以自定義多個字符串類型的key-value對。 |
屬性 | 屬性屬于時間線元數(shù)據(jù)的一部分,可用于記錄該時間線的一些可變屬性信息,但不作為時間線的標識,不用于唯一確定一個時間序列。時間線的屬性在格式上類似于標簽,為多個字符串類型的key-value對。您可以設(shè)置或者更新某個時間線的屬性,用于后續(xù)通過屬性進行時間線的檢索。 |
時間線數(shù)據(jù) | 一條時間線的數(shù)據(jù)點由產(chǎn)生數(shù)據(jù)的時間和數(shù)據(jù)值兩部分組成。如果每個時間線每個時刻僅產(chǎn)生一個值,則為單值模型;如果每個時刻對應(yīng)多個值,則為多值模型。 表格存儲的時序模型為多值模型,在一個時間點上可以設(shè)置多個數(shù)據(jù)值。每個值對應(yīng)數(shù)據(jù)庫中的一列,包括列名和列值。列值支持多種數(shù)據(jù)類型,包括布爾、整型、浮點數(shù)、字符串和二進制。 |
功能特性
創(chuàng)建和管理時序表
通過控制臺、SDK、CLI工具等方式列出實例中的全部時序表、創(chuàng)建一張時序表、查詢時序表的配置信息、更新時序表的配置信息以及刪除一張時序表。
在創(chuàng)建或者更新時序表的配置信息時,您可以設(shè)置時序表中數(shù)據(jù)的自動過期時間(TimeToLive),系統(tǒng)將自動判斷當前時間與時序數(shù)據(jù)中用戶寫入的時間戳,超過過期時間后數(shù)據(jù)會被自動刪除。
讀寫時序數(shù)據(jù)
通過控制臺、SDK、CLI工具等方式將時序數(shù)據(jù)批量寫入一張時序表中。數(shù)據(jù)寫入后,您可以通過指定時間線標識來查詢一條時間線在某段時間范圍內(nèi)的數(shù)據(jù)。
時間序列檢索
通過控制臺、SDK、CLI工具等方式檢索一張時序表中的時間線。檢索條件支持多種條件組合,例如查詢“度量名稱為cpu”、“標簽中包含名稱為region和值為hangzhou的標簽”且“屬性中包含名稱為status和值為online”的所有時間線。檢索到時間線后,可以通過調(diào)用接口進一步查詢該時間線中的數(shù)據(jù)。
SQL查詢分析
時序表支持通過SQL進行查詢,SQL中支持通過指定時間線的元數(shù)據(jù)條件篩選時間線以及通過統(tǒng)計聚合操作按照不同維度對數(shù)據(jù)進行聚合操作,例如查詢某一批設(shè)備采樣數(shù)據(jù)的平均值、將秒級數(shù)據(jù)聚合為分鐘級數(shù)據(jù)等。
此外,SQL還支持僅對時間線的元數(shù)據(jù)進行查詢,方便通過SQL進行時間線的元數(shù)據(jù)管理。
使用限制
更多信息,請參見時序模型限制。
注意事項
目前支持使用時序模型功能的地域有華東1(杭州)、華東2(上海)、華北2(北京)、華北3(張家口)、華北6(烏蘭察布)、華南1(深圳)、中國香港、德國(法蘭克福)、美國(弗吉尼亞)和新加坡。
如果使用過程中遇到問題,請通過釘釘加入用戶群44327024(物聯(lián)網(wǎng)存儲 IoTstore 開發(fā)者交流群
)聯(lián)系我們。
接口說明
分類 | 接口 | 描述 |
時序表管控接口 | 創(chuàng)建一張時序表。 | |
獲取當前實例下的時序表列表。 | ||
獲取一個時序表的信息。 | ||
更新時序表的配置信息。 | ||
刪除一個時序表。 | ||
時間序列操作接口 | 寫入時序數(shù)據(jù)。 | |
查詢某個時間線的數(shù)據(jù)。 | ||
檢索時間線的元數(shù)據(jù)。 | ||
更新時間線的元數(shù)據(jù)。 | ||
刪除時間線的元數(shù)據(jù)。 | ||
Lastpoint索引管控接口 | 創(chuàng)建Lastpoint索引。 | |
刪除Lastpoint索引。 |
使用流程
步驟 | 操作 | 說明 |
1 | 創(chuàng)建RAM用戶后,為RAM用戶配置訪問表格存儲資源所需的最小化權(quán)限。您可以使用系統(tǒng)默認策略或者自定義權(quán)限策略為RAM用戶授予訪問表格存儲資源的權(quán)限。 如果要使用阿里云賬號或者要使用的RAM用戶已具有訪問表格存儲存儲資源所需的權(quán)限,請?zhí)^此步驟。 重要 阿里云賬號默認具有所有云資源的操作權(quán)限,為了您的資源安全,建議您為阿里云賬號創(chuàng)建RAM用戶并為其授權(quán),實現(xiàn)不同RAM用戶擁有不同資源訪問權(quán)限的目的。 | |
2 | 使用表格存儲功能前,您必須開通表格存儲服務(wù)。 服務(wù)僅需開通一次,開通過程免費。如果已經(jīng)開通表格存儲服務(wù),請?zhí)^此操作。 | |
3 | 重要
根據(jù)確定的實例模型和實例規(guī)格在所需地域中創(chuàng)建相應(yīng)實例。 如果已存在實例滿足使用需求,請?zhí)^此步驟。 | |
4 | 創(chuàng)建時序表用于存儲時間序列數(shù)據(jù)。創(chuàng)建時序表時,您可以根據(jù)是否需要清理歷史業(yè)務(wù)數(shù)據(jù)配置時序表的數(shù)據(jù)生命周期。 | |
5 | 批量寫入時序數(shù)據(jù)到時序表。時序數(shù)據(jù)由元數(shù)據(jù)和數(shù)據(jù)兩部分組成,如果未預(yù)先新建元數(shù)據(jù),則系統(tǒng)會根據(jù)寫入的數(shù)據(jù)自動提取元數(shù)據(jù)。 說明
| |
6 | 重要 查詢時序數(shù)據(jù)前,如果不確定要查詢時間線信息(例如度量名稱、數(shù)據(jù)源信息),您可以指定多種條件檢索時間線。更多信息,請參見管理時間線元數(shù)據(jù)。 確定要查詢的時間線后,根據(jù)時間范圍等條件查詢指定時間線中符合條件的時序數(shù)據(jù)。 | |
7 | 對于同一個時序表,您可以建立三種SQL映射關(guān)系用于數(shù)據(jù)查詢。
|
使用方式
您可以使用控制臺、命令行工具或者SDK使用時序模型。
計費說明
表格存儲支持VCU模式(原預(yù)留模式)和CU模式(原按量模式)兩種計費模式,請根據(jù)所用的實例模型參考相應(yīng)計費模式了解多元索引計費信息。更多信息,請參見計費概述。
VCU模式(原預(yù)留模式):計費項包括計算能力、數(shù)據(jù)存儲量和外網(wǎng)下行流量,其中數(shù)據(jù)存儲量包括高性能存儲、容量型存儲和多元索引存儲。
使用時序模型時,時間線數(shù)據(jù)占用的存儲空間類型與所用實例規(guī)格(容量型存儲或高性能存儲)一致,時間線元數(shù)據(jù)占用的存儲空間為高性能存儲,查詢與分析時序表中數(shù)據(jù)時會消耗計算資源。
CU模式(原按量模式):時序模型計費項包括時間線數(shù)據(jù)和時間線元數(shù)據(jù)的讀吞吐量、寫吞吐量、數(shù)據(jù)存儲量和外網(wǎng)下行流量。更多信息,請參見時序模型計量計費。
常見問題
相關(guān)文檔
如果需要刪除歷史時序數(shù)據(jù),您可以通過配置時序表的數(shù)據(jù)生命周期實現(xiàn)。更多信息,請參見時序數(shù)據(jù)生命周期。
如果要以更低成本備份表格存儲中的時序數(shù)據(jù)或者以文件形式導出時序數(shù)據(jù)到本地,您可以通過DataWorks數(shù)據(jù)集成服務(wù)將表格存儲中的時序數(shù)據(jù)導出到OSS后進行存儲或者下載。更多信息,請參見將表格存儲數(shù)據(jù)同步到OSS。
如果要可視化展示時序數(shù)據(jù),您可以通過對接Grafana實現(xiàn)。更多信息,請參見對接Grafana。
通過Flink計算與分析數(shù)據(jù)后,您可以使用Tablestore時序表存儲輸出結(jié)果。更多信息,請參見使用時序表存儲Flink輸出結(jié)果。
在某些場景下,如果希望將時序表中的時序數(shù)據(jù)遷移到另一個時序表中,您可以DataWorks數(shù)據(jù)集成服務(wù)實現(xiàn)。更多信息,請參見將表格存儲時序表中數(shù)據(jù)同步到另一個時序表。
如果要低成本存儲時序數(shù)據(jù)以及快速查詢和分析時序數(shù)據(jù),您可以使用時序分析存儲實現(xiàn)。更多信息,請參見時序分析存儲概述。
如果要獲取時間線的最新時間點的數(shù)據(jù),您可以使用Lastpoint索引實現(xiàn)。更多信息,請參見Lastpoint索引。
基于時序模型可以實現(xiàn)基于設(shè)備接入平臺與Tablestore搭建車輛軌跡數(shù)據(jù)平臺等方案。更多方案介紹,請參見場景實戰(zhàn)-典型場景架構(gòu)與實現(xiàn)。
基于物聯(lián)網(wǎng)場景中多源異構(gòu)數(shù)據(jù)存儲、高并發(fā)吞吐、海量數(shù)據(jù)高性價比存儲、多維度數(shù)據(jù)處理與分析等需求,表格存儲推出了一站式物聯(lián)網(wǎng)存儲IoTstore解決方案,為物聯(lián)網(wǎng)設(shè)備元數(shù)據(jù)、消息數(shù)據(jù)、時序軌跡等海量數(shù)據(jù)提供存儲、查詢、檢索、分析、同步等能力。更多信息, 請參見物聯(lián)網(wǎng)存儲簡介、時序數(shù)據(jù)接入、設(shè)備時序數(shù)據(jù)開發(fā)、設(shè)備元數(shù)據(jù)接入和時序分析存儲。