chinesefreesexvideos高潮,欧美极品少妇性运交,久久久国产一区二区三区,99久久婷婷国产综合精品,成人国产一区二区三区

APP推廣合作
聯(lián)系“鳥哥筆記小喬”
數(shù)據(jù)湖運營(最全的各大廠的數(shù)據(jù)湖解決方案)
2022-11-08 18:22:00

最全的各大廠的數(shù)據(jù)湖解決方案

  數(shù)據(jù)湖作為當(dāng)前的一個風(fēng)口,各大云廠商紛紛推出自己的數(shù)據(jù)湖解決方案及相關(guān)產(chǎn)品。本節(jié)將分析各個主流廠商推出的數(shù)據(jù)湖解決方案,并將其映射到數(shù)據(jù)湖參考架構(gòu)上,幫助大家理解各類方案的優(yōu)缺點。

  圖7. AWS數(shù)據(jù)湖解決方案

  圖7是AWS推薦的數(shù)據(jù)湖解決方案。整個方案基于AWS Lake Formation構(gòu)建,AWS Lake Formation本質(zhì)上是一個管理性質(zhì)的組件,它與其他AWS服務(wù)互相配合,來完成整個企業(yè)級數(shù)據(jù)湖構(gòu)建功能。上圖自左向右,體現(xiàn)了數(shù)據(jù)流入、數(shù)據(jù)沉淀、數(shù)據(jù)計算、數(shù)據(jù)應(yīng)用四個步驟。我們進一步來看其關(guān)鍵點:

  1) 數(shù)據(jù)流入。

  數(shù)據(jù)流入是整個數(shù)據(jù)湖構(gòu)建的起始,包括元數(shù)據(jù)的流入和業(yè)務(wù)數(shù)據(jù)流入兩個部分。元數(shù)據(jù)流入包括數(shù)據(jù)源創(chuàng)建、元數(shù)據(jù)抓取兩步,最終會形成數(shù)據(jù)資源目錄,并生成對應(yīng)的安全設(shè)置與訪問控制策略。解決方案提供專門的組件,獲取外部數(shù)據(jù)源的相關(guān)元信息,該組件能連接外部數(shù)據(jù)源、檢測數(shù)據(jù)格式和模式(schema),并在對應(yīng)的數(shù)據(jù)資源目錄中創(chuàng)建屬于數(shù)據(jù)湖的元數(shù)據(jù)。業(yè)務(wù)數(shù)據(jù)的流入是通過ETL來完成的。

  在具體的產(chǎn)品形式上,元數(shù)據(jù)抓取、ETL和數(shù)據(jù)準備AWS將其單獨抽象出來,形成了一個產(chǎn)品叫AWS GLUE。AWS GLUE與AWS Lake Formation共享同一個數(shù)據(jù)資源目錄,在AWS GLUE官網(wǎng)文檔上明確指出:“Each AWS account has one AWS Glue Data Catalog per AWS region”。

  對于異構(gòu)數(shù)據(jù)源的支持。AWS提供的數(shù)據(jù)湖解決方案,支持S3、AWS關(guān)系型數(shù)據(jù)庫、AWS NoSQL數(shù)據(jù)庫,AWS利用GLUE、EMR、Athena等組件支持數(shù)據(jù)的自由流動。

  2) 數(shù)據(jù)沉淀。

  采用Amazon S3作為整個數(shù)據(jù)湖的集中存儲,按需擴展/按使用量付費。

  3) 數(shù)據(jù)計算。

  整個解決方案利用AWS GLUE來進行基本的數(shù)據(jù)處理。GLUE基本的計算形式是各類批處理模式的ETL任務(wù),任務(wù)的出發(fā)方式分為手動觸發(fā)、定時觸發(fā)、事件觸發(fā)三種。不得不說,AWS的各類服務(wù)在生態(tài)上實現(xiàn)的非常好,事件觸發(fā)模式上,可以利用AWS Lambda進行擴展開發(fā),同時觸發(fā)一個或多個任務(wù),極大的提升了任務(wù)觸發(fā)的定制開發(fā)能力;同時,各類ETL任務(wù),可以通過CloudWatch進行很好的監(jiān)控。

  4) 數(shù)據(jù)應(yīng)用。

  在提供基本的批處理計算模式之外,AWS通過各類外部計算引擎,來提供豐富的計算模式支持,例如通過Athena/Redshift來提供基于SQL的交互式批處理能力;通過EMR來提供各類基于Spark的計算能力,包括Spark能提供的流計算能力和機器學(xué)習(xí)能力。

  5) 權(quán)限管理。

  AWS的數(shù)據(jù)湖解決方案通過Lake Formation來提供相對完善的權(quán)限管理,粒度包括“庫-表-列”。但是,有一點例外的是,GLUE訪問Lake Formation時,粒度只有“庫-表”兩級;這也從另一個側(cè)面說明,GLUE和Lake Formation的集成是更為緊密的,GLUE對于Lake Formation中的數(shù)據(jù)有更大的訪問權(quán)限。

  Lake Formation的權(quán)限進一步可以細分為數(shù)據(jù)資源目錄訪問權(quán)限和底層數(shù)據(jù)訪問權(quán)限,分別對應(yīng)元數(shù)據(jù)與實際存儲的數(shù)據(jù)。實際存儲數(shù)據(jù)的訪問權(quán)限又進一步分為數(shù)據(jù)存取權(quán)限和數(shù)據(jù)存儲訪問權(quán)限。數(shù)據(jù)存取權(quán)限類似于數(shù)據(jù)庫中對于庫表的訪問權(quán)限,數(shù)據(jù)存儲權(quán)限則進一步細化了對于S3中具體目錄的訪問權(quán)限(分為顯示和隱式兩種)。如圖8所示,用戶A在只有數(shù)據(jù)存取的權(quán)限下,無法創(chuàng)建位于S3指定bucket下的表。

  個人認為這進一步體現(xiàn)了數(shù)據(jù)湖需要支持各種不同的存儲引擎,未來的數(shù)據(jù)湖可能不只S3/OSS/OBS/HDFS一類核心存儲,可能根據(jù)應(yīng)用的訪問需求,納入更多類型的存儲引擎,例如,S3存儲原始數(shù)據(jù),NoSQL存儲處理過后適合以“鍵值”模式訪問的數(shù)據(jù),OLAP引擎存儲需要實時出各類報表/adhoc查詢的數(shù)據(jù)。雖然當(dāng)前各類材料都在強調(diào)數(shù)據(jù)湖與數(shù)據(jù)倉庫的不同;但是,從本質(zhì)上,數(shù)據(jù)湖更應(yīng)該是一類融合的數(shù)據(jù)管理思想的具體實現(xiàn),“湖倉一體化”也很可能是未來的一個發(fā)展趨勢。

  圖8. AWS數(shù)據(jù)湖解決方案權(quán)限分離示意

  綜上,AWS數(shù)據(jù)湖方案成熟度高,特別是元數(shù)據(jù)管理、權(quán)限管理上考慮充分,打通了異構(gòu)數(shù)據(jù)源與各類計算引擎的上下游關(guān)系,讓數(shù)據(jù)能夠自由“移動”起來。在流計算和機器學(xué)習(xí)上,AWS的解決方案也比較完善。流計算方面AWS推出了專門的流計算組件Kinesis,Kinesis中的Kinesis data Firehose服務(wù)可以創(chuàng)建一個完全被托管的數(shù)據(jù)分發(fā)服務(wù),通過Kinesis data Stream實時處理的數(shù)據(jù),可以借助Firehose方便的寫入S3中,并支持相應(yīng)的格式轉(zhuǎn)換,如將JSON轉(zhuǎn)換成Parquet格式。

  AWS整個方案最牛的地方還在與Kinesis可以訪問GLUE中的元數(shù)據(jù),這一點充分體現(xiàn)了AWS數(shù)據(jù)湖解決方案在生態(tài)上的完備性。同樣,在機器學(xué)習(xí)方面,AWS提供了SageMaker服務(wù),SageMaker可以讀取S3中的訓(xùn)練數(shù)據(jù),并將訓(xùn)練好的模型回寫至S3中。但是,有一點需要指出的是,在AWS的數(shù)據(jù)湖解決方案中,流計算和機器學(xué)習(xí)并不是固定捆綁的,只是作為計算能力擴展,能方便的集成。

  最后,讓我們回到圖6的數(shù)據(jù)湖組件參考架構(gòu),看看AWS的數(shù)據(jù)湖解決方案的組件覆蓋情況,參見圖9。

  圖9. AWS 數(shù)據(jù)湖解決方案在參考架構(gòu)中的映射

  綜上,AWS的數(shù)據(jù)湖解決方案覆蓋了除質(zhì)量管理和數(shù)據(jù)治理的所有功能。其實質(zhì)量管理和數(shù)據(jù)治理這個工作和企業(yè)的組織結(jié)構(gòu)、業(yè)務(wù)類型強相關(guān),需要做大量的定制開發(fā)工作,因此通用解決方案不囊括這塊內(nèi)容,也是可以理解的。事實上,現(xiàn)在也有比較優(yōu)秀的開源項目支持這個項目,比如Apache Griffin,如果對質(zhì)量管理和數(shù)據(jù)治理有強訴求,可以自行定制開發(fā)。

  圖10.華為數(shù)據(jù)湖解決方案

  華為的數(shù)據(jù)湖解決方案相關(guān)信息來自華為官網(wǎng)。目前官網(wǎng)可見的相關(guān)產(chǎn)品包括數(shù)據(jù)湖探索(Data Lake Insight,DLI)和智能數(shù)據(jù)湖運營平臺(DAYU)。其中DLI相當(dāng)于是AWS的Lake Formation、GLUE、Athena、EMR(Flink&Spark)的集合。官網(wǎng)上沒找到關(guān)于DLI的整體架構(gòu)圖,我根據(jù)自己的理解,嘗試畫了一個,主要是和AWS的解決方案有一個對比,所以形式上盡量一致,如果有非常了解華為DLI的同學(xué),也請不吝賜教。

  華為的數(shù)據(jù)湖解決方案比較完整,DLI承擔(dān)了所有的數(shù)據(jù)湖構(gòu)建、數(shù)據(jù)處理、數(shù)據(jù)管理、數(shù)據(jù)應(yīng)用的核心功能。DLI最大的特色是在于分析引擎的完備性,包括基于SQL的交互式分析以及基于Spark+Flink的流批一體處理引擎。在核心存儲引擎上,DLI依然通過內(nèi)置的OBS來提供,和AWS S3的能力基本對標。華為數(shù)據(jù)湖解決方案在上下游生態(tài)上做的比AWS相對完善,對于外部數(shù)據(jù)源,幾乎支持所有目前華為云上提供的數(shù)據(jù)源服務(wù)。

  DLI可以與華為的CDM(云數(shù)據(jù)遷移服務(wù))和DIS(數(shù)據(jù)接入服務(wù))對接:

  借助DIS,DLI可以定義各類數(shù)據(jù)點,這些點可以在Flink作業(yè)中被使用,做為source或者sink;借助CDM,DLI甚至能接入IDC、第三方云服務(wù)的數(shù)據(jù)。

  為了更好的支持數(shù)據(jù)集成、數(shù)據(jù)開發(fā)、數(shù)據(jù)治理、質(zhì)量管理等數(shù)據(jù)湖高級功能,華為云提供了DAYU平臺。DAYU平臺是華為數(shù)據(jù)湖治理運營方法論的落地實現(xiàn)。DAYU涵蓋了整個數(shù)據(jù)湖治理的核心流程,并對其提供了相應(yīng)的工具支持;甚至在華為的官方文檔中,給出了數(shù)據(jù)治理組織的構(gòu)建建議。DAYU的數(shù)據(jù)治理方法論的落地實現(xiàn)如圖11所示(來自華為云官網(wǎng))。

  圖11 DAYU數(shù)據(jù)治理方法論流程

  可以看到,本質(zhì)上DAYU數(shù)據(jù)治理的方法論其實是傳統(tǒng)數(shù)據(jù)倉庫治理方法論在數(shù)據(jù)湖基礎(chǔ)設(shè)施上的延伸:從數(shù)據(jù)模型來看,依然包括貼源層、多源整合層、明細數(shù)據(jù)層,這點與數(shù)據(jù)倉庫完全一致。根據(jù)數(shù)據(jù)模型和指標模型會生成質(zhì)量規(guī)則和轉(zhuǎn)換模型,DAYU會和DLI對接,直接調(diào)用DLI提供的相關(guān)數(shù)據(jù)處理服務(wù),完成數(shù)據(jù)治理。

  華為云整個的數(shù)據(jù)湖解決方案,完整覆蓋了數(shù)據(jù)處理的生命周期,并且明確支持了數(shù)據(jù)治理,并提供了基于模型和指標的數(shù)據(jù)治理流程工具,在華為云的數(shù)據(jù)湖解決方案中逐漸開始往“湖倉一體化”方向演進。

  阿里云上數(shù)據(jù)類產(chǎn)品眾多,因為本人目前在數(shù)據(jù)BU,所以本節(jié)方案將關(guān)注在如何使用數(shù)據(jù)庫BU的產(chǎn)品來構(gòu)建數(shù)據(jù)湖,其他云上產(chǎn)品會略有涉及。阿里云的基于數(shù)據(jù)庫產(chǎn)品的數(shù)據(jù)湖解決方案更加聚焦,主打數(shù)據(jù)湖分析和聯(lián)邦分析兩個場景。阿里云數(shù)據(jù)湖解決方案如圖12所示。

  圖12. 阿里云數(shù)據(jù)湖解決方案

  整個方案依然采用OSS作為數(shù)據(jù)湖的集中存儲。在數(shù)據(jù)源的支持上,目前也支持所有的阿里云數(shù)據(jù)庫,包括OLTP、OLAP和NoSQL等各類數(shù)據(jù)庫。核心關(guān)鍵點如下:

  數(shù)據(jù)接入與搬遷。在建湖過程中,DLA的Formation組件具備元數(shù)據(jù)發(fā)現(xiàn)和一鍵建湖的能力,在本文寫作之時,目前“一鍵建湖”還只支持全量建湖,但是基于binlog的增量建湖已經(jīng)在開發(fā)中了,預(yù)計近期上線。增量建湖能力會極大的增加數(shù)據(jù)湖中數(shù)據(jù)的實時性,并將對源端業(yè)務(wù)數(shù)據(jù)庫的壓力降到最下。這里需要注意的是,DLA Formation是一個內(nèi)部組件,對外并沒有暴露。數(shù)據(jù)資源目錄。DLA提供Meta data catalog組件對于數(shù)據(jù)湖中的數(shù)據(jù)資產(chǎn)進行統(tǒng)一的管理,無論數(shù)據(jù)是在“湖中”還是在“湖外”。Meta data catalog也是聯(lián)邦分析的統(tǒng)一元數(shù)據(jù)入口。在內(nèi)置計算引擎上,DLA提供了SQL計算引擎和Spark計算引擎兩種。無論是SQL還是Spark引擎,都和Meta data catalog深度集成,能方便的獲取元數(shù)據(jù)信息。基于Spark的能力,DLA解決方案支持批處理、流計算和機器學(xué)習(xí)等計算模式。在外圍生態(tài)上,除了支持各類異構(gòu)數(shù)據(jù)源做數(shù)據(jù)接入與匯聚之外,在對外訪問能力上,DLA與云原生數(shù)據(jù)倉庫(原ADB)深度整合。一方面,DLA處理的結(jié)果可之際推送至ADB中,滿足實時、交互式、ad hoc復(fù)雜查詢;另一方面,ADB里的數(shù)據(jù)也可以借助外表功能,很方便的進行數(shù)據(jù)回流至OSS中?;贒LA,阿里云上各類異構(gòu)數(shù)據(jù)源可以完全被打通,數(shù)據(jù)自由流動。在數(shù)據(jù)集成和開發(fā)上,阿里云的數(shù)據(jù)湖解決方案提供兩種選擇:一種是采用dataworks完成;另一種是采用DMS來完成。無論是選擇哪種,都能對外提供可視化的流程編排、任務(wù)調(diào)度、任務(wù)管理能力。在數(shù)據(jù)生命周期管理上,dataworks的數(shù)據(jù)地圖能力相對更加成熟。在數(shù)據(jù)管理和數(shù)據(jù)安全上,DMS提供了強大的能力。DMS的數(shù)據(jù)管理粒度分為“庫-表-列-行”,完善的支持企業(yè)級的數(shù)據(jù)安全管控需求。除了權(quán)限管理之外,DMS更精細的地方是把原來基于數(shù)據(jù)庫的devops理念擴展到了數(shù)據(jù)湖,使得數(shù)據(jù)湖的運維、開發(fā)更加精細化。

  進一步細化整個數(shù)據(jù)湖方案的數(shù)據(jù)應(yīng)用架構(gòu),如下圖所示。

  圖13. 阿里云數(shù)據(jù)湖數(shù)據(jù)應(yīng)用架構(gòu)

  自左向右從數(shù)據(jù)的流向來看,數(shù)據(jù)生產(chǎn)者產(chǎn)生各類數(shù)據(jù)(云下/云上/其他云),利用各類工具,上傳至各類通用/標準數(shù)據(jù)源,包括OSS/HDFS/DB等。針對各類數(shù)據(jù)源,DLA通過數(shù)據(jù)發(fā)現(xiàn)、數(shù)據(jù)接入、數(shù)據(jù)遷移等能力,完整建湖操作。

  對于“入湖”的數(shù)據(jù),DLA提供基于SQL和Spark的數(shù)據(jù)處理能力,并可以基于Dataworks/DMS,對外提供可視化的數(shù)據(jù)集成和數(shù)據(jù)開發(fā)能力;在對外應(yīng)用服務(wù)能力上,DLA提供標準化的JDBC接口,可以直接對接各類報表工具、大屏展示功能等。阿里云的DLA的特色在于背靠整個阿里云數(shù)據(jù)庫生態(tài),包括OLTP、OLAP、NoSQL等各類數(shù)據(jù)庫,對外提供基于SQL的數(shù)據(jù)處理能力,對于傳統(tǒng)企業(yè)基于數(shù)據(jù)庫的開發(fā)技術(shù)棧而言,轉(zhuǎn)型成本相對較低,學(xué)習(xí)曲線比較平緩。

  阿里云的DLA解決方案的另一個特色在于“基于云原生的湖倉一體化”。傳統(tǒng)的企業(yè)級數(shù)據(jù)倉庫在大數(shù)據(jù)時代的今天,在各類報表應(yīng)用上依然是無法替代的,但是數(shù)倉無法滿足大數(shù)據(jù)時代的數(shù)據(jù)分析處理的靈活性需求。

  因此,我們推薦數(shù)據(jù)倉庫應(yīng)該作為數(shù)據(jù)湖的上層應(yīng)用存在:即數(shù)據(jù)湖是原始業(yè)務(wù)數(shù)據(jù)在一個企業(yè)/組織中唯一官方數(shù)據(jù)存儲地;數(shù)據(jù)湖根據(jù)各類業(yè)務(wù)應(yīng)用需求,將原始數(shù)據(jù)進行加工處理,形成可再次利用的中間結(jié)果;當(dāng)中間結(jié)果的數(shù)據(jù)模式(Schema)相對固定后,DLA可以將中間結(jié)果推送至數(shù)據(jù)倉庫,供企業(yè)/組織開展基于數(shù)倉的業(yè)務(wù)應(yīng)用。阿里云在提供DLA的同時,還提供了云原生數(shù)倉(原ADB),DLA和云原生數(shù)倉在以下兩點上深度融合。

  使用同源的SQL解析引擎。DLA的SQL與ADB的SQL語法上完全兼容,這意味著開發(fā)者使用一套技術(shù)棧即能同時開發(fā)數(shù)據(jù)湖應(yīng)用和數(shù)倉應(yīng)用。都內(nèi)置了對于OSS的訪問支持。OSS直接作為DLA的原生存儲存在;對于ADB而言,可以通過外部表的能力,很方便的訪問OSS上的結(jié)構(gòu)化數(shù)據(jù)。借助外部表,數(shù)據(jù)可以自由的在DLA和ADB之間流轉(zhuǎn),做到真正的湖倉一體。

  DLA+ADB的組合真正做到了云原生的湖倉一體(關(guān)于什么是云原生,不在本文的討論范疇)。本質(zhì)上,DLA可以看成一個能力擴展的數(shù)據(jù)倉庫貼源層。與傳統(tǒng)數(shù)倉相比,該貼源層:

  可以保存各類結(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù);可以對接各類異構(gòu)數(shù)據(jù)源;具備元數(shù)據(jù)發(fā)現(xiàn)、管理、同步等能力;內(nèi)置的SQL/Spark計算引擎具備更強的數(shù)據(jù)處理能力,滿足多樣化的數(shù)據(jù)處理需求;具備全量數(shù)據(jù)的全生命周期管理能力?;贒LA+ADB的湖倉一體化方案,將同時覆蓋“大數(shù)據(jù)平臺+數(shù)據(jù)倉庫”的處理能力。

  DLA還有一個重要能力是構(gòu)建了一個“四通八達”的數(shù)據(jù)流動體系,并以數(shù)據(jù)庫的體驗對外提供能力,無論數(shù)據(jù)在云上還是云下,無論數(shù)據(jù)在組織內(nèi)部還是外部;借助數(shù)據(jù)湖,各個系統(tǒng)之間的數(shù)據(jù)不再存在壁壘,可以自由的流進流出;更重要的是,這種流動是受監(jiān)管的,數(shù)據(jù)湖完整的記錄了數(shù)據(jù)的流動情況。

  Azure的數(shù)據(jù)湖解決方案包括數(shù)據(jù)湖存儲、接口層、資源調(diào)度與計算引擎層,如圖15所示(來自Azure官網(wǎng))。存儲層是基于Azure object Storage構(gòu)建的,依然是對結(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)提供支撐。

  接口層為WebHDFS,比較特別的是在Azure object Storage實現(xiàn)了HDFS的接口,Azure把這個能力稱為“數(shù)據(jù)湖存儲上的多協(xié)議存取”。在資源調(diào)度上,Azure基于YARN實現(xiàn)。計算引擎上,Azure提供了U-SQL、hadoop和Spark等多種處理引擎。

  圖15. Azure Data lake analysis 架構(gòu)

  Azure的特別之處是基于visual studio提供給了客戶開發(fā)的支持。

  開發(fā)工具的支持,與visual studio的深度集成;Azure推薦使用U-SQL作為數(shù)據(jù)湖分析應(yīng)用的開發(fā)語言。Visual studio為U-SQL提供了完備的開發(fā)環(huán)境;同時,為了降低分布式數(shù)據(jù)湖系統(tǒng)開發(fā)的復(fù)雜性,visual studio基于項目進行封裝,在進行U-SQL開發(fā)時,可以創(chuàng)建“U-SQL database project”,在此類項目中,利用visual studio,可以很方便的進行編碼與調(diào)試,同時,也提供向?qū)В瑢㈤_發(fā)好的U-SQL腳本發(fā)布到生成環(huán)境。U-SQL支持Python、R進行擴展,滿足定制開發(fā)需求。多計算引擎的適配:SQL, Apache Hadoop和Apache Spark。這里的hadoop包括Azure提供的HDInsight(Azure托管的Hadoop服務(wù)),Spark包括Azure Databricks。多種不同引擎任務(wù)之間的自動轉(zhuǎn)換能力。微軟推薦U-SQL為數(shù)據(jù)湖的缺省開發(fā)工具,并提供各類轉(zhuǎn)換工具,支持U-SQL腳本與Hive、Spark(HDSight&databricks)、Azure Data Factory data Flow之間的轉(zhuǎn)化。

  本文所討論的是數(shù)據(jù)湖的解決方案,不會涉及到任何云廠商的單個產(chǎn)品。我們從數(shù)據(jù)接入、數(shù)據(jù)存儲、數(shù)據(jù)計算、數(shù)據(jù)管理、應(yīng)用生態(tài)幾個方面,簡單做了一個類似下表的總結(jié)。

  出于篇幅關(guān)系,其實知名云廠商的數(shù)據(jù)湖解決方案還有谷歌和騰訊的。這兩家從其官方網(wǎng)站上看,數(shù)據(jù)湖解決方案相對來講比較簡單,也僅僅是一些概念上的闡述,推薦的落地方案是“oss+hadoop(EMR)”。

  其實數(shù)據(jù)湖不應(yīng)該從一個簡單的技術(shù)平臺視角來看,實現(xiàn)數(shù)據(jù)湖的方式也多種多樣,評價一個數(shù)據(jù)湖解決方案是否成熟,關(guān)鍵應(yīng)該看其提供的數(shù)據(jù)管理能力,具體包括但不限于元數(shù)據(jù)、數(shù)據(jù)資產(chǎn)目錄、數(shù)據(jù)源、數(shù)據(jù)處理任務(wù)、數(shù)據(jù)生命周期、數(shù)據(jù)治理、權(quán)限管理等;以及與外圍生態(tài)的對接打通能力。

  五、典型的數(shù)據(jù)湖應(yīng)用案例

  近年來,流量獲取的成本就越來越高,線上渠道獲客成本的成倍增長讓各行各業(yè)都面臨著嚴峻的挑戰(zhàn)。在互聯(lián)網(wǎng)廣告成本不斷攀升的大背景下,以花錢買流量拉新為主要的經(jīng)營策略必然行不通了。流量前端的優(yōu)化已成強弩之末,利用數(shù)據(jù)工具提高流量到站后的目標轉(zhuǎn)化,精細化運營廣告投放的各個環(huán)節(jié),才是改變現(xiàn)狀更為直接有效的方式。說到底,要提高廣告流量的轉(zhuǎn)化率,必須依靠大數(shù)據(jù)分析。

  為了能夠提供更多的決策支撐依據(jù),需要采取更多的埋點數(shù)據(jù)的收集和分析,包括但不限于渠道、投放時間、投放人群,以點擊率為數(shù)據(jù)指標進行數(shù)據(jù)分析,從而給出更好的、更迅速的方案和建議,實現(xiàn)高效率高產(chǎn)出。因此,面對廣告投放領(lǐng)域多維度、多媒體、多廣告位等結(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)采集、存儲、分析和決策建議等要求,數(shù)據(jù)湖分析產(chǎn)品解決方案在廣告主或者發(fā)布商進行新一代技術(shù)選型中上受到了很熱烈的青睞。

  DG是一家全球領(lǐng)先的企業(yè)國際化智能營銷服務(wù)商,基于先進的廣告技術(shù)、大數(shù)據(jù)和運營能力,為客戶提供全球高質(zhì)量用戶獲取及流量變現(xiàn)服務(wù)。DG從成立之初就決定以公有云為基礎(chǔ)來構(gòu)建其IT基礎(chǔ)設(shè)施,最初DG選擇了AWS云平臺,主要將其廣告數(shù)據(jù)在S3中以數(shù)據(jù)湖的形態(tài)進行存放,通過Athena進行交互式分析。然而隨著互聯(lián)網(wǎng)廣告的飛速發(fā)展,廣告行業(yè)帶來了幾大挑戰(zhàn),移動廣告的發(fā)布與追蹤系統(tǒng)必須解決幾個關(guān)鍵問題:

  并發(fā)性與峰值問題。在廣告行業(yè),流量高峰時常出現(xiàn),瞬間的點擊量可能達到數(shù)萬,甚至數(shù)十萬,這就要求系統(tǒng)具備非常好的可擴展性以快速響應(yīng)和處理每一次點擊如何實現(xiàn)對海量數(shù)據(jù)的實時分析。為了監(jiān)控廣告投放效果,系統(tǒng)需要實時對用戶的每一次點擊和激活數(shù)據(jù)進行分析,同時把相關(guān)數(shù)據(jù)傳輸?shù)较掠蔚拿襟w;平臺的數(shù)據(jù)量在急劇增長,每天的業(yè)務(wù)日志數(shù)據(jù)在持續(xù)的產(chǎn)生和上傳,曝光、點擊、推送的數(shù)據(jù)在持續(xù)處理,每天新增的數(shù)據(jù)量已經(jīng)在10-50TB左右,對整個數(shù)據(jù)處理系統(tǒng)提出了更高的要求。如何高效地完成對廣告數(shù)據(jù)的離線/近實時統(tǒng)計,按照廣告客戶的維度要求進行聚合分析。

  針對上述三點業(yè)務(wù)挑戰(zhàn),同時DG這個客戶日增量數(shù)據(jù)正在急劇變大(當(dāng)前日數(shù)據(jù)掃描量達到100+TB),繼續(xù)在AWS平臺使用遇到Athena讀取S3數(shù)據(jù)帶寬瓶頸、數(shù)據(jù)分析滯后時間越來越長、為應(yīng)對數(shù)據(jù)和分析需求增長而急劇攀升的投入成本等,經(jīng)過認真、仔細的測試和分析,最終決定從AWS云平臺全量搬站到阿里云平臺,新架構(gòu)圖如下:

  圖16. 改造后的廣告數(shù)據(jù)湖方案架構(gòu)

  從AWS搬站到阿里云后,我們?yōu)樵摽蛻粼O(shè)計了“利用Data Lake Analytics + OSS”極致分析能力來應(yīng)對業(yè)務(wù)波峰波谷。一方面輕松應(yīng)對來自品牌客戶的臨時分析。另一方面利用Data Lake Analytics的強大計算能力,分析按月、季度廣告投放,精確計算出一個品牌下面會有多少個活動,每個活動分媒體,分市場,分頻道,分DMP的投放效果,進一步增強了加和智能流量平臺為品牌營銷帶來的銷售轉(zhuǎn)化率。

  并且在廣告投放與分析的總擁有成本上,Data Lake Analytics提供的Serverless的彈性服務(wù)為按需收費,不需要購買固定的資源,完全契合業(yè)務(wù)潮汐帶來的資源波動,滿足彈性的分析需求,同時極大地降低了運維成本和使用成本。

  圖17 數(shù)據(jù)湖部署示意圖

  總體上,DG從AWS切換到阿里云后,極大地節(jié)省了硬件成本、人力成本和開發(fā)成本。由于采用DLA serverless云服務(wù),DG無需先期投入大量的資金去購買服務(wù)器、存儲等硬件設(shè)備,也無需一次性購買大量的云服務(wù),其基礎(chǔ)設(shè)施的規(guī)模完全是按需擴展:需求高的時候增加服務(wù)數(shù)量,需求減少的時候減少服務(wù)數(shù)量,提高了資金的利用率。

  使用阿里云平臺帶來的第二個顯著好處是性能的提升。在DG業(yè)務(wù)的快速增長期以及后續(xù)多條業(yè)務(wù)線接入期,DG在移動廣告系統(tǒng)的訪問量經(jīng)常呈爆發(fā)式增長,然而原先AWS方案和平臺在Athena讀取S3數(shù)據(jù)遇到數(shù)據(jù)讀取帶寬的極大瓶頸,數(shù)據(jù)分析的時間變得越來越長,阿里云DLA聯(lián)合OSS團隊等進行了極大的優(yōu)化和改造,同時,DLA數(shù)據(jù)庫分析在計算引擎上(與TPC-DS打榜世界第一的AnalyticDB共享計算引擎)比Presto原生計算引擎的能力提升數(shù)十倍性能,也極大的為DG提升了分析性能。

  數(shù)據(jù)湖是一類TCO表現(xiàn)極其優(yōu)秀的大數(shù)據(jù)基礎(chǔ)設(shè)施。對于很多快速增長的游戲公司而言,一個爆款游戲,往往在短期內(nèi)相關(guān)數(shù)據(jù)增長極快;同時,公司的研發(fā)人員的技術(shù)棧很難在短期內(nèi)與數(shù)據(jù)的增量和增速進行匹配;此時,呈爆發(fā)增長的數(shù)據(jù)很難被有效利用。數(shù)據(jù)湖是一個解決此類問題的技術(shù)選擇。

  YJ是一家高速成長的游戲公司,公司希望能依托相關(guān)用戶行為數(shù)據(jù)進行深入分析,指導(dǎo)游戲的開發(fā)和運營。數(shù)據(jù)分析背后的核心邏輯在于隨著游戲行業(yè)市場競爭局面的擴大,玩家對于品質(zhì)的要求越來越高,游戲項目的生命周期越來越短,直接影響項目的投入產(chǎn)出比,通過數(shù)據(jù)運營則可以有效的延長項目的生命周期,對各個階段的業(yè)務(wù)走向進行精準把控。

  而隨著流量成本的日益上升,如何構(gòu)建經(jīng)濟、高效的精細化數(shù)據(jù)運營體系,以更好的支撐業(yè)務(wù)發(fā)展,也變得愈發(fā)重要起來。數(shù)據(jù)運營體系就需要有其配套的基礎(chǔ)支撐設(shè)施,如何選擇這類基礎(chǔ)支撐設(shè)施,是公司技術(shù)決策者需要思考的問題。思考的出發(fā)點包括:

  要有足夠的彈性。對于游戲而言,往往就是短時間爆發(fā),數(shù)據(jù)量激增;因此,能否適應(yīng)數(shù)據(jù)的爆發(fā)性增長,滿足彈性需求是一個重點考量的點;無論是計算還是存儲,都需要具備足夠的彈性。要有足夠的性價比。對于用戶行為數(shù)據(jù),往往需要拉到一個很長的周期去分析去對比,比如留存率,不少情況下需要考慮90天甚至180天客戶的留存率;因此,如何以最具性價比的方式長期存儲海量數(shù)據(jù)是需要重點考慮的問題。要有夠用的分析能力,且具備可擴展性。許多情況下,用戶行為體現(xiàn)在埋點數(shù)據(jù)中,埋點數(shù)據(jù)又需要與用戶注冊信息、登陸信息、賬單等結(jié)構(gòu)化數(shù)據(jù)關(guān)聯(lián)分析;因此,在數(shù)據(jù)分析上,至少需要有大數(shù)據(jù)的ETL能力、異構(gòu)數(shù)據(jù)源的接入能力和復(fù)雜分析的建模能力。要與公司現(xiàn)有技術(shù)棧相匹配,且后續(xù)利于招聘。對于YJ,其在技術(shù)選型的時候一個重要點就是其技術(shù)人員的技術(shù)棧,YJ的技術(shù)團隊大部分只熟悉傳統(tǒng)的數(shù)據(jù)庫開發(fā),即MySQL;并且人手緊張,做數(shù)據(jù)運營分析的技術(shù)人員只有1個,短時間內(nèi)根本沒有能力獨立構(gòu)建大數(shù)據(jù)分析的基礎(chǔ)設(shè)施。從YJ的角度出發(fā),最好絕大多數(shù)分析能夠通過SQL完成;并且在招聘市場上,SQL開發(fā)人員的數(shù)量也遠高于大數(shù)據(jù)開發(fā)工程師的數(shù)量。針對客戶的情況,我們幫助客戶對現(xiàn)有方案做了改造。

  圖18. 改造前的方案

  改造前,客戶所有的結(jié)構(gòu)化數(shù)據(jù)都在一個高規(guī)格的MySQL里面;而玩家行為數(shù)據(jù)則是通過LogTail采集至日志服務(wù)(SLS)中,然后從日志服務(wù)中分別投遞到OSS和ES里。這個架構(gòu)的問題在于:

  行為數(shù)據(jù)和結(jié)構(gòu)化數(shù)據(jù)完全割裂,無法聯(lián)動分析;對于行為數(shù)據(jù)智能提供檢索功能,無法做深層次的挖掘分析;OSS僅僅作為數(shù)據(jù)存儲資源使用,并沒有挖掘出足夠的數(shù)據(jù)價值。

  事實上,我們分析客戶現(xiàn)存架構(gòu)其實已經(jīng)具備了數(shù)據(jù)湖的雛形:全量數(shù)據(jù)已經(jīng)在OSS中保存下來了,現(xiàn)在需要進一步補齊客戶對于OSS中的數(shù)據(jù)的分析能力。而且數(shù)據(jù)湖基于SQL的數(shù)據(jù)處理模式也滿足客戶對于開發(fā)技術(shù)棧的需求。綜上,我們對客戶的架構(gòu)做了如下調(diào)整,幫助客戶構(gòu)建了數(shù)據(jù)湖。

  圖19. 改造后的數(shù)據(jù)湖解決方案

  總體上,我們沒有改變客戶的數(shù)據(jù)鏈路流轉(zhuǎn),只是在OSS的基礎(chǔ)上,增加了DLA組件,對OSS的數(shù)據(jù)進行二次加工處理。DLA提供了標準SQL計算引擎,同時支持接入各類異構(gòu)數(shù)據(jù)源?;贒LA對OSS的數(shù)據(jù)進行處理后,生成業(yè)務(wù)直接可用的數(shù)據(jù)。但是DLA的問題在于無法支撐低延遲需求的交互式分析場景,為了解決這個問題,我們引入了云原生數(shù)據(jù)倉庫ADB來解決交互式分析的延遲性問題;同時,在最前端引入QuickBI作為客戶的可視化分析工具。YJ方案是圖14所示的湖倉一體化解決方案在游戲行業(yè)的一個經(jīng)典落地案例。

  YM是一家數(shù)據(jù)智能服務(wù)提供商,面向各類中小商家提供一系列數(shù)據(jù)分析運營服務(wù)。具體實現(xiàn)的技術(shù)邏輯如下圖所示。

  圖20. YM智能數(shù)據(jù)服務(wù)SaaS模式示意

  平臺方提供多端SDK供用戶(商家提供網(wǎng)頁、APP、小程序等多種接入形式)接入各類埋點數(shù)據(jù),平臺方以SaaS的形式提供統(tǒng)一的數(shù)據(jù)接入服務(wù)和數(shù)據(jù)分析服務(wù)。商家通過訪問各類數(shù)據(jù)分析服務(wù)來進行更細粒度的埋點數(shù)據(jù)分析,完成行為統(tǒng)計、客戶畫像、客戶圈選、廣告投放監(jiān)測等基本分析功能。然而,這種SaaS模式下,會存在一定的問題:

  由于商家類型和需求的多樣化,平臺提供SaaS類分析功能很難覆蓋所有類型的商家,無法滿足商家的定制化需求;如有些商家關(guān)注銷量,有些關(guān)注客戶運營,有些關(guān)注成本優(yōu)化,很難滿足所有的需求。對于一些高級分析功能,如依賴于自定義標簽的客戶圈選、客戶自定義擴展等功能,統(tǒng)一的數(shù)據(jù)分析服務(wù)無法滿足的;特別是一些自定義的標簽依賴于商家自定義的算法,無法滿足客戶的高級分析需求。數(shù)據(jù)的資產(chǎn)化管理需求。在大數(shù)據(jù)時代,數(shù)據(jù)是一個企業(yè)/組織的資產(chǎn)已經(jīng)成為了大家的共識,如何能讓屬于商家的數(shù)據(jù)合理、長期的沉淀下來,也是SaaS服務(wù)需要考慮的事情。

  綜上,我們在上圖的基本模式上引入了數(shù)據(jù)湖模式,讓數(shù)據(jù)湖作為商家沉淀數(shù)據(jù)、產(chǎn)出模型、分析運營的基礎(chǔ)支撐設(shè)施。引入數(shù)據(jù)湖后的SaaS數(shù)據(jù)智能服務(wù)模式如下。

  圖21. 基于數(shù)據(jù)湖的數(shù)據(jù)智能服務(wù)

  如圖21所示,平臺方為每個用戶提供一鍵建湖服務(wù),商家使用該功能構(gòu)建自己的數(shù)據(jù)湖,“一鍵建湖”能力一方面幫助商家將所有埋點數(shù)據(jù)的數(shù)據(jù)模型(schema)同步至數(shù)據(jù)湖中;另一方面,將屬于該商家的所有埋點數(shù)據(jù)全量同步至數(shù)據(jù)湖中,并基于“T+1”的模式,將每天的增量數(shù)據(jù)歸檔入湖?;跀?shù)據(jù)湖的服務(wù)模式在傳統(tǒng)的數(shù)據(jù)分析服務(wù)的基礎(chǔ)上,賦予了用戶數(shù)據(jù)資產(chǎn)化、分析模型化和服務(wù)定制化三大能力:

  數(shù)據(jù)資產(chǎn)化能力。利用數(shù)據(jù)湖,商家可以將屬于自己的數(shù)據(jù)持續(xù)沉淀下來,保存多長時間的數(shù)據(jù),耗費多少成本,完全由商家自主決定。數(shù)據(jù)湖還提供了數(shù)據(jù)資產(chǎn)管理能力,商家除了能管理原始數(shù)據(jù)外,還能將處理過的過程數(shù)據(jù)和結(jié)果數(shù)據(jù)分門別類保存,極大的提升了埋點數(shù)據(jù)的價值。分析模型化能力。數(shù)據(jù)湖中不僅僅有原始數(shù)據(jù),還有埋點數(shù)據(jù)的模型(schema)。埋點數(shù)據(jù)模型體現(xiàn)了全域數(shù)據(jù)智能服務(wù)平臺對于業(yè)務(wù)邏輯的抽象,通過數(shù)據(jù)湖,除了將原始數(shù)據(jù)作為資產(chǎn)輸出外,還將數(shù)據(jù)模型進行了輸出,借助埋點數(shù)據(jù)模型,商家可以更深入的理解埋點數(shù)據(jù)背后所體現(xiàn)的用戶行為邏輯,幫助商家更好的洞察客戶行為,獲取用戶需求。服務(wù)定制化能力。借助數(shù)據(jù)湖提供的數(shù)據(jù)集成和數(shù)據(jù)開發(fā)能力,基于對埋點數(shù)據(jù)模型的理解,商家可以定制數(shù)據(jù)處理過程,不斷對原始數(shù)據(jù)進行迭代加工,從數(shù)據(jù)中提煉有價值的信息,最終獲得超越原有數(shù)據(jù)分析服務(wù)的價值。

  六、數(shù)據(jù)湖建設(shè)的基本過程

  個人認為數(shù)據(jù)湖是比傳統(tǒng)大數(shù)據(jù)平臺更為完善的大數(shù)據(jù)處理基礎(chǔ)支撐設(shè)施,完善在數(shù)據(jù)湖是更貼近客戶業(yè)務(wù)的技術(shù)存在。所有數(shù)據(jù)湖所包括的、且超出大數(shù)據(jù)平臺存在的特性,例如元數(shù)據(jù)、數(shù)據(jù)資產(chǎn)目錄、權(quán)限管理、數(shù)據(jù)生命周期管理、數(shù)據(jù)集成和數(shù)據(jù)開發(fā)、數(shù)據(jù)治理和質(zhì)量管理等,無一不是為了更好的貼近業(yè)務(wù),更好的方便客戶使用。數(shù)據(jù)湖所強調(diào)的一些基本的技術(shù)特性,例如彈性、存儲計算獨立擴展、統(tǒng)一的存儲引擎、多模式計算引擎等等,也是為了滿足業(yè)務(wù)需求,并且給業(yè)務(wù)方提供最具性價比的TCO。

  數(shù)據(jù)湖的建設(shè)過程應(yīng)該與業(yè)務(wù)緊密結(jié)合;但是數(shù)據(jù)湖的建設(shè)過程與傳統(tǒng)的數(shù)據(jù)倉庫,甚至是大熱的數(shù)據(jù)中臺應(yīng)該是有所區(qū)別的。區(qū)別在于,數(shù)據(jù)湖應(yīng)該以一種更敏捷的方式去構(gòu)建,“邊建邊用,邊用邊治理”。為了更好的理解數(shù)據(jù)湖建設(shè)的敏捷性,我們先來看一下傳統(tǒng)數(shù)倉的構(gòu)建過程。業(yè)界對于傳統(tǒng)數(shù)倉的構(gòu)建提出了“自下而上”和“自頂而下”兩種模式,分別由Inmon和KimBall兩位大牛提出。具體的過程就不詳述了,不然可以再寫出幾百頁,這里只簡單闡述基本思想。

  Inmon提出自下而上(EDW-DM)的數(shù)據(jù)倉庫建設(shè)模式,即操作型或事務(wù)型系統(tǒng)的數(shù)據(jù)源,通過ETL抽取轉(zhuǎn)換和加載到數(shù)據(jù)倉庫的ODS層。ODS層中的數(shù)據(jù),根據(jù)預(yù)先設(shè)計好的EDW(企業(yè)級數(shù)據(jù)倉庫)范式進行加工處理,然后進入到EDW。EDW一般是企業(yè)/組織的通用數(shù)據(jù)模型,不方便上層應(yīng)用直接做數(shù)據(jù)分析。因此,各個業(yè)務(wù)部門會再次根據(jù)自己的需要,從EDW中處理出數(shù)據(jù)集市層(DM)。

  優(yōu)勢:易于維護,高度集成;劣勢:結(jié)構(gòu)一旦確定,靈活性不足,且為了適應(yīng)業(yè)務(wù),部署周期較長。此類方式構(gòu)造的數(shù)倉,適合于比較成熟穩(wěn)定的業(yè)務(wù),例如金融。

  KimBall提出自頂而下(DM-DW)的數(shù)據(jù)架構(gòu),通過將操作型或事務(wù)型系統(tǒng)的數(shù)據(jù)源,抽取或加載到ODS層。然后通過ODS的數(shù)據(jù),利用維度建模方法建設(shè)多維主題數(shù)據(jù)集市(DM)。各個DM,通過一致性的維度聯(lián)系在一起,最終形成企業(yè)/組織通用的數(shù)據(jù)倉庫。

  優(yōu)勢:構(gòu)建迅速,最快的看到投資回報率,敏捷靈活;劣勢:作為企業(yè)資源不太好維護,結(jié)構(gòu)復(fù)雜,數(shù)據(jù)集市集成困難。常應(yīng)用于中小企業(yè)或互聯(lián)網(wǎng)行業(yè)。

  其實上述只是一個理論上的過程,其實無論是先構(gòu)造EDW,還是先構(gòu)造DM,都離不開對于數(shù)據(jù)的摸底,以及在數(shù)倉構(gòu)建之前的數(shù)據(jù)模型的設(shè)計,包括當(dāng)前大熱的“數(shù)據(jù)中臺”,都逃不出下圖所示的基本建設(shè)過程。

  圖22. 數(shù)據(jù)倉庫/數(shù)據(jù)中臺建設(shè)基本流程

  數(shù)據(jù)摸底。對于一個企業(yè)/組織而言,在構(gòu)建數(shù)據(jù)湖初始工作就是對自己企業(yè)/組織內(nèi)部的數(shù)據(jù)做一個全面的摸底和調(diào)研,包括數(shù)據(jù)來源、數(shù)據(jù)類型、數(shù)據(jù)形態(tài)、數(shù)據(jù)模式、數(shù)據(jù)總量、數(shù)據(jù)增量等。在這個階段一個隱含的重要工作是借助數(shù)據(jù)摸底工作,進一步梳理企業(yè)的組織結(jié)構(gòu),明確數(shù)據(jù)和組織結(jié)構(gòu)之間關(guān)系。為后續(xù)明確數(shù)據(jù)湖的用戶角色、權(quán)限設(shè)計、服務(wù)方式奠定基礎(chǔ)。模型抽象。針對企業(yè)/組織的業(yè)務(wù)特點梳理歸類各類數(shù)據(jù),對數(shù)據(jù)進行領(lǐng)域劃分,形成數(shù)據(jù)管理的元數(shù)據(jù),同時基于元數(shù)據(jù),構(gòu)建通用的數(shù)據(jù)模型。數(shù)據(jù)接入。根據(jù)第一步的摸排結(jié)果,確定要接入的數(shù)據(jù)源。根據(jù)數(shù)據(jù)源,確定所必須的數(shù)據(jù)接入技術(shù)能力,完成數(shù)據(jù)接入技術(shù)選型,接入的數(shù)據(jù)至少包括:數(shù)據(jù)源元數(shù)據(jù)、原始數(shù)據(jù)元數(shù)據(jù)、原始數(shù)據(jù)。各類數(shù)據(jù)按照第二步形成的結(jié)果,分類存放。融合治理。簡單來說就是利用數(shù)據(jù)湖提供的各類計算引擎對數(shù)據(jù)進行加工處理,形成各類中間數(shù)據(jù)/結(jié)果數(shù)據(jù),并妥善管理保存。數(shù)據(jù)湖應(yīng)該具備完善的數(shù)據(jù)開發(fā)、任務(wù)管理、任務(wù)調(diào)度的能力,詳細記錄數(shù)據(jù)的處理過程。在治理的過程中,會需要更多的數(shù)據(jù)模型和指標模型。業(yè)務(wù)支撐。在通用模型基礎(chǔ)上,各個業(yè)務(wù)部門定制自己的細化數(shù)據(jù)模型、數(shù)據(jù)使用流程、數(shù)據(jù)訪問服務(wù)。

  上述過程,對于一個快速成長的互聯(lián)網(wǎng)企業(yè)來說,太重了,很多情況下是無法落地的,最現(xiàn)實的問題就是第二步模型抽象,很多情況下,業(yè)務(wù)是在試錯、在探索,根本不清楚未來的方向在哪里,也就根本不可能提煉出通用的數(shù)據(jù)模型;沒有數(shù)據(jù)模型,后面的一切操作也就無從談起,這也是很多高速成長的企業(yè)覺得數(shù)據(jù)倉庫/數(shù)據(jù)中臺無法落地、無法滿足需求的重要原因之一。

  數(shù)據(jù)湖應(yīng)該是一種更為“敏捷”的構(gòu)建方式,我們建議采用如下步驟來構(gòu)建數(shù)據(jù)湖。

  圖23. 數(shù)據(jù)湖建設(shè)基本流程

  對比圖22,依然是五步,但是這五步是一個全面的簡化和“可落地”的改進。

  數(shù)據(jù)摸底。依然需要摸清楚數(shù)據(jù)的基本情況,包括數(shù)據(jù)來源、數(shù)據(jù)類型、數(shù)據(jù)形態(tài)、數(shù)據(jù)模式、數(shù)據(jù)總量、數(shù)據(jù)增量。但是,也就需要做這么多了。數(shù)據(jù)湖是對原始數(shù)據(jù)做全量保存,因此無需事先進行深層次的設(shè)計。技術(shù)選型。根據(jù)數(shù)據(jù)摸底的情況,確定數(shù)據(jù)湖建設(shè)的技術(shù)選型。事實上,這一步也非常的簡單,因為關(guān)于數(shù)據(jù)湖的技術(shù)選型,業(yè)界有很多的通行的做法,基本原則個人建議有三個:“計算與存儲分離”、“彈性”、“獨立擴展”。建議的存儲選型是分布式對象存儲系統(tǒng)(如S3/OSS/OBS);計算引擎上建議重點考慮批處理需求和SQL處理能力,因為在實踐中,這兩類能力是數(shù)據(jù)處理的關(guān)鍵,關(guān)于流計算引擎后面會再討論一下。無論是計算還是存儲,建議優(yōu)先考慮serverless的形式;后續(xù)可以在應(yīng)用中逐步演進,真的需要獨立資源池了,再考慮構(gòu)建專屬集群。數(shù)據(jù)接入。確定要接入的數(shù)據(jù)源,完成數(shù)據(jù)的全量抽取與增量接入。應(yīng)用治理。這一步是數(shù)據(jù)湖的關(guān)鍵,我個人把“融合治理”改成了“應(yīng)用治理”。從數(shù)據(jù)湖的角度來看,數(shù)據(jù)應(yīng)用和數(shù)據(jù)治理應(yīng)該是相互融合、密不可分的。從數(shù)據(jù)應(yīng)用入手,在應(yīng)用中明確需求,在數(shù)據(jù)ETL的過程中,逐步形成業(yè)務(wù)可使用的數(shù)據(jù);同時形成數(shù)據(jù)模型、指標體系和對應(yīng)的質(zhì)量標準。數(shù)據(jù)湖強調(diào)對原始數(shù)據(jù)的存儲,強調(diào)對數(shù)據(jù)的探索式分析與應(yīng)用,但這絕對不是說數(shù)據(jù)湖不需要數(shù)據(jù)模型;恰恰相反,對業(yè)務(wù)的理解與抽象,將極大的推動數(shù)據(jù)湖的發(fā)展與應(yīng)用,數(shù)據(jù)湖技術(shù)使得數(shù)據(jù)的處理與建模,保留了極大的敏捷性,能快速適應(yīng)業(yè)務(wù)的發(fā)展與變化。

  從技術(shù)視角來看,數(shù)據(jù)湖不同于大數(shù)據(jù)平臺還在于數(shù)據(jù)湖為了支撐數(shù)據(jù)的全生命周期管理與應(yīng)用,需要具備相對完善的數(shù)據(jù)管理、類目管理、流程編排、任務(wù)調(diào)度、數(shù)據(jù)溯源、數(shù)據(jù)治理、質(zhì)量管理、權(quán)限管理等能力。在計算能力上,目前主流的數(shù)據(jù)湖方案都支持SQL和可編程的批處理兩種模式(對機器學(xué)習(xí)的支持,可以采用Spark或者Flink的內(nèi)置能力);在處理范式上,幾乎都采用基于有向無環(huán)圖的工作流的模式,并提供了對應(yīng)的集成開發(fā)環(huán)境。對于流式計算的支持,目前各個數(shù)據(jù)湖解決方案采取了不同的方式。在討論具體的方式之前,我們先對流計算做一個分類:

  模式一:實時模式。這種流計算模式相當(dāng)于對數(shù)據(jù)采用“來一條處理一條”/“微批”的方式進行處理;多見于在線業(yè)務(wù),如風(fēng)控、推薦、預(yù)警等。模式二:類流式。這種模式需要獲取指定時間點之后變化的數(shù)據(jù)/讀取某一個版本的數(shù)據(jù)/讀取當(dāng)前的最新數(shù)據(jù)等,是一種類流式的模式;多見于數(shù)據(jù)探索類應(yīng)用,如分析某一時間段內(nèi)的日活、留存、轉(zhuǎn)化等。

  二者的本質(zhì)不同在于,模式一處理數(shù)據(jù)時,數(shù)據(jù)往往還沒有存儲到數(shù)據(jù)湖中,僅僅是在網(wǎng)路/內(nèi)存中流動;模式二處理數(shù)據(jù)時,數(shù)據(jù)已經(jīng)存儲到數(shù)據(jù)湖中了。綜上,我個人建議采用如下圖模式:

  圖24 數(shù)據(jù)湖數(shù)據(jù)流向示意圖

  如圖24所示,在需要數(shù)據(jù)湖具備模式一的處理能力時,還是應(yīng)該引入類Kafka中間件,作為數(shù)據(jù)轉(zhuǎn)發(fā)的基礎(chǔ)設(shè)施。完整的數(shù)據(jù)湖解決方案方案應(yīng)該提供將原始數(shù)據(jù)導(dǎo)流至Kafka的能力。流式引擎具備從類Kafka組件中讀取數(shù)據(jù)的能力。流式計算引擎在處理數(shù)據(jù)過后,根據(jù)需要,可以將結(jié)果寫入OSS/RDBMS/NoSQL/DW,供應(yīng)用訪問。某種意義上,模式一的流計算引擎并非一定要作為數(shù)據(jù)湖不可分割的一部分存在,只需要在應(yīng)用需要時,能夠方便的引入即可。但是,這里需要指出的是:

  流式引擎依然需要能夠很方便的讀取數(shù)據(jù)湖的元數(shù)據(jù);流式引擎任務(wù)也需要統(tǒng)一的納入數(shù)據(jù)湖的任務(wù)管理;流式處理任務(wù)依然需要納入到統(tǒng)一的權(quán)限管理中。

  對于模式二,本質(zhì)上更接近于批處理?,F(xiàn)在許多經(jīng)典的大數(shù)據(jù)組件已經(jīng)提供了支持方式,如HUDI/IceBerg/Delta等,均支持Spark、Presto等經(jīng)典的計算引擎。以HUDI為例,通過支持特殊類型的表(COW/MOR),提供訪問快照數(shù)據(jù)(指定版本)、增量數(shù)據(jù)、準實時數(shù)據(jù)的能力。目前AWS、騰訊等已經(jīng)將HUDI集成到了其EMR服務(wù)中,阿里云的DLA也正在計劃推出DLA on HUDI的能力。

  讓我們再回到本文開頭的第一章,我們說過,數(shù)據(jù)湖的主要用戶是數(shù)據(jù)科學(xué)家和數(shù)據(jù)分析師,探索式分析和機器學(xué)習(xí)是這類人群的常見操作;流式計算(實時模式)多用于在線業(yè)務(wù),嚴格來看,并非數(shù)據(jù)湖目標用戶的剛需。但是,流式計算(實時模式)是目前大多數(shù)互聯(lián)網(wǎng)公司在線業(yè)務(wù)的重要組成部分,而數(shù)據(jù)湖作為企業(yè)/組織內(nèi)部的數(shù)據(jù)集中存放地,需要在架構(gòu)上保持一定的擴展能力,可以很方便的進行擴展,整合流式計算能力。

  業(yè)務(wù)支撐。雖然大多數(shù)數(shù)據(jù)湖解決方案都對外提供標準的訪問接口,如JDBC,市面上流行的各類BI報表工具、大屏工具也都可以直接訪問數(shù)據(jù)湖中的數(shù)據(jù)。但是在實際的應(yīng)用中,我們還是建議將數(shù)據(jù)湖處理好的數(shù)據(jù)推送到對應(yīng)的各類支持在線業(yè)務(wù)的數(shù)據(jù)引擎中去,能夠讓應(yīng)用有更好的體驗。

  七、總結(jié)

  數(shù)據(jù)湖作為新一代大數(shù)據(jù)分析處理的基礎(chǔ)設(shè)施,需要超越傳統(tǒng)的大數(shù)據(jù)平臺。個人認為目前在以下方面,是數(shù)據(jù)湖解決方案未來可能的發(fā)展方向。

  1、云原生架構(gòu)。關(guān)于什么是云原生架構(gòu),眾說紛紜,很難找到統(tǒng)一的定義。但是具體到數(shù)據(jù)湖這個場景,個人認為就是以下三點特征:

 ?。?)存儲和計算分離,計算能力和存儲能力均可獨立擴展;

 ?。?)多模態(tài)計算引擎支持,SQL、批處理、流式計算、機器學(xué)習(xí)等;

 ?。?)提供serverless態(tài)服務(wù),確保足夠的彈性以及支持按需付費。

  2、足夠用的數(shù)據(jù)管理能力。數(shù)據(jù)湖需要提供更為強大的數(shù)據(jù)管理能力,包括但不限于數(shù)據(jù)源管理、數(shù)據(jù)類目管理、處理流程編排、任務(wù)調(diào)度、數(shù)據(jù)溯源、數(shù)據(jù)治理、質(zhì)量管理、權(quán)限管理等。

  3、大數(shù)據(jù)的能力,數(shù)據(jù)庫的體驗。目前絕大多數(shù)數(shù)據(jù)分析人員都只有數(shù)據(jù)庫的使用經(jīng)驗,大數(shù)據(jù)平臺的能力雖強,但是對于用戶來說并不友好,數(shù)據(jù)科學(xué)家和數(shù)據(jù)數(shù)據(jù)分析師應(yīng)該關(guān)注數(shù)據(jù)、算法、模型及其與業(yè)務(wù)場景的適配,而不是花大量的時間精力去學(xué)習(xí)大數(shù)據(jù)平臺的開發(fā)。數(shù)據(jù)湖要想快速發(fā)展,如何為用戶提供良好的使用體驗是關(guān)鍵。基于SQL的數(shù)據(jù)庫應(yīng)用開發(fā)已經(jīng)深入人心,如何將數(shù)據(jù)湖的能力通過SQL的形式釋放出來,是未來的一個主要方向。

  4、完善的數(shù)據(jù)集成與數(shù)據(jù)開發(fā)能力。對各種異構(gòu)數(shù)據(jù)源的管理與支持,對異構(gòu)數(shù)據(jù)的全量/增量遷移支持,對各種數(shù)據(jù)格式的支持都是需要不斷完善的方向。同時,需要具備一個完備的、可視化的、可擴展的集成開發(fā)環(huán)境。

  5、與業(yè)務(wù)的深度融合與集成。典型數(shù)據(jù)湖架構(gòu)的構(gòu)成基本已經(jīng)成為了業(yè)界共識:分布式對象存儲+多模態(tài)計算引擎+數(shù)據(jù)管理。決定數(shù)據(jù)湖方案是否勝出的關(guān)鍵恰恰在于數(shù)據(jù)管理,無論是原始數(shù)據(jù)的管理、數(shù)據(jù)類目的管理、數(shù)據(jù)模型的管理、數(shù)據(jù)權(quán)限的管理還是處理任務(wù)的管理,都離不開與業(yè)務(wù)的適配和集成;未來,會有越來越多的行業(yè)數(shù)據(jù)湖解決方案涌現(xiàn)出來,與數(shù)據(jù)科學(xué)家和數(shù)據(jù)分析師形成良性發(fā)展與互動。如何在數(shù)據(jù)湖解決方案中預(yù)置行業(yè)數(shù)據(jù)模型、ETL流程、分析模型和定制算法,可能是未來數(shù)據(jù)湖領(lǐng)域差異化競爭的一個關(guān)鍵點。
