復(fù)盤-非典型數(shù)據(jù)團(tuán)隊從0到1

在此做個簡單的復(fù)盤护桦,給大家講一個數(shù)據(jù)團(tuán)隊從0到1的故事衡楞。說是非典型歇僧,因為有一個好消息和一個壞消息,壞消息是數(shù)據(jù)團(tuán)隊與總部不在同一個城市赊琳,得不到總部的資源。好消息是我們有易鯨捷這個出身于惠普的分布式數(shù)據(jù)庫團(tuán)隊做支持砰碴。
溫馨提示:對大數(shù)據(jù)技術(shù)及產(chǎn)品不感興趣的朋友可以直接拉到文末看心得總結(jié)躏筏。

0. 一個人Know Nothing

我就像是進(jìn)入了一個密室,外面人都說這里埋著寶藏衣式,可是我一頭闖進(jìn)來后卻一片漆黑完全找不到方向寸士。Google,看書碴卧,沿著一條條線索查詢弱卡,如同盲人摸象,一會摸到了鼻子住册,一會摸到了尾巴婶博,可是完全不知道整體是怎樣,腦子里只有一堆堆的困惑荧飞,交織在一起凡人,理不出頭緒。漸漸叹阔,隨著一個個問題的解答挠轴,像是拉開了這個密室的一個個窗簾,光漸漸地透進(jìn)來耳幢,終于對整體的輪廓有了了解岸晦,可是越是了解欧啤,越是恐慌,太多的東西要學(xué)启上,這不是一個人能完成的任務(wù)邢隧。
歷經(jīng)波折,在易鯨捷公司的協(xié)助下冈在,在這一階段我完成了公司大數(shù)據(jù)基礎(chǔ)設(shè)施的組建倒慧。包括硬件、網(wǎng)絡(luò)包券、基于CDH 的大數(shù)據(jù)平臺(包含HDFS纫谅,Yarn,Hive兴使,HBase系宜,Zookeeper,Oozie发魄,Hue等組件)和EsgynDB盹牧。
在此感謝 易鯨捷公司并將其產(chǎn)品推薦給大家,其產(chǎn)品商業(yè)版本叫EsgynDB励幼,開源版本叫Trafodion汰寓,為Apache孵化項目,Github項目鏈接 https://github.com/apache/incubator-trafodion苹粟。


  • 踩過的坑1
    被建議用Openresty自己寫日志收集服務(wù)有滑,花了很長時間研究后發(fā)現(xiàn)根本沒必要,F(xiàn)lume和Kafka已經(jīng)非常成熟而且有眾多應(yīng)用嵌削。

踩坑體會:在初期毛好,非核心組件盡量使用成熟開源工具,降低成本苛秕。

  • 踩過的坑2
    被建議使用d3js來完成數(shù)據(jù)可視化肌访,研究后發(fā)現(xiàn)d3js使用門檻比較高,百度的echarts庫簡單易用艇劫,效果也足夠好吼驶。

踩坑體會:技術(shù)選型不必一味追求高大上,滿足需求店煞,簡單易用才是合適蟹演。

1. 初創(chuàng)團(tuán)隊-數(shù)據(jù)接入

根據(jù)之前的摸索,我將數(shù)據(jù)架構(gòu)分為了數(shù)據(jù)接入層顷蟀、數(shù)據(jù)倉庫層和數(shù)據(jù)應(yīng)用層酒请,并以此架構(gòu)開始搭建數(shù)據(jù)團(tuán)隊。


