一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

工業(yè)互聯(lián)網(wǎng)時代:我們?yōu)槭裁葱枰獣r序數(shù)據(jù)庫之二

電子設(shè)計 ? 來源:電子設(shè)計 ? 作者:電子設(shè)計 ? 2020-12-25 18:04 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在上周的格物匯文章中,我們給大家介紹過,目前國內(nèi)外主流工業(yè)互聯(lián)網(wǎng)平臺幾乎都是采用時序數(shù)據(jù)庫來承接海量涌入的工業(yè)數(shù)據(jù)。那為什么強(qiáng)大的Oracle、PostgreSQL 等傳統(tǒng)關(guān)系型數(shù)據(jù)庫搞不定時序數(shù)據(jù)?為什么不用HBase、MongoDB、Cassandra等先進(jìn)的分布式數(shù)據(jù)庫來解決工業(yè)數(shù)據(jù)問題?

作為資深“杠精”,當(dāng)然需要先知道要“杠”的到底是什么?就時序數(shù)據(jù)庫而言,就是要“杠”兩個東西:1、“杠”數(shù)據(jù);2、“杠”數(shù)據(jù)庫。

先從數(shù)據(jù)“杠”起,數(shù)據(jù)可是一個高深莫測的東西。

想當(dāng)年圖靈用他深邃的眼睛,看穿了世間萬物的計算本質(zhì):凡是可以計算的,通過迭代,最終都可以表示為0、1的邏輯判斷。圖靈機(jī)需要一個無限長的紙帶來表征和記錄計算,這無限長的紙帶上記錄的0、1的組合,就是數(shù)據(jù)最原始的抽象。圖靈機(jī)指出了數(shù)據(jù)的3個核心需求:1、數(shù)據(jù)存儲;2、數(shù)據(jù)寫入;3、數(shù)據(jù)讀取。

可以說,目前所有數(shù)據(jù)庫、文件系統(tǒng)等等,都是為了以最佳性價比來滿足數(shù)據(jù)的這三個核心需求。對時序數(shù)據(jù)而言,其三個核心需求特征十分明顯:

數(shù)據(jù)寫入

時間是一個主坐標(biāo)軸,數(shù)據(jù)通常按照時間順序抵達(dá)

大多數(shù)測量是在觀察后的幾秒或幾分鐘內(nèi)寫入的,抵達(dá)的數(shù)據(jù)幾乎總是作為新條目被記錄

95%到99%的操作是寫入,有時更高

更新幾乎沒有

數(shù)據(jù)讀取

隨機(jī)位置的單個測量讀取、刪除操作幾乎沒有

讀取和刪除是批量的,從某時間點開始的一段時間內(nèi)

時間段內(nèi)讀取的數(shù)據(jù)有可能非常巨大

數(shù)據(jù)存儲

數(shù)據(jù)結(jié)構(gòu)簡單,價值隨時間推移迅速降低

通過壓縮、移動、刪除等手段降低存儲成本

而關(guān)系數(shù)據(jù)庫主要應(yīng)對的數(shù)據(jù)特點:

(1)數(shù)據(jù)寫入:大多數(shù)操作都是DML操作,插入、更新、刪除等;

(2)數(shù)據(jù)讀取:讀取邏輯一般都比較復(fù)雜;

(3)數(shù)據(jù)存儲:很少壓縮,一般也不設(shè)置數(shù)據(jù)生命周期管理。

因此,從數(shù)據(jù)本質(zhì)的角度而言,時序數(shù)據(jù)庫(不變性, 唯一性以及可排序性)和關(guān)系型數(shù)據(jù)庫的服務(wù)需求完全不同。

再說說數(shù)據(jù)庫。數(shù)據(jù)庫系統(tǒng)的發(fā)展從20世紀(jì)60年代中期開始到現(xiàn)在,經(jīng)歷若干代演變,造就了C.W. Bachman(巴克曼)、E.F.Codd(考特)和J. Gray(格雷)三位圖靈獎得主,發(fā)展了以數(shù)據(jù)科學(xué)、數(shù)據(jù)建模和數(shù)據(jù)庫管理系統(tǒng)(DBMS)等為核心理論、技術(shù)和產(chǎn)品的一個巨大的軟件產(chǎn)業(yè)(詳見下圖)。

