china0114.com-日韩欧美中文免费,免费视频一区,免费视频一区,国产精品色网

公眾號(hào)
關(guān)注微信公眾號(hào)
移動(dòng)端
創(chuàng)頭條企服版APP

作為數(shù)據(jù)產(chǎn)品經(jīng)理,你需要知道這些技術(shù)知識(shí)

6230

在數(shù)據(jù)分析領(lǐng)域下,總會(huì)被提及諸如SQL、Hive,甚至Hardoop、Druid、Spark等這些技術(shù)上的詞匯。那么作為一名數(shù)據(jù)領(lǐng)域的產(chǎn)品經(jīng)理,聽著這些不是很常見的產(chǎn)品知識(shí),又應(yīng)該具備怎樣的技術(shù)知識(shí)呢?本文主要從“用戶行為數(shù)據(jù)“角度介紹一整套的技術(shù)架構(gòu)以及相關(guān)的技術(shù)要點(diǎn)。

閱讀指南

  1. 受眾人群:數(shù)據(jù)型產(chǎn)品經(jīng)理、數(shù)據(jù)運(yùn)營(yíng)等初級(jí)崗位;
  2. 閱讀收獲:初步了解用戶行為分析數(shù)據(jù)類產(chǎn)品的大致架構(gòu)、掌握4大環(huán)節(jié)的數(shù)據(jù)技術(shù)要點(diǎn)。

一、用戶行為分析系統(tǒng)

本文將從數(shù)據(jù)采集、數(shù)據(jù)接入、數(shù)據(jù)分析、數(shù)據(jù)展示等4個(gè)重要地方,分別介紹相關(guān)涉及的技術(shù)知識(shí)。這一節(jié)主要介紹整體概念。

1.1 概念

用戶行為分析系統(tǒng)其實(shí)是指用戶使用產(chǎn)品過程中,把產(chǎn)生的行為數(shù)據(jù)通過分析而成的報(bào)表工具。此類數(shù)據(jù)區(qū)別于業(yè)務(wù)數(shù)據(jù),大多為公開、有權(quán)限獲取的,比如一些設(shè)備信息、埋點(diǎn)信息等。

目前行業(yè)較為人熟知的有百度統(tǒng)計(jì)、友盟、神策等,而使用此類產(chǎn)品的主要是數(shù)據(jù)分析師、數(shù)據(jù)運(yùn)營(yíng)和產(chǎn)品經(jīng)理等。目的是為了統(tǒng)計(jì)埋點(diǎn)、基礎(chǔ)指標(biāo)分析(如PV、UV)等,從而對(duì)產(chǎn)品進(jìn)行體驗(yàn)優(yōu)化或運(yùn)營(yíng)推廣。

(樣例:數(shù)據(jù)分析系統(tǒng)圖)

1.2 數(shù)據(jù)系統(tǒng)框架

1.2.1 數(shù)據(jù)采集

一般用戶使用產(chǎn)品的時(shí)候,所填寫的信息會(huì)經(jīng)由業(yè)務(wù)系統(tǒng)加密儲(chǔ)存。而行為數(shù)據(jù)是不會(huì)經(jīng)由這些系統(tǒng)收集,而由專門的采集工具進(jìn)行采集,這就是SDK

1.2.2 數(shù)據(jù)接入

因?yàn)镾DK采集的數(shù)據(jù)是非結(jié)構(gòu)化的,所以數(shù)據(jù)都是以原始數(shù)據(jù)的方式按批次定期或?qū)崟r(shí)上傳。服務(wù)端通過接口對(duì)這些數(shù)據(jù)進(jìn)行解析、加工處理,初步形成結(jié)構(gòu)化的日志數(shù)據(jù),并在數(shù)據(jù)庫(kù)按表進(jìn)行存儲(chǔ)。

1.2.3 數(shù)據(jù)分析

當(dāng)數(shù)據(jù)解析并存儲(chǔ)之后,即可通過離線和實(shí)時(shí)兩大方式進(jìn)行分析。部分指標(biāo)計(jì)算量大且實(shí)時(shí)要求不高,則會(huì)采取T+1、T+2(即第二天、第三天出結(jié)果)等離線計(jì)算方式。

有些指標(biāo)時(shí)效性要求高,如關(guān)鍵指標(biāo)、日常運(yùn)營(yíng)活動(dòng)(如雙十一)等,就需要較高的實(shí)時(shí)計(jì)算方式,以便監(jiān)測(cè)表現(xiàn)。兩大方式采用的系統(tǒng)框架會(huì)有所差別,后面詳解。

1.2.4 數(shù)據(jù)應(yīng)用

當(dāng)使用結(jié)構(gòu)化數(shù)據(jù)進(jìn)行分析時(shí),就需要可視化的圖表進(jìn)行展示,不管哪種方式,基本就是通過報(bào)表網(wǎng)站平臺(tái)進(jìn)行展示。比如折線圖、表格、柱狀圖等,甚至還需要提供更多維的分析指標(biāo)支持用戶自主查詢。

二、數(shù)據(jù)采集層(SDK)

2.1 何為SDK?

2.1.1 定義

SDK是指一種軟件開發(fā)工具包,是數(shù)據(jù)采集的必備工具,英文為“Software Development Kit”。

