今天為大家?guī)淼难葜v主題是《七牛云機(jī)器數(shù)據(jù)分析平臺(tái) Pandora 最佳實(shí)踐》,在介紹 Pandora 之前,我們可以先了解七牛云目前的整體架構(gòu)。依下圖所示,圖中最下面一橫是七牛云 cloud 的部分,包括直播云、實(shí)時(shí)音視頻云、攝像頭的監(jiān)控云,其中所有的數(shù)據(jù)都匯聚到脫胎于對(duì)象存儲(chǔ)的異構(gòu)數(shù)據(jù)湖中。數(shù)據(jù)湖之上是視覺數(shù)據(jù)的分析平臺(tái)以及機(jī)器數(shù)據(jù)分析平臺(tái)。我們今天講的 Pandora 就隸屬于機(jī)器數(shù)據(jù)的分析平臺(tái)。

Pandora 在七牛云整個(gè)版圖里,屬于機(jī)器數(shù)據(jù)智能的這個(gè)模塊。機(jī)器數(shù)據(jù)包含幾個(gè)部分,像是 Iot 的數(shù)據(jù)、各種設(shè)備的數(shù)據(jù)都可以成為機(jī)器數(shù)據(jù)。

什么是機(jī)器數(shù)據(jù)

我們對(duì)它有個(gè)簡(jiǎn)單的定義:機(jī)器數(shù)據(jù)是任何機(jī)器或者系統(tǒng)所產(chǎn)生的數(shù)據(jù)。比如說服務(wù)器產(chǎn)生的數(shù)據(jù)、傳感器產(chǎn)生的數(shù)據(jù)、還有各種應(yīng)用產(chǎn)生的數(shù)據(jù),包括網(wǎng)絡(luò)設(shè)備等等。機(jī)器數(shù)據(jù)的一個(gè)特點(diǎn),它是由大量的時(shí)序的非結(jié)構(gòu)化的數(shù)據(jù)組成的。對(duì)于我們處理定義的機(jī)器數(shù)據(jù)來講,沒有預(yù)先定義好的 schema,并且它的數(shù)據(jù)格式特別多,而且很難預(yù)測(cè)和定義,也就是說很難說預(yù)知是什么樣的格式進(jìn)來,或者說我預(yù)先定義好它的格式。

Pandora 的特點(diǎn)和采集流程

Pandora 定位作為一個(gè)機(jī)器數(shù)據(jù)的實(shí)時(shí)分析平臺(tái),它有哪些特點(diǎn)呢?第一是 Pandora 原生支持 schema free 的數(shù)據(jù)。也就是說可以隨時(shí)動(dòng)態(tài)地添加刪除字段,Pandora 更進(jìn)一步地原生支持了 schema on read 的能力,所以產(chǎn)生的數(shù)據(jù)怎么樣,進(jìn) Pandora 就是怎么樣,不需要經(jīng)過任何的這個(gè)加工。同時(shí)我們支持模型加速的功能。通過SPL分層持久化、列式存儲(chǔ)、CodeGen、向量計(jì)算等技術(shù)對(duì)數(shù)據(jù)模型進(jìn)行迭代優(yōu)化。第二個(gè)特點(diǎn)是云原生的架構(gòu),Pandora 的整個(gè)體系可以避免ETL加工帶來的預(yù)處理建模困難,同時(shí)計(jì)算(動(dòng)態(tài)資源)和存儲(chǔ)(靜態(tài)資源)分離,降低成本,提高計(jì)算彈性,另外完整的熱-溫-冷數(shù)據(jù)生命周期管理,可以大幅降低存儲(chǔ)成本。第三,是我們比較有特色的一個(gè)點(diǎn):SPL 強(qiáng)大的分析表達(dá)能力。支持豐富機(jī)器學(xué)習(xí)命令,滿足大量機(jī)器數(shù)據(jù)分析及 AI 場(chǎng)景;同時(shí)支持 SPL 實(shí)時(shí)計(jì)算,結(jié)果導(dǎo)出對(duì)接系統(tǒng),完成業(yè)務(wù)閉環(huán)第四點(diǎn)是我們有一個(gè)強(qiáng)大的系統(tǒng)擴(kuò)展能力。也就是說你可以把 Pandora 看成一個(gè) os,在其中可以利用 Pandora 的各種原生能力,去打造你自己的 APP 生態(tài)系統(tǒng),SDK 支持對(duì)于平臺(tái)的可視化系統(tǒng)、業(yè)務(wù)組織形式進(jìn)行可插拔擴(kuò)展。同時(shí) Pandora 不僅可以支持 SQL,更能夠通過 Python, Go+ 等擴(kuò)展 SPL 計(jì)算能力;另外支持平臺(tái)圖表能力輸出,能夠集成到業(yè)務(wù)系統(tǒng),完成數(shù)據(jù)價(jià)值輸出。