從上圖可以得出一個結(jié)論,針對不同的數(shù)據(jù)需求,應(yīng)該有不同的數(shù)據(jù)庫系統(tǒng)應(yīng)對之。否則,也沒有必要出現(xiàn)這么多種的數(shù)據(jù)庫系統(tǒng)了。

時間序列數(shù)據(jù)跟關(guān)系型數(shù)據(jù)庫有太多不同,但是很多公司并不想放棄關(guān)系型數(shù)據(jù)庫。于是就產(chǎn)生了一些特殊的用法,比如:用 MySQL 的 VividCortex, 用 Postgres 的 TimescaleDB;當(dāng)然,還有人依賴K-V、NoSQL數(shù)據(jù)庫或者列式數(shù)據(jù)庫的,比如:OpenTSDB的HBase,而Druid則是一個不折不扣的列式存儲系統(tǒng);更多人覺得特殊的問題需要特殊的解決方法,于是很多時間序列數(shù)據(jù)庫從頭寫起,不依賴任何現(xiàn)有的數(shù)據(jù)庫, 比如: Graphite,InfluxDB。

對選擇數(shù)據(jù)庫的開發(fā)者和使用者而言,針對時序數(shù)據(jù)庫和關(guān)系型數(shù)據(jù)庫之間選擇,也主要考慮以下幾個因素:

性能

研究過Oracle的存儲結(jié)構(gòu)和索引結(jié)構(gòu)的都知道Oracle的ACID強(qiáng)一致性和B-Tree,保證強(qiáng)一致性導(dǎo)致數(shù)據(jù)持久化、可靠性、可用性實現(xiàn)的邏輯復(fù)雜,而加速數(shù)據(jù)訪問,則需要Oracle 數(shù)據(jù)庫使用 B-Tree 存儲索引。

B-Tree 結(jié)構(gòu)的有很多優(yōu)勢:在索引中從任何地方檢索任何記錄都大約花費相同的時間;B-Tree對大范圍查詢提供優(yōu)秀的檢索性能,包括精確匹配和訪問查詢;插入、更新和刪除操作有效,維護(hù)鍵的順序,以便快速檢索;B-Tree性能對小表和大表都很好,不會隨著表的增長而降低。從Tree這個名字就可以看出,這種B-Tree就是為了解決隨機(jī)讀寫問題的。

而時序數(shù)據(jù)庫,核心問題去解決批量讀寫,對于 95% 以上場景都是寫入的時序數(shù)據(jù)庫,B-Tree 很明顯是不合適的,業(yè)界主流都是采用 LSM Tree(Log Structured Merge Tree)或者LSM的“升級版”TSM(Time Sort Merge Tree) 替換 B-Tree,比如 Hbase、Cassandra、InfluxDB等。LSM Tree 核心思想就是通過內(nèi)存寫和后續(xù)磁盤的順序?qū)懭氆@得更高的寫入性能,避免了隨機(jī)寫入。

LSM Tree 簡單操作流程如下:

數(shù)據(jù)寫入和更新時首先寫入位于內(nèi)存里的數(shù)據(jù)結(jié)構(gòu)。同時,為了避免數(shù)據(jù)丟失也會先寫到磁盤文件中。

內(nèi)存里的數(shù)據(jù)結(jié)構(gòu)會定時或者達(dá)到固定大小會刷到磁盤。

隨著磁盤上積累的文件越來越多,會定時的進(jìn)行合并操作,減少文件數(shù)量。

在內(nèi)存or文件中,對數(shù)據(jù)進(jìn)行壓縮、去重等操作。

還有一個提升性能的關(guān)鍵點,即:分布式處理。這里以InfluxDB為例來說明。(順便吐槽一下:InfluxDB單機(jī)版開源,集群版收費……,扔個魚餌,“吃相”難看呀。)