本質(zhì)上它其實(shí)是一些接口API的文件,為某個(gè)應(yīng)用程序提供服務(wù)。也可以理解為應(yīng)用開發(fā)者通過接入這些文件,并調(diào)用里面的相關(guān)接口,即可采集相應(yīng)數(shù)據(jù)。

因?yàn)镾DK的大小一定程度上會(huì)影響應(yīng)用程序性能,所以盡量輕量處理,占內(nèi)存大多在幾百K和幾兆之間。

2.1.2 作用

不同業(yè)務(wù)下,SDK的應(yīng)用性質(zhì)是不同的。常見的就有數(shù)據(jù)行為類SDK、功能服務(wù)類SDK以及廣告營(yíng)銷類SDK等。

其中功能服務(wù)類就是指應(yīng)用通過接入SDK增加一些特殊的產(chǎn)品功能服務(wù),而廣告營(yíng)銷類則指專門做消息推送、營(yíng)銷推廣等業(yè)務(wù)的SDK。而本文僅介紹數(shù)據(jù)行為類SDK。

2.2 SDK類型

主要分為客戶端SDK和服務(wù)端SDK,客戶端SDK是指這類SDK接入在應(yīng)用的前端,比如iOS、安卓等。而服務(wù)端SDK是指接入在后端,更多的在后臺(tái)底層。

2.2.1 客戶端SDK

  • iOS SDK:顧名思義,就是以iOS操作系統(tǒng)進(jìn)行開發(fā)的SDK工具包;
  • Android SDK:同樣是以安卓操作系統(tǒng)進(jìn)行開發(fā)的,可應(yīng)用在所有安卓類軟件中;
  • H5 SDK:指以網(wǎng)頁(yè)操作系統(tǒng)為生的SDK,可應(yīng)用在web網(wǎng)站、H5網(wǎng)頁(yè)、公眾號(hào)(功能實(shí)質(zhì)是H5開發(fā))等;
  • 小程序 SDK:小程序是這兩年新興的產(chǎn)品應(yīng)用,依賴于不同的軟件平臺(tái)。所以需要基于不同的平臺(tái)進(jìn)行開發(fā),比如微信小程序、支付寶小程序、百度小程序等,同時(shí)還需要分iOS和Android兩大系統(tǒng)進(jìn)行開發(fā)。

2.2.2 服務(wù)端SDK

  • 定義:服務(wù)端的sdk具體通過后端上報(bào)數(shù)據(jù),即業(yè)務(wù)應(yīng)用采集到數(shù)據(jù)后,通過自身的服務(wù)端傳到大數(shù)據(jù)系統(tǒng)的服務(wù)端,即“業(yè)務(wù)服務(wù)端-數(shù)據(jù)服務(wù)端”,而非客戶端SDK的“業(yè)務(wù)服務(wù)端-客戶端SDK-數(shù)據(jù)服務(wù)端“。
  • 類型:由于每個(gè)業(yè)務(wù)的狀況不同,開發(fā)語言都不是翹楚的,所以針對(duì)服務(wù)端類型的SDK都會(huì)基于不同的語言提供相應(yīng)的開發(fā)版本,包括Java SDK、Pyhon SDK、PHP SDK、C SDK等等。

2.2.3 小結(jié)

不同的用戶有不同的業(yè)務(wù)訴求,客戶端和服務(wù)端各有優(yōu)缺點(diǎn),主要取決于業(yè)務(wù)訴求。整體而言,大多數(shù)產(chǎn)品應(yīng)用使用客戶端SDK居多。

2.3 作用

SDK大的任務(wù)就在于采集數(shù)據(jù)、識(shí)別數(shù)據(jù)和上報(bào)數(shù)據(jù)。

2.3.1 采集數(shù)據(jù)

由于SDK采集的數(shù)據(jù)較廣,涉及種類較多,主要分幾類:

  1. 設(shè)備數(shù)據(jù):具體指終端硬件設(shè)備,如電腦設(shè)備、手機(jī)設(shè)備等,如果是手機(jī)可以具體到手機(jī)類型、品牌、網(wǎng)絡(luò)環(huán)境等。如果是電腦,則是電腦型號(hào)、瀏覽器類型等;
  2. 程序數(shù)據(jù):具體指應(yīng)用程序的數(shù)據(jù),比如是APP,則是此APP應(yīng)用程序內(nèi)的基礎(chǔ)數(shù)據(jù),包括APP版本、渠道、安裝時(shí)間等等;
  3. 埋點(diǎn)數(shù)據(jù):具體指用戶在某應(yīng)用程序觸發(fā)產(chǎn)生的行為數(shù)據(jù),比如點(diǎn)擊哪個(gè)頁(yè)面、停留時(shí)長(zhǎng)、頁(yè)面曝光、啟動(dòng)時(shí)間等等。主要是基于業(yè)務(wù)考慮進(jìn)行埋點(diǎn)設(shè)計(jì)。

2.3.2 識(shí)別數(shù)據(jù)

