本實驗以簡單的使用者Portrait analysis為例,帶您熟悉DataWorks的主要功能和常見任務。實驗內容包括DataWorks+EMR、DataWorks+MaxCompute、DataWorks+StarRocks以及DataWorks+Spark四種不同版本。
實驗目標
目標預期
實操該實驗後,可對DataWorks的主要功能有所瞭解。
實操該實驗後,可在DataWorks中獨立完成資料同步、資料開發和任務營運等資料崗位常見任務。
目標人群
開發工程師、資料分析師、產品營運以及需要數倉資料擷取與資料分析洞察人員。
實驗設計
實驗背景
為了更好地制定企業經營策略,現需要從使用者網站行為中擷取網站使用者群體基本畫像資料,例如,使用者群體地理屬性、社會屬性等,實現定時定點進行Portrait analysis,進而實現網站流量精細化營運操作,通過DataWorks線上學習的方式完成以下情境。
同步資料。
加工資料。
管理資料。
消費資料。
涉及產品
在使用者Portrait analysis任務流程中涉及到未經處理資料儲存資料庫、計算儲存資料庫以及對整個流程開發的平台,以下為在本實驗中涉及到的不同的產品介紹。
未經處理資料儲存產品。
雲資料庫RDS MySQL版。
在本實驗中儲存使用者資訊,預設提供實驗使用者資訊資料來源基本資料。
產品詳情請參見什麼是RDS MySQL。
Object Storage Service。
在本實驗中儲存日誌資訊,預設提供實驗日誌資訊資料來源基本資料。
產品詳情請參見什麼是Object Storage Service。
重要EMR版中接收實驗使用者資訊與實驗日誌資料的OSS資料來源、StarRocks版中儲存需要在StarRocks中註冊函數
.jar
包的OSS資料來源,均需要自備。
計算儲存產品。
開源巨量資料平台 E-MapReduce。
在本實驗中加工處理未經處理資料以產生所需資料,並將其儲存,本實驗為EMR on ECS。
產品詳情請參見什麼是EMR on ECS。
雲原生MaxCompute。
在本實驗中加工處理未經處理資料以產生所需資料,並將其儲存。
產品詳情請參見什麼是MaxCompute。
開源全託管服務EMR Serverless StarRocks:
在本實驗中加工未經處理資料以產生所需資料,並將其儲存,本實驗為EMR Serverless StarRocks。
產品詳情請參見什麼是EMR Serverless StarRocks。
開源全託管服務EMR Serverless Spark:
在本實驗中加工未經處理資料以產生所需資料,並將其儲存,本實驗為EMR Serverless Spark。
產品詳情請參見什麼是EMR Serverless Spark。
重要該案例是基於DataWorks使用開源巨量資料平台 E-MapReduce、雲原生MaxCompute、開源全託管服務EMR Serverless StarRocks或開源全託管服務EMR Serverless Spark這四種產品其一為資料來源操作的,確保擁有其一即可。
開發調度產品
一站式巨量資料開發治理DataWorks。
在本實驗中對未經處理資料進行同步、加工、品質監控、資料消費等操作與使用任務調度的資料中台。
產品詳情請參見什麼是DataWorks。
工作流程設計
在本實驗中,您可以根據您現有不同引擎選擇不同版本的使用者Portrait analysis實驗流程進行操作,共提供了MaxCompute版、EMR版、StarRocks版以及Spark版,四種版本引擎的使用者Portrait analysis文檔,流程的步驟如下。
通過Data Integration擷取不同資料來源中的使用者基本資料資料和使用者訪問日誌資訊至引擎中。
在引擎中將擷取到的日誌資料通過加工拆解為可分析的欄位。
在引擎中將使用者基本資料和初步加工後的日誌資料進匯總加工。
進一步加工產出基本使用者畫像。
涉及模組
本實驗涉及的DataWorks模組如下。
步驟 | 操作內容 | 階段性目標 |
同步資料 | 對儲存在MySQL中的使用者資訊資料及儲存在OSS中使用者訪問日誌資料配置同步鏈路同步至MaxCompute、EMR或StarRocks。 | 學習如下內容:
|
加工資料 | 使用資料開發概述模組,將日誌資料通過函數、正則等方式拆解為可分析欄位,並與使用者資訊表加工匯總產出基本的使用者畫像資料。 | 學習如下內容:
|
管理資料 | 通過資料地圖概述模組,對源端表資料進行中繼資料管理與查看。以及對源端資料變更過程中產生的髒資料進行監控,監控不通則阻斷任務執行,避免影響擴大。 |
|
消費資料 | 學習如何基於DataWorks將資料進行可視化展示和API服務建立。 |
實驗資料
實驗日誌資料結構
實際操作前,請先瞭解該專案背景下企業已有的業務資料及其資料格式,以及業務背景分析需要的目標使用者畫像基本結構。
以下為OSS中儲存的
user_log.txt
檔案未經處理資料。$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent"$http_referer" "$http_user_agent" [unknown_content];
可根據原始日誌資料擷取到如下有效資訊。
欄位名稱
欄位說明
$remote_addr
發送請求的用戶端IP地址。
$remote_user
用戶端登入名稱。
$time_local
伺服器本地時間。
$request
請求,包括HTTP請求類型+請求URL+HTTP協議版本號碼。
$status
服務端返回狀態代碼。
$body_bytes_sent
返回給用戶端的位元組數(不含header)。
$http_referer
該請求的來源URL。
$http_user_agent
發送請求的用戶端資訊,如使用的瀏覽器等。
實驗使用者資訊資料結構
MySQL使用者資訊資料結構(ods_user_info_d
)
欄位名稱 | 欄位說明 |
uid | 使用者名稱 |
gender | 性別 |
age_range | 年齡分段 |
zodiac | 星座 |
實驗目標資料結構
根據未經處理資料分析可獲得的有效資料,並基於業務需求確認最終資料表結構。
欄位名稱 | 欄位說明 |
uid | 使用者名稱 |
region | 地區 |
device | 終端類型 |
pv | 瀏覽量 |
gender | 性別 |
age_range | 年齡分段 |
Zodiac | 星座 |
學習答疑
如果您在學習過程中遇到問題,請申請加入DingTalk群進行諮詢。