趙同學(xué)
分享到朋友圈
收藏
收藏
評分

綜合評分:

我的評分
Xinstall 15天會員特權(quán)
Xinstall是專業(yè)的數(shù)據(jù)分析服務(wù)商,幫企業(yè)追蹤渠道安裝來源、裂變拉新統(tǒng)計、廣告流量指導(dǎo)等,廣泛應(yīng)用于廣告效果統(tǒng)計、APP地推與CPS/CPA歸屬統(tǒng)計等方面。
20羽毛
立即兌換
一書一課30天會員體驗卡
領(lǐng)30天VIP會員,110+門職場大課,250+本精讀好書免費學(xué)!助你提升職場力!
20羽毛
立即兌換
順豐同城急送全國通用20元優(yōu)惠券
順豐同城急送是順豐推出的平均1小時送全城的即時快送服務(wù),專業(yè)安全,準時送達!
30羽毛
立即兌換
趙同學(xué)
趙同學(xué)
發(fā)表文章6504
確認要消耗 羽毛購買
數(shù)據(jù)湖運營(最全的各大廠的數(shù)據(jù)湖解決方案)嗎?
考慮一下
很遺憾,羽毛不足
我知道了

我們致力于提供一個高質(zhì)量內(nèi)容的交流平臺。為落實國家互聯(lián)網(wǎng)信息辦公室“依法管網(wǎng)、依法辦網(wǎng)、依法上網(wǎng)”的要求,為完善跟帖評論自律管理,為了保護用戶創(chuàng)造的內(nèi)容、維護開放、真實、專業(yè)的平臺氛圍,我們團隊將依據(jù)本公約中的條款對注冊用戶和發(fā)布在本平臺的內(nèi)容進行管理。平臺鼓勵用戶創(chuàng)作、發(fā)布優(yōu)質(zhì)內(nèi)容,同時也將采取必要措施管理違法、侵權(quán)或有其他不良影響的網(wǎng)絡(luò)信息。


