產(chǎn)品經(jīng)理學(xué)習(xí)資料 - 數(shù)據(jù)處理全流程解析2021_第1頁(yè)
產(chǎn)品經(jīng)理學(xué)習(xí)資料 - 數(shù)據(jù)處理全流程解析2021_第2頁(yè)
產(chǎn)品經(jīng)理學(xué)習(xí)資料 - 數(shù)據(jù)處理全流程解析2021_第3頁(yè)
產(chǎn)品經(jīng)理學(xué)習(xí)資料 - 數(shù)據(jù)處理全流程解析2021_第4頁(yè)
產(chǎn)品經(jīng)理學(xué)習(xí)資料 - 數(shù)據(jù)處理全流程解析2021_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

數(shù)據(jù)處理全流程解析

本文將從數(shù)據(jù)采集層、數(shù)據(jù)接入層、數(shù)據(jù)處理層、數(shù)據(jù)應(yīng)用層

這四個(gè)層次來(lái)依序展開,講述一條數(shù)據(jù)從埋點(diǎn)產(chǎn)生,一直到最終被

加工應(yīng)用的過(guò)程,通過(guò)本文的閱讀理解,你可以收獲:

01數(shù)據(jù)是如何被采集的

數(shù)據(jù)采集是一個(gè)完整的工作流程,他需要三個(gè)標(biāo)準(zhǔn)的動(dòng)作來(lái)完

成:埋點(diǎn)、采集、上報(bào),這也是一組數(shù)據(jù)從產(chǎn)生到存儲(chǔ)必經(jīng)的三個(gè)

步驟。

1.1.埋點(diǎn)

埋點(diǎn)的功能是,在適當(dāng)?shù)奈恢?,以特定的時(shí)機(jī),以預(yù)定好的規(guī)

則收集我們需要的數(shù)據(jù)的一種技術(shù)。

一方面,當(dāng)用戶在app中產(chǎn)生動(dòng)作時(shí),對(duì)于我們來(lái)說(shuō),是不可

見的。所以我們需要通過(guò)埋點(diǎn),把用戶的行為盡可能全面,準(zhǔn)確地

記錄下來(lái)。以便我們后續(xù)對(duì)數(shù)據(jù)進(jìn)行挖掘分析,以可視化的方式,

重新復(fù)現(xiàn)用戶的行為。

另外一方面,除了用戶的行為外,很多時(shí)候我們還需要分析其

他實(shí)體的行為,比如對(duì)于我們的app來(lái)說(shuō),會(huì)在崩潰的時(shí)候發(fā)送錯(cuò)

誤日志,這其實(shí)也是一種埋點(diǎn),用于分析app自身這個(gè)實(shí)體,其他

還有活動(dòng),商品等等實(shí)體。

至此,我們可以給埋點(diǎn)重新再下一個(gè)定義:埋點(diǎn)是對(duì)于特定的

實(shí)體,在適當(dāng)?shù)奈恢?,特定的時(shí)機(jī),以預(yù)定好的規(guī)則收集我們需要

的數(shù)據(jù)的一種技術(shù)。

所以我們需要有一個(gè)需求文檔,記錄埋點(diǎn)的事件、埋點(diǎn)的位置、

埋點(diǎn)的上報(bào)時(shí)機(jī)、以及需要收集的數(shù)據(jù)等。

1.2.收集

一旦埋點(diǎn)被觸發(fā),數(shù)據(jù)便會(huì)產(chǎn)生,埋點(diǎn)便會(huì)以我們預(yù)先設(shè)定好

的規(guī)則去捕獲特定的數(shù)據(jù)。

但程序在運(yùn)行時(shí)所有的變量都是保存在內(nèi)存當(dāng)中的,如果出現(xiàn)

程序重啟或者機(jī)器宕機(jī)的情況,那這些數(shù)據(jù)就丟失了。埋點(diǎn)數(shù)據(jù)的

丟失會(huì)給我們后續(xù)的分析帶來(lái)困擾。

所以我們需要對(duì)內(nèi)存中數(shù)據(jù)進(jìn)行序列化,變成可傳輸?shù)奈募?/p>

存在本地文件。為后續(xù)的上報(bào)動(dòng)作做準(zhǔn)備。一般的接口返回?cái)?shù)據(jù)都

會(huì)封裝成JSON格式,比如類似下面這種:

〃埋點(diǎn)日志

access_id:wlGRm2PiEE0i〃訪問(wèn)id

city:佛山〃城市

userid:9054589〃用戶id

username:小明〃由戶名

event_name:store_pay〃事件名

event_type:1〃事件類型

■extra:{Hchannelu:null,Horder_idH:1001,“money”:100}//不展不以

os_ver:12.4.4〃系統(tǒng)版本

