數據庫 | 時序數據庫選型

選型目標

  • 高性能與低延遲:滿足高頻率數據寫入與即時查詢的需求。
  • 資源效率:優化存儲空間使用,減少計算資源消耗。
  • 可擴展架構:支持數據量增長帶來的擴展需求,易于維護。
  • 社區活躍度:有活躍的開發者社區,確保問題快速響應和持續更新。
  • 生態集成:良好地與現有工具鏈、監控系統及可視化平臺集成。

市場主流時序數據庫概覽

排名參考:DB-Engines Ranking - popularity ranking of time Series DBMS

image.png

國內排名參考:中國數據庫排行 - 墨天輪
image.png

1. InfluxDB(MIT)

  • 特點:專為時序數據設計,InfluxQL提供類SQL查詢語法,支持集群模式。
  • 優勢:寫入與查詢性能優秀,廣泛應用于監控與IoT領域。
  • 局限性:高級特性與企業級支持需InfluxDB Cloud或企業版。

2. Prometheus(Apache License 2.0)

  • 特點:一套完整的監控與告警解決方案,PromQL查詢語言強大。
  • 優勢:輕量級,適用于微服務架構,生態豐富,與Kubernetes集成緊密。
  • 局限性:主要面向監控,復雜數據分析能力相對有限。

3. TimescaleDB(Apache License 2.0+TSL)

  • 特點:基于PostgreSQL的擴展,提供全SQL支持,自動擴展分區,自動過期清理。
  • 優勢:強大的SQL查詢分析能力,易于與關系型數據集成。
  • 局限性:相比原生時序數據庫如InfluxDB、TDengine大數據量時性能略低,存儲占用空間更大。

4. TDengine(GNU AGPL v3.0)

  • 特點:專為物聯網優化,集成了數據庫、緩存、流處理于一體。
  • 優勢:極高性能,存儲效率高,支持SQL查詢,易于部署與管理。
  • 局限性:雖然生態在迅速成長,但相比一些成熟項目,社區規模和工具鏈可能較小。

5. IoTDB(Apache License 2.0)

  • 特點:面向工業互聯網,輕量級,支持復雜查詢與存儲優化。
  • 優勢:專為時序數據設計的存儲模型,支持高效批量寫入與查詢。
  • 局限性:相較于某些成熟數據庫,文檔和社區支持可能不夠豐富。

6. OpenGemini(Apache License 2.0)

  • 特點:華為開源的分布式時序數據庫,聚焦海量數據存儲與分析。
  • 優勢:針對時序數據優化,簡化架構,降低成本,提升效率。
  • 局限性:相對較新,社區與生態仍在發展中。

推薦方案

TimescaleDB(基礎版Apache License 2.0協議,社區版Timescale License (TSL)協議,即可以企業內部部署用,不能作為云服務對外售賣。社區版比基礎版多一些高級功能,比如分區壓縮,集群部署功能。)

  • 靈活性:TimescaleDB支持標準SQL,對于習慣SQL的團隊來說更容易上手,且能更好地與現有的分析工具和框架集成(我們的業務存在多指標關聯分析行轉列等需求可以方便處理)。
  • 擴展性:作為PostgreSQL的擴展,TimescaleDB繼承了其強大的生態系統和可擴展性,適用于從小型到超大規模的數據集(比如大模型需要的向量數據庫和搜索場景需要的倒排索引和相關性排序)。
  • 運維與學習成本:如果團隊對PostgreSQL或Mysql熟悉,轉向TimescaleDB的遷移成本相對較低。
  • 生產成本:同時支持關系表和時序表,不需要部署兩套數據庫。
    image.png
    image.png
    timescaledb性能初步測試

國產備選方案

IoTDB(Apache License 2.0協議)

  • **低成本、高性能:**數千萬點寫入吞吐量,壓縮比高(官方數據1:10無損壓縮,實測可以做到1:5),可大大節省服務器硬件成本。
  • **易用性,跨平臺部署:**僅依靠 JDK/JRE,開箱即用,比較方便集群部署,降低運維成本。
  • **多樣化的數據處理和分析方法:**與Apache PLC4X、Apache Pulsar、Apache Flink、Apache Spark、Apache Zeppelin、Grafana等集成,構建完整的開源軟件生態,豐富的數據分析功能,如觸發器、用戶定義功能 (UDF)、選擇進入、連續查詢等。
  • 低成本遷移:通過適配器與各種TSDB(InfluxDB,Prometheus,KairosDB等)兼容
  • 相對比較新,文檔比較少
  • SQL支持能力比較弱,一下復雜查詢支持有限(比如不支持group by作為子查詢)
    IotDB性能初步測試
    TDengine(Apache License 2.0協議)
  • 性能:TDengine設計之初就針對物聯網和大規模時序數據進行了優化,能提供極高的寫入與查詢性能。
  • 集成度高:內置緩存、流處理功能減少了額外組件的部署與維護,簡化架構。
  • 成本效率:高效存儲機制有助于降低長期的存儲成本。
  • 易用性:支持SQL查詢,便于開發與維護,同時有較好的管理工具。
  • 性能對比:基于 TSBS 標準數據集時序數據庫 TimescaleDB、InfluxDB 與 TDengine 的性能對比測試
    image.png
    image.png