一、根據(jù)《網(wǎng)絡(luò)信息內(nèi)容生態(tài)治理規(guī)定》《中華人民共和國未成年人保護法》等法律法規(guī),對以下違法、不良信息或存在危害的行為進行處理。
1. 違反法律法規(guī)的信息,主要表現(xiàn)為:
    1)反對憲法所確定的基本原則;
    2)危害國家安全,泄露國家秘密,顛覆國家政權(quán),破壞國家統(tǒng)一,損害國家榮譽和利益;
    3)侮辱、濫用英烈形象,歪曲、丑化、褻瀆、否定英雄烈士事跡和精神,以侮辱、誹謗或者其他方式侵害英雄烈士的姓名、肖像、名譽、榮譽;
    4)宣揚恐怖主義、極端主義或者煽動實施恐怖活動、極端主義活動;
    5)煽動民族仇恨、民族歧視,破壞民族團結(jié);
    6)破壞國家宗教政策,宣揚邪教和封建迷信;
    7)散布謠言,擾亂社會秩序,破壞社會穩(wěn)定;
    8)宣揚淫穢、色情、賭博、暴力、兇殺、恐怖或者教唆犯罪;
    9)煽動非法集會、結(jié)社、游行、示威、聚眾擾亂社會秩序;
    10)侮辱或者誹謗他人,侵害他人名譽、隱私和其他合法權(quán)益;
    11)通過網(wǎng)絡(luò)以文字、圖片、音視頻等形式,對未成年人實施侮辱、誹謗、威脅或者惡意損害未成年人形象進行網(wǎng)絡(luò)欺凌的;
    12)危害未成年人身心健康的;
    13)含有法律、行政法規(guī)禁止的其他內(nèi)容;