借用一張非常好的架構(gòu)圖鸣个,源自 數(shù)據(jù)倉庫的基本架構(gòu)(http://www.woshipm.com/pd/676.html)

第一步先收集數(shù)據(jù)羞反。

技術(shù)端哮兰,因為數(shù)據(jù)收集服務(wù)的技術(shù)選型為Flume和Kafka,所以需要尋找Java系的開發(fā)人員苟弛。團(tuán)隊中第一個人是最不好招的,更何況團(tuán)隊與總公司不在同一個城市阁将。在這個“冷啟動”的階段膏秫,我的策略是不求招到熟練使用Flume和Kafka的研發(fā),轉(zhuǎn)而關(guān)注有Java背景做盅,學(xué)習(xí)能力和工作意愿強(qiáng)缤削,經(jīng)驗在1-3年間的Java開發(fā)工程師。謝天謝地吹榴,我在不長的時間內(nèi)招到了2位Java web開發(fā)工程師亭敢。開始了組建團(tuán)隊的第一步。

產(chǎn)品端图筹,我開始調(diào)研數(shù)據(jù)源帅刀,主要數(shù)據(jù)來源有業(yè)務(wù)數(shù)據(jù),用戶行為數(shù)據(jù)和第三方數(shù)據(jù)远剩。相對于一般不會出問題的業(yè)務(wù)數(shù)據(jù)和沒有那么容易拿到的第三方數(shù)據(jù)扣溺,用戶行為數(shù)據(jù)最著急,因為晚收集一天就少一天數(shù)據(jù)瓜晤,所以我先從用戶行為數(shù)據(jù)下手锥余,開始設(shè)計移動端的埋點方案。這里感謝神策數(shù)據(jù)GrowingIO的無私分享痢掠,兩家公司在知乎等平臺發(fā)表了大量高質(zhì)量文章介紹埋點方案驱犹,幫助我理清了埋點原理和落地方案。
埋點方案交給移動端研發(fā)團(tuán)隊實現(xiàn)的同時足画,Java研發(fā)同學(xué)也在設(shè)置Flume雄驹,創(chuàng)建Kafka的Topic,編寫Kafka Consumer锌云。保證數(shù)據(jù)收集服務(wù)快速上線荠医,盡可能少丟失用戶行為數(shù)據(jù)。


  • 踩過的坑
    這段時間我犯了一個原則性錯誤桑涎,導(dǎo)致埋點方案臃腫而不合理彬向。公司這時候還沒建立起完整的運(yùn)營團(tuán)隊,所以我在沒有運(yùn)營團(tuán)隊的需求之前就開始設(shè)計埋點攻冷,導(dǎo)致埋點無法滿足需求娃胆,后期經(jīng)常遇到需要的源數(shù)據(jù)沒有收集,而很多埋點又閑置的尷尬等曼,以至后來不得不重構(gòu)了整個埋點方案里烦。

踩坑體會:需求凿蒜,需求,需求胁黑,不講需求和場景的產(chǎn)品經(jīng)理就是耍流氓废封。

2. 漸入佳境-數(shù)據(jù)倉庫

有了數(shù)據(jù),接下來要存儲分析丧蘸,最主要的任務(wù)就是構(gòu)建數(shù)據(jù)倉庫漂洋。常見的大數(shù)據(jù)構(gòu)架下,負(fù)責(zé)數(shù)據(jù)存儲的是HDFS力喷,負(fù)責(zé)數(shù)據(jù)分析的Hive刽漂,但因為EsgynDB的存在,我們的架構(gòu)簡單了很多弟孟,Kafka的數(shù)據(jù)直接寫入EsgynDB贝咙,然后在EsgynDB中使用ANSI SQL做ETL,建立數(shù)據(jù)倉庫和離線分析拂募,這就是SQL On Hadoop的優(yōu)勢庭猩,標(biāo)準(zhǔn)SQL被轉(zhuǎn)為分布式計算,免去寫MR和HQL這種門檻相對高的工作没讲。


來自靈魂的Freestyle手繪畫風(fēng)架構(gòu)圖對比

這樣的構(gòu)架使我們在只有一個大數(shù)據(jù)工程師的情況就建立了數(shù)據(jù)倉庫層眯娱,大大節(jié)省了人力成本,現(xiàn)在的大數(shù)據(jù)工程師的平均薪酬即使在互聯(lián)網(wǎng)研發(fā)這個高收入人群中也算高的爬凑,面試大數(shù)據(jù)工程師的時候我經(jīng)常在心里吐槽徙缴,大哥,我問的問題你都答不上來嘁信,可是你期望的稅后工資比我的稅前工資還高你知道么于样?
同時,在這一階段潘靖,數(shù)據(jù)接入層也將業(yè)務(wù)數(shù)據(jù)庫導(dǎo)入數(shù)據(jù)倉庫穿剖,T+1, Kettle從業(yè)務(wù)數(shù)據(jù)庫備庫中將數(shù)據(jù)導(dǎo)入數(shù)倉卦溢。這樣既保證不影響業(yè)務(wù)數(shù)據(jù)庫糊余,也可以相對保持?jǐn)?shù)據(jù)的一致性。
至此单寂,數(shù)據(jù)層基本搭建完畢贬芥,用戶行為數(shù)據(jù)和業(yè)務(wù)數(shù)據(jù)源源不斷的經(jīng)過ETL流入數(shù)據(jù)倉庫,數(shù)倉中的腳本們經(jīng)過Oozie的調(diào)度宣决,最終將結(jié)果匯總到以業(yè)務(wù)主題分類的結(jié)果表中蘸劈。


  • 踩過的坑1
    數(shù)據(jù)清洗,這真的是見神殺神尊沸,遇佛殺佛的大坑威沫,數(shù)據(jù)源的問題千奇百怪贤惯,沒有遇不到,只有想不到棒掠。

