創業公司做數據分析(一)開篇
了解“認知心理學”的朋友應該知道:人類對事物的認知,總是由淺入深。然而,每個人思考的深度千差萬別,關鍵在于思考的方式。通過提問三部曲:WHAT->HOW->WHY,可以幫助我們一步步地從事物的表象深入到事物的本質。比如學習一個新的技術框架,需要逐步搞清楚她是什么、如何使用、為什么這樣設計,由淺入深。
“WHY+HOW+WHAT”,是筆者最鐘愛的一種思維模式。其使用方法不僅限于上述認知過程中的思考方式,通過不同的順序組合,可以使用在不同的場景。比如,在籌劃一個項目時,采用“WHY->WHAT->HOW”的思考方式,先搞清楚為什么要做這個項目,然后是需要做哪些工作來完成這個項目,***考慮怎么做、技術選型。這個思考方式也將被廣泛使用在本系列的各個文章中。
在過去的一年里,筆者加入了一家移動互聯網創業公司,工作之一便是負責數據業務的建設,陸陸續續完成了一些數據系統的實現,來滿足公司的數據需求。在創業公司中做數據相關的事情,而且是從零做起,肯定不像很多大公司那樣分工明細,所有的工作都要保證在有限的資源下來滿足需求?;叵肫饋硪残U有意思,因此想做些總結分享,結合我們的系統來談一談如何做數據分析。如果有寫的不好的地方,還請網友指正。
作為系列文章的開篇,本文將按照“WHY->WHAT->HOW”的思考方式來闡述下面三個問題:
- 創業公司為什么需要做數據分析?
- 創業公司做數據分析,需要做哪些事情?
- 如何實現這些數據上的需求?
WHY
隨著移動互聯網的發展和大數據思維的普及,越來越多的創業者、投資人開始重視數據的作用,而不再是隨便拍腦袋。“數據驅動決策”、“精準化運營”、“產品快速迭代”這些概念被越來越多的人提出和使用,其背后都離不開精準的數據分析。對于大多數互聯網創業公司來說,其背后沒有強大的資源與財主支撐,如何在有限的人力、物力下快速摸索、少走彎路是至關重要的,而基于“數據驅動”來做決策、運營與產品將起到一個關鍵的作用。讓我們來看兩個例子。
【例一】
微信公眾號早已成為各家運營的主戰場之一,利用微信的關系鏈來轉發H5海報頁面是眾多線上活動和拉新的一個重要方式。然而,不管是做某個線上推廣活動,還是通過線下某個渠道引導用戶分享、注冊,我們都需要指標來衡量活動效果,從而摸清運營的方向。數據,便是關鍵!該活動帶來的瀏覽量、分享量、新注冊用戶數、用戶留存率都是重要的指標,而這一切都離不開有效的數據追蹤與分析。如果同時有100個這樣的渠道活動,如何統籌各個數據分析也將是一件無法忽視的事情。(下圖呈現的是某次活動的傳播網絡的一部分)
【例二】
每逢節假日,國內各個旅游景點都是人山人海,盡管大家都知道外出游玩會遭遇這種情況,但是還是抱著一絲僥幸心理出行,畢竟好不容易有了假期嘛。在今年十一時,筆者就曾利用百度景區熱力分布圖來提前觀察,從而避開了一些高峰期和人滿為患的景區,大家不妨也試一試。
回到正題,對于很多創業公司,特別基于LBS提供服務的企業來說,都期望搞清楚“用戶在哪里”、“哪里是用戶感興趣的地方”,從而摸清早期的投入方向,畢竟全面開花、四處征戰的方式是不適于創業公司的。通過位置數據,來分析用戶集中在哪些區域,主要分布在商業區還是高校,是否受到交通因素影響等等,當然,具體需要結合業務來做了。另一方面,還可以聚合出用戶的常駐位置,可以對用戶位置與商戶位置的距離進行分析等等,從而形成推薦方案,優化產品與服務。
WHAT
對于大多數互聯網創業公司,在做數據分析時,一定要結合自己的業務,把握一個度,在投入可控的范圍內達到效果即可。數據深度挖掘、機器學習、推薦算法等等,這些技術名詞背后都需要投入一定的人力、物力來支撐,即使是大廠來玩,產出也相對有限,而且很多時候實際工程效果不盡人意。舉個列子,很多高端的“推薦算法”在投入使用后,其效果遠不如“看了又看”來的簡單有效。當然,如果你的公司就是做數據這方面的業務,那是另一回事了。
要搞清楚需要做什么,不妨先結合自身業務思考一下,現階段自己需要什么數據來驅動決策、運營與產品。具體業務方面的數據需求,各家都不一樣。從筆者接觸的情況來看,早期大部分的數據需求集中在兩塊:運營數據的統計分析、產品使用情況的統計分析。后期隨著產品線的發展,一般會延伸出一些與產品相關的數據業務,比如線上推薦。
從流程上看,需要做的事情集中在三部分:數據采集、數據處理和數據可視化,伴隨著數據的變遷:原始數據->分析結果->圖表呈現。首先,基礎數據源的建設是做好數據分析的關鍵,因為如果數據源本身出了問題,那么后面做的所有工作都是沒有意義的,而且如果沒有提前做好數據采集,后期想做分析時也沒有數據可做。
其次,數據分析的最終結果是需要呈現給別人看的,可能是公司高層,也可能是市場業務人員,直接將一堆數據丟給他們顯然是不現實的,通常都需要轉換為圖表的形式,這便是數據可視化的工作。而從原始數據源到分析結果的過程,便歸納為數據處理,其涵蓋了數據提取、數據建模、數據分析等多個步驟。
HOW
現如今國內的互聯網環境發展的越來越好,第三方服務提供商越來越多。所以很多情況下我們都有兩個選擇:接入第三方、自己做。
數據分析這塊,便有很多第三方服務,筆者將其劃分為傳統數據統計服務與新興的數據公司。前者以百度統計、google analysis為代表,通過嵌入其SDK在前端采集數據,在后臺便可以查看相應的統計數據。這種方式的好處是簡單、免費,使用非常普及,是很多初創企業的***。
缺點也很明顯,一是這樣的統計只能分析一些基本的訪問量、點擊率、活躍用戶量,滿足基本需求,無法結合業務數據來做深度分析;二是需要在前端很多地方埋點上報,耦合性較強;三是數據存儲在第三方的服務器中,無法直接獲取到數據源。
后者以神策、GrowingIO、諸葛IO為代表,這些公司也正是看到了傳統數據統計服務的缺點,從而提出相應的解決方案,各有特色。但是,需要不菲的接入費用,私有部署的費用更多,而這筆費用對于一個初創企業來說,還是蠻多的。另一方面他們更加側重于電商領域的數據分析,因為這個領域的分析模式已經基本成型,適合做成模板來使用。
選擇自己做的話,可以結合自身的業務,做的更靈活,同時也可以盡早摸索數據業務,逐步建立相應的數據系統。當然,自己做并不代表是造輪子,而是要充分利用開源框架來實現相應的功能。
鑒于各家的業務都不同,而拋開業務談架構都是耍流氓,所以在接下來的文章中,筆者將結合自己接觸的業務來探討一些數據系統的實現。下圖所示便是現階段我們的數據系統架構,主要分為數據采集、數據處理與數據應用三層。
從下往上,數據采集層負責從前端App、H5頁面、服務器日志采集數據,通過Kafka接入后存入Elasticsearch與neo4j中,同時業務數據庫也是很重要的數據源;數據處理層負責數據的抽取、清洗、建模,然后存入MongoDB與MySQL中,整個過程由Airflow任務調度管理系統來進行管理與監控;產出的數據最終提供給應用層使用。
也許有人要說,連Hadoop都沒用到,怎么號稱自己在做數據分析呢。筆者曾經也做過考慮和嘗試,最終暫時擱置了Hadoop,主要是數據增長相對緩慢并且沒有很明顯的需求,目前這個架構可以在較長一段時間內應對數據需求了。
點擊查看:
創業公司做數據分析(三)用戶行為數據采集系統
創業公司做數據分析(四)ELK日志系統
創業公司做數據分析(五)微信分享追蹤系統
創業公司做數據分析(六)數據倉庫的建設