全部產品
Search
文件中心

DataWorks:綜合:網站使用者Portrait analysis

更新時間:Aug 16, 2025

本案例以簡單的網站使用者Portrait analysis為例,帶您熟悉DataWorks的主要功能和常見任務,主要包含同步資料、加工資料、管理資料以及消費資料操作。

案例目標

案例預期

通過本案例的實操,您將能夠在DataWorks中獨立完成資料同步、資料開發和任務營運等常見資料崗位任務。

案例人群

本案例適合開發工程師、資料分析師、產品營運人員等需要從資料倉儲中擷取資料並進行分析與洞察的人員。

案例設計

為制定企業經營策略,需從使用者網站行為資料中提取使用者群體基本畫像。例如,擷取使用者群體地理屬性、社會屬性等資訊,實現定時定點調度,進而實現網站流量精細化營運操作,需要通過DataWorks完成以下操作。

涉及產品

在網站使用者Portrait analysis任務流程中涉及到未經處理資料儲存資料庫、計算儲存資料庫以及對整個流程開發的平台,以下是本案例中涉及的產品介紹。

產品分類

產品名

產品介紹

資料庫

rds_mysql雲資料庫RDS MySQL版

由本案例提供該資料庫,在本案例中用於儲存使用者基本資料。

oss Object Storage ServiceObject Storage Service

由本案例提供該Object Storage Service,在本案例中用於儲存日誌資訊。

計算引擎

MaxCompute雲原生MaxCompute

本案例中,基於DataWorks使用雲原生MaxCompute開源全託管服務EMR Serverless StarRocks開源巨量資料平台 E-MapReduce開源全託管服務EMR Serverless Spark中的任意一種作為計算資源進行開發,對未經處理資料進行加工並儲存到目標資料倉儲中。

StarRocks開源全託管服務EMR Serverless StarRocks

emr開源巨量資料平台 E-MapReduce

apachespark (2)開源全託管服務EMR Serverless Spark

資料中台

dide DataWorks一站式巨量資料開發治理DataWorks

在本案例中,DataWorks作為資料中台,用於對未經處理資料進行同步、加工、品質監控、資料消費等操作,並支援任務調度。

重要
  • 在體驗不同計算引擎下的網站使用者Portrait analysis時,資料庫DataWorks為不同網站使用者Portrait analysis時的公用資源。您只需為DataWorks工作空間將不同計算引擎綁定成計算資源即可。

  • 當計算資源使用開源巨量資料平台 E-MapReduce開源全託管服務EMR Serverless Spark接收案例使用者基本資料案例日誌資訊的OSS資料來源,以及計算儲存產品使用開源全託管服務EMR Serverless StarRocks時,用於儲存StarRocks中註冊函數.jar包的OSS資料來源,均需要自備,並確保其具備足夠的儲存空間和存取權限。

情境設計

您需要將資料庫與計算引擎,分別在DataWorks中建立為資料來源與計算資源後,即可對計算資源中的資料進行加工處理,擷取需要的使用者群體地理屬性、社會屬性等資訊,以及對資料資訊進行管理與消費。

工作流程設計

在本案例中,您可以根據不同引擎選擇相應的網站使用者Portrait analysis流程。共提供了MaxCompute版StarRocks版EMR版以及Spark版四種版本引擎的網站使用者Portrait analysis文檔。流程的步驟如下。

  1. 通過Data Integration擷取不同資料來源中的使用者基本資料資料和使用者訪問日誌資訊至引擎中。

  2. 在引擎中將擷取到的日誌資料通過加工拆解為可分析的欄位。

  3. 在引擎中將使用者基本資料和初步加工後的日誌資料進行匯總加工。

  4. 進一步加工產出基本使用者畫像。

涉及模組

本案例涉及的DataWorks模組如下。

步驟

操作內容

階段性目標

同步資料

同步MySQL中的使用者資訊資料及儲存在OSS中使用者訪問日誌資料至不同計算資源。

  • MaxCompute和Spark:直接通過Data Integration,將未經處理資料同步至對應的計算資源。

  • EMR和Spark:需使用自備的OSSObject Storage Service來儲存同步的未經處理資料,再通過EMR與Spark表來讀取資料。

學習如下內容:

  • 如何將不同資料來源資料同步到MaxCompute、EMR、StarRocks或Spark。

  • 如何建立對應資料來源的表。

  • 如何快速觸發任務運行。

  • 如何查看任務日誌。

加工資料

使用資料開發模組,將日誌資料通過函數、正則等方式拆解為可分析欄位,並與使用者資訊表加工匯總產出基本的使用者畫像資料。

學習如下內容:

  • 如何基於DataWorks建立並配置資料流程節點。

  • 如何運行工作流程。

管理資料

通過資料地圖概述模組,對源端表資料進行中繼資料管理與查看。以及對源端資料變更過程中產生的髒資料進行監控,監控不通則阻斷任務執行,避免影響擴大。

  • 學習如何基於DataWorks擷取資料來源表的中繼資料,以及搜尋查看錶詳情資訊。

  • 學習如何基於DataWorks為任務產出的表,配置資料品質的監控規則,以保證快速感知源端資料的變更過程中產生的髒資料,有效阻斷髒資料向下遊蔓延。

消費資料

  • 通過資料分析模組對最終結果表進行SQL查詢分析,進行網站使用者Portrait analysis。例如,訪問使用者中地區分布分析、城市註冊人數熱門排行榜分析。

  • 通過資料服務API模組,將最終結果表建立為API服務。

學習如何基於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

星座