由于采集的數(shù)據(jù)屬于原始數(shù)據(jù),且SDK層基于原始數(shù)據(jù)的真實(shí)性和翹楚性,基本是不會(huì)做結(jié)構(gòu)化的邏輯處理,即不會(huì)做數(shù)據(jù)加工。所以SDK在這里多會(huì)進(jìn)行識(shí)別數(shù)據(jù)的處理。

  • 識(shí)別用戶ID:不管數(shù)據(jù)如何原始、混亂,有一個(gè)關(guān)鍵的就是需要識(shí)別產(chǎn)生這個(gè)數(shù)據(jù)的“用戶”是誰,所以就有用戶ID的說法。但這個(gè)用戶ID不同的產(chǎn)品和業(yè)務(wù),各家不盡相同,生成ID的算法也不同,有人用操作系統(tǒng)的IDFA和IMEI生成設(shè)備口徑的算法,也有人直接用軟件的賬戶ID作為翹楚用戶ID,這個(gè)是沒有規(guī)定的。?例子:“userid”:321990ddwsadnkiouf78hjh”;
  • 識(shí)別程序ID:因?yàn)镾DK是支持多個(gè)程序獨(dú)'立使用的,但是數(shù)據(jù)終是在同一個(gè)服務(wù)端和數(shù)據(jù)庫(kù),那么就需要做應(yīng)用程序之間的區(qū)分。這個(gè)時(shí)候就有應(yīng)用ID,每個(gè)獨(dú)'立應(yīng)用分配一個(gè)ID,且是翹楚的。至于如何分配生成,也是看各家的業(yè)務(wù)訴求,并沒有翹楚標(biāo)準(zhǔn)。例子:“productid”:“12321321321dasdasdas33213”

2.3.3 上報(bào)數(shù)據(jù)

由于SDK在嵌入應(yīng)用程序前,就已經(jīng)打通與服務(wù)端的接口并進(jìn)行上報(bào)。所以此時(shí)SDK是已經(jīng)界定了一系列的上報(bào)邏輯,以及需要傳什么數(shù)據(jù)。

  • 原始數(shù)據(jù):其實(shí)就是一條條原始數(shù)據(jù)記錄,每條數(shù)據(jù)附帶那一刻采集的諸多信息,包括用戶ID、設(shè)備數(shù)據(jù)、埋點(diǎn)數(shù)據(jù)等,但這些數(shù)據(jù)并不是每條都必帶的,取決于當(dāng)時(shí)的環(huán)境是否有提供這些信息.
  • Session:指某一次節(jié)會(huì)話信息,主要為了記錄用戶行為習(xí)慣。因?yàn)槊總€(gè)用戶操作習(xí)慣、時(shí)長(zhǎng)都不同,有可能突然不再操作,又可能隔幾分鐘在操作,對(duì)于這樣的情況需要基于業(yè)務(wù)場(chǎng)景的訴求,定義這些session邏輯,并分別創(chuàng)建不同的sessionid去分割。比如停止操作幾分鐘后、程序退出或切換至后臺(tái)等是否需要定義。
  • Cookie:主要是網(wǎng)站使用的一種識(shí)別用戶的數(shù)據(jù)集,一般存儲(chǔ)在用戶本地終端上,以便于用戶在不同時(shí)間操作時(shí)都可以快速調(diào)用且識(shí)別為同一個(gè)設(shè)備用戶。與session區(qū)別在于,Cookie存儲(chǔ)在瀏覽器內(nèi),數(shù)據(jù)量有限且相對(duì)沒那么安全。

三、數(shù)據(jù)接入存儲(chǔ)層

從這一環(huán)節(jié)開始,就進(jìn)入服務(wù)端運(yùn)作的流程。這個(gè)環(huán)境涉及數(shù)據(jù)接入、解析和存儲(chǔ)等3方面。

前面提到,SDK只會(huì)采集原始數(shù)據(jù)(就好比綠色無污染的食品),而這些非結(jié)構(gòu)化數(shù)據(jù)其實(shí)不利于管理和使用的。這時(shí)候就需要在接入后進(jìn)行數(shù)據(jù)解析、清洗加工再扔進(jìn)數(shù)據(jù)庫(kù)。

3.1 接入層

這一層是服務(wù)端與SDK端之間聯(lián)系的一層,所有的日志數(shù)據(jù)就是通過這個(gè)接入層進(jìn)行獲取,但獲取成功后是需要返回“成功”的信號(hào)給到SDK,證明是暢通的沒有報(bào)錯(cuò)。

但大多數(shù)情況下,由于上報(bào)的數(shù)據(jù)較多,盡管是按批次上報(bào),也是會(huì)出現(xiàn)類似“排隊(duì)”的情況,一個(gè)一個(gè)去等完成再返回?cái)?shù)據(jù)效率十分之低。所以這時(shí)候就會(huì)借用“redis”手段。

redis:Remote Dictionary Server 遠(yuǎn)程字典服務(wù),實(shí)質(zhì)是一個(gè)key-value存儲(chǔ)系統(tǒng),一門開源的數(shù)據(jù)庫(kù)技術(shù)。簡(jiǎn)單來說它就好像一個(gè)副服務(wù)器,當(dāng)主服務(wù)器接收到諸多數(shù)據(jù)后,都可以扔到這里來,讓它慢慢接收,并且無需等待返回“結(jié)果”信息,主服務(wù)就可以告知SDK我這邊“ok”了,請(qǐng)放心。

3.2 邏輯層