下面是 Pandora 的全景圖。從大數(shù)據(jù)分析的角度來看,先收集,然后處理、清洗,最后再分析和應(yīng)用,是所有大數(shù)據(jù)廠商的通用做法。Pandora 在其中有一點(diǎn)是獨(dú)特之處,就是 Pandora 支持原始數(shù)據(jù)格式的實(shí)時(shí)索引,也就是說除了分析之外,可以同時(shí)支持檢索服務(wù)。整個(gè)檢索和分析被統(tǒng)一到 SPL 的分析引擎里面,能夠同時(shí)支持檢索和分析服務(wù)。意味著用戶不用在意是檢索還是分析,可以一站式解決。

Pandora 的數(shù)據(jù)采集管理流程如下圖所示,通過這樣的流程,只要有數(shù)據(jù)產(chǎn)生,都可以有一個(gè)非常方便的方式來取得。

Schema On Road

在數(shù)據(jù)取得之后,就是 Pandora 的重頭戲——Schema On Read。我們可以從這張圖上可以看到 Pandora 的不同之處。Pandora 可以在原始數(shù)據(jù)直接上傳后,在分析時(shí)進(jìn)行動(dòng)態(tài)解析。也就說只需要一份原始數(shù)據(jù),我們多種數(shù)據(jù)模型就能解答不同用戶的所有問題。這樣的優(yōu)勢(shì)在于你可以針對(duì)各種數(shù)據(jù)進(jìn)行各種建模。針對(duì)變化的數(shù)據(jù)格式,只要在 Pandora 里做一些小小的變化便可完全兼容。這是純粹的日志系統(tǒng)做不到的。

SPL:機(jī)器分析數(shù)據(jù)的標(biāo)準(zhǔn)語(yǔ)言

SQL是我們機(jī)器數(shù)據(jù)分析的標(biāo)準(zhǔn)語(yǔ)言。通過一行的 SQL 的命令,便可以檢索,分析,可視化告警。支持對(duì)原始數(shù)據(jù)進(jìn)行直接處理,并且專為時(shí)序數(shù)據(jù)做了優(yōu)化,大家可以看到我們之前對(duì)機(jī)器數(shù)據(jù)定義的時(shí)候,包括大量的時(shí)序可以結(jié)構(gòu)化數(shù)據(jù),所以給了我們很大的優(yōu)化空間。另外我們?cè)跀?shù)據(jù)湖里做了多存儲(chǔ)引擎,并且可以接各種各樣的存儲(chǔ)引擎。最后我們寫了一個(gè)公式 SPL = SQL + Unix Pipeline,也就是說通過 SPL 我們可以做搜索,我們甚至可以寫解析的條件,但是又不用像寫代碼麻煩。

通過提供機(jī)器數(shù)據(jù)分析高級(jí)語(yǔ)言,支持復(fù)雜的搜索、聚合以及關(guān)聯(lián)分析的能力,處理能力更加強(qiáng)大。支持各種數(shù)學(xué)運(yùn)算、關(guān)聯(lián)分析、事務(wù)分析、預(yù)測(cè)分析等。在事務(wù)分析中,可以分析連續(xù)相互關(guān)聯(lián)的事件集合,這也是 Pandora 特別適合安全場(chǎng)景的原因。

目前我們把 SPL 的能力也集成到了 platform 里,用戶可以非常簡(jiǎn)單地去做數(shù)據(jù)接入,特征激活、算法的建模、效果展示、價(jià)值應(yīng)用等,都可以在其中完成。

Pandora 擴(kuò)展應(yīng)用

有了 SPL 能力以后,Pandora 支持用戶在上面沉淀自己的知識(shí)。所以我們的理念是,Pandora 不是一個(gè) platform,我們更希望它在傳遞價(jià)值。也就是說希望以 app 的形式,能將知識(shí)沉淀在 Pandora 的 App Store 里。Pandora 的 App Store 作為完整產(chǎn)品架構(gòu)不可獲取的一部分,形成了從數(shù)據(jù)接入到數(shù)據(jù)展示的完整鏈路。

存儲(chǔ)架構(gòu):數(shù)據(jù)全生命周期管理