實施計劃與風險評估

實施步驟

  1. 技術驗證:在隔離環境中搭建時序數據庫,進行功能與性能測試。
  2. 遷移策略:設計數據遷移計劃,包括數據格式轉換和驗證。
  3. 系統集成:與現有監控、分析工具對接,確保數據流轉無阻。
  4. 培訓與文檔:組織內部培訓,編寫操作指南和故障排查手冊。

風險評估

  • 技術遷移風險:需關注數據遷移過程中可能出現的數據一致性問題。
  • 性能匹配風險:實際應用中的性能需經過充分測試驗證。
  • 社區支持風險:社區活躍度,特定問題的解決速度仍需評估。

結論

鑒于現用數據庫MariaDB遷移到TimescaleDB成本低(TimescaleDB擴展于PostgreSQL,而MariaDB和PostgreSQL大部分兼容),TimescaleDB在性能方面能夠滿足業務需求同時支持關系數據庫的業務場景,選TimescaleDB作為當前時序數據庫比較合適。后續如果有部分場景對性能有極致要求可以考慮IoTDB等純時序數據庫。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/907464.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/907464.shtml
英文地址,請注明出處:http://en.pswp.cn/news/907464.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

MobaXterm連接Docker Desktop中的容器(shell)

對于使用docker desktop的同學,想要直連docker容器不需要借助ssh協議,可以直接通過shell訪問控制臺,配置如下: 選擇terminal shell類型,我選擇的是powershell 。 輸入terminal啟動命令:docker exec -it [你…

兩個Ubuntu機器(內網)免密登錄設置

業務背景:現有兩個機器;A(192.168.1.10)、B(192.168.1.20); 需要機器A可以免密登錄B,具體操作如下: 1、首先在機器A中,上生成 SSH 密鑰對(公鑰和私…

支持selenium的chrome driver更新到136.0.7103.113

最近chrome釋放新版本:136.0.7103.113 如果運行selenium自動化測試出現以下問題,是需要升級chromedriver才可以解決的。 selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only s…

SQL中各個子句的執行順序

select、from、 join、where、order by、group by、having、limit 解釋 1) FROM (確定數據源) 查詢的執行首先從FROM子句開始,確定數據的來源(表、視圖、連接等)。 2) JOIN (如果有JOIN操作) 在FROM子句之后,SQL引擎會執行連接操作(JOIN)&#xff0c…

若依微服務的定制化服務

復制依賴 復制依賴 復制system服務的bootstrap.yml文件,修改port和name 在nacos復制一個新的nacos配置,修改對應的nacos的配置 ,可能不需要修改,看情況。 網關修改 注意curd的事項,模塊名稱的修改

用 Python 模擬下雨效果

用 Python 模擬下雨效果 雨天別有一番浪漫情懷:淅淅瀝瀝的雨滴、濕潤的空氣、朦朧的光影……在屏幕上也能感受下雨的美妙。本文將帶你用一份簡單的 Python 腳本,手把手實現「下雨效果」動畫。文章深入淺出,零基礎也能快速上手,完…

純數據挖掘也能發Microbiome?