這一層的作用實(shí)際是指對(duì)數(shù)據(jù)進(jìn)行解析、清洗加工處理,即日志數(shù)據(jù),因?yàn)閿?shù)據(jù)的存儲(chǔ)是要按照明確的數(shù)據(jù)庫(kù)和表的結(jié)構(gòu)來存儲(chǔ)。

日志數(shù)據(jù)例子:{“userid”:”3213213hdhdhasjoiewq3321″,”productid”:”dadsadsad2321321″,”mobile”:”samsung:SM-G9008V”,”country”:”CN”}

3.3 數(shù)據(jù)存儲(chǔ)

提到數(shù)據(jù)存儲(chǔ),就必須接觸到數(shù)據(jù)庫(kù),那么對(duì)于這樣的用戶行為數(shù)據(jù),又會(huì)使用什么樣的數(shù)據(jù)庫(kù)呢?目前關(guān)于數(shù)據(jù)庫(kù),主要分為關(guān)系型和非關(guān)系型數(shù)據(jù)庫(kù)。

3.3.1 關(guān)系型數(shù)據(jù)庫(kù)

平常所接觸到諸如Oracle、Hive、PG等,其實(shí)這些都屬于關(guān)系型數(shù)據(jù)庫(kù),本質(zhì)上都是建立在SQL(結(jié)構(gòu)化查詢語言)的基礎(chǔ)上,所以大的特征就是結(jié)構(gòu)化。這些適合大量的數(shù)據(jù)查詢,統(tǒng)一提供增、刪、改、查、排序等多種查詢。

數(shù)據(jù)庫(kù)類型有很多,以下僅列舉常遇見的3種:

3.3.2 非關(guān)系型數(shù)據(jù)庫(kù)(NoSQL)

此類數(shù)據(jù)庫(kù)的存在是出于性能、速度等方面考慮,主要是因?yàn)殛P(guān)系型數(shù)據(jù)庫(kù)涉及數(shù)據(jù)較大、結(jié)構(gòu)復(fù)雜,一些簡(jiǎn)單、體量小的存儲(chǔ)和查詢不適合在這樣的數(shù)據(jù)庫(kù)進(jìn)行運(yùn)作,所以才有這樣的數(shù)據(jù)庫(kù)。

上面也提到,其中redis就是這么一種,以及MongoD、Memcache。

  • 優(yōu)點(diǎn):這類數(shù)據(jù)庫(kù)優(yōu)點(diǎn)在于足夠快、結(jié)構(gòu)單一、數(shù)據(jù)集中等;
  • 缺點(diǎn):結(jié)構(gòu)相對(duì)沒那么規(guī)范清晰、會(huì)有重復(fù)冗余;

3.3.3 數(shù)據(jù)庫(kù)表

在使用SQL查詢的時(shí)候,一個(gè)關(guān)鍵地方就是需要知道表結(jié)構(gòu)。所謂的表結(jié)構(gòu)就是數(shù)據(jù)表與表之間的關(guān)系,以及具體表字段的含義。所以數(shù)據(jù)庫(kù)表的設(shè)計(jì)十分重要,對(duì)后續(xù)SQL查詢計(jì)算、機(jī)器運(yùn)行性能、任務(wù)執(zhí)行等方面有很大的影響。

(樣例:usertable_01)

存在在數(shù)據(jù)庫(kù)中的就是一張張這樣的表,通過SQL語句查詢可以快速獲取所要的數(shù)據(jù)結(jié)果。所有原始數(shù)據(jù)經(jīng)過解析清洗之后,就會(huì)像這樣以結(jié)構(gòu)化的形式進(jìn)行存儲(chǔ),以便于管理和使用。

表設(shè)計(jì):系統(tǒng)有諸多數(shù)據(jù)指標(biāo),而對(duì)于產(chǎn)品或運(yùn)營(yíng)而言,就是定義各個(gè)指標(biāo)的統(tǒng)計(jì)邏輯和場(chǎng)景。那么對(duì)于技術(shù)者來說,除了輸出固定的查詢語句之外,還需要進(jìn)行合理的表設(shè)計(jì)。

所謂的表設(shè)計(jì),就是根據(jù)指標(biāo)體系把結(jié)構(gòu)化的數(shù)據(jù)分拆成多張數(shù)據(jù)表,并進(jìn)行有機(jī)關(guān)聯(lián),從而提供合理的統(tǒng)計(jì)輸出。

比喻需要固定了解每天使用程序的用戶的某些設(shè)備信息(手機(jī)型號(hào)、品牌、網(wǎng)絡(luò)環(huán)境等),就可以放在同一張表,而無需跨表關(guān)聯(lián)影響效率,同時(shí)這樣的設(shè)計(jì)有利于性能。但具體如何設(shè)計(jì),主要是基于業(yè)務(wù)的指標(biāo)體系考慮。

四、數(shù)據(jù)分析層

在大數(shù)據(jù)分析開發(fā)當(dāng)中,有諸如Spark、Hive、Hbase這些數(shù)據(jù)庫(kù)或計(jì)算引擎,但這些都基于一套核心的系統(tǒng),就是Hadoop。要開發(fā)一套完整的大數(shù)據(jù)開發(fā)系統(tǒng),大多數(shù)技術(shù)都是從Hadoop中獲取能力。

4.1 核心框架Hadoop

4.1.1 定義