phone_city:玉林//ip城市

phone-operator:中國(guó)移動(dòng)//運(yùn)營(yíng)商

udid:377a92112e9e717d588b0dc5d9cacf6a〃用戶標(biāo)識(shí)

version:3.3.0〃app藤本

1.3.上報(bào)

經(jīng)過(guò)收集的數(shù)據(jù)從產(chǎn)品被送往數(shù)據(jù)接入層的動(dòng)作過(guò)程就是上報(bào)。

只有完成了上報(bào)成功并被存儲(chǔ),才能算是對(duì)實(shí)體進(jìn)行一次行為的記

錄。

上報(bào)動(dòng)作會(huì)對(duì)數(shù)據(jù)做最終把關(guān):首先,篩查待上報(bào)數(shù)據(jù),確保

這些數(shù)據(jù)是被允許上傳的,然后,按照數(shù)據(jù)協(xié)議的約定,將待上報(bào)

數(shù)據(jù)以合適的方式打包,最后,建立與數(shù)據(jù)接入層的通訊,完成數(shù)

據(jù)包的傳送。

原則上我們是希望數(shù)據(jù)能夠被及時(shí)準(zhǔn)確地上報(bào),但是我們并不

是出于時(shí)效的需求,而是希望能夠被完整且準(zhǔn)確地記錄而已。所以

在開始時(shí),對(duì)于大部分埋點(diǎn),可以將多個(gè)數(shù)據(jù)進(jìn)行一定的積累后統(tǒng)

一進(jìn)行上報(bào),既能保證產(chǎn)品的性能,又可以減輕數(shù)據(jù)的服務(wù)器和網(wǎng)

絡(luò)負(fù)擔(dān)。常見的上報(bào)策略有四種:

上報(bào)策略I實(shí)現(xiàn)方式優(yōu)點(diǎn)缺點(diǎn)

立刻的。可以確保數(shù)據(jù)的高時(shí)效性,過(guò)瑛繁無(wú)疑會(huì)影響產(chǎn)品師吸肖

實(shí)時(shí)上報(bào)JJg

耗用戶流量

數(shù)據(jù)采集后先暫存,每隔固定的時(shí)間便于數(shù)據(jù)在時(shí)間維度上的處每一次上報(bào)的數(shù)據(jù)量都不可控,如果在

定時(shí)上報(bào)對(duì)暫存的數(shù)據(jù)進(jìn)行一次集中上報(bào)。理;f時(shí)間間隔內(nèi)暫存的數(shù)據(jù)過(guò)多,同樣

響性能。

數(shù)據(jù)采集后先哲存,暫存數(shù)據(jù)每達(dá)到這種上報(bào)節(jié)奏可以消除暫存數(shù)據(jù)上報(bào)時(shí)間不可控,如果暫存數(shù)據(jù)遲

定量上報(bào)一定量才進(jìn)行一次集中上報(bào).數(shù)據(jù)積累過(guò)多產(chǎn)生的隱患遲積累不到一定的數(shù)量,則可能會(huì)使數(shù)

據(jù)喪失時(shí)效。

當(dāng)完成這幾步操作后,此時(shí)數(shù)據(jù)就已經(jīng)脫離APP了,開始往數(shù)

倉(cāng)的方向流動(dòng),數(shù)倉(cāng)承擔(dān)著接收數(shù)據(jù)并最終將數(shù)據(jù)落地到應(yīng)用的職

責(zé)。

02數(shù)據(jù)是如何被接收的

數(shù)據(jù)在到達(dá)接入層后會(huì)經(jīng)歷解包、解析轉(zhuǎn)換、數(shù)據(jù)清洗、數(shù)據(jù)

存儲(chǔ)四個(gè)技術(shù)流程。只有經(jīng)過(guò)了這一系列的步驟,數(shù)據(jù)才能夠以規(guī)

整的形式呈現(xiàn)出來(lái),以供下一個(gè)環(huán)節(jié)的消費(fèi)。

2.1.解包(反序列化)

當(dāng)兩個(gè)進(jìn)程(前后端)在進(jìn)行遠(yuǎn)程通信時(shí),彼此可以發(fā)送來(lái)各

種類型的數(shù)據(jù)。

但無(wú)論是何種類型的數(shù)據(jù),都會(huì)以二進(jìn)制序列的形式在網(wǎng)絡(luò)上

傳送。發(fā)送方需要把這個(gè)對(duì)象轉(zhuǎn)換為字節(jié)序列,才能在網(wǎng)絡(luò)上傳送;

接收方則需要把字節(jié)序列再恢復(fù)為對(duì)象。埋點(diǎn)數(shù)據(jù)在被上報(bào)的

