爲物聯網而生:高性能時間序列數據庫HiTSDB商業化首發!

摘要: 近日,阿里雲宣佈高性能時間序列數據庫 (High-Performance Time Series Database , 簡稱 HiTSDB) 正式商業化。html

 

近日,阿里雲宣佈高性能時間序列數據庫 (High-Performance Time Series Database , 簡稱 HiTSDB) 正式商業化。算法

 

先跟你們聊一下什麼叫時序數據。簡單的說,就是時間上分佈的一系列數值,關鍵字是數值,咱們通常認爲的時序數據是什麼時間發生了什麼事情,可是在時序數據這個領域裏定義的時序數據全都是跟數值有關的。也就是說,若是隻是一個帶有時間戳的一條數據並不能叫作時序數據。舉個例子,好比像我早上8點半上樓吃了個飯這條記錄,至關於一個日誌,這個自己不構成一個時序數據,可是若是某個餐廳早上8點半同時有50我的在那裏吃飯,這個50加上餐廳的信息再加這個時間點就構成了一個時序數據。數據庫

 

單值與多值建模服務器

 

實際上通用的建模方式有兩種,其中的一種是單值。實際上咱們是針對不一樣的東西來建模的,多值的模型是針對數據源建模,咱們每一行數據針對的是一個數據源,它的三個被測量的指標在同一列上,因此每個數據源,數據的來源在每個時間點上都有一行,這就是多值的模型。網絡

還有一種模型是單值的模型,單值的模型咱們是把它測量的精確到時間序列上,也就在時間序列的每一個時間點上只有一個值,因此是個單值,也就是說對於多值模型來講它每一行數據對應的是一個數據源,對於單值模型來講它對應的是一個時間序列,實際上多值模型對應的是一個數據源在一個時間點上就會產生一行數據,而在單值模型裏一個數據源上面的每個指標會產生一行數據。架構

 

什麼是插值和降精度?性能

 

如上前面所講,時間序列會分佈在一些時間線上,數據源和測量指標肯定了的話,時間序列是隨着時間軸日後分佈的,實際上它的採樣在一個典型的場景裏是固定時間間隔的,它中間一些點作處理會牽扯到插值和降精度處理。好比說中間丟失了一個點,比較簡單的方法是中間插一個值,經常使用的方法是線性插值,就是在時間軸上畫一個直線中間的點就插出來了。大數據

另外一個叫降精度,例如咱們有個按秒採樣的時間序列,顯示時間範圍是一年的數據,爲了便於查看,須要把時間精度降到一天。好比咱們只選這一天中的最大值或者最小值或者平均值,做爲這一天的氣溫,也就是最高氣溫,最低氣溫和平均氣溫的概念。用算法或者把時序數據轉換成精度比較低的時間序列以便於觀察和理解它,這是在傳統數據庫裏沒有的一種方式。網站

再一個就是數據聚合,也是很是典型的基於設備的數據統計,好比這裏有不少設備指標數據構成的時間線,時序數據的聚合是在時間線的維度上的,而不是按點的,在處理平時處理的空間聚合的話,通常是把不少數據點按照一個個聚合起來,而實際數據處理的時候通常會把它抽象的點連成線就是剛纔看的時間序列,每一個數據源在一個測量值上會產生一行時間線,加上時間序列,若是是根據某一個維度上的測量的話,在同一維度就能調成線就把時間序列處理出來了。阿里雲

 

舉個例子, 智慧園區的業務系統須要查看一個樓宇的某盞燈的耗電量狀況,那麼就須要把這盞燈的耗電量數據從數據庫中查詢並展現出來,若是因爲採集的故障致使某個時刻用電量數據缺失,那麼須要經過特定算法來近似的估算出這個數據,這個計算補全數據的過程就是「插值」。而當須要查看這盞燈一年的耗電趨勢狀況時,一般只須要計算出每一天的耗電量,進行查看,而不須要把每個時刻採集的數據所有輸出出來,這個將原始精度轉化爲業務需求精度的過程就是「降精度」。而若是要統計某一個樓層或者樓宇的用耗電量總體趨勢數據時,就須要將全部統計範圍內的燈具的耗電量數據作「合併統計」,這個相似的統計過程就是Aggregation。

 

時序數據降精度是在時間序列維度上作的。對於關係數據庫來講,首先要把時間序列維度拿出來,而後在中間插值,而實際上 SQL 是按點來操做的。因此若是要作降精度的話,須要用一個值查詢把整條時間序列上的數據查詢出來,插好值以後才能作時間序列之間的聚合,那麼服務和 SQL 服務器之間的吞吐量很是大,至關於 SQL 只是一個數據通道須要把全部值都拉出來運算一遍,這個查詢性能會很是慢,而且每一次計算都須要從新拉取數據,相對 HiTSDB,這個性就能差了幾百倍,在空間聚合 Aggregator 支持也很是全面,支持 ADhoc 查詢,HiTSDB 經過引入倒排索引和數據分片提高檢索時間序列的效率,經過並行計算架構,總體計算性能提高很是明顯。

 

HiTSDB高壓縮技術 存儲成本下降90%

 

物聯網領域是最典型的時序數據產生和應用的場景,這些場景具有一些特徵,技術數據量特別大,好比某個智能設備的溫度傳感器,首先第一是時間序列會持續的產生大量的數據,持續的產生什麼意思呢?由於咱們每每對時間序列來講是定時採樣功能,若是每秒測量一次,一天是86400秒,若是24小時都要用,平均每個傳感器儀表在一個時間點上產生一個數據點,一個儀表就產生86400個數據,若是把全國各個縣都佈一個採樣點,那一天數據就上億了,實際上你們做爲氣象採樣來講每個縣對應一個溫度傳感器顯然有點不夠的,可能咱們是每個街道甚至每一個小區都有這樣的傳感器,那麼這個數據加起來其實是一個很是驚人的數字。

 

利用HiTSDB 的高壓縮技術,相比較 OpenTSDB 提高10倍左右,一般原始時序數據的大小在 200-300 Byte,OpenTSDB 單數據點消耗約20 Byte,HiTSDB 單數據點消耗約 2Byte,經過 HiTSDB 能夠節約90%以上的數據庫存儲成本。

 

對於物聯網平臺企業能夠利用HiTSDB 和阿里雲的產品能力基於以下的架構構建雲上的物聯網平臺。

HiTSDB 除了在雲上提供高效的時序數據服務能力,企業能夠也能夠利用HiTSDB 結合阿里雲工業大腦和城市大腦的大數據方案實現智能製造生產和智慧城市。 利用HiTSDB 的「邊緣+ 中心」的解決方案,能夠知足工業物聯網IoT尤爲是電力能源行業的數據邊緣端本地存儲分析,逐級數據上報 ,以及網絡不穩態的數據數據穩定上報和中心端的全局設備數據監控分析,打通智慧大腦的數據通道。

HiTSDB商業化首發期間,官網推出85折優惠活動。更多詳情點擊【HiTSDB官方網站

 

原文地址

閱讀更多幹貨好文,請關注掃描如下二維碼:

相關文章
相關標籤/搜索