Hadoop是大數(shù)據(jù)開發(fā)所使用的一個(gè)核心框架,是一個(gè)允許使用簡(jiǎn)單編程模型跨計(jì)算機(jī)集群分布式處理大型數(shù)據(jù)集的系統(tǒng)。很多關(guān)于大數(shù)據(jù)開發(fā)的技術(shù)模塊都基于此基礎(chǔ)上,覆蓋了數(shù)據(jù)傳輸、數(shù)據(jù)存儲(chǔ)管理、數(shù)據(jù)計(jì)算等諸多方面。

4.1.2 作用

使用Hadoop可以方便地管理分布式集群,將海量數(shù)據(jù)分布式地存儲(chǔ)在集群中,并使用分布式并行程序來處理這些數(shù)據(jù)。

4.1.3 架構(gòu)

一套完整的Hadoop框架涉及數(shù)據(jù)傳輸、存儲(chǔ)到計(jì)算等環(huán)節(jié),并在這些基礎(chǔ)上提供種類較多的組件,為快速搭建大數(shù)據(jù)分析平臺(tái)提供成熟的基礎(chǔ)能力。

  • HDFS:能夠提供高吞吐量的分布式文件系統(tǒng)。
  • YARN:用于任務(wù)調(diào)度和集群資源管理。就好比是一個(gè)項(xiàng)目的PMO,產(chǎn)品提需求,根據(jù)現(xiàn)有的資源、時(shí)間、成本等快速分配任務(wù),調(diào)動(dòng)機(jī)器資源來支持。
  • MapReduce:基于YARN之上,用于大型數(shù)據(jù)集并行處理的系統(tǒng)。也是初代的計(jì)算引擎。Hive就是基于這個(gè)系統(tǒng)之上。
  • Flume:一個(gè)日志收集系統(tǒng),作用在于將大量日志數(shù)據(jù)從各數(shù)據(jù)源進(jìn)行收集、聚合,并終存儲(chǔ)。
  • Sqoop:用于底層數(shù)據(jù)傳輸?shù)墓ぞ摺?/li>
  • Kafka:一種高吞肚量的分布式消息隊(duì)列系統(tǒng)。
  • Hbase:一個(gè)可伸縮的分布式數(shù)據(jù)庫(kù),支持大型表的結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ),底層使用HDFS存儲(chǔ)數(shù)據(jù)。
  • Hive:基于Hadoop的數(shù)據(jù)倉(cāng)庫(kù)工具,可以將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張張數(shù)據(jù)庫(kù)表,并提供簡(jiǎn)單的SQL查詢功能,可以將SQL語句轉(zhuǎn)換為MapReduce任務(wù)運(yùn)行。更多支持離線任務(wù)。
  • Spark:一個(gè)快速通用的Hadoop數(shù)據(jù)計(jì)算引擎,適用于實(shí)時(shí)任務(wù)。同時(shí)也應(yīng)用于機(jī)器學(xué)習(xí)、流處理等。

4.2 計(jì)算類型

4.2.1 離線計(jì)算

離線計(jì)算就是在計(jì)算開始前已知所有輸入數(shù)據(jù),輸入數(shù)據(jù)不會(huì)產(chǎn)生變化,且在解決一個(gè)問題后就要立即得出結(jié)果的前提下進(jìn)行的計(jì)算。時(shí)間上按天來算,就是T+1、T+2甚至T+7等,主要看指標(biāo)的時(shí)效性優(yōu)先級(jí)要求。

4.2.2 實(shí)時(shí)計(jì)算

實(shí)時(shí)計(jì)算是相對(duì)離線而言,就是指查詢條件不固定、目標(biāo)不明確,但又對(duì)數(shù)據(jù)需求的時(shí)效有較大要求,所以需要實(shí)時(shí)查詢進(jìn)行分析。

優(yōu)點(diǎn)是自定義條件多,能滿足多維分析的數(shù)據(jù)需求,缺點(diǎn)是考驗(yàn)查詢引擎,由于處理數(shù)據(jù)量大短時(shí)間輸出結(jié)果會(huì)有所偏差,且等待時(shí)間長(zhǎng)。

4.3 計(jì)算引擎

按照目前行業(yè)的發(fā)展,關(guān)于計(jì)算引擎已經(jīng)發(fā)展到了第4代,第1代是MapReduce,而在這里重點(diǎn)介紹5種。

  1. Hive:前面介紹到這種查詢引擎,其實(shí)它屬于第2代流行的引擎,目前仍有大量企業(yè)使用這個(gè),主要是十分成熟,能滿足大部分的基礎(chǔ)需求場(chǎng)景。但由于數(shù)據(jù)量大,依賴不少組件,導(dǎo)致數(shù)據(jù)量一大查詢速度就相對(duì)較慢。
  2. Spark:目前十分流行的第3代查詢引擎,能夠承擔(dān)批數(shù)據(jù)處理,和Hive兼容,相比它查詢速度更快一些,擴(kuò)展性高。
  3. Flink:是近流行的第4代查詢引擎,主要是同時(shí)支持流數(shù)據(jù)和批量式數(shù)據(jù)處理,相較于Spark有較大得提升。但目前技術(shù)相對(duì)新一些,應(yīng)用得還不算多。
  4. Druid:一種高效實(shí)時(shí)、迅速的分布式數(shù)據(jù)查詢系統(tǒng),它采用不是前3者依賴得hadoop框架。主要支持聚合查詢、實(shí)時(shí)查詢,且靈活。但有些數(shù)據(jù)分析指標(biāo)不一定能支持。
  5. Impala:一種數(shù)據(jù)查詢引擎,優(yōu)點(diǎn)在于高性能、低延遲(準(zhǔn)實(shí)時(shí))。相比hive繞過底層MapReduce,所以更快。同時(shí)也支持復(fù)雜的交互式查詢。

