跳转到主要内容
PRODUCT DOCUMENTS

快速找到所需文档,高效完成接入与排障

浏览产品文档与友盟 Skill,展开目录并阅读正文。

开通Maxcompute流程

第一步:购买/查看Maxcompute相关信息

请先前往阿里云MaxCompute控制台,查看相关项目和账号信息;

3

如果您是新用户,还未使用过MaxCompute,那么可以尝试开通MaxCompute的基础版(最低要求),如果您有MaxCompute的高级版,也可以使用。

1.1开通MaxCompute流程

  1. 进入DataWorks工作空间 ,点击创建工作空间

image

2.创建工作空间完成后,需要选择引擎配置,选择立即绑定MaxCompute

image.png

  1. 在绑定MaxCompute流程中,可以选择创建新的MaxCompute空间和选择已有的MaxCompute空间。

建议资源显示名称和项目名称保持一致,资源调度访问身份选择阿里云主账号

image.png

点击前往创建

image.png

完成配置信息

image.png

  1. 绑定成功

image

将来在DOP面板中开通MaxCompute服务的时候,需要填入MaxCompute的project和region信息就可以从上面的列表信息中找到。

重要提醒:请不要直接在MaxCompute的产品首页(MaxCompute的产品首页)直接创建MC的project项目,那样当您有Dataworks时,是无法在Dataworks里面关联上MC的项目。必须从Dataworks的入口去创建才能有效关联。

第二步:在「云控制台」开通Maxcompute服务

在U-DOP「云控制台」中点击开通Maxcompute服务

2.1创建接收数据的空间

强烈建议您按照指引中的规范进行命名,若您已有创建完成的project,也可延用已创建的project;

7

2.2填写Maxcompute相关信息

8

  • 阿里云账号ID (请注意,一定是主账号)

如何获取阿里云账号ID

  • 选择region,填写Project名

  • 点击提交

提交成功后,至此完成通过maxCompute投递明细数据的服务开通。maxCompute服务开通后,会自动订阅四个主题包,分别是:U-App分析主题包、U-Web分析主题包、U-Push分析主题包、U-Mini小程序分析主题包。您无需手动主动去订阅对应的主题包,系统已经在您开通之后自动订阅好相应主题包。

第三步:开始数据表使用

3.1进入云控制台页面,点击"查看授权状态",如下图所示

9

3.2复制创建Package的相关代码,如下图所示

10

3.3将复制的代码在Dataworks中执行,如下图所示

首先进入DataWorks后选择临时查询,创建ODPS SQL节点

image

将以上代码复制到新建的ODPS SQL 节点中执行

11

3.4执行成功后会显示如下所示结果,至此Package创建完成

12

3.5查询数据,查询相关表时需要增加后缀: "_xxxxxx", xxxxxx为Package前六位编码,同时指定分区ds, 查询数据如下图所示

image

参考SQL

select 
	* 
from 
	umengplus_cdm.dwd_ump_log_uapp_launch_di_xxxxxx  
where 
	ds = '20220101'
limit 100;

如遇以下报错信息,则需要指定分区ds,参考以上示例

image

3.6数据导出

友盟空间umengplus_cdm中表数据只保存近30天。为方便客户使用,请将umengplus_cdm空间下的表导入客户自己的Project下,以下示例为每天周期性将数据导出到客户空间的配置方式

  1. 因为每天周期性调度,需要依赖友盟的数据,所以需要新建一个check_partition的任务检查上游友盟数据是否就绪

image

shell节点代码如下:

#!/bin/bash
## 表名,例如 umengplus_cdm.dwd_ump_log_uapp_launch_di_xxxxxx
table_name=$1
## 要检查的分区,例如20230228
partition_name=$2
## 客户MaxCompute的空间名
project=$3
## MaxCompute所在region的endpoint,具体可参考阿里云文档:https://help.aliyun.com/document_detail/34951.html#section-f2d-51y-5db
endpoint=$4
## 阿里云账号的AccessId,具体参考访问控制功能获取AK:https://ram.console.aliyun.com/overview
access_id=$5
## 阿里云账号的AccessKey
access_key=$6

echo "[INFO] table_name=${table_name},partition_name=${partition_name}."
SQL="SHOW PARTITIONS ${table_name};"
echo "${SQL}"

##等待四个小时
TRY_COUNT=0
MAX_COUNT=240
while [ 1 -eq 1 ]
do 
    partitions=`/opt/taobao/tbdpapp/odpswrapper/odpsconsole/bin/odpscmd --project=${project} --endpoint="${endpoint}" -M -u ${access_id} -p ${access_key} -e "${SQL}"`
    echo "[INFO] partitions===>${partitions}"
    result=`echo ${partitions}  | grep ${partition_name} | wc -l`
    echo "[INFO] count===>${result}"

    if [ "${result}"x = "1"x ];then
        echo "${table_name}|${partition_name} is ready."
        break;
    else
        echo "${table_name}|${partition_name} is not ready,try times = ${TRY_COUNT}."
        sleep 60s;
    fi

    TRY_COUNT=$(( ${TRY_COUNT} + 1 ))
    if [ ${TRY_COUNT} -ge ${MAX_COUNT} ];then
        echo "${table_name}|${partition_name} is not ready,check failed."
        exit -1;
    fi
done

  1. 配置check_partition节点调度参数

image

  1. 配置完成check_partition节点后,新建导出任务