2. 不友善:不尊重用戶及其所貢獻內(nèi)容的信息或行為。主要表現(xiàn)為:
    1)輕蔑:貶低、輕視他人及其勞動成果;
    2)誹謗:捏造、散布虛假事實,損害他人名譽;
    3)嘲諷:以比喻、夸張、侮辱性的手法對他人或其行為進行揭露或描述,以此來激怒他人;
    4)挑釁:以不友好的方式激怒他人,意圖使對方對自己的言論作出回應(yīng),蓄意制造事端;
    5)羞辱:貶低他人的能力、行為、生理或身份特征,讓對方難堪;
    6)謾罵:以不文明的語言對他人進行負面評價;
    7)歧視:煽動人群歧視、地域歧視等,針對他人的民族、種族、宗教、性取向、性別、年齡、地域、生理特征等身份或者歸類的攻擊;
    8)威脅:許諾以不良的后果來迫使他人服從自己的意志;


3. 發(fā)布垃圾廣告信息:以推廣曝光為目的,發(fā)布影響用戶體驗、擾亂本網(wǎng)站秩序的內(nèi)容,或進行相關(guān)行為。主要表現(xiàn)為:
    1)多次發(fā)布包含售賣產(chǎn)品、提供服務(wù)、宣傳推廣內(nèi)容的垃圾廣告。包括但不限于以下幾種形式:
    2)單個帳號多次發(fā)布包含垃圾廣告的內(nèi)容;
    3)多個廣告帳號互相配合發(fā)布、傳播包含垃圾廣告的內(nèi)容;
    4)多次發(fā)布包含欺騙性外鏈的內(nèi)容,如未注明的淘寶客鏈接、跳轉(zhuǎn)網(wǎng)站等,誘騙用戶點擊鏈接
    5)發(fā)布大量包含推廣鏈接、產(chǎn)品、品牌等內(nèi)容獲取搜索引擎中的不正當(dāng)曝光;
    6)購買或出售帳號之間虛假地互動,發(fā)布干擾網(wǎng)站秩序的推廣內(nèi)容及相關(guān)交易。
    7)發(fā)布包含欺騙性的惡意營銷內(nèi)容,如通過偽造經(jīng)歷、冒充他人等方式進行惡意營銷;
    8)使用特殊符號、圖片等方式規(guī)避垃圾廣告內(nèi)容審核的廣告內(nèi)容。