整體來說,不同的業(yè)務(wù)場(chǎng)景采用不同的計(jì)算架構(gòu),沒有優(yōu)劣之分,只有合不合適。

五、數(shù)據(jù)應(yīng)用層

很多時(shí)候,大家常接觸的都是數(shù)據(jù)可視化平臺(tái),比如常見的BI報(bào)表平臺(tái)、數(shù)據(jù)大屏等,都是充分使用了數(shù)據(jù)可視化技術(shù)進(jìn)行呈現(xiàn)。

那么實(shí)現(xiàn)這些效果,又用到了哪些技術(shù)手段?

5.1 數(shù)據(jù)平臺(tái)

在介紹可視化技術(shù)前,不得不先說數(shù)據(jù)報(bào)表平臺(tái),因?yàn)檫@是大多人常接觸的,如那些圖表、網(wǎng)絡(luò)圖譜、3D城市模型等。拋開單個(gè)而言,它是一個(gè)平臺(tái)化的產(chǎn)品。

目前第三方應(yīng)用較多的就有百度統(tǒng)計(jì)、阿里、友盟、神策等。

(樣例:報(bào)表平臺(tái))

(樣例:可視化屏)

5.2 可視化技術(shù)

實(shí)現(xiàn)數(shù)據(jù)可視化,除采用前端的基本技術(shù)外,還包括相關(guān)的圖形技術(shù)組件

5.2.1 web前端基礎(chǔ)技術(shù)

大多數(shù)情況下,前端使用的技術(shù)框架離不開這關(guān)鍵的3種語言,即CSS、HTML、JavaScript。

  1. CSS:英文全稱Cascading Style Sheets,是一種文本樣式的語言,主要針對(duì)文本的位置、色值、字體、字號(hào)等方面的控制。
  2. HTML:英文全稱 Hypertext Marked Language,即超文本標(biāo)記語言。主要是通過指令控制文字、圖形、動(dòng)畫、聲音、表格、鏈接等形式的文本。
  3. JavaScript:對(duì)于前端而言,不管是文字、還是視頻,還是其他圖形,都是一種文本。都可以通過以上2點(diǎn)實(shí)現(xiàn)。而JavaScript的作用就是在這些“文本”基礎(chǔ)上增加動(dòng)效功能,也就是我們產(chǎn)品常說的“交互”,這方面的功底體現(xiàn)了這個(gè)產(chǎn)品能給用戶提供多好的體驗(yàn)效果。

5.2.2 可視化技術(shù)應(yīng)用

可視化技術(shù)主要是針對(duì)數(shù)據(jù)層面而言的一些技術(shù)手段。因?yàn)檫@方面的技術(shù)已經(jīng)十分成熟,且大部分場(chǎng)景下的需求樣式是比較固定的,所以這樣的技術(shù)大多開發(fā)成為組件,并普遍開源。而這里則主要介紹前端常見的3種。

組件:英文名Component。所謂組件其實(shí)就是指一種可用“復(fù)用”的功能模塊。因?yàn)楫a(chǎn)品開發(fā)到了一定程度,很多時(shí)候設(shè)計(jì)較為接近的,那么開發(fā)往往會(huì)基于效率開發(fā)成一套可復(fù)用的組件,這樣每次遇到同類型的需求,即可快速調(diào)用。

