2008年我在我的第一份工作(Ask.com)中開始使用Hadoop。當(dāng)時(shí)是因?yàn)榘嘿F的Oracle集群無法處理不斷增加的分析工作量,公司不得不切換到Hadoop。
隨后在Twitter擔(dān)任數(shù)據(jù)工程師的第二份工作中,我在第一線參與并推動(dòng)了如何使用數(shù)據(jù)給幾乎所有Twitter的產(chǎn)品賦能(與其稱之為“大數(shù)據(jù)”,我更愿意簡單稱之為“數(shù)據(jù)”)。
自2008年以來,我親眼目睹了數(shù)據(jù)的力量,以及見證了它如何改變世界。如果你閱讀過有關(guān)劍橋分析公司如何影響2016年美國大選的文章,那么你會(huì)感受到這種改變所帶來的非凡意義。
然而,自流行詞“大數(shù)據(jù)”出現(xiàn)10多年后,大數(shù)據(jù)似乎只對少數(shù)公司有用。在硅谷,幾乎所有的獨(dú)角獸企業(yè)都廣泛使用大數(shù)據(jù)來推動(dòng)他們的成功。
在中國,像BAT這樣的公司已經(jīng)掌握了大數(shù)據(jù)的藝術(shù),同時(shí)我們也有像字節(jié)跳動(dòng)這樣主要以大數(shù)據(jù)技術(shù)為基礎(chǔ)的超級獨(dú)角獸公司,但是仍然有很多關(guān)于大數(shù)據(jù)是如何難以使用的笑話。
并且令人遺憾的事實(shí)是,對于大多數(shù)公司來說,大數(shù)據(jù)要么仍然是流行詞,要么的確是難以實(shí)現(xiàn)。
幸運(yùn)的是,一門新學(xué)科正在崛起,是解開普通公司數(shù)據(jù)能力的關(guān)鍵。它就是DataOps,與DevOps明顯相似的名稱,以及與DevOps類似的軟件開發(fā)角色,是數(shù)據(jù)工程師希望簡化數(shù)據(jù)的使用并真正實(shí)現(xiàn)以數(shù)據(jù)來驅(qū)動(dòng)企業(yè)成功的方法。
今天,我們將簡要介紹DataOps以及為什么它對每個(gè)想要從數(shù)據(jù)中獲取真正價(jià)值的公司都很重要。??
什么是DataOps
維基百科上DataOps的定義是:
DataOps是一種面向流程的自動(dòng)化方法,由分析和數(shù)據(jù)團(tuán)隊(duì)使用,旨在提高質(zhì)量并縮短數(shù)據(jù)分析的周期時(shí)間。
維基百科上的DataOps頁面在2017年2月創(chuàng)建,其中詳細(xì)介紹了這一新學(xué)科。DataOps的定義肯定會(huì)隨著時(shí)間的推移而發(fā)展,但其關(guān)鍵目標(biāo)非常明確:提高數(shù)據(jù)分析的質(zhì)量并縮短數(shù)據(jù)分析的周期。
DataOps可以降低數(shù)據(jù)分析的門檻,但是它并不會(huì)使數(shù)據(jù)分析變成一項(xiàng)簡單的工作。實(shí)施成功的數(shù)據(jù)項(xiàng)目仍然需要大量工作,例如深入了解數(shù)據(jù)和業(yè)務(wù)的關(guān)系,良好的數(shù)據(jù)使用規(guī)范以及一個(gè)公司的數(shù)據(jù)驅(qū)動(dòng)的文化培養(yǎng)。不過,DataOps將極大地提高人們使用數(shù)據(jù)的效率并降低使用數(shù)據(jù)的門檻,公司可以更快,更早,更好地開始使用數(shù)據(jù),并且成本和風(fēng)險(xiǎn)更低。
DataOps解決的問題
大數(shù)據(jù)的大多數(shù)應(yīng)用可以分類為AI(人工智能)或BI(商業(yè)智能)。此處的AI是指廣義的人工智能功能,包括機(jī)器學(xué)習(xí),數(shù)據(jù)挖掘以及其他從數(shù)據(jù)中獲取以前未知知識的技術(shù)。BI則是更多地使用統(tǒng)計(jì)方法將大量數(shù)據(jù)匯總到更簡單的報(bào)告,供人們理解。簡而言之,AI使用各種數(shù)據(jù)算法來計(jì)算新的東西,BI則是統(tǒng)計(jì)人們可以理解的數(shù)字。
編寫AI / BI程序并不難。你可以在幾個(gè)小時(shí)內(nèi)設(shè)置一個(gè)TensorFlow的人臉識別程序?;蛘呤褂肕atlab繪制一些數(shù)據(jù),甚至使用Excel也并不難實(shí)現(xiàn)這個(gè)目的。問題在于,要實(shí)際使用生產(chǎn)結(jié)果來支持面向用戶的產(chǎn)品或根據(jù)這些神奇的數(shù)字來決定公司的命運(yùn),你需要的不僅僅是手動(dòng)工作。
Dimensional Research的一項(xiàng)調(diào)查(如上圖所示)發(fā)現(xiàn),對于想要實(shí)施大數(shù)據(jù)應(yīng)用的公司來說,以下問題最為困難:
谷歌數(shù)據(jù)分析師的另一項(xiàng)研究發(fā)現(xiàn),對于大多數(shù)機(jī)器學(xué)習(xí)項(xiàng)目,只有5%的時(shí)間花在編寫ML代碼上。另外95%的時(shí)間用于設(shè)置運(yùn)行ML代碼所需的基礎(chǔ)設(shè)施。
在這兩項(xiàng)研究中,我們可以很容易地看到許多艱苦的工作實(shí)際上并不是在編寫代碼。整個(gè)基礎(chǔ)設(shè)施的準(zhǔn)備工作以及高效運(yùn)行生產(chǎn)級別的代碼是非常費(fèi)時(shí)費(fèi)力的,而且經(jīng)常伴隨著各種風(fēng)險(xiǎn)。
在谷歌的研究中,他們引用了我的前同事Jimmy Lin和Dmitry Ryaboy(來自Twitter Analytics團(tuán)隊(duì))的話:我們的大部分工作可以被描述為“數(shù)據(jù)管道工”。實(shí)際上,DataOps使管道工的工作更簡單和高效。
DataOps目標(biāo)功能
DataOps旨在減少整個(gè)分析周期時(shí)間。因此,從搭建基礎(chǔ)架構(gòu)到使用數(shù)據(jù)應(yīng)用的結(jié)果,通常需要實(shí)現(xiàn)以下功能:
簡而言之,它類似于DevOps方法:從編寫代碼到生產(chǎn)部署的路徑,包括調(diào)度和監(jiān)視,應(yīng)由同一個(gè)人完成,并遵循系統(tǒng)管理的標(biāo)準(zhǔn)。
與提供許多標(biāo)準(zhǔn)CI,部署,監(jiān)控工具以實(shí)現(xiàn)快速交付的DevOps類似,通過標(biāo)準(zhǔn)化大量大數(shù)據(jù)組件,新手可以快速建立生產(chǎn)級的大數(shù)據(jù)平臺并充分利用數(shù)據(jù)的價(jià)值。
DataOps方法論
DataOps的主要方法論仍處于快速發(fā)展階段。像Facebook和Twitter這樣的公司通常會(huì)有一個(gè)專門的數(shù)據(jù)平臺團(tuán)隊(duì)(Data Platform Team)處理數(shù)據(jù)運(yùn)營并實(shí)現(xiàn)數(shù)據(jù)項(xiàng)目。
但是,他們的實(shí)現(xiàn)方式大多與公司現(xiàn)有的Ops基礎(chǔ)設(shè)施集成,因此通常不適用于其他人。我們可以從他們的成功中學(xué)習(xí)經(jīng)驗(yàn),并建立一個(gè)可以由每家公司輕松實(shí)施的通用大數(shù)據(jù)平臺。
要構(gòu)建DataOps所需的通用平臺,我們認(rèn)為需要以下技術(shù):
我們的思考
目前的大數(shù)據(jù)技術(shù)是強(qiáng)大的,但它們對于普通人來說仍然太難使用。部署一個(gè)適合生產(chǎn)環(huán)境的數(shù)據(jù)平臺仍然是一項(xiàng)艱巨的任務(wù)。對于已經(jīng)開始這一過程的公司來說,他們的數(shù)據(jù)平臺團(tuán)隊(duì)大部分時(shí)間仍在做相似的事情,就像重新造輪子。
有些公司已經(jīng)意識到這些問題(Qubole,DataMeer,Bluedata等),并開始采用不同的方法來解決這個(gè)問題。其中一些使用基于容器的解決方案,另外一些以Hadoop為中心構(gòu)建其平臺。
踐行云原生DataOps,需要正確的方式和工具。當(dāng)下我們正需要用一款工具及平臺解決目前繁雜的數(shù)據(jù)開發(fā)問題,在實(shí)踐中降低邁入數(shù)據(jù)大門的門檻。目前由智領(lǐng)云自主研發(fā)的一款即開即用,快速搭建數(shù)據(jù)工程的新一代在線DataOps大數(shù)據(jù)平臺–BDOS Online已上線,歡迎大家免費(fèi)試用。