4. 色情低俗信息,主要表現(xiàn)為:
    1)包含自己或他人性經(jīng)驗的細節(jié)描述或露骨的感受描述;
    2)涉及色情段子、兩性笑話的低俗內(nèi)容;
    3)配圖、頭圖中包含庸俗或挑逗性圖片的內(nèi)容;
    4)帶有性暗示、性挑逗等易使人產(chǎn)生性聯(lián)想;
    5)展現(xiàn)血腥、驚悚、殘忍等致人身心不適;
    6)炒作緋聞、丑聞、劣跡等;
    7)宣揚低俗、庸俗、媚俗內(nèi)容。


5. 不實信息,主要表現(xiàn)為:
    1)可能存在事實性錯誤或者造謠等內(nèi)容;
    2)存在事實夸大、偽造虛假經(jīng)歷等誤導(dǎo)他人的內(nèi)容;
    3)偽造身份、冒充他人,通過頭像、用戶名等個人信息暗示自己具有特定身份,或與特定機構(gòu)或個人存在關(guān)聯(lián)。


6. 傳播封建迷信,主要表現(xiàn)為:
    1)找人算命、測字、占卜、解夢、化解厄運、使用迷信方式治??;
    2)求推薦算命看相大師;
    3)針對具體風(fēng)水等問題進行求助或咨詢;
    4)問自己或他人的八字、六爻、星盤、手相、面相、五行缺失,包括通過占卜方法問婚姻、前程、運勢,東西寵物丟了能不能找回、取名改名等;


