被繁雜的數(shù)據(jù)搞到頭大?讓Google Cloud大數(shù)據(jù)平臺幫你實現(xiàn)快準狠

來源: 谷歌開發(fā)者
作者:王利瑩
時間:2020-10-14
18202
數(shù)據(jù)價值比數(shù)據(jù)本身更值得關(guān)注,好的工具是業(yè)務的加速器。如何圍繞整個數(shù)據(jù)的生命周期,通過數(shù)據(jù)工具最快最準拿到我們想要的信息?本文內(nèi)容為Google Cloud數(shù)據(jù)分析客戶工程師Shirley Wang以及木瓜移動數(shù)據(jù)工程師Bin Wang的分享,解析Google Cloud數(shù)據(jù)分析平臺特點和木瓜移動在GCP(Google Cloud Platform)上的實踐。

數(shù)據(jù)價值比數(shù)據(jù)本身更值得關(guān)注,好的工具是業(yè)務的加速器。如何圍繞整個數(shù)據(jù)的生命周期,通過數(shù)據(jù)工具最快最準拿到我們想要的信息?這篇文章也許可以提供一些幫助。本篇文章來自于2019 Arch Summit全球架構(gòu)師峰會,Google Cloud數(shù)據(jù)分析客戶工程師Shirley Wang以及木瓜移動數(shù)據(jù)工程師Bin Wang的分享,解析Google Cloud數(shù)據(jù)分析平臺特點和木瓜移動在GCP(Google Cloud Platform)上的實踐。

Google 1999年成立,到2003年開始處理的數(shù)據(jù)規(guī)模已達到600億條,大數(shù)據(jù)已經(jīng)不是新的話題,今天,我們更關(guān)注數(shù)據(jù)價值而不是數(shù)據(jù)本身。

ia_4200000000.JPEG

“整合全世界的信息,讓它在全球可達,并且有用?!边@是Google成立之初的使命,也是多年來的努力踐行。當我們通過工具去做數(shù)據(jù)查詢和分析時,希望了解其背后代表的信息,甚至從中做商業(yè)決定。

Google在大數(shù)據(jù)領(lǐng)域的10年探索

2012年以前,如果想用Google大數(shù)據(jù)領(lǐng)域的技術(shù),更多是閱讀Google的論文,或者到Apache社區(qū)去下載這些開源的項目。2012年Google Cloud Platform平臺推出后,在GCP上就可以更便捷地使用這些數(shù)據(jù)服務。

ia_4200000001.JPEG

2004年,Google發(fā)表了一篇論文《MapReduce:Simplified Data Processing on Large Clusters》,提出了MapReduce框架,MapReduce涉及分解一系列簡單的Map和Reduce任務中的所有復雜操作,被用于解決大規(guī)模計算問題,這個階段中更關(guān)注的是把大批量數(shù)據(jù)分而治之,輸入的數(shù)據(jù)集被切分成獨立的塊,但是它也有難以實現(xiàn)實時流式計算等缺點。

2006年,雅虎員工發(fā)布了Apache Hadoop開源項目,MapReduce是其重要的組件,Hadoop允許開發(fā)人員構(gòu)建大規(guī)模MapReduce作業(yè),可以在大型商用機器集群中執(zhí)行,并且具有極強的彈性和可靠性,但是仍然有作業(yè)優(yōu)化、調(diào)度、可寫性等問題,Hadoop MapReduce作業(yè)略顯笨拙。

2010年,Google研究員撰寫了一篇名為《FlumeJava:Easy,Efficient Data-Parallel Pipelines》的論文,F(xiàn)lumeJava出現(xiàn),引入了一個框架用于組織、執(zhí)行和調(diào)試大規(guī)模的MapReduce作業(yè)管道,可以去管理MapReduce未管理到的問題,比如掉隊者的問題,優(yōu)化執(zhí)行計劃,使失敗的作業(yè)易于回滾而不是從頭開始,從而大大減少了MapReduce管道的執(zhí)行時間。

但是在現(xiàn)實業(yè)務中我們發(fā)現(xiàn)批量數(shù)據(jù)處理并不能完全滿足業(yè)務需求,我們希望能實時了解數(shù)據(jù)并且把它們納入到統(tǒng)計中,這時出現(xiàn)了Millwheel,實現(xiàn)處理實時數(shù)據(jù),一直發(fā)展到今天在GCP上的工具Dataflow集成了Flume、Millwheel等內(nèi)部技術(shù),實現(xiàn)同時用一套代碼解決數(shù)據(jù)實時和批量問題。

