90后就敢當(dāng)掃地僧!不服?4月24號來闖龍門陣!
743
2022-05-30
隨著 IoT 技術(shù)的快速發(fā)展,物聯(lián)網(wǎng)設(shè)備產(chǎn)生的數(shù)據(jù)呈爆炸式增長。這些數(shù)據(jù)通常隨時(shí)間產(chǎn)生,稱之為時(shí)序數(shù)據(jù)。這樣的一種專門用于管理時(shí)序數(shù)據(jù)的數(shù)據(jù)庫被稱為時(shí)序數(shù)據(jù)庫。
時(shí)序數(shù)據(jù)庫是當(dāng)前物聯(lián)網(wǎng) IoT垂直領(lǐng)域最為合適的數(shù)據(jù)庫解決方案。作為物聯(lián)網(wǎng)下火熱的智慧健康養(yǎng)老應(yīng)用,時(shí)序數(shù)據(jù)庫能為智慧健康養(yǎng)老行業(yè)帶來哪些貢獻(xiàn)?華為云數(shù)據(jù)庫專家向宇解讀了時(shí)序數(shù)據(jù)庫在智慧健康養(yǎng)老行業(yè)應(yīng)用之道。
時(shí)序數(shù)據(jù)庫助力智慧健康養(yǎng)老場景化應(yīng)用
從智慧健康養(yǎng)老的全場景圖看到,智慧健康養(yǎng)老整體上分為4個(gè)部分:
1. 設(shè)備:包括穿戴設(shè)備(比如手環(huán),可以記錄步數(shù)和心率)、環(huán)境監(jiān)測設(shè)備(比如室內(nèi)室外溫度傳感器)和醫(yī)療健康設(shè)備(比如血壓儀、血糖儀)。這些設(shè)備產(chǎn)生的數(shù)據(jù)需要上傳到平臺或系統(tǒng)服務(wù)進(jìn)行統(tǒng)一存儲,為更上層的應(yīng)用提供基本的數(shù)據(jù)輸入。
2. 數(shù)據(jù)存儲層:相同功能但不同廠商的設(shè)備產(chǎn)生的數(shù)據(jù)格式可能不盡相同。再者,隨著業(yè)務(wù)的發(fā)展,可能還會接入更多類型設(shè)備,數(shù)據(jù)量也會越來越大。考慮業(yè)務(wù)變更和數(shù)據(jù)庫性能,為最大程度降低對上層應(yīng)用的影響,把設(shè)備數(shù)據(jù)與其他業(yè)務(wù)數(shù)據(jù)分開存儲。
3. 服務(wù)層:平臺對外提供的能力,比如安全預(yù)警、健康風(fēng)險(xiǎn)評估、其他養(yǎng)老事務(wù)管理功能等。
4. 端側(cè)應(yīng)用:基于平臺提供的服務(wù),可以開發(fā)出APP,利用APP把老人、子女、機(jī)構(gòu)工作人員三類用戶聯(lián)系起來,例如:子女可以通過手機(jī)APP實(shí)時(shí)查看自己父母的運(yùn)動情況,健康指標(biāo),工作人員可以在終端提交工單等等)。
面對養(yǎng)老行業(yè)的痛點(diǎn),云芯科技、藍(lán)色健康和智康科技三家企業(yè)與華為云在底層系統(tǒng)、數(shù)據(jù)存儲等方面的合作,在平臺服務(wù)層面,正在努力實(shí)現(xiàn)這些智慧養(yǎng)老的服務(wù)應(yīng)用。點(diǎn)擊查看《用技術(shù)變革傳統(tǒng)康養(yǎng)行業(yè),智慧養(yǎng)老的正確打開方式》。
在物聯(lián)網(wǎng)等領(lǐng)域,特別是智慧康養(yǎng)場景下,我們發(fā)現(xiàn)有這么一些數(shù)據(jù),他們都有時(shí)間屬性,有設(shè)備描述信息,有采集的數(shù)據(jù)指標(biāo)。舉個(gè)例子,如下圖所示:
第一列是數(shù)據(jù)產(chǎn)生的時(shí)間,第二列是設(shè)備編號,后面是采集的數(shù)據(jù)內(nèi)容,如體溫、心率等。我們把數(shù)據(jù)劃分為三個(gè)部分,時(shí)間部分稱為時(shí)間戳,設(shè)備編號等描述設(shè)備信息的部分稱之為數(shù)據(jù)的標(biāo)簽,剩余部分描述了采集的具體指標(biāo),稱之為指標(biāo)項(xiàng)。像這樣的數(shù)據(jù),我們就稱之為時(shí)序數(shù)據(jù),因?yàn)樗忻黠@的時(shí)間屬性。那么這些時(shí)序數(shù)據(jù),都是有自己的特點(diǎn):
? 不變性:時(shí)序數(shù)據(jù)在寫入后,一般不會被修改。這個(gè)特征非常適用于壓縮,不因修改某個(gè)數(shù)據(jù)對整個(gè)數(shù)據(jù)塊進(jìn)行修改。
? 時(shí)效性:時(shí)間越近的數(shù)據(jù)被訪問的概率大,時(shí)間越是久遠(yuǎn),數(shù)據(jù)被訪問的概率越低。因此,對于時(shí)序的熱數(shù)據(jù),可以采用壓縮和解壓速度比較好,壓縮率合理的壓縮算法,而對于冷數(shù)據(jù),非常適合使用更高壓縮比的算法。
? 數(shù)據(jù)量龐大:時(shí)序數(shù)據(jù)的采集類型豐富, 隨著采集硬件的普及和采集頻率增加,使得數(shù)據(jù)量出現(xiàn)暴增,比如自動駕駛中每輛車每天就會采集將近 8T 的數(shù)據(jù),帶寬、實(shí)時(shí)寫入、快速查詢、存儲、耗電以及維護(hù)成本都是挑戰(zhàn)。
? 數(shù)據(jù)使用冷熱:用戶可能對某些數(shù)據(jù)源或者時(shí)間段的關(guān)注遠(yuǎn)遠(yuǎn)超過其他,因此在海量數(shù)據(jù)中偏向某些特殊時(shí)間段或某些數(shù)據(jù)源的數(shù)據(jù)查詢。
時(shí)序數(shù)據(jù)庫如何選?
從我們的企業(yè)應(yīng)用的情況來看,目前存放時(shí)序數(shù)據(jù)采用的數(shù)據(jù)庫各種各樣,有用關(guān)系數(shù)據(jù)庫存放,有用NOSQL數(shù)據(jù)存儲(比如HBASE,Cassandra,MongoDB),還有就是用到了時(shí)序數(shù)據(jù)庫。我們總結(jié)了一下選型數(shù)據(jù)庫之前需要考慮的一些問題。
? 成本:分為運(yùn)維成本和存儲成本,比如用HBASE存儲,它的技術(shù)棧很長,底層存儲使用的是HDFS。運(yùn)維就需要一個(gè)人既懂時(shí)序數(shù)據(jù)庫,又要懂大數(shù)據(jù)平臺,成本比較高。其次,數(shù)據(jù)量逐漸的增加,存儲需要不斷的擴(kuò)容,成本隨之上來了。所以,既要選擇部署便捷、擴(kuò)容操作簡單,又要能提供數(shù)據(jù)壓縮的數(shù)據(jù)庫。
? 性能:不同的業(yè)務(wù)對數(shù)據(jù)庫的性能需求是不一樣的,需要考慮今后業(yè)務(wù)規(guī)模增加后,數(shù)據(jù)庫能不能支撐預(yù)期的設(shè)備數(shù)量和數(shù)據(jù)量。
? 業(yè)務(wù)變更:對于物聯(lián)網(wǎng)而言,由于缺乏標(biāo)準(zhǔn),各式各樣的設(shè)備都有可能接入,有的設(shè)備可能只有2列數(shù)據(jù),有的設(shè)備可能有3列數(shù)據(jù),這就要求數(shù)據(jù)庫支持Schemaless。
? 生態(tài):主要是時(shí)序數(shù)據(jù)庫上下游接口的問題,選擇的數(shù)據(jù)庫需要考慮其技術(shù)生態(tài),數(shù)據(jù)要能進(jìn)的來,出的去。比如用了SQLServer存時(shí)序數(shù)據(jù),想用Granfana展示數(shù)據(jù)就很困難。
? 數(shù)據(jù)分析:設(shè)備數(shù)據(jù)被存儲下來,最終是需要通過數(shù)據(jù)分析挖掘數(shù)據(jù)隱藏價(jià)值,還要考慮數(shù)據(jù)庫是否支持?jǐn)?shù)據(jù)分析平臺。
鑒于上述行業(yè)中存在的問題,以及對未來物聯(lián)網(wǎng)發(fā)展的信心,華為云自研GaussDB(for Influx) 基于華為自研的計(jì)算存儲分離架構(gòu),兼容InfluxDB生態(tài)的云原生NoSQL時(shí)序數(shù)據(jù)庫。提供大并發(fā)時(shí)序數(shù)據(jù)讀寫、壓縮存儲、多維聚合以及一鍵部署、快速備份恢復(fù)、計(jì)算存儲獨(dú)立擴(kuò)容、監(jiān)控告警等服務(wù)能力,可以完全滿足康養(yǎng)的需求。
GaussDB(for Influx)時(shí)序數(shù)據(jù)庫依靠華為在數(shù)據(jù)存儲領(lǐng)域多年的實(shí)踐經(jīng)驗(yàn),整合華為云的計(jì)算、存儲、服務(wù)保障和安全等方面的能力,大膽在架構(gòu)、性能和數(shù)據(jù)壓縮等方面進(jìn)行了技術(shù)創(chuàng)新,達(dá)到了較好的效果,對內(nèi)支撐了華為云基礎(chǔ)設(shè)施服務(wù),對外以服務(wù)的形式開放,幫助上云企業(yè)解決相關(guān)業(yè)務(wù)問題。
GaussDB(for Influx)接口完全兼容InfluxDB,寫入接口兼容OpenTSDB、Prometheus和Graphite。從架構(gòu)上看,一個(gè)時(shí)序數(shù)據(jù)庫集群可以分為三大組件。它們分別是:
? Shard節(jié)點(diǎn):節(jié)點(diǎn)采用無狀態(tài)設(shè)計(jì),主要負(fù)責(zé)數(shù)據(jù)的寫入和查詢。在節(jié)點(diǎn)內(nèi),除了分片和時(shí)間線管理之外,還支持?jǐn)?shù)據(jù)預(yù)聚合、數(shù)據(jù)降采樣和TAG分組查詢等專為時(shí)序場景而優(yōu)化的功能。
? Config集群:存儲和管理集群元數(shù)據(jù),采用三節(jié)點(diǎn)的復(fù)制集模式,保證元數(shù)據(jù)的高可靠性。
? 分布式存儲系統(tǒng):集中存儲持久化的數(shù)據(jù)和日志,數(shù)據(jù)采用三副本方式存放,對上層應(yīng)用透明。存儲系統(tǒng)為華為自研,經(jīng)過多年產(chǎn)品實(shí)踐檢驗(yàn),系統(tǒng)的高可用和高可靠性都得到了驗(yàn)證。
華為云時(shí)序數(shù)據(jù)庫應(yīng)對智慧康養(yǎng)應(yīng)用場景有妙招
在面對AIoT物聯(lián)網(wǎng)典型應(yīng)用場景中,時(shí)序數(shù)據(jù)庫每天會產(chǎn)生數(shù)GB甚至數(shù)TB的時(shí)序數(shù)據(jù)。如果無法對這些時(shí)序數(shù)據(jù)進(jìn)行很好的管理和壓縮,那將會給企業(yè)帶來非常高的成本壓力。
GaussDB(for Influx)對數(shù)據(jù)采用列式存儲,相同類型的數(shù)據(jù)被集中存儲,更有利于數(shù)據(jù)壓縮。采用自研的時(shí)序數(shù)據(jù)自適應(yīng)壓縮算法,在壓縮前對數(shù)據(jù)進(jìn)行抽樣分析,根據(jù)數(shù)據(jù)量、數(shù)據(jù)分布以及數(shù)據(jù)類型選擇最合適的數(shù)據(jù)壓縮算法。在壓縮算法上,相比原生的InfluxDB,重點(diǎn)針對Float、String、Timestamp這三種數(shù)據(jù)類型進(jìn)行了優(yōu)化和改進(jìn)。
? Float數(shù)據(jù)類型: 對Gorilla壓縮算法進(jìn)行了優(yōu)化,將可以無損轉(zhuǎn)換的數(shù)值轉(zhuǎn)為整數(shù),再根據(jù)數(shù)據(jù)特點(diǎn),選擇最合適的數(shù)據(jù)壓縮算法。
? String數(shù)據(jù)類型:采用了壓縮效率更好的ZSTD壓縮算法,并根據(jù)待壓縮數(shù)據(jù)的Length使用不同Level的編碼方法。
? Timestamp數(shù)據(jù)類型:采用差量壓縮方法,最后還針對數(shù)據(jù)文件內(nèi)的Timestamp進(jìn)行相似性壓縮,進(jìn)一步降低時(shí)序數(shù)據(jù)存儲成本。
下圖是分別采用實(shí)際業(yè)務(wù)場景的事件日志數(shù)據(jù)(數(shù)據(jù)集1)和云服務(wù)器監(jiān)控指標(biāo)數(shù)據(jù) (數(shù)據(jù)集2)與InfluxDB進(jìn)行了數(shù)據(jù)壓縮效率的性能對比。
節(jié)約存儲成本并非只有數(shù)據(jù)壓縮一種辦法。針對時(shí)序數(shù)據(jù)越舊的數(shù)據(jù)被訪問的概率越低的特點(diǎn),GaussDB(for Influx)提供了時(shí)序數(shù)據(jù)的分級存儲,支持用戶自定義冷熱數(shù)據(jù),實(shí)現(xiàn)數(shù)據(jù)的冷熱分離。熱數(shù)據(jù)相對數(shù)據(jù)量小,訪問頻繁,被存儲在性能更好、成本較高的存儲介質(zhì)上;冷數(shù)據(jù)相對數(shù)據(jù)量大,訪問概率低,保存時(shí)間較久,被存儲在成本較低的存儲介質(zhì)上,進(jìn)而達(dá)到節(jié)約存儲成本的目的。根據(jù)實(shí)際業(yè)務(wù)數(shù)據(jù)測算,相同數(shù)據(jù)量下存儲成本僅有關(guān)系型數(shù)據(jù)庫的1/20。
除了產(chǎn)品本身的技術(shù)優(yōu)勢特點(diǎn),GuassDB(for Influx)能夠開箱即用,用戶只需要關(guān)注應(yīng)用層就可以,不用關(guān)注運(yùn)維。在使用的過程中,不需要去特意學(xué)習(xí)新的產(chǎn)品技術(shù),會SQL就可以使用。GaussDB(for Influx)還兼容Influx 生態(tài),整個(gè)生態(tài)下的工具、接口等都可以直接應(yīng)用。
從數(shù)據(jù)安全角度看,GaussDB(for Influx)在容災(zāi)備份方面,支持異地3AZ,可以讓數(shù)據(jù)存儲在不同的城市,這樣確保數(shù)據(jù)的安全性。
在智慧康養(yǎng)場景下,最重要的是如何基于數(shù)據(jù)分析,來進(jìn)一步為用戶帶來更好的產(chǎn)品服務(wù)。GuassDB(for Influx)還提供數(shù)據(jù)分析平臺,能夠和數(shù)據(jù)庫融合在一起,可以把相關(guān)算法以熱插拔的方式嵌入到平臺中,從數(shù)據(jù)庫直接讀取數(shù)據(jù)進(jìn)行分析,最終應(yīng)用在相對應(yīng)的場景下。這兩邊是以相互感知的形式,分析感知存儲,從而輕量化存儲分析開銷。不管企業(yè)在什么地方,基于GuassDB(for Influx)能夠解決康養(yǎng)企業(yè)的數(shù)據(jù)孤島問題,實(shí)現(xiàn)價(jià)值共享。
據(jù)悉,GuassDB(for Influx)的開源計(jì)劃正在進(jìn)行中,開源的名字叫GeminiTSDB,兼容Influx DB接口,采用類SQL查詢語言,提供單機(jī)和分布式集群兩種部署模式,安裝簡單,部署靈活,無須外部依賴,具有高可用、高性能、低時(shí)延、低存儲成本、擴(kuò)展靈活等優(yōu)點(diǎn),希望大家多多關(guān)注!
IoT 云數(shù)據(jù)庫 GaussDB(for Influx) 數(shù)據(jù)庫
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。