全部產品
Search
文件中心

DataWorks:實驗介紹

更新時間:Aug 21, 2024

本實驗以簡單的使用者Portrait analysis為例,帶您熟悉DataWorks的主要功能和常見任務。實驗內容包括DataWorks+EMR、DataWorks+MaxCompute、DataWorks+StarRocks以及DataWorks+Spark四種不同版本。

實驗目標

目標預期

  1. 實操該實驗後,可對DataWorks的主要功能有所瞭解。

  2. 實操該實驗後,可在DataWorks中獨立完成資料同步、資料開發和任務營運等資料崗位常見任務。

目標人群

開發工程師、資料分析師、產品營運以及需要數倉資料擷取與資料分析洞察人員。

實驗設計

實驗背景

為了更好地制定企業經營策略,現需要從使用者網站行為中擷取網站使用者群體基本畫像資料,例如,使用者群體地理屬性、社會屬性等,實現定時定點進行Portrait analysis,進而實現網站流量精細化營運操作,通過DataWorks線上學習的方式完成以下情境。

  • 同步資料。

  • 加工資料。

  • 管理資料。

  • 消費資料。

涉及產品

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

  • 未經處理資料儲存產品。

    • rds_mysql雲資料庫RDS MySQL版

      • 在本實驗中儲存使用者資訊,預設提供實驗使用者資訊資料來源基本資料。

      • 產品詳情請參見什麼是RDS MySQL

    • oss Object Storage ServiceObject Storage Service

      重要

      EMR版中接收實驗使用者資訊與實驗日誌資料的OSS資料來源、StarRocks版中儲存需要在StarRocks中註冊函數.jar包的OSS資料來源,均需要自備。

  • 計算儲存產品。

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

      • 在本實驗中加工處理未經處理資料以產生所需資料,並將其儲存,本實驗為EMR on ECS

      • 產品詳情請參見什麼是EMR on ECS

    • MaxCompute雲原生MaxCompute

      • 在本實驗中加工處理未經處理資料以產生所需資料,並將其儲存。

      • 產品詳情請參見什麼是MaxCompute

    • StarRocks開源全託管服務EMR Serverless StarRocks

      • 在本實驗中加工未經處理資料以產生所需資料,並將其儲存,本實驗為EMR Serverless StarRocks

      • 產品詳情請參見什麼是EMR Serverless StarRocks

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

      • 在本實驗中加工未經處理資料以產生所需資料,並將其儲存,本實驗為EMR Serverless Spark。

      • 產品詳情請參見什麼是EMR Serverless Spark

    重要

    該案例是基於DataWorks使用開源巨量資料平台 E-MapReduce、雲原生MaxCompute開源全託管服務EMR Serverless StarRocks開源全託管服務EMR Serverless Spark這四種產品其一為資料來源操作的,確保擁有其一即可。

  • 開發調度產品

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

      • 在本實驗中對未經處理資料進行同步、加工、品質監控、資料消費等操作與使用任務調度的資料中台。

      • 產品詳情請參見什麼是DataWorks

工作流程設計

在本實驗中,您可以根據您現有不同引擎選擇不同版本的使用者Portrait analysis實驗流程進行操作,共提供了MaxCompute版、EMR版、StarRocks版以及Spark版,四種版本引擎的使用者Portrait analysis文檔,流程的步驟如下。

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

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

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

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

涉及模組

本實驗涉及的DataWorks模組如下。

步驟

操作內容

階段性目標

同步資料

對儲存在MySQL中的使用者資訊資料及儲存在OSS中使用者訪問日誌資料配置同步鏈路同步至MaxCompute、EMR或StarRocks。

學習如下內容:

  • 如何將不同資料來源資料同步到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

星座

學習答疑

如果您在學習過程中遇到問題,請申請加入DingTalk群進行諮詢。