從論文到開源項目到平臺工具,Google所提供的服務一直遵循著如何讓客戶使用時更方便,更簡單,其背后的技術(shù)是復雜的,但是需要保證使用上是簡單的,GCP數(shù)據(jù)分析平臺希望能夠讓使用者更多的關(guān)注分析和洞察,其他如計算資源、存儲、數(shù)據(jù)何時做分區(qū)……這些都是GCP需要考慮的事。

GCP數(shù)據(jù)分析平臺助力業(yè)務提升

ia_4200000002.JPEG

Google在大數(shù)據(jù)領(lǐng)域成果頗豐,開放在GCP數(shù)據(jù)分析平臺上,為企業(yè)提供完整數(shù)據(jù)生命周期的管理,包括規(guī)?;瘮?shù)據(jù)注入、數(shù)據(jù)遷移過程中的處理、數(shù)據(jù)計算和存儲、到最后的高級分析預測、數(shù)據(jù)展示等。

在整個分享中,Shirley重點分享了3款工具產(chǎn)品:

數(shù)據(jù)注入-Cloud Pub/Sub

流式和批量數(shù)據(jù)處理-Cloud Dataflow

數(shù)據(jù)分析-BigQuery

Pub/Sub幫助連接應用與服務之間的實時消息

在數(shù)據(jù)注入的時候,往往會遇到數(shù)據(jù)被重復發(fā)送,出現(xiàn)數(shù)據(jù)延遲,或者發(fā)布者和接收者其中一方出了問題等這些異常情況,我們可能會選擇恢復數(shù)據(jù)或者刪除處理等方式。而實際上Google的Pub/Sub為解決這樣的情況提供了很多選擇。

Google Cloud Pub/Sub是Open API,是一個全托管、無運維、全球性的服務,對于對網(wǎng)絡連接重度依賴的應用,Pub/Sub可以依托Google的全球網(wǎng)絡,提供實時可靠的服務間消息聊天服務。在GCP平臺創(chuàng)建一個Pub/Sub實例的時候,用戶得到的入口是一個全球都可達的邊緣節(jié)點,不用在每個區(qū)域都設(shè)計流式處理的入口,使得Pub/Sub適用于服務全球的業(yè)務。Google稱其已在Snapchat以及Hangouts應用中支持這項技術(shù)。

消息的生命周期機制是Pub/Sub里面重要的概念,消息的消費機制,其實就是從發(fā)布者到接收者,需要一個介質(zhì)幫助傳遞信息和管理信息,以便我們想拿到的時候就能拿到,在Pub/Sub里,這個能力就叫做訂閱(Subscription),只有當用戶確認接收到消息的時候,這個消息才在訂閱里消失。

Pub/Sub可以設(shè)置deadline區(qū)間,從最低10s到最高600s,如果在deadline之前沒有收到ACK(確認字符),消息將被重新送入隊列。如果在所設(shè)置的區(qū)間內(nèi),接收者都沒有明確收到消息,消息將最多保存7天。

Dataflow保證流式和批量數(shù)據(jù)處理

在消息隊列里面,保證消息順序一直都是難題,比如游戲玩家突然斷網(wǎng),或者在網(wǎng)絡傳輸?shù)倪^程中,后發(fā)生的事件可能先傳送到了,這是Dataflow可以解決的問題。

Dataflow可以保證消息能夠及時準確按順序進入系統(tǒng),進入后對于數(shù)據(jù)做一定層面的聚合、去重或者數(shù)據(jù)質(zhì)量檢查、數(shù)據(jù)清洗等等ETL的工作,這里面不僅僅是流式數(shù)據(jù),也包含批量數(shù)據(jù)。數(shù)據(jù)在進入分析系統(tǒng)之前,Dataflow其實就是完成預處理的工作。

Dataflow擁有以下幾個特點全托管與自動配置自動圖形優(yōu)化以獲得最佳執(zhí)行路徑自動縮放-在Pipeline啟動中間,動態(tài)調(diào)整每一個stage應該分配多少個workernode動態(tài)工作平衡