踩坑體會:Garbage In Garbage Out

  • 踩過的坑2
    前期數(shù)據(jù)量少孵构,直接在寬表中進(jìn)行數(shù)據(jù)分析,但數(shù)據(jù)量大起來就會發(fā)現(xiàn)烟很,沒有建模分析真的慢浦译。稍作優(yōu)化,性能就有成倍的提高溯职。

踩坑體會:即使到了大數(shù)據(jù)時代,很多經(jīng)典的數(shù)倉理論依然沒有過時帽哑,比如星型模型谜酒,大數(shù)據(jù)不是數(shù)據(jù)倉庫的替代。大數(shù)據(jù)大大促進(jìn)了數(shù)據(jù)倉庫的發(fā)展妻枕,使數(shù)據(jù)倉庫可以更大量僻族,更快地處理類型更豐富的數(shù)據(jù)。

3. 初具雛形-數(shù)據(jù)應(yīng)用

數(shù)據(jù)層基本搭建完畢屡谐,但要讓數(shù)據(jù)真的被使用起來述么,應(yīng)用層是必不可少的。初創(chuàng)團(tuán)隊對高大上的數(shù)據(jù)應(yīng)用不做奢望愕掏,先把基本的報表系統(tǒng)做好度秘。
報表系統(tǒng)提供了三種服務(wù),數(shù)據(jù)看板(Dashboard)饵撑,數(shù)據(jù)大屏和數(shù)據(jù)簡報剑梳。

  • 數(shù)據(jù)看板,其實可以用BDP或是微軟PowerBI這種敏捷BI工具來代替滑潘,但想用好敏捷BI工具垢乙,做到數(shù)據(jù)民主化,全員數(shù)據(jù)思維和分析技能是必不可少的语卤,要做到這一點還有很長的路追逮,所以此階段還是選擇了以傳統(tǒng)的固定Dashboard方式來展現(xiàn)。數(shù)據(jù)產(chǎn)品經(jīng)理在此主要的工作是設(shè)計指標(biāo)體系和產(chǎn)品原型粹舵,我的另外一篇文章-怎樣做一個BI方向的數(shù)據(jù)產(chǎn)品經(jīng)理對此做了簡單介紹钮孵,歡迎大家參考。
  • 數(shù)據(jù)大屏用于對外展示齐婴,BlingBling的油猫,客戶看了倍兒高興,推薦阿里的DataV服務(wù)組建自己的數(shù)據(jù)大屏柠偶,據(jù)說阿里自己的雙十一大屏就是基于DataV情妖。但不得不吐槽睬关,DataV不是很好用,有很多Bug毡证,組件樣式少电爹,加載緩慢,定價模式不合理料睛,但市面上沒有其他更好的丐箩,也只能湊合用了。
  • 郵件發(fā)送Excel數(shù)據(jù)簡報恤煞,與數(shù)據(jù)看板互為補(bǔ)充屎勘,而且對于一次性需求,郵件Excel報表可以更快速的回復(fù)需求居扒。

另外要提一句報表系統(tǒng)中的數(shù)據(jù)監(jiān)控概漱,數(shù)據(jù)產(chǎn)品經(jīng)理在統(tǒng)計的時候經(jīng)常會遇到一些莫名其妙的結(jié)果,這時候就需要到庫里查哪里出了問題喜喂,非常費(fèi)時費(fèi)力瓤摧,不如把每天的上報情況用郵件自動發(fā)送給相關(guān)人員,出了問題可以在第一時間發(fā)現(xiàn)玉吁。

終于照弥,非典型數(shù)據(jù)團(tuán)隊初具雛形,應(yīng)用層包含1位產(chǎn)品进副,1位前端開發(fā)和1位后臺開發(fā)这揣,數(shù)據(jù)層包含1位數(shù)據(jù)產(chǎn)品,1位大數(shù)據(jù)開發(fā)影斑。功能上對公司內(nèi)部提供數(shù)據(jù)報表支持曾沈,滿足運(yùn)營,市場鸥昏,產(chǎn)品和管理層的數(shù)據(jù)需求塞俱。

  • 踩過的坑1
    關(guān)鍵崗位單點,比如大數(shù)據(jù)開發(fā)工程師吏垮,這是團(tuán)隊的核心職位之一障涯,遭遇人員離職后直接導(dǎo)致團(tuán)隊功能失效,特別是初創(chuàng)團(tuán)隊遭遇還在試用期的核心成員提前不到一周通知的離職膳汪,慘不忍睹唯蝶。