面對(duì)數(shù)據(jù)量較大的,并且強(qiáng)調(diào)實(shí)時(shí)處理的情況,我們?cè)?Pandora 的存儲(chǔ)架構(gòu)中,構(gòu)建數(shù)據(jù)的全生命周期管理。在成本和性能的雙重考慮下,我們?cè)谶B貫的過程中,實(shí)現(xiàn)計(jì)算與存儲(chǔ)的完全解耦,資源應(yīng)需而變;數(shù)據(jù)可實(shí)現(xiàn)歷史數(shù)據(jù)長(zhǎng)期存儲(chǔ),積累的海量歷史數(shù)據(jù)可以支持未來的機(jī)器學(xué)習(xí)、AIOps 等場(chǎng)景。

同時(shí) Pandora 也在努力與七牛云的存儲(chǔ)進(jìn)行對(duì)接,使大家在直接對(duì)七牛云云存儲(chǔ)進(jìn)行分析時(shí),也能享受到盡可能高的性能。

技術(shù)點(diǎn)分享

我們做了正向索引與倒排索引以及行列混合存儲(chǔ),也支持分層的存儲(chǔ)和 On Read、CodeGen、向量化。TimeSeries 的優(yōu)化可以反映到計(jì)算引擎中,讓用戶體驗(yàn)到更快的性能和更穩(wěn)定的服務(wù)。

Pandora 案例

01 某大型保險(xiǎn)公司

主要用于對(duì)信息系統(tǒng)整體日志進(jìn)行全生命周期智能管理,實(shí)現(xiàn)對(duì)日志的統(tǒng)一采集,合并處理,集中存儲(chǔ),關(guān)聯(lián)分析與智能管理。適用于解決運(yùn)維開發(fā)領(lǐng)域的三大場(chǎng)景:IT 運(yùn)維,安全審計(jì),業(yè)務(wù)運(yùn)營(yíng)分析;可提供包括線上監(jiān)控、運(yùn)維數(shù)據(jù)支撐、問題診斷、故障預(yù)警,資源監(jiān)測(cè)、用戶行為審計(jì)、規(guī)則提取、歸檔、攻擊溯源、業(yè)務(wù)走勢(shì)分析等服務(wù)。

02 某頂尖手機(jī)制造企業(yè)

第二個(gè)案例是某頂尖手機(jī)制造企業(yè)監(jiān)控診斷和根因分析。手機(jī)在出廠前都要有一個(gè)測(cè)試的過程,但每次測(cè)試的時(shí)會(huì)產(chǎn)生很多很多的測(cè)試的數(shù)據(jù),來反映手機(jī)的故障情況。在沒有制造系統(tǒng)知識(shí)的時(shí)候,需要員工要去看,非常復(fù)雜。在 Pandora 的賦能下,手機(jī)的制造廠商可以遠(yuǎn)程監(jiān)控我們的這個(gè)車間的生產(chǎn)質(zhì)量,并且很快地定位到故障原因。

03 某領(lǐng)軍半導(dǎo)體企業(yè)

下面是半導(dǎo)體的企業(yè)案例,半導(dǎo)體的產(chǎn)業(yè)鏈非常長(zhǎng),在源頭是一個(gè)叫做單晶爐的設(shè)備,用來提煉單晶硅。Pandora 可以幫助單晶硅做健康度的檢查,也就說我們可以及時(shí)發(fā)現(xiàn)單晶爐的故障,在故障發(fā)生時(shí)及時(shí)報(bào)警,避免原材料無謂的投入,及時(shí)止損。從圖中我們可以看出,Pandora 通過多個(gè)維度做分析,通過單晶爐里面的傳感器收集數(shù)據(jù),對(duì)設(shè)備進(jìn)行生產(chǎn)監(jiān)控和預(yù)測(cè)性維護(hù)。

04 智能網(wǎng)聯(lián)車分析

最后一個(gè)案例是智能網(wǎng)聯(lián)車,Pandora 可以判斷車子的數(shù)據(jù),比如什么時(shí)候打了方向盤,什么時(shí)候踩了剎車等等,在 Pandora 里都可以一目了然。

大家可以通過以上幾個(gè)案例看出,Pandora 所針對(duì)的數(shù)據(jù),都是由機(jī)器產(chǎn)生的、非常不規(guī)則的、帶有 time stamp 的數(shù)據(jù)。所以我們?cè)诮鹑凇⒅圃鞓I(yè)、車聯(lián)網(wǎng)等等都有比較有意思的應(yīng)用。Pandora 也希望通過大數(shù)據(jù)、AI 手段,為更多相關(guān)產(chǎn)業(yè)賦能,實(shí)現(xiàn)產(chǎn)業(yè)升級(jí)。

分享到

songjy

相關(guān)推薦