BigQuery數(shù)據(jù)倉庫提供強大的查詢和存儲服務

BigQuery是企業(yè)級的數(shù)據(jù)倉庫,默認加密,從GB到TB級的存儲都是秒級交互式查詢,不管數(shù)據(jù)量多大,比如提交一個Job,可以隨時去看Job有沒有執(zhí)行完,是不是把結(jié)果放在了制定目標上。

BigQuery有以下特點:

無服務器,全托管

支持實時流數(shù)據(jù)——即使BigQuery沒有搭配Dataflow、Pub/Sub,仍然可以通過Google提供的API把實時數(shù)據(jù)放在倉庫

ia_4200000003.JPEG

內(nèi)嵌Machine Learning功能,在BigQuery可以通過SQL建模

基于內(nèi)存數(shù)據(jù)庫BI Engine加速報表生成——對于復雜大數(shù)據(jù)查詢情況下,是超高效的存儲介質(zhì)

BigQuery架構(gòu)同時BigQuery架構(gòu)是一個計算存儲分離的結(jié)構(gòu)。計算和存儲的分離帶來諸多好處,比如自動擴展,在復雜查詢場景下,當計算復雜,而涉及的數(shù)據(jù)并不多的時候,就分配更多的計算資源,當數(shù)據(jù)量特別大,但是計算相對簡單,甚至沒有任何計算只是把數(shù)據(jù)收集起來反饋給用戶的時候,就擴展更多的存儲資源。

而Google強大的網(wǎng)絡支撐,保證計算和存儲能夠協(xié)同工作,保證兩種資源分開后他們的交流也是非常高效,快速的。

BigQuery在木瓜移動的應用

木瓜移動專注于服務國內(nèi)企業(yè)出海,業(yè)務覆蓋游戲、應用、電商等行業(yè),數(shù)據(jù)服務上有很多Google Cloud數(shù)據(jù)產(chǎn)品應用經(jīng)驗,木瓜移動數(shù)據(jù)工程師Bin Wang主要分享了兩個案例。

游戲數(shù)據(jù)分析系統(tǒng)項目

木瓜移動游戲項目正在計劃遷到GCP,目前還沒有把數(shù)據(jù)全部放到GCP進行存儲和使用。但是在整個數(shù)據(jù)處理流程中有非常豐富的數(shù)據(jù)連接器,可以直接把數(shù)據(jù)放到BigQuery里面,在BigQuery里經(jīng)過Dataproc或者其他的工具進行清洗之后,直接把數(shù)據(jù)提供給一線的產(chǎn)品運營或者產(chǎn)品經(jīng)理,借助Data Studio探索更深的價值。

Data Studio這一工具可以幫助產(chǎn)品運營更好地產(chǎn)出分析報告,除了把數(shù)據(jù)放到BigQuery之前需要一些技術(shù)支持,在后面的分析完全不需要技術(shù),產(chǎn)品和運營人員隨時可以拿到數(shù)據(jù)進行探索,在業(yè)務操作上非常方便。

機器學習項目

對于機器學習項目來說,了解數(shù)據(jù)、分析數(shù)據(jù)是非常重要的,它是算法準確性的根基,將機器學習的項目放到GCP上,給了木瓜移動很多驚喜。首先數(shù)據(jù)收集到BigQuery,在數(shù)據(jù)分析和處理的時候,GCP提供了很多的工具,幫助算法工程師和分析工程師簡單快速地了解數(shù)據(jù),并且把分析過程記錄下來,可以進行重放,定期調(diào)度。

在機器學習項目中,做模型或者是進行訓練之前,往往要做很多特征計算的工作,包括數(shù)據(jù)特征的處理和選擇,將原始數(shù)據(jù)變成數(shù)據(jù)特征。

Bin Wang提到“之前我們的一些經(jīng)驗就是利用Spark加速計算過程,一般算法工程師把代碼寫好,再由專門開發(fā)的工程師對代碼進行優(yōu)化,跑在Spark上,如果出錯就得從頭來過,花費特別多的時間?,F(xiàn)在所有數(shù)據(jù)在BigQuery上,而BigQuery本身內(nèi)嵌Machine Learning功能,在BigQuery通過SQL建模,算法工程師寫出來的SQL就是工程可以利用的SQL,再進行后續(xù)數(shù)據(jù)輸出?!?/span>