上圖是InfluxDB的邏輯存儲架構(gòu)圖,通過RP、ShardGroup、Shard的逐層分解,寫入數(shù)據(jù)被盡可能的分布攤平。最后,每個Shard的TSM引擎負(fù)責(zé)對數(shù)據(jù)進(jìn)行處理。Shard Group實現(xiàn)了數(shù)據(jù)分區(qū),但是Shard才是InfluxDB中真正存儲數(shù)據(jù)以及提供讀寫服務(wù)的服務(wù)。Shard是InfluxDB的TSM Engine,負(fù)責(zé)數(shù)據(jù)的編碼存儲、讀寫服務(wù)等。

通常分布式數(shù)據(jù)庫一般有兩種Sharding策略:Range Sharding和Hash Sharding,前者對于基于主鍵的范圍掃描比較高效;后者對于離散大規(guī)模寫入以及隨即讀取相對比較友好。

InfluxDB的Sharding策略是典型的兩層Sharding,上層使用Range Sharding,下層使用Hash Sharding。對于時序數(shù)據(jù)庫來說,基于時間的Range Sharding是最合理的考慮,但如果僅僅使用Time Range Sharding,會存在一個很嚴(yán)重的問題,即寫入會存在熱點,基于TimeRange Sharding的時序數(shù)據(jù)庫寫入必然會落到最新的Shard上,其他老Shard不會接收寫入請求。對寫入性能要求很高的時序數(shù)據(jù)庫來說,熱點寫入肯定不是最優(yōu)的方案。解決這個問題最自然的思路就是再使用Hash進(jìn)行一次分區(qū),基于Key的Hash分區(qū)方案可以通過散列很好地解決熱點寫入的問題。

Shard分區(qū)好了,就可以采用分布式集群架構(gòu)予以支撐,分?jǐn)倝毫?,提高并行度?/p>

成本和功能

很多時間序列數(shù)據(jù)都沒有多大用處,特別是當(dāng)系統(tǒng)長時間正常運行時,完整的歷史數(shù)據(jù)意義并不大。而這些低價值數(shù)據(jù),占據(jù)大量高價值存儲空間,會讓企業(yè)“抓狂”。因此,一些共通的對時間序列數(shù)據(jù)分析的功能和操作:數(shù)據(jù)壓縮、數(shù)據(jù)保留策略、連續(xù)查詢、靈活的時間聚合等,都是為了解決時序數(shù)據(jù)庫的性價比問題的。同時,有些數(shù)據(jù)庫比如 RDDTool 和 Graphite 會自動刪除高精度的數(shù)據(jù),只保留低精度的。而這些“功能”對關(guān)系型數(shù)據(jù)庫而言,簡直是不可想象的。

還有一些成本很多人會忘記考慮,比如:License,用需要License的關(guān)系型數(shù)據(jù)庫來存儲時序數(shù)據(jù),成本根本沒法承受。

至此,我們得出的結(jié)論就一個:選擇到底用什么數(shù)據(jù)庫來支持時序數(shù)據(jù),還是需要對時序數(shù)據(jù)的需求進(jìn)行透徹的分析,然后根據(jù)時序數(shù)據(jù)的特點,來選擇適合的數(shù)據(jù)庫。

啟用名言作為本文結(jié)尾:適合的,就是最好的。

本文作者:格創(chuàng)東智首席架構(gòu)師王錦博士。格創(chuàng)東智是由智能產(chǎn)品制造及互聯(lián)網(wǎng)應(yīng)用服務(wù)領(lǐng)軍企業(yè)TCL孵化的創(chuàng)新型科技公司,致力于深度融合人工智能AI)、大數(shù)據(jù)、云計算等前沿技術(shù)與制造行業(yè)經(jīng)驗,打造行業(yè)領(lǐng)先的“制造x”工業(yè)互聯(lián)網(wǎng)平臺,同時為各類制造業(yè)企業(yè)提供優(yōu)質(zhì)、安全、高效的管理IT服務(wù),助力傳統(tǒng)制造業(yè)智能化轉(zhuǎn)型升級。(轉(zhuǎn)載請注明作者及來源)