時(shí)候,是以json的格式進(jìn)行壓縮傳輸?shù)模詳?shù)據(jù)在到達(dá)接入層后

會(huì)經(jīng)歷解包(也就是反序列化的操作)操作。

2.2.解析轉(zhuǎn)換

在數(shù)據(jù)收集的階段,我們收集上來(lái)的數(shù)據(jù)是按照一定的規(guī)則進(jìn)

行拼裝的,所以到達(dá)了接入層之后,就需要對(duì)它進(jìn)行解析。

首先把它每個(gè)字段對(duì)應(yīng)的度量值都提取出來(lái)。然后提取出來(lái)后

的數(shù)據(jù)還要經(jīng)過(guò)一步轉(zhuǎn)換,因?yàn)樵诮馕龊蟮臄?shù)據(jù)類型與之前采集時(shí)

定義的邏輯類型會(huì)存在差異,所以需要按照原先的定義,將每個(gè)字

段的取值轉(zhuǎn)換為正確的類型和格式。便于后續(xù)的處理與應(yīng)用

2.3.數(shù)據(jù)清洗

而且當(dāng)數(shù)據(jù)量足夠大時(shí),必定會(huì)產(chǎn)生“不干凈”的數(shù)據(jù)。我們

以臟數(shù)據(jù)來(lái)稱呼這類數(shù)據(jù)。臟數(shù)據(jù)一般是指不真實(shí)、不完整、不正

確、重復(fù)或無(wú)意義的數(shù)據(jù)。在數(shù)據(jù)采集和接入的過(guò)程中,產(chǎn)生臟數(shù)

據(jù)的原因有很多,常見原因如下:

因數(shù)據(jù)采集組件未被正確配置導(dǎo)致一組數(shù)據(jù)缺失關(guān)鍵度量而不

完整;

因用戶產(chǎn)品發(fā)生異常導(dǎo)致上報(bào)的數(shù)據(jù)中存在錯(cuò)誤;

因用戶產(chǎn)品發(fā)生異常或網(wǎng)絡(luò)傳輸故障導(dǎo)致同一組數(shù)據(jù)被重復(fù)上

報(bào)。

臟數(shù)據(jù)往往無(wú)法被糾正和利用,數(shù)據(jù)清洗的目標(biāo)就是盡可能地

消除臟數(shù)據(jù),并修復(fù)臟數(shù)據(jù)產(chǎn)生的影響。對(duì)于自動(dòng)化數(shù)據(jù)產(chǎn)品體系

而言,這一過(guò)程要通過(guò)設(shè)置各種識(shí)別規(guī)則,結(jié)合機(jī)器學(xué)習(xí)來(lái)完成,

必要時(shí)也要進(jìn)行人工干預(yù),以促進(jìn)自動(dòng)化體系的完善。

2.4.數(shù)據(jù)存儲(chǔ)

把數(shù)據(jù)比作客人,如果之前的三個(gè)過(guò)程是對(duì)客人的各種招待(當(dāng)

然也包括將不速之客拒之門外),那么數(shù)據(jù)存儲(chǔ)就是要為客人安排住

宿了,數(shù)據(jù)倉(cāng)庫(kù)是實(shí)現(xiàn)數(shù)據(jù)存儲(chǔ)的重要技術(shù)手段。

根據(jù)數(shù)據(jù)協(xié)議和采集規(guī)則的定義,接入層會(huì)事先在數(shù)據(jù)倉(cāng)庫(kù)中

建立相應(yīng)的表(Table),然后將接入的每一組數(shù)據(jù)依次存入表中(每

一組數(shù)據(jù)在表中占據(jù)一行)。

這樣看來(lái),數(shù)據(jù)倉(cāng)庫(kù)就像一座大型賓館,每一張表則是為不同

體格的客人量身定制的各種不同的房間。將各表以某種時(shí)間粒度(如

小時(shí)、日、周)劃分分區(qū),根據(jù)上報(bào)時(shí)間將數(shù)據(jù)分配到對(duì)應(yīng)的分區(qū)

中,不僅便于數(shù)據(jù)的歸檔存儲(chǔ),更有利于提高數(shù)據(jù)在今后被提取使

用的效率。

最終在處理完之后,埋點(diǎn)日志就變成一條條的明細(xì)記錄在表中,

在多維事件模型中,是以大寬表的形式存在,在維度模型中,則是

以事實(shí)表的形式存在。這些都是最原始的,未經(jīng)過(guò)數(shù)據(jù)處理的明細(xì)

數(shù)據(jù),具體要怎么運(yùn)用它們,就需要進(jìn)入到我們下一步,數(shù)據(jù)處理

的流程了。

03數(shù)據(jù)是如何被處理的

數(shù)據(jù)接入層所存儲(chǔ)的上報(bào)數(shù)據(jù)是最原始的數(shù)據(jù)形態(tài),是一系列