在數(shù)據(jù)分析處理階段,還用到了Google Cloud Dataprep,在界面中每執(zhí)行一項操作,Dataprep都會自動建議和預測接下來最合適的數(shù)據(jù)轉(zhuǎn)換操作。用戶定義好轉(zhuǎn)換序列后,Dataprep會在后臺使用Dataflow來轉(zhuǎn)換數(shù)據(jù)。

ia_4200000005.png

使用GCP的數(shù)據(jù)分析平臺,分析開發(fā)周期縮短3倍,查詢處理速度提升10倍,木瓜移動項目進度也實現(xiàn)大幅度提高。

分享嘉賓

Shirley Wang,現(xiàn)擔任GCP數(shù)據(jù)分析客戶工程師,有豐富的云平臺架構(gòu)設(shè)計經(jīng)驗,目前的主要工作是幫助客戶設(shè)計規(guī)劃數(shù)據(jù)分析平臺架構(gòu)、并解決數(shù)據(jù)分析項目中的技術(shù)問題。她本人也對數(shù)據(jù)分析和機器學習有濃厚的興趣,熱衷于動手實踐各種技術(shù),是一個技術(shù)派。

Bin Wang,木瓜移動數(shù)據(jù)工程師,工作在數(shù)據(jù)分析和機器學習的第一線,有極強的動手能力,對各大云廠商產(chǎn)品都有所了解,并親手在GCP平臺搭建了木瓜移動的數(shù)據(jù)分析系統(tǒng)。

立即登錄,閱讀全文
版權(quán)說明:
本文內(nèi)容來自于谷歌開發(fā)者,本站不擁有所有權(quán),不承擔相關(guān)法律責任。文章內(nèi)容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權(quán),請聯(lián)系管理員(zzx@kchuhai.com)刪除!
相關(guān)文章
新版GKE可管理最多6.5萬集群節(jié)點,超越AWS、Azure 10倍
新版GKE可管理最多6.5萬集群節(jié)點,超越AWS、Azure 10倍
Google Cloud公布最新Google Kubernetes Engine版本,號稱可支持最高達65,000個節(jié)點的服務器集群,以執(zhí)行超大型AI模型。
Google Cloud
云服務
云計算
2024-11-152024-11-15
Google Cloud細說AI變現(xiàn)途徑:用戶一年暴增10倍
Google Cloud細說AI變現(xiàn)途徑:用戶一年暴增10倍
Google云計算平臺(Google Cloud)首席執(zhí)行官Thomas Kurian在高盛舉行的會議上,說明了該公司究竟是通過哪些途徑將AI變現(xiàn)。
Google Cloud
谷歌云
云計算
2024-09-132024-09-13
云計算平臺GCP的服務存在權(quán)限提升漏洞,未經(jīng)授權(quán)的攻擊者可借此訪問敏感數(shù)據(jù)
云計算平臺GCP的服務存在權(quán)限提升漏洞,未經(jīng)授權(quán)的攻擊者可借此訪問敏感數(shù)據(jù)
7月24日安全企業(yè)Tenable披露影響Google Cloud Platform(GCP)的權(quán)限提升漏洞ConfusedFunction,這項弱點發(fā)生在名為Cloud Functions的無服務器運算服務,以及稱作Cloud Build的CICD渠道服務。
Google Cloud
谷歌云
云計算
2024-07-272024-07-27
Gemini為核心,Google云計算AI戰(zhàn)略聚焦云服務和生產(chǎn)力GAI
Gemini為核心,Google云計算AI戰(zhàn)略聚焦云服務和生產(chǎn)力GAI
過去一年,企業(yè)GAI應用的風潮席卷全球,成了三大公有云積極搶攻的新戰(zhàn)場,微軟靠著OpenAI助攻,去年在這場云計算GAI大戰(zhàn)中取得先機,而Google后來居上,靠著自家PaLM模型和GAI生產(chǎn)力工具來迎戰(zhàn),AWS則是到去年底年會上,對于企業(yè)GAI應用布局才有比較完整的布局與披露。
Google Cloud
谷歌云
云計算
2024-05-042024-05-04
優(yōu)質(zhì)服務商推薦
更多