數據是一種對客觀事物的邏輯歸納,是事實或觀察的結果。隨著科學技術的發展,數據的概念內涵越來越廣泛包括數值,文本,聲音,圖像,視頻。常見的數據有三種分類,分別是結構屬性分類、連續性特征分類與測量尺度分類。
根據數據存儲形式的不同,數據可以分為結構化數據與非結構化數據兩種,它們不僅存儲形式不同,在數據處理和數據分析的方法上也大相徑庭。
根據數據連續的屬性不同,數據又可以分為連續型數據與離散型數據。連續型數據與離散型數據的區別,可以用線、點來區分理解。
數據的測量尺度分類,可以理解為一種測量工具,像尺子那樣刻畫數據的精細度。
數據的統計過程,主要是為了更好的體現數據的流轉過程,而數據統計的要素,就在于如何清晰的描述這個過程。
第一個要素是:統計主體,統計的業務屬性。統計主體指數據需要描述或分析的對象,以及該對象所涉及到的所有過程的集合。例如在電商系統中,需要描述交易的整個過程,包括商品、下單、支付、退換貨等過程,那么訂單就可以作為這個過程中的統計主體,串聯起整個過程。需要注意的是,統計主體可以是人,也可以是物、甚至可以是任何抽象出來的概念。
第二個要素是:統計維度,統計的空間屬性。維度是維度建模最重要的建設項目,是描述平臺表及業務過程的重要表述方式。在大數據領域,統計維度通常來自于業務概念的抽象,比如商品類目、屬性等信息。對于一張匯總層的表來說,除了統計指標,其余所有的信息,都可以看作是統計維度。
第三個要素是:統計周期,統計的時間屬性。包括時間粒度、生命周期等過程,可以是實時發生的事實,也可以是按時間進行累計的事實。通常統計周期有小時、日、周、季度、年的區分。
第四個要素是:統計指標,統計的行為度量。一般由指標名稱和指標數值兩部分組成,在維度建模中提倡的方式是:指標=原子指標+派生指標+業務限定+統計周期+維度。
大數據領域的架構方向偏重于Hadoop、Spark、Flink等主流框架的實現、調優、部署等工作,同時配合Hive、HBase、ClickHouse等查詢工具,實現軟硬件資源利用率的最大化,并提供穩定可靠的數據服務。
這個領域的關鍵詞如下:
數倉方向遵循的是維度建模理論,注重數據統計流程的構建、洞察數據與業務的價值聯系等。這個方向會將數據架構、數據庫開發、可視化呈現、數據產品與運營串聯起來。
這個領域的關鍵詞如下:
數據分析更多的偏向數據指標體系的建立,通過統計學原理、深度挖掘和機器學習等方法,探索數據與數據之間的聯系,洞察對未來事物的預測和預判。
這個領域的關鍵詞如下:
數據采集特指從外部系統采集數據,并導入到數據存儲系統的過程,主要分為Web端日志采集、客戶端日志采集、數據庫同步三個方向。
階段二:數據存儲
數據存儲的選擇很多,比如傳統的關系型數據庫:Oracle、MySQL;新興的NoSQL:HBase、Cassandra、Redis;全文檢索框架:ES、Solr等。但更廣泛的應用,還是Hadoop生態下的HDFS,近年來也逐漸發展出了面向對象存儲的OSS、面向表格的存儲TableStore等。
數據計算主要分為批處理框架、流處理框架、交互式分析框架三種。批處理框架以Hadoop為代表,MapReduce、Spark-RDD為主要開發工具;流處理框架以Flink、Storm為代表;交互式分析框架的選擇比較多,主要有Google開發的Dremel和PowerDrill,Facebook開發的Presto, Cloudera開發的Impala,以及Apache項目Hive、Drill、Tajo、Kylin、MRQL等。
數據建模是以人為主導的開發環節,與數據采集、存儲、計算等所使用的工具方法論不盡相同。數據倉庫的概念是建立在大數據的基礎知識上,而大數據擁有良好的性能、廉價的成本、極高的效率及可控的質量四大優勢,但同時大數據又存在業務關聯廣泛、計算流程復雜、管理難度較大等問題,因而十分需要通過建模方法論來更好的組織和存儲相關數據。
數據建模目前常用的主要有E-R模型、維度建模、DataVault建模三種。為了將模型闡述清楚,我們通常會使用UML作為統一建模語言,是用來針對建模方法論而使用的工具,并非建模方法論本身。
數據分析是大數據計算的最后一步,也是最重要的環節?!胺治觥眱蓚€字的含義可以包含兩個方面的內容:一個是在數據之間嘗試尋求因果關系或影響的邏輯;另一個是對數據的呈現做適當的解讀。數據分析的目的性極強,區別于數據挖掘的找關聯、分類、聚類,數據分析更傾向于解決現實中的問題。例如:我想解決什么問題、通過這次的分析能讓我產生什么決策等等。數據分析主要是把采集到的數據通過建立數據模型,在分布式計算框架下進行計算加工、匯總分析等。
大數據的分析方法論,通常以營銷、管理等理論為指導,結合實際業務情況,搭建分析框架,這樣才能盡量確保數據分析維度的完整性,結果的有效性及正確性。
營銷方面的理論模型有:4P、用戶使用行為、STP理論、SWOT等。
管理方面的理論模型有:PEST、5W2H、時間管理、生命周期、邏輯樹、金字塔、SMART原則等。
PEST:PEST即政治(Political)、經濟(Economic)、社會(Social)和技術(Technological)四個領域的首字母縮寫,2010年后更被擴展為 STEEPLE 與 STEEPLED,增加了教育(Education)與人口統計(Demographics),主要用于主要用于行業分析,通過分析與外部總體環境的因素互相結合就可歸納出SWOT分析中的機會與威脅,可以作為企業與環境分析的基礎工具。
5W2H:應用相對廣泛,可用于用戶行為分析、業務問題專題分析、營銷活動等5W2H,即何因(Why)、何事(What)、何人(Who)、何時(When)、何地(Where)、如何做(How)、何價(How much)該方法廣泛應用于企業營銷、管理活動,對于決策和執行性的活動措施非常有幫助,也有助于彌補考慮問題的疏漏。
邏輯樹:又稱問題樹、演繹樹或分解樹等。它是將問題的所有子問題分層羅列,從最高層開始,并逐步向下擴展。邏輯樹的作用主要是幫我們理清自己的思路,避免進行重復和無關的思考。
簡單地來說,分析可被劃分為4種關鍵方法。
數據分析領域最常見的方法,就是描述業務正在發生什么,例如在用于增長領域,分析師就可以根據每個月營收和支出的賬單,與用戶標簽數據結合起來,分析每個用戶的獲客成本,并利用可視化的工具來制作響應的報表。
描述性數據通常只能反映業務現狀,但如果需要了解為什么,就需要不斷的將數據進行下鉆,通過診斷分析工具、BI報表工具等支持,數據可以直接鉆取到最細粒度,能夠深入分析問題發生的原因。
預測型分析主要用于進行預測事件未來發生的可能性,給預測事件一個可量化的值,或者是預估事情發生的時間點,這些都可以通過預測模型來完成。預測模型通常會使用各種可變數據來實現預測。數據的多樣化與預測結果密切相關。在充滿不確定性的環境下,預測能夠幫助做出更好的決定,這也是很多領域正在使用的重要方法。
指令模型基于對“發生了什么”、“為什么會發生”和“可能發生什么”的分析,來幫助用戶決定應該采取什么措施。通常情況下,指令型分析不是單獨使用的方法,而是前面的所有方法都完成之后,最后需要完成的分析方法。
指標,顧名思義,就是指定的標準。詞典里的解釋是“衡量目標的單位或方法”。指標就是為了描述一些對象的狀態而制定出來的標準,在日常生產生活中有著非常廣泛的應用。指標體系,就是將統計指標系統性的組織起來,由指標、體系兩部分組成,主要包括:用戶數、次數、人均次數、時長、點擊率、轉換率、滲透率、留存率、成功率等。
如果沒有指標對業務進行系統衡量,我們就無法把控業務發展,無法對業務質量進行衡量,尤其現在很多企業多項業務并行,單一數據指標衡量很可能片面化。因此,搭建系統的指標體系,才能全面衡量業務發展情況,促進業務有序增長。
隨著數據量的增大,數據指標也會越來越多,即使是同樣的命名,但定義口徑卻不一致。這對于各部門理解難度大,同時也造成了重復計算存儲的資源浪費。阿里OneData指標規范,以維度建模作為理論基礎,構建總線矩陣,定義業務域、數據域、業務過程、度量/原子指標、維度、維度屬性、修飾詞、修飾類型、時間周期、派生指標等,幫助我們形成統一數據標準。
建模,顧名思義,就是建立模型的意思,為了針對理解產品、業務、應用邏輯之間的相互關系而做的抽象,用于避免理解歧義。建模通常用文字配合模型的方式,將復雜的事物描述清楚,便于自己及他人的理解。如果把數據比作是圖書館里的書,那么建模就相當于合理規劃圖書館的布局,能夠讓讀者迅速而合理的找出目標書籍。
ER模型,全稱為實體聯系模型、實體關系模型或實體聯系模式圖,由美籍華裔計算機科學家陳品山發明,是概念數據模型的高層描述所使用的數據模型或模式圖。E-R模型的構成成分是實體集、屬性和聯系集,其表示方法有如下三種:
維度建模是數據倉庫建設中的一種數據建模方法,將數據結構化的邏輯設計方法,它將客觀世界劃分為度量和上下文,Kimball最先提出這一概念。維度建模其最簡單的描述就是,按照事實表,維度表的方式來構建數據倉庫。維度是度量的環境,用來反映業務的一類屬性;事實表是維度模型的基本表,每個數據倉庫都包含一個或者多個事實數據表。維度建模最被人廣泛知曉的一種方式就是星型模式。阿里巴巴電商系對于維度建模有一些非常好的擴展補充,例如維度表可以分為快照維表、緩慢變化維表等,事實表可以分為事務事實表、周期快照事實表和累計快照事實表,這些概念解釋起來非常的復雜,應用場景也比較極限,因而會用獨立的文章來分別闡述。
DataVault是E-R模型的衍生版本,針對復雜笨重的E-R模型,強調有基礎數據層的擴展性和靈活性,同時強調歷史性、可追溯性和原子性,不要求對數據進行過度的一致性處理。DataVault模型是一種中心輻射式模型,其設計重點圍繞著業務鍵的集成模式,業務鍵是存儲在多個系統中的、針對各種信息的鍵,用于定位和唯一標識記錄或數據。DataVault有三種基本結構:中心表(Hub):唯一業務鍵的列表,唯一標識企業實際業務,企業的業務主體集合;鏈接表(Link):表示中心表之間的關系,通過鏈接表串聯整個企業的業務關聯關系;衛星表(Satellite):歷史的描述性數據,數倉中數據的真正載體。
用戶轉化漏斗思路的核心,是如何引導用戶主鍵的接受和使用產品。例如在廣告領域,它是展示—>點擊—>轉化;在游戲領域,它是下載—>激活—>留存—>付費;等等。
無論上面哪種業務,都可以分解為一系列的階段,經過每個階段,用戶都只有一部分留存下來。對漏斗的每一個環節準確地記錄數據,以便分析和優化各個環節的通過比率,是數據運營的基礎設施。
數據運營中的常見痛點,是明知道轉化漏斗上某個環節的通過率較低,卻找不到提高的途徑。常用的解決思路,就是把數據進行不斷多維度的下鉆,在很細的粒度上觀察數據,并發現產品或系統上可能存在的問題。比如說,你發現廣告的點擊率低,進而查到是Chrome瀏覽器上的點擊率拉低了整體統計,那么就要在Chrome瀏覽器上深究原因,結果很可能是你的Flash廣告素材直接被Chrome給屏蔽了。如果多個維度能夠靈活組合觀察數據,就成了一個數據魔方(Data Cube)。
A/B測試是常見的驗證手段,當制定了制定多個產品可能的改進方向,不清楚應該如何選擇時,我們可以將不同的版本放到線上,讓實際數據來決定誰上誰下。這種A/B測試的方法,往往是大家理想中躺著就可以優化出好產品的魔法,也是“數定勝人”理論的基礎之一。
從上至下分為五個層次:
方法論、機制、標準:指標體系、建模體系、分析體系;
原子能力:數據采集、數據存儲、數據計算、數據平臺;
通用基礎:數據建模、元數據、任務調度、血緣追蹤;
業務支撐:數據開發、數據服務、數據運營;
前臺:業務A、B、C。