比如一個(gè)柱狀圖,可以定義相關(guān)的位置、圖形形狀及布局。通過復(fù)用組件化之后,就可以任意改變里面的參數(shù),比如色值、大小、字號(hào)等,比較靈活,也省事。

  1. Echarts:一個(gè)基于 JavaScript 實(shí)現(xiàn)的開源可視化庫(kù),能夠應(yīng)用在PC、移動(dòng)終端等設(shè)備上,分別提供常規(guī)的圖表(折線圖、柱狀圖之類),地理數(shù)據(jù)的地圖,社交關(guān)系型的圖譜、旭日?qǐng)D,以及一些特殊的圖形。Echarts提供了大量豐富的數(shù)據(jù)可視化圖表,并支持較高定制化,是前端在進(jìn)行可視化開發(fā)中使用較為普遍的工具庫(kù);(網(wǎng)址:https://www.echartsjs.com/zh/index.html)
  2. D3.js:全稱為Data Driven Documents,本質(zhì)是一個(gè) JavaScript 的函數(shù)庫(kù),通過它來實(shí)現(xiàn)數(shù)據(jù)可視化的,所以它實(shí)際是一個(gè)通過函數(shù)操作數(shù)據(jù)的文檔。與JavaScript不同的是,D3把一些復(fù)雜流程進(jìn)行精簡(jiǎn)成幾個(gè)的函數(shù)樣式,能夠夠快實(shí)現(xiàn)更酷炫的圖形可視化,在原有常規(guī)的圖形可以做得更多元化。(網(wǎng)址:https://d3js.org)
  3. three.js:簡(jiǎn)單來說,three其實(shí)就是指3D的意思,聽到3D就知道是做立體模型的,同時(shí)它同樣基于JavaScript而建立的,所以就有three.js。通過它可實(shí)現(xiàn)三維圖形的需求,比如一些城市建筑模型、模型等。但是由于目前還不算十分成熟,國(guó)內(nèi)相關(guān)資料較少,英文文檔的學(xué)習(xí)成本較高。(網(wǎng)址:https://threejs.org/)

5.3 應(yīng)用產(chǎn)品

  1. 數(shù)據(jù)分析型:百度統(tǒng)計(jì)、友盟、神策、Growing IO等
  2. BI報(bào)表類:Tableau、Quick Bi等
  3. 可視化類:阿里云Data V、百度Sugar等

總結(jié)

  1. 一整套完整的數(shù)據(jù)系統(tǒng),涉及方方面面。參與其中的PM,承擔(dān)責(zé)任也不同。每個(gè)人應(yīng)該基于核心工作,做相關(guān)的延伸,不一定都需要掌握。
  2. 一名合格的數(shù)據(jù)分析型產(chǎn)品,數(shù)據(jù)指標(biāo)設(shè)計(jì)、數(shù)據(jù)庫(kù)、SQL查詢、計(jì)算引擎,都是必須掌握了解。
  3. 其實(shí)各大廠都有一套自身的數(shù)據(jù)技術(shù)體系,多關(guān)注CSDN、騰訊云或阿里云等社區(qū),會(huì)有所裨益。

推薦閱讀:《大數(shù)據(jù)平臺(tái)演進(jìn)之路 | 淘寶 & 滴滴 & 美團(tuán)》https://cloud.tencent.com/developer/article/1506317

注:本期的文章涉及較多技術(shù)術(shù)語,建議反復(fù)閱讀。以上的系統(tǒng)框架圖僅幫助閱讀理解,并不是完整的架構(gòu)圖。

?

作者:A.D,世界TOP50強(qiáng)公司產(chǎn)品一枚;公眾號(hào):吾某

本文由 @A.D. 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)作者許可,禁止轉(zhuǎn)載。

題圖來自Unsplash,基于CC0協(xié)議。

文章信息僅為作者觀點(diǎn),不代表愛盈利官方立場(chǎng),內(nèi)容僅供網(wǎng)友參考學(xué)習(xí)。。

【轉(zhuǎn)載說明】???若上述素材出現(xiàn)侵權(quán),請(qǐng)及時(shí)聯(lián)系我們付費(fèi)及進(jìn)行處理:shanliqiang@aiyingli.com

聲明:該文章版權(quán)歸原作者所有,轉(zhuǎn)載目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé)。如涉及作品內(nèi)容、版權(quán)和其它問題,請(qǐng)?jiān)?0日內(nèi)與本網(wǎng)聯(lián)系。
您閱讀這篇文章花了0
轉(zhuǎn)發(fā)這篇文章只需要1秒鐘
喜歡這篇 1
評(píng)論一下 2
凱派爾知識(shí)產(chǎn)權(quán)全新業(yè)務(wù)全面上線
評(píng)論
試試以這些內(nèi)容開始評(píng)論吧
登錄后發(fā)表評(píng)論
_556294
_556294說:
學(xué)習(xí)
0
0
用戶123456
用戶123456說:
值得研究開發(fā)
1
0
凱派爾知識(shí)產(chǎn)權(quán)全新業(yè)務(wù)全面上線
寧波城市站
金華城市站
×
#熱門搜索#
精選雙創(chuàng)服務(wù)
歷史搜索 清空

Tel:18514777506

關(guān)注微信公眾號(hào)

創(chuàng)頭條企服版APP