抗生素濫用導致多重耐藥微生物在全球蔓延,但新型抗生素的研發進展緩慢,亟需找到替代抗生素的新型防御策略。抗菌肽(AMPs)作為天然防御分子,具有低耐藥潛力和廣譜活性。德國小蠊(Blattella germanica&#x…

動態內容加載時,爬蟲應如何處理?

處理動態內容加載是爬蟲開發中的一個常見挑戰。許多現代網站使用 JavaScript 動態加載內容,這意味著頁面的某些部分可能在初始加載時并不存在,而是通過后續的 AJAX 請求或 JavaScript 執行動態生成的。為了處理這種情況,爬蟲需要能夠模擬瀏覽…

uni-app 安卓消失的字符去哪里了?maxLength失效了!

前情提要 皮一下~這個標題我還蠻喜歡的嘿嘿嘿【附上一個自行思考的猥瑣的笑容】 前段時間不是在開發uni-app的一個小應用嘛,然后今天測試發現,有一個地方在蘋果是沒有問題的,但是在安卓上出現了問題,附上安卓的截圖 在這里我是有限制maxLength=50的,而且,賦值字符串到字…

2025年5月藍橋杯stema省賽真題——象棋移動

上方題目可點下方去處,支持在線編程~ 象棋移動_scratch_少兒編程題庫學習中心-嗨信奧 程序演示可點下方,支持源碼和素材獲取~ 象棋移動-scratch作品-少兒編程題庫學習中心-嗨信奧 題庫收集了歷屆各白名單賽事真題和權威機構考級…

Cesium 實戰 26 - 自定義紋理材質 - 實際應用之飛線(拋物線)

Cesium 實戰 26 - 自定義紋理材質 - 實際應用之飛線(拋物線) 前言核心代碼完整代碼在線示例前言 之前總結了項目實戰用常用的自定義紋理材質,包括擴散、預警、動態線等,后續還會不定期增加一些效果。 除了單個的自定義紋理材質介紹,文章系列后期會增加一些實際項目應用、…

Apache Airflow

目錄 Apache Airflow是什么 CVE-2020-11978(Airflow 示例dag中的命令注入) CVE-2020-11981(Airflow Celery消息中間件命令執行) CVE-2020-17526(Airflow 默認密鑰導致的權限繞過) Apache Airflow是什么 Airflow是一個以編程方式編寫,安排和監視工作流的平臺。 …

【Python Cookbook】迭代器與生成器(四)

目錄 案例 目錄 案例 迭代器與生成器(一)1.手動遍歷迭代器2.代理迭代3.使用生成器創建新的迭代模式4.實現迭代器協議迭代器與生成器(三)9.排列組合的迭代10.序列上索引值迭代11.同時迭代多個序列12.不同集合上元素的迭代迭代器與生…

React 播客專欄 Vol.16|useRef 和 useMemo 是干嘛的?

👋 歡迎回到《前端達人 React 播客書單》第 16 期(正文內容為學習筆記摘要,音頻內容是詳細的解讀,方便你理解),請點擊下方收聽 視頻版 🎙 歡迎來到《前端達人 播客書單》第 16 期。 今天我們來…

漫談英偉達GPU架構進化史:從Celsius到Blackwell

在英偉達官網,我們可以清晰地看到其從1999年Celsius到2024年Blackwell的20+代架構演進。這一歷程猶如一部波瀾壯闊的科技史詩,見證了英偉達在GPU領域的卓越創新與持續引領。 NVIDIA GPU架構變遷路線: 年份 NV GPU架構變遷 2025 Blackwell 2.0 2024 Blackwell 2023-2024 Hopp…

車載通信網絡 --- CAN FD與CAN XL

我是穿拖鞋的漢子,魔都中堅持長期主義的汽車電子工程師。 老規矩,分享一段喜歡的文字,避免自己成為高知識低文化的工程師: 做到欲望極簡,了解自己的真實欲望,不受外在潮流的影響,不盲從,不跟風。把自己的精力全部用在自己。一是去掉多余,凡事找規律,基礎是誠信;二是…

DM達夢數據庫開啟SQL日志記錄功能

DM達夢數據庫開啟SQL日志記錄功能 配置SQL日志(非必須的配置步驟,與主備集群配置無關,如果沒有需求可以跳過配置SQL日志) sqllog.ini 配置文件用于SQL日志的配置,當且僅當 INI(dm.ini) 參數 SV…

【HW系列】—C2遠控服務器(webshell鏈接工具, metasploit、cobaltstrike)的漏洞特征流量特征

文章目錄 蟻劍、冰蝎、哥斯拉一、蟻劍(AntSword)流量特征二、冰蝎(Behinder)流量特征三、哥斯拉(Godzilla)流量特征 metasploit、cobaltstrike一、Metasploit流量特征二、CobaltStrike流量特征三、檢測與防…

手機平板等設備租賃行業MDM方案解析

目錄 引言:MDM 在租賃行業的重要性日益凸顯 用戶場景:租賃公司面臨的主要挑戰 1. 設備丟失、逾期未還 2. 手動配置和恢復效率低 3. 非授權使用頻繁 4. 時區設置混亂影響運維 5. 缺乏實時監管能力 EasyControl MDM:租賃設備的遠程管控…

前端面試核心考點全解析

前端面試常見問題及解析大綱 核心技術篇 HTML相關問題 1. HTML5新特性解析 語義化標簽&#xff08;<header>、<section>等&#xff09;的作用與示例本地存儲&#xff08;localStorage與sessionStorage&#xff09;的差異 localStorage.setItem(key, value); c…