用戶行為的明細(xì)數(shù)據(jù),這些數(shù)據(jù)往往只是對(duì)用戶行為等的事實(shí)描述,

離分析和應(yīng)用還隔著“處理”這關(guān)鍵的一層。

數(shù)據(jù)處理層通過(guò)兩個(gè)基礎(chǔ)操作:歸并和計(jì)算,便可針對(duì)各種應(yīng)

用場(chǎng)景做各式各樣的處理,產(chǎn)生各種類型的數(shù)據(jù)以供消費(fèi)。

3.1.歸并

歸并是指從一張或多張數(shù)據(jù)二維表中選取部分?jǐn)?shù)據(jù),整理成一

份“新”二維表的操作,歸并處理主要有以下四種操作,選擇、投

影、合并、聯(lián)結(jié):

針對(duì)一份數(shù)據(jù):

選擇(Selection):將一張二維表,以一定的規(guī)則按行抽取其

中部分?jǐn)?shù)據(jù)形成“新”的二維表,列數(shù)不變

|用戶ID悵(1年齡城市』

A20100011男30廣州

A20100012女15北京

A20100013女22深圳

A20100014男33深圳

4J圉小外性別=女

|用戶ID%!1年齡城市1

A20100012女15北京

投影(Projection):將一張二維表,以一定的規(guī)則按列

抽取其中部分?jǐn)?shù)據(jù)形成“新”的二維表,行數(shù)不變

用戶ID性311年齡城市

A20100011男30廣州

A20100012女15北京

A20100013女22深圳

A20100014男33深圳

段,用戶ID、做!J、年齡

|用戶ID悵!J年齡

A20100011男30

A20100012女15

A20100013女22

針對(duì)多份數(shù)據(jù):

合并(Union):把兩張二維表按行拼接成一份“新”二維表,

即縱向擴(kuò)展,兩張二維表所有列上的字段必須相同。

|用戶

ID1陶I麻

A20100011男30廣州I用戶IDirrwrrMBS

A20100012女15A2010001130廣州

按行合并i

A20100013女22深圳A20100012女15犒

A20100014男33深圳A2O1OOO13女22深圳

A20100014男33深圳

|用戶IDI輻IA20100015男26廣州

A2010001Si26廣州A20100016女31羽

A20100016女31天津A20100017女24

連接(Join):把兩張二維表按列拼接成一份“新”二維表,即

橫向擴(kuò)展。兩張二維表至少有一個(gè)相同字段作為連接鍵。

3.2.計(jì)算

這里的計(jì)算與數(shù)學(xué)中的計(jì)算概念大致相同,指通過(guò)已知數(shù)據(jù)得

到未知數(shù)據(jù)的過(guò)程。在數(shù)據(jù)處理中,常見的計(jì)算操作分為兩種:組

合計(jì)算和聚合計(jì)算

組合計(jì)算:將二維表的不同列(維度)上的度量值進(jìn)行橫向計(jì)

算的過(guò)程。(可以是數(shù)學(xué)運(yùn)算,也可以是邏輯運(yùn)算,條件運(yùn)算等)

日期用戶IDI退款金額I支付/I

2020/4/15A20100015200500

2020/4/15A2010001610120

2020/4/16A2010001750200實(shí)付金額>0低價(jià)值

實(shí)付金額>100中價(jià)值

T------F實(shí)付金額>1000高價(jià)值

理衿生額克行主敲

日期用戶ID退款金額支付金額實(shí)付金額用戶價(jià)值I

2020/4/15A2010001S20020001800高

2020/4/15A2010001610120110中

聚合計(jì)算:將二維表的同一列(維度)上的度量值進(jìn)行縱向計(jì)

算的過(guò)程。(一般用于統(tǒng)計(jì),如計(jì)數(shù)、求和、求平均、求方差、求極

值等)

在經(jīng)過(guò)一系列的歸并與計(jì)算之后,數(shù)據(jù)已經(jīng)被開發(fā)人員制作成

具有業(yè)務(wù)意義的指標(biāo)了。并且在不同的表中儲(chǔ)存起來(lái)。于是接下來(lái)

我們就可以對(duì)這些指標(biāo),進(jìn)行實(shí)際意義上的應(yīng)用了。

04數(shù)據(jù)是如何應(yīng)用的

在經(jīng)歷了采集、接入、處理這一系列流程后,數(shù)據(jù)終于到達(dá)應(yīng)

用層了。現(xiàn)在的數(shù)據(jù)雖然已經(jīng)被制作成指標(biāo),但還是以一種不太友

好的方式一一數(shù)據(jù)表的方式呈現(xiàn),所以我們要在提供的數(shù)據(jù)基

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論