china0114.com-日韩欧美中文免费,免费视频一区,免费视频一区,国产精品色网
亚洲电影激情视频网站| 成人精品高清在线| 国产v综合v亚洲欧| 欧美日韩日日夜夜| 日本一区二区三区视频视频| 日本不卡一二三| 99精品热视频| www精品美女久久久tv| 亚洲成人精品在线观看| 99久久99久久精品免费观看| 欧美xingq一区二区| 亚洲成人精品影院| 色哟哟欧美精品| 欧美激情一区二区三区在线| 免费成人在线播放| 欧美日韩在线综合| 亚洲精品免费视频| av电影一区二区| 国产午夜精品久久久久久免费视| 蜜臀av性久久久久蜜臀aⅴ| 欧美在线一区二区三区| 亚洲天堂网中文字| 高清在线成人网| 久久亚洲欧美国产精品乐播| 男男视频亚洲欧美| 7777精品伊人久久久大香线蕉经典版下载| 亚洲欧美二区三区| av影院午夜一区| 国产精品无遮挡| 国产乱妇无码大片在线观看| 日韩欧美专区在线| 日韩二区三区四区| 欧美精品乱码久久久久久 | 美女视频免费一区| 欧美精品久久久久久久久老牛影院| 亚洲综合成人在线| 色哟哟国产精品免费观看| 亚洲视频一二三区| 99精品欧美一区二区蜜桃免费 | 久久99久久99| 欧美mv日韩mv国产网站app| 日本亚洲欧美天堂免费| 91精品国产综合久久精品图片| 亚洲成a人片综合在线| 91福利精品视频| 夜夜精品浪潮av一区二区三区| 日本高清免费不卡视频| 亚洲一区免费观看| 欧美日韩免费观看一区二区三区| 亚洲午夜精品网| 欧美日本一区二区三区| 日精品一区二区| 日韩午夜激情电影| 韩国三级电影一区二区| 久久久久久**毛片大全| 国产91对白在线观看九色| 国产精品美女久久久久高潮| 99精品1区2区| 亚洲国产精品麻豆| 欧美一区二区三区精品| 激情久久五月天| 国产亚洲精品免费| av电影一区二区| 亚洲午夜久久久| 日韩网站在线看片你懂的| 国内精品视频一区二区三区八戒| 久久久精品tv| 91免费视频网| 日韩激情一二三区| 久久久青草青青国产亚洲免观| 丁香六月久久综合狠狠色| 综合色天天鬼久久鬼色| 欧美性高清videossexo| 美女一区二区久久| 欧美韩国日本一区| 日本国产一区二区| 麻豆国产精品官网| 中文字幕免费在线观看视频一区| 色呦呦一区二区三区| 日日摸夜夜添夜夜添精品视频| 欧美精品一区二区高清在线观看| 国产91精品一区二区麻豆亚洲| 亚洲色图一区二区三区| 在线综合亚洲欧美在线视频| 国产乱子伦视频一区二区三区| 最新国产の精品合集bt伙计| 欧美久久久久久蜜桃| 国产美女视频91| 亚洲男同性视频| 日韩欧美一级精品久久| 成人激情免费网站| 亚洲高清久久久| 久久久久久亚洲综合影院红桃| 91麻豆免费在线观看| 秋霞电影一区二区| 国产精品久久久久久久久免费相片 | 欧洲人成人精品| 精品在线你懂的| 亚洲人成人一区二区在线观看| 91精品婷婷国产综合久久竹菊| 国产成人av在线影院| 亚洲午夜精品一区二区三区他趣| 亚洲精品一区二区三区99| 色综合久久中文字幕| 免费在线观看成人| 亚洲欧美综合色| 日韩欧美一二三四区| 97超碰欧美中文字幕| 蜜桃免费网站一区二区三区| 一区免费观看视频| 精品国免费一区二区三区| 91成人在线免费观看| 国产毛片精品一区| 亚洲6080在线| 国产精品久久久久久福利一牛影视| 5566中文字幕一区二区电影| 99免费精品在线观看| 精品一区二区三区在线视频| 亚洲综合另类小说| 中文字幕精品三区| 日韩欧美国产系列| 在线观看日韩一区| 高清视频一区二区| 免费黄网站欧美| 亚洲一区二区三区在线| 日本一区二区视频在线| 欧美一激情一区二区三区| 色婷婷香蕉在线一区二区| 国产成人免费视频精品含羞草妖精 | 日本在线播放一区二区三区| 亚洲欧洲韩国日本视频| 欧美精品一区二区三区很污很色的 | 国产一区欧美日韩| 五月婷婷久久丁香| 综合av第一页| 久久久亚洲国产美女国产盗摄| 欧美精品在线视频| 日本韩国欧美国产| 不卡的av电影| 国产激情精品久久久第一区二区| 日韩福利视频导航| 亚洲图片一区二区| 亚洲丝袜制服诱惑| 欧美国产日韩一二三区| 久久这里都是精品| 日韩欧美一区二区三区在线| 欧美日韩国产经典色站一区二区三区 | 欧美中文字幕亚洲一区二区va在线 | 91丝袜美腿高跟国产极品老师 | 国产欧美精品一区| 欧美成人伊人久久综合网| 欧美主播一区二区三区| 91免费国产在线| 播五月开心婷婷综合| 国产精品1区2区3区| 加勒比av一区二区| 免费成人av在线播放| 天天av天天翘天天综合网色鬼国产| 一区二区三区四区av| 亚洲三级理论片| 亚洲欧洲精品一区二区精品久久久| 国产欧美日韩久久| 国产人伦精品一区二区| 久久伊人蜜桃av一区二区| 日韩欧美国产午夜精品| 欧美一级欧美一级在线播放| 911精品国产一区二区在线| 欧美剧情片在线观看| 欧美剧情片在线观看| 777午夜精品免费视频| 777a∨成人精品桃花网| 欧美一区二区三区婷婷月色| 8x8x8国产精品| 日韩一区二区精品| 欧美大片一区二区| 精品国产乱码久久久久久闺蜜| 日韩欧美国产电影| 精品99一区二区| 久久精品一区二区三区四区| 国产日韩亚洲欧美综合| 中文字幕精品综合| 综合电影一区二区三区 | 免费欧美日韩国产三级电影| 日本欧美大码aⅴ在线播放| 日韩激情av在线| 久久爱另类一区二区小说| 精品亚洲免费视频| 国产精品996| 99re热视频精品| 在线观看中文字幕不卡| 欧美日韩高清在线| 91精品国产综合久久婷婷香蕉| 日韩午夜av一区| 久久久久99精品国产片| 国产精品麻豆视频| 一区二区三区欧美亚洲| 偷拍一区二区三区四区| 看电视剧不卡顿的网站| 国产乱码精品一区二区三区av| 成人动漫av在线|