踩坑體會:關(guān)鍵崗位一定要有備崗,考慮成本的話可以是功能相近的兩個崗位互為備崗遗嗽。

  • 踩過的坑2
    缺乏資深隊友粘我,前期為了節(jié)省成本,搭建團(tuán)隊多考慮1-3年相關(guān)工作經(jīng)驗的同學(xué),好處是年紀(jì)輕征字,家庭負(fù)擔(dān)小都弹,學(xué)習(xí)意愿和工作意愿強(qiáng),團(tuán)隊氛圍活躍匙姜,但是弊端也很明顯畅厢,缺乏經(jīng)驗,穩(wěn)定性低氮昧。

踩坑體會:初期快速架搭完成基本人員構(gòu)架后框杜,要開始引入3年以上工作經(jīng)驗的資深隊友,形成高低搭配的人才梯隊袖肥。

Ending

萬事開頭難咪辱,當(dāng)然遇到的困難遠(yuǎn)不止這些,資源匱乏四個字在0到1的過程中貫穿始終椎组,事情應(yīng)該是怎樣在絕大多數(shù)情況下只是美好的想象梧乘,而現(xiàn)實是怎樣用好手里的資源盡可能的接近這個想象÷睿看清目標(biāo),認(rèn)清現(xiàn)實和保持信心是初創(chuàng)團(tuán)隊最重要的三項能力夹供,而這三項能力的綜合表現(xiàn)是灵份,能夠認(rèn)清當(dāng)下最需解決的問題并解決問題。
是的哮洽,這只是一個0到1的團(tuán)隊填渠,完成的事情還非常少,后面有1-99都沒有開始做鸟辅,所以請各路大神不要吐槽氛什。寫下這篇我們的故事,一是給初創(chuàng)團(tuán)隊的朋友們提供參考匪凉,二是給我們自己做一個復(fù)盤枪眉,反思一路上的成敗得失。
最后感謝陪伴一路走過來的隊友們再层,“成年人的生活里沒有容易二字”贸铜,共勉!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末聂受,一起剝皮案震驚了整個濱河市蒿秦,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌蛋济,老刑警劉巖棍鳖,帶你破解...
    沈念sama閱讀 218,858評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異碗旅,居然都是意外死亡渡处,警方通過查閱死者的電腦和手機(jī)镜悉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,372評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來骂蓖,“玉大人积瞒,你說我怎么就攤上這事〉窍拢” “怎么了茫孔?”我有些...
    開封第一講書人閱讀 165,282評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長被芳。 經(jīng)常有香客問我缰贝,道長,這世上最難降的妖魔是什么畔濒? 我笑而不...
    開封第一講書人閱讀 58,842評論 1 295
  • 正文 為了忘掉前任剩晴,我火速辦了婚禮,結(jié)果婚禮上侵状,老公的妹妹穿的比我還像新娘赞弥。我一直安慰自己,他們只是感情好趣兄,可當(dāng)我...
    茶點故事閱讀 67,857評論 6 392
  • 文/花漫 我一把揭開白布绽左。 她就那樣靜靜地躺著,像睡著了一般艇潭。 火紅的嫁衣襯著肌膚如雪拼窥。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,679評論 1 305
  • 那天蹋凝,我揣著相機(jī)與錄音鲁纠,去河邊找鬼。 笑死鳍寂,一個胖子當(dāng)著我的面吹牛改含,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播迄汛,決...
    沈念sama閱讀 40,406評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼候味,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了隔心?” 一聲冷哼從身側(cè)響起白群,我...
    開封第一講書人閱讀 39,311評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎硬霍,沒想到半個月后帜慢,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,767評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年粱玲,在試婚紗的時候發(fā)現(xiàn)自己被綠了躬柬。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,090評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡抽减,死狀恐怖允青,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情卵沉,我是刑警寧澤颠锉,帶...
    沈念sama閱讀 35,785評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站史汗,受9級特大地震影響琼掠,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜停撞,卻給世界環(huán)境...
    茶點故事閱讀 41,420評論 3 331
  • 文/蒙蒙 一瓷蛙、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧戈毒,春花似錦艰猬、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,988評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至恐疲,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間套么,已是汗流浹背培己。 一陣腳步聲響...
    開封第一講書人閱讀 33,101評論 1 271
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留胚泌,地道東北人省咨。 一個月前我還...
    沈念sama閱讀 48,298評論 3 372
  • 正文 我出身青樓,卻偏偏與公主長得像玷室,于是被迫代替她去往敵國和親零蓉。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,033評論 2 355

推薦閱讀更多精彩內(nèi)容