審核編輯:符乾江
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    工業(yè)互聯(lián)網(wǎng)平臺的數(shù)據(jù)來源包括哪些

    工業(yè)互聯(lián)網(wǎng)平臺的數(shù)據(jù)來源廣泛且多元,涵蓋設(shè)備層、生產(chǎn)層、企業(yè)層、供應(yīng)鏈層及外部生態(tài)等多個維度。這些數(shù)據(jù)通過物聯(lián)網(wǎng)、
    的頭像 發(fā)表于 07-05 14:45 ?305次閱讀

    數(shù)字化轉(zhuǎn)型為什么需要工業(yè)互聯(lián)網(wǎng)

    數(shù)字化轉(zhuǎn)型需要工業(yè)互聯(lián)網(wǎng),是因為工業(yè)互聯(lián)網(wǎng)通過連接設(shè)備、數(shù)據(jù)和流程,為制造業(yè)及
    的頭像 發(fā)表于 06-21 09:12 ?191次閱讀

    鯤云科技入選AII工業(yè)互聯(lián)網(wǎng)應(yīng)用案例

    )重磅發(fā)布 “2023-2024 年工業(yè)互聯(lián)網(wǎng)應(yīng)用案例”,鯤云科技憑借 “基于可重構(gòu)數(shù)據(jù)流AI芯片的智慧工地監(jiān)管平臺” 成功入選,成為推動工地安全監(jiān)管數(shù)字化轉(zhuǎn)型的標(biāo)桿范例。
    的頭像 發(fā)表于 06-16 17:12 ?514次閱讀

    熱壓機(jī) PLC 數(shù)據(jù)邊緣采集:基于工業(yè)互聯(lián)網(wǎng)的高溫設(shè)備遠(yuǎn)程監(jiān)控方案

    熱壓機(jī) PLC 數(shù)據(jù)邊緣采集:基于工業(yè)互聯(lián)網(wǎng)的高溫設(shè)備遠(yuǎn)程監(jiān)控方案
    的頭像 發(fā)表于 06-13 16:41 ?199次閱讀
    熱壓機(jī) PLC <b class='flag-5'>數(shù)據(jù)</b>邊緣采集:基于<b class='flag-5'>工業(yè)</b><b class='flag-5'>互聯(lián)網(wǎng)</b>的高溫設(shè)備遠(yuǎn)程監(jiān)控方案

    工業(yè)互聯(lián)網(wǎng)工業(yè)聯(lián)網(wǎng)有什么區(qū)別

    工業(yè)互聯(lián)網(wǎng)工業(yè)聯(lián)網(wǎng)(IIoT)在概念、側(cè)重點、應(yīng)用范圍、技術(shù)架構(gòu)、數(shù)據(jù)價值等方面存在一定區(qū)別,以下是詳細(xì)介紹: 概念
    的頭像 發(fā)表于 06-12 09:32 ?434次閱讀

    研華科技亮相2025工業(yè)互聯(lián)網(wǎng)大會

    研華科技受邀出席工業(yè)互聯(lián)網(wǎng)大會,研華(中國)工業(yè)聯(lián)網(wǎng)事業(yè)群總經(jīng)理蔡奇男參與《人工智能時代,工業(yè)
    的頭像 發(fā)表于 05-23 15:27 ?427次閱讀

    TDengine 發(fā)布時序數(shù)據(jù)分析 AI 智能體 TDgpt,核心代碼開源

    組成部分,標(biāo)志著時序數(shù)據(jù)庫在原生集成 AI 能力方面邁出了關(guān)鍵一步。 TDgpt 是內(nèi)嵌于 TDengine 中的時序數(shù)據(jù)分析 AI 智能體,具備時序數(shù)據(jù)預(yù)測、異常檢測、數(shù)據(jù)補(bǔ)全、分類
    的頭像 發(fā)表于 03-27 10:30 ?296次閱讀
    TDengine 發(fā)布<b class='flag-5'>時序數(shù)據(jù)</b>分析 AI 智能體 TDgpt,核心代碼開源

    一文解析工業(yè)互聯(lián)網(wǎng)

    電子發(fā)燒友網(wǎng)站提供《一文解析工業(yè)互聯(lián)網(wǎng).pptx》資料免費下載
    發(fā)表于 02-20 16:42 ?1次下載

    數(shù)據(jù)庫是哪種數(shù)據(jù)庫類型?

    數(shù)據(jù)庫是一種部署在虛擬計算環(huán)境中的數(shù)據(jù)庫,它融合了云計算的彈性和可擴(kuò)展性,為用戶提供高效、靈活的數(shù)據(jù)庫服務(wù)。云數(shù)據(jù)庫主要分為兩大類:關(guān)系型數(shù)據(jù)庫
    的頭像 發(fā)表于 01-07 10:22 ?508次閱讀

    時序數(shù)據(jù)庫TDengine 2024年保持高增長,實現(xiàn)收入翻倍

    近日,時序數(shù)據(jù)庫 (Time Series Database) TDengine 正式公布了 2024 年重大成就和發(fā)展成績盤點。在這一年中,TDengine 以持續(xù)創(chuàng)新的技術(shù)能力、迅猛增長的市場
    的頭像 發(fā)表于 01-02 13:50 ?559次閱讀
    <b class='flag-5'>時序數(shù)據(jù)庫</b>TDengine 2024年保持高增長,實現(xiàn)收入翻倍

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—通過拼接數(shù)據(jù)庫碎片恢復(fù)SQLserver數(shù)據(jù)庫

    一個運行在存儲上的SQLServer數(shù)據(jù)庫,有1000多個文件,大小幾十TB。數(shù)據(jù)庫每10天生成一個NDF文件,每個NDF幾百GB大小。數(shù)據(jù)庫包含兩個LDF文件。 存儲損壞,數(shù)據(jù)庫
    的頭像 發(fā)表于 10-31 13:21 ?695次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b>恢復(fù)—通過拼接<b class='flag-5'>數(shù)據(jù)庫</b>碎片恢復(fù)SQLserver<b class='flag-5'>數(shù)據(jù)庫</b>

    有云服務(wù)器還需要租用數(shù)據(jù)庫嗎?

    如果你的應(yīng)用程序需要處理大量的數(shù)據(jù),并且這些數(shù)據(jù)需要高效的查詢和分析能力,那么租用專業(yè)的數(shù)據(jù)庫服務(wù)可能是更好的選擇。這些服務(wù)通常提供了更高的
    的頭像 發(fā)表于 10-31 10:50 ?336次閱讀

    科技云報到:大模型時代下,向量數(shù)據(jù)庫的野望

    科技云報到:大模型時代下,向量數(shù)據(jù)庫的野望
    的頭像 發(fā)表于 10-14 17:18 ?536次閱讀

    工業(yè)互聯(lián)網(wǎng)遠(yuǎn)程監(jiān)控平臺是什么

    工業(yè)互聯(lián)網(wǎng)遠(yuǎn)程監(jiān)控平臺:賦能智能制造的利器 在當(dāng)今快速發(fā)展的工業(yè)領(lǐng)域,工業(yè)互聯(lián)網(wǎng)遠(yuǎn)程監(jiān)控平臺正逐漸成為推動
    的頭像 發(fā)表于 08-29 14:11 ?675次閱讀

    工業(yè)互聯(lián)網(wǎng)系統(tǒng)的組成

    工業(yè)互聯(lián)網(wǎng)系統(tǒng)通常由以下幾個關(guān)鍵組成部分構(gòu)成: 設(shè)備和傳感器:這是工業(yè)互聯(lián)網(wǎng)的基礎(chǔ),包括各種機(jī)械設(shè)備、生產(chǎn)工具、智能傳感器等。這些設(shè)備能夠?qū)崟r收集關(guān)于自身狀態(tài)、運行參數(shù)或環(huán)境
    的頭像 發(fā)表于 07-28 16:42 ?1662次閱讀