7. 文章標題黨,主要表現(xiàn)為:
    1)以各種夸張、獵奇、不合常理的表現(xiàn)手法等行為來誘導(dǎo)用戶;
    2)內(nèi)容與標題之間存在嚴重不實或者原意扭曲;
    3)使用夸張標題,內(nèi)容與標題嚴重不符的。


8.「飯圈」亂象行為,主要表現(xiàn)為:
    1)誘導(dǎo)未成年人應(yīng)援集資、高額消費、投票打榜
    2)粉絲互撕謾罵、拉踩引戰(zhàn)、造謠攻擊、人肉搜索、侵犯隱私
    3)鼓動「飯圈」粉絲攀比炫富、奢靡享樂等行為
    4)以號召粉絲、雇用網(wǎng)絡(luò)水軍、「養(yǎng)號」形式刷量控評等行為
    5)通過「蹭熱點」、制造話題等形式干擾輿論,影響傳播秩序


9. 其他危害行為或內(nèi)容,主要表現(xiàn)為:
    1)可能引發(fā)未成年人模仿不安全行為和違反社會公德行為、誘導(dǎo)未成年人不良嗜好影響未成年人身心健康的;
    2)不當(dāng)評述自然災(zāi)害、重大事故等災(zāi)難的;
    3)美化、粉飾侵略戰(zhàn)爭行為的;
    4)法律、行政法規(guī)禁止,或可能對網(wǎng)絡(luò)生態(tài)造成不良影響的其他內(nèi)容。