image

  1. 在新建的导出任务中新建表 {user_project}.dwd_ump_log_uapp_launch_di

CREATE TABLE IF NOT EXISTS ump_cdm.dwd_ump_log_uapp_launch_di
(
    umuid               STRING COMMENT 'umuid',
    app_key             STRING COMMENT 'APP唯一标识',
    umid                STRING COMMENT '友盟设备ID',
    is_new_install      STRING COMMENT '是否新增用户(1是0否)',
    install_datetime    STRING COMMENT '首次安装时间',
    app_channel         STRING COMMENT 'APP当前渠道',
    install_channel     STRING COMMENT 'APP首次安装渠道',
    app_version         STRING COMMENT 'APP当前版本',
    install_app_version STRING COMMENT 'APP首次安装版本',
    carrier             STRING COMMENT '设备运营商',
    os                  STRING COMMENT '操作系统:Android/iOS',
    os_version          STRING COMMENT '操作系统版本',
    resolution          STRING COMMENT '设备分辨率',
    network_access      STRING COMMENT '入网类型',
    device_ip           STRING COMMENT '设备IP',
    country             STRING COMMENT '国家',
    province            STRING COMMENT '省',
    city                STRING COMMENT '城市',
    session_start       STRING COMMENT '会话开始标识(1是0否)',
    session_end         STRING COMMENT '会话结束标识(1是0否)',
    session_id          STRING COMMENT '会话ID',
    session_duration    STRING COMMENT '会话时长(毫秒)',
    activity_cnt        STRING COMMENT '会话访问页面数',
    is_new_upgrd        STRING COMMENT '是否版本升级',
    pre_channel         STRING COMMENT '上一次渠道',
    pre_app_version     STRING COMMENT '上一次版本',
    is_new_device       STRING COMMENT '是否新发布机型',
    imei                STRING COMMENT '国际移动设备识别码',
    idfa                STRING COMMENT 'IOS广告标示符',
    mac                 STRING COMMENT 'MAC地址',
    android_id          STRING COMMENT 'Android ID',
    idfv                STRING COMMENT 'Vendor标识符',
    open_udid           STRING COMMENT 'Open UDID',
    reg_app_name        STRING COMMENT 'APP名称(注册填写)',
    device_model        STRING COMMENT '设备型号',
    std_device_model    STRING COMMENT '标准设备型号',
    device_brand        STRING COMMENT '设备品牌',
    std_device_brand    STRING COMMENT '标准设备品牌',
    provider            STRING COMMENT 'APP用户账号第三方的标识符',
    puid                STRING COMMENT '用户账号ID',
    is_new_reg          STRING COMMENT 'APP账户是否新注册(1是0否)',
    reg_channel         STRING COMMENT '账户注册渠道',
    sdk_version         STRING COMMENT 'SDK版本',
    umid_from           STRING COMMENT '小程序标识(0和null是uapp、1支付宝小程序、2阿里云微信小程序、3阿里云支付宝小程序)',
    cli_timestamp       STRING COMMENT '客户端时间戳',
    svr_timestamp       STRING COMMENT '服务器时间戳',
    log_date_time       STRING COMMENT '日志时间(yyyy-mm-dd hh:mi:ss)',
    oaid                STRING COMMENT 'Open Anonymous Device Identifier,匿名设备标识符.由中国信息通讯研究院号召,移动安全联盟推行的安卓设备标识,在无法获取设备号情况下可以使用该标识进行数据匹配(2020-03-18增加该字段)'
)
COMMENT 'UAPP事件启动表'
PARTITIONED BY (ds STRING COMMENT '分区')
LIFECYCLE 365;

  1. 在新建的导出任务将umengplus_cdm空间的表导入以上新建的表中

-- 其中bizdate参数表示每天周期性执行导出任务是需要配置的日期
INSERT OVERWRITE TABLE ump_cdm.dwd_ump_log_uapp_launch_di PARTITION(ds = '${bizdate}')
select 
    umuid
    ,app_key            
    ,umid               
    ,is_new_install     
    ,install_datetime   
    ,app_channel        
    ,install_channel    
    ,app_version        
    ,install_app_version
    ,carrier            
    ,os                 
    ,os_version         
    ,resolution         
    ,network_access     
    ,device_ip          
    ,country            
    ,province           
    ,city               
    ,session_start      
    ,session_end        
    ,session_id         
    ,session_duration   
    ,activity_cnt       
    ,is_new_upgrd       
    ,pre_channel        
    ,pre_app_version    
    ,is_new_device      
    ,imei               
    ,idfa               
    ,mac                
    ,android_id         
    ,idfv               
    ,open_udid          
    ,reg_app_name       
    ,device_model       
    ,std_device_model   
    ,device_brand       
    ,std_device_brand   
    ,provider           
    ,puid               
    ,is_new_reg         
    ,reg_channel        
    ,sdk_version        
    ,umid_from          
    ,cli_timestamp      
    ,svr_timestamp      
    ,log_date_time      
    ,oaid
from 
    umengplus_cdm.dwd_ump_log_uapp_launch_di_ee976c
where 
    ds = '${bizdate}'
;

  1. 配置调度参数

image

  1. 保存提交任务

image

附:阿里云相关文档

  1. Dataworks 入门视频 https://help.aliyun.com/document_detail/107548.html

  2. MaxCompute 文档 https://help.aliyun.com/product/27797.html