KaiwuDB 多模資料庫-時序效能最佳化
隨著物聯網領域的快速發展,時序資料的產生和處理需求不斷增長。為了滿足實時性、高效性和準確性的要求,資料庫需要進行時序效能最佳化,以提供快速的資料寫入、實時查詢和高效的資料儲存與處理能力。
本期直播介紹了時序資料和時序資料庫特徵以及基於 TSBS 時序測試標準分析,並基於此解析了 KaiwuDB 的時序模型架構和最佳化設計。
一、時序基礎概念
1. 時序基礎概念
時間序列資料是指帶時間標籤的資料,主要由電力、化工、氣象、地理資訊等行業的各類實時監測、檢查與分析裝置所採集、產生的資料。
為了便於解釋基本概念,以微電網的太陽能發電板作為典型時序資料場景。假設每個發電板採集電流、電壓、溫度三個量,有多個太陽能板。
-
Measurement:一類裝置的集合;
-
Data source:一個具體的裝置;
-
Tags:一個裝置的描述標籤;
-
Timestamp:本條時序資料的採集時間。
2. 時序資料庫的特點
時序資料庫全稱為時間序列資料庫。時間序列資料庫指主要用於處理帶時間標籤(按照時間的順序變化,即時間序列化)的資料。
基本特點:
-
大資料量的處理;
-
高壓縮比;
-
冗餘重複資料的一份儲存;
-
時 間序列分割槽處理;
-
一般沒有事務相關處理。
二、TSBS 測試標準說明
1. TSBS 測試標準
TimeScale 開源專案:
-
時序資料的生成和寫入;
-
時序場景的典型查詢。
兩個典型的應用場景:
-
DevOps – 伺服器 CPU 監控場景有序的時間序列資料;
-
IoT – 物聯網路卡車車隊場景存在無序和缺失的時間序列資料。
2. DevOps 場景(CPU-only)
CPU-only 場景特點:
-
資料間隔均為 10 秒;
-
場景五資料量最大 1.8 億條記錄,場景四資料量最小 1800 萬條記錄;
-
場景四和場景五裝置數量較多,僅覆蓋 3 分鐘時間跨度。
3. 不同分類的 TSBS 語句分析
三、KaiwuDB 多模資料庫時序引擎
1. 基本執行架構
-
應用層;
-
SQL Engine;
-
分散式層;
-
Storage Engine。
一般沒有事務相關處理。
2. 時序最佳化改造
2.1 儲存結構最佳化
針對時序資料的量大、遞增、且部分資料為靜態值的特點,儲存結構做了如下演進:
-
大表,所有裝置寫入到一張表;
-
分表,一個裝置一張表;
-
分割槽,按照時間劃分資料區域;
-
合表,部分裝置一組,靜態屬性合併儲存,同時時間分割槽
2.2 KaiwuDB 執行計算架構最佳化
針對時序模型,KaiwuDB 做了一系列執行架構調整:
-
執行器下放;
-
採用 mmap 技術,減少資料複製;
-
分割槽並行;
-
資料裁剪;
-
定製執行計劃;
-
Timebucket 等特殊時序運算元;
-
多級動態並行。
2.3 KaiwuDB 時序統計資訊
KaiwuDB 的針對時序查詢的特徵,定製和實現了一套時序預計算統計資訊。其特點如下:
-
時序表是一種特殊的複合表;
-
模板表對應 tag 表;
-
例項表只是對應 tag 表中的一條索引,而非完整表;
-
資料寫入時可以動態建立 tag 項並寫入資料;
-
tag 表支援基本的統計資訊,例如包含 TSBS;
-
查詢支援通用資料讀取;
-
特殊查詢能夠下推,例如多 tag 查詢下推,單個 tag 特定聚合資料;
-
資料塊按照時間分割槽,增加塊的統計資訊。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70027415/viewspace-2998343/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- KaiwuDB 時序引擎資料去重功能詳解AI
- 新聞速遞 | KaiwuDB 1.0 - 時序資料庫系列產品正式釋出AI資料庫
- 時序資料庫資料庫
- 實時資料庫與時序資料庫資料庫
- 時序資料庫influxdb資料庫UX
- MySQL資料庫效能最佳化MySql資料庫
- 初識時序資料庫資料庫
- 時序資料庫-01-時序資料庫有哪些?為什麼要使用資料庫
- QuestDB時序資料庫介紹資料庫
- 【首場重磅亮相】KaiwuDB 1.0 時序資料庫線上釋出會明日開啟!邀您共同見證AI資料庫
- Prometheus時序資料庫-資料的查詢Prometheus資料庫
- 時序資料庫連載系列:當SQL遇到時序TimescaleDB資料庫SQL
- 時序資料庫的叢集方案?資料庫
- 時間序列化資料庫選型?時序資料庫的選擇?資料庫
- 二十三、資料庫效能最佳化方案資料庫
- SQL Server 資料庫 最佳化 效能瓶頸SQLServer資料庫
- 百度大規模時序資料儲存(一)| 監控場景的時序資料
- 聊一聊時序資料庫和TimescaleDB資料庫
- 聊聊時序資料庫發展情況資料庫
- 時序資料庫之InfluxDB的基本操作資料庫UX
- Spring Boot中使用時序資料庫InfluxDBSpring Boot資料庫UX
- 時序資料庫InfluxDB的基本語法資料庫UX
- 時序資料庫的秘密 —— 快速檢索資料庫
- 多庫取數的效能最佳化方案
- 浪潮 KaiwuDB :用"快人一步"的資料庫擁抱物聯網時代AI資料庫
- 從實時資料庫轉戰時序資料庫,他陪伴 TDengine 從 1.0 走到 3.0資料庫
- 時序資料庫破局開放探討資料庫
- 深入淺出:瞭解時序資料庫 InfluxDB資料庫UX
- 時序資料庫 TDengine 3.0.2.0 版本正式釋出資料庫
- Prometheus時序資料庫-報警的計算Prometheus資料庫
- 開源 高效能 雲原生!時序資料庫 TDengine 上線亞馬遜Marketplace資料庫亞馬遜
- PostgreSQL資料庫匯入大量資料時如何最佳化SQL資料庫
- 墨天輪國產資料庫沙龍 | 張瑋絢:TDengine,高效能、分散式、支援SQL的時序資料庫資料庫分散式SQL
- 頂級大廠Quora如何最佳化資料庫效能?資料庫
- 資料庫系列:主從延時最佳化資料庫
- Netflix實戰指南:規模化時序資料儲存
- .NET使用TDengine時序資料庫和SqlSugar操作TDengine資料庫SqlSugar
- 時序資料庫 TDengine 簽約新奧新智資料庫