全部产品
云市场

上传全量数据

更新时间:2019-02-15 15:17:09

MaxCompute提供了多种数据同步的方式,可以通过Dataworks的数据集成功能,也可以通过tunnel命令的方式。更新详情见:数据上传和下载

本文以示例的全量数据为例,说明如何将数据通过tunnel本地上传至MaxCompute项目中。

操作步骤

下载示例数据

1、根据自己将要创建的实例的行业属性,找到对应的示例的全量数据下载链接。

2、将3张表下载至本地。

以新闻行业为例,oss下载链接:行为数据item数据user数据

安装MaxCompute客户端

1、后面建表,上传数据都需要使用客户端。

2、MaxCompute客户端官网文档介绍:客户端

3、智能推荐帮助文档,MaxCompute授权子账户的Step2中,也有详细介绍:地址

下载客户端

在MaxCompute中创建3张表

有两种方式在MaxCompute中建表,1:Dataworks控制台,2:MaxCompute的客户端。

1、通过MaxCompute客户端建表

直接在命令行中输入建表语句,注意要分号结尾,下图以创建行为表为例

创建三张表

注意语句中不能有换行,以分号结尾

新闻行业SQL示例:

  1. CREATE TABLE IF NOT EXISTS behavior_news (trace_id STRING COMMENT "请求追踪/埋点ID",trace_info STRING COMMENT "请求埋点信息",platform STRING COMMENT "客户端平台",device_model STRING COMMENT "设备型号",imei STRING COMMENT "设备ID",app_version STRING COMMENT "app的版本号",net_type STRING COMMENT "网络型号",longitude STRING COMMENT "位置经度",latitude STRING COMMENT "位置纬度",ip STRING COMMENT "客户端IP信息",login STRING COMMENT "是否登录用户",report_src STRING COMMENT "上报来源类型",scene_id STRING COMMENT "场景ID",user_id STRING COMMENT "用户ID",item_id STRING COMMENT "内容ID",item_type STRING COMMENT "内容的类型",module_id STRING COMMENT "模块ID",page_id STRING COMMENT "页面ID",position STRING COMMENT "内容所在的位置信息",bhv_type STRING COMMENT "行为类型",bhv_value STRING COMMENT "行为详情",bhv_time STRING COMMENT "行为发生的时间戳")PARTITIONED BY (ds STRING)LIFECYCLE 30;
  1. CREATE TABLE IF NOT EXISTS item_news (item_id STRING COMMENT '内容唯一标识ID',item_type STRING COMMENT '内容的类型',title STRING COMMENT '内容标题',content STRING COMMENT '内容简介',user_id STRING COMMENT '发布用户ID',pub_time STRING COMMENT '发布时间',status STRING COMMENT '是否可推荐',expire_time STRING COMMENT '内容失效时间戳,单位s',last_modify_time STRING COMMENT '内容信息的最后修改时间戳,单位s',scene_id STRING COMMENT '场景ID',duration STRING COMMENT '时长,秒',category_level STRING COMMENT '类目层级数,例如3级类目',category_path STRING COMMENT '类目路径,下划线联接',tags STRING COMMENT '标签,多个标签使用英文逗号分隔',channel STRING COMMENT '频道,多个标签使用英文逗号分隔',organization STRING COMMENT '机构列表,多个标签使用英文逗号分隔',author STRING COMMENT '作者列表,多个标签使用英文逗号分隔',pv_cnt STRING COMMENT '一个月内曝光次数',click_cnt STRING COMMENT '一个月内点击次数',like_cnt STRING COMMENT '一个月内点赞次数',unlike_cnt STRING COMMENT '一个月内踩次数',comment_cnt STRING COMMENT '一个月内评论次数',collect_cnt STRING COMMENT '一个月内收藏次数',share_cnt STRING COMMENT '一个月内分享次数',download_cnt STRING COMMENT '一个月内下载次数',tip_cnt STRING COMMENT '一个月内打赏数',subscribe_cnt STRING COMMENT '一个月内关注数',source_id STRING COMMENT '物料经由哪个平台进入场景',country STRING COMMENT '国家编码',city STRING COMMENT '城市名称',features STRING COMMENT '物料离散特征',num_features STRING COMMENT '物料连续特征',weight STRING COMMENT 'item加权权重1-10000')PARTITIONED BY (ds STRING)LIFECYCLE 30;
  1. CREATE TABLE IF NOT EXISTS user_news (user_id STRING COMMENT "用户唯一ID",user_id_type STRING COMMENT "用户注册类型",third_user_name STRING COMMENT "第三方用户名称",third_user_type STRING COMMENT "第三方平台名称",phone_md5 STRING COMMENT "用户手机号的md5值",imei STRING COMMENT "用户设备ID",content STRING COMMENT "用户内容",gender STRING COMMENT "性别",age STRING COMMENT "年龄",age_group STRING COMMENT "年龄段",country STRING COMMENT "国家",city STRING COMMENT "城市",ip STRING COMMENT "最后登录IP",device_model STRING COMMENT "设备型号",register_time STRING COMMENT "注册时间戳",last_login_time STRING COMMENT "上次登录时间戳",last_modify_time STRING COMMENT "用户信息的最后修改时间戳",tags STRING COMMENT "用户tags",source STRING,features STRING,num_features STRING)PARTITIONED BY (ds STRING)LIFECYCLE 30;

2、通过Dataworks的控制台建表

详细见Dataworks官方文档说明:地址

上传数据

1、打开MaxCompute客户端

2、tunnel命令详解:地址

  1. tunnel upload -acp=true -h=true /Users/xxx/workspace/data/news/behavior_news.csv behavior_airec_test/ds=20190125

由于本文创建的表为分区key为ds的分区表,因此upload的时候,behavior_airec_test/ds=20190125后面需要带上分区信息【注:ds为分区字段名】

tunnel命令

其中 -h参数为跳过本地表头(示例数据中包含表头),-acp参数为自动创建分区

3、确认数据是否成功,select一下表中的数据。

  1. select * from behavior_airec_test where ds = 20190125;