天天看點

dataworks 2.0 開發整理需要雲伺服器的不要錯過優惠

dataworks 簡介

本文将為您介紹什麼是DataWorks,以及DataWorks的功能、限制與限制。

DataWorks(資料工場,原大資料開發套件)是阿裡雲數加重要的PaaS平台産品,提供資料內建、資料開發、資料管理、資料治理、資料分享等全方位的産品服務,一站式開發管理的界面,幫助企業專注于資料價值的挖掘和探索。

DataWorks基于MaxCompute作為核心的計算、存儲引擎,提供了海量資料的離線加工分析、資料挖掘的能力,詳情請參見MaxCompute簡介。

通過DataWorks,可對資料進行傳輸、轉換、內建的操作,從不同的資料存儲引入資料,對資料進行轉化和開發,最後将資料輸送到其他資料系統。

目錄清單

我這裡主要介紹一下業務流程的目錄清單以及其作用

dataworks 2.0 開發整理需要雲伺服器的不要錯過優惠

這裡面主要關注資料內建、資料開發、表、資源、函數,至于算法和控制,目前我這塊還沒去研究。

  • 資料內建

    資料內建主要是用來做資料同步的,支援多種資料源,如 redis ,mysql,hbase 等。

  • 資料開發

    這裡面主要進行一些腳本的開發,一般常用的是 ODPS SQL,與Hive SQL文法基本一緻,适用于海量資料(TB級别),實時性要求不高的場合,它的每個作業的準備,送出等階段要花費較長時間, 是以要求每秒處理幾千至數萬筆事務的業務是不能用ODPS SQL完成的;ODPS SQL采用的是類似于SQL的文法,可以看作是标準SQL的子集,但不能是以簡單的把ODPS SQL等價成一個資料庫,它在很多方面并不具備資料庫的特征。

  • 這裡面一般會建立流程中産出的表

  • 資源

    這裡基本存放一些不同語言開發的包,像我們 java 開發人員一般主要使用 udf,udtf以及udaf.

  • 函數

一般這個地方與資源配合使用,用于聲明使用者自定義的函數。

如何開發一個工作流

我想大家最看重的就是這一塊,如何開發一個工作流,我們假設一個場景(用于講解,盡可能的簡單):

需要統計某個頁面的 pv,uv 情況,假定表字段如下:

  • user_id
  • page_id
  • create_time

若是有人說這麼簡單,為啥用 dataworks 呢?一般來說,一個發展比較好的企業埋點資料非常大,普通的資料庫基本無法進行處理運算,隻能借助大資料的處理方案,對于一個創業期的,發展還不錯的公司,若自己搭建一套大資料體系無疑是成本效益極低的,所幸阿裡雲平台的數加有很多的解決方案。

閑話不多說,對于這樣的一個場景,我們該如何去處理?下面的流程圖是我給出的一個方案:

dataworks 2.0 開發整理需要雲伺服器的不要錯過優惠
表建立

選擇表> 建立表,選擇 DDL 模式

CREATE TABLE IF NOT EXISTS data_collection(
    user_id BIGINT COMMENT '使用者 ID',
    page_id BIGINT COMMENT ' 頁面 ID',
    create_time DATETIME COMMENT '建立時間'
)COMMENT '埋點記錄表' PARTITIONED  BY(pt STRING);

           

自動解析如下圖所示

dataworks 2.0 開發整理需要雲伺服器的不要錯過優惠

中間表如是,腳本如下:

CREATE TABLE IF NOT EXISTS day_pv_uv(
    page_id BIGINT COMMENT ' 頁面 ID',
    pv BIGINT COMMENT 'pv',
    uv BIGINT COMMENT 'uv'
)COMMENT '每日 pv uv' PARTITIONED  BY(pt STRING);

           
同步資料到數加

選擇資料內建>建立資料內建節點>資料同步

dataworks 2.0 開發整理需要雲伺服器的不要錯過優惠

資料源那邊選擇自己的資料源和埋點表

統計 pv uv 并寫入中間表

選擇資料開發>建立資料開發節點>ODPS SQL,這邊直接寫 hsql 将處理好的資料放入中間表

INSERT OVERWRITE TABLE day_pv_uv
select page_id,count(user_id) as pv,count(DISTINCT user_id) as uv from data_collection 
where pt='${pt}' and create_time>'${pt} 00:00:00';

           
同步資料到業務庫

選擇資料內建>建立資料內建節點>資料同步

dataworks 2.0 開發整理需要雲伺服器的不要錯過優惠
任務排程

這邊任務排程不做詳細解釋,具體請點選前往

dataworks 2.0 開發整理需要雲伺服器的不要錯過優惠

UDF,UDTF,UDAF

– 有時間補上

需要雲伺服器的不要錯過優惠

阿裡雲低價購買雲服務,值得一看

繼續閱讀