二、違規(guī)處罰
本網(wǎng)站通過主動發(fā)現(xiàn)和接受用戶舉報兩種方式收集違規(guī)行為信息。所有有意的降低內(nèi)容質(zhì)量、傷害平臺氛圍及欺凌未成年人或危害未成年人身心健康的行為都是不能容忍的。
當(dāng)一個用戶發(fā)布違規(guī)內(nèi)容時,本網(wǎng)站將依據(jù)相關(guān)用戶違規(guī)情節(jié)嚴重程度,對帳號進行禁言 1 天、7 天、15 天直至永久禁言或封停賬號的處罰。當(dāng)涉及欺凌未成年人、危害未成年人身心健康、通過作弊手段注冊、使用帳號,或者濫用多個帳號發(fā)布違規(guī)內(nèi)容時,本網(wǎng)站將加重處罰。


三、申訴
隨著平臺管理經(jīng)驗的不斷豐富,本網(wǎng)站出于維護本網(wǎng)站氛圍和秩序的目的,將不斷完善本公約。
如果本網(wǎng)站用戶對本網(wǎng)站基于本公約規(guī)定做出的處理有異議,可以通過「建議反饋」功能向本網(wǎng)站進行反饋。
(規(guī)則的最終解釋權(quán)歸屬本網(wǎng)站所有)

我知道了
恭喜你~答對了
+5羽毛
下一次認真讀哦
成功推薦給其他人
+ 10羽毛
評論成功且進入審核!審核通過后,您將獲得10羽毛的獎勵。分享本文章給好友閱讀最高再得15羽毛~
(羽毛可至 "羽毛精選" 兌換禮品)
好友微信掃一掃
復(fù)制鏈接