7. 业务表结构 及 RDS层的数据同步到ODS层 及 ODS层的构建

业务表结构

1. RDS操作

1. 购买RDS

2. 购买成功界面

3. 设置白名单

4. 设置外网地址

5. 创建账号

2. Navicat连接

1. 连接表


2. 新建数据库

3. 导入SQL表

4. 生成数据

3. ODS层数据表创建

1. 在maxcompute中创建11张表

CREATE TABLE `ods_order_info_di` (
`id` string COMMENT '订单编号',
`total_amount` double COMMENT '订单金额',
`order_status` string COMMENT '订单状态',
`user_id` string COMMENT '用户 id',
`payment_way` string COMMENT '支付方式',
`out_trade_no` string COMMENT '支付流水号',
`create_time` string COMMENT '创建时间',
`operate_time` string COMMENT '操作时间',
`province_id` string COMMENT '省份'
) 
COMMENT '订单表'
PARTITIONED BY (ds string);


CREATE TABLE `ods_order_detail_di` (
`id` string COMMENT '明细 id',
`order_id` string COMMENT '订单 id',
`sku_id` string COMMENT '商品 id',
`sku_name` string COMMENT '商品名称',
`order_price` double COMMENT '购买价格',
`sku_num` bigint COMMENT '购物数量',
`create_time` string COMMENT '创建时间'
) 
COMMENT '订单明细'
PARTITIONED BY (ds string);


CREATE TABLE `ods_sku_info_df` (
`id` string COMMENT 'skuid',
`spu_id` string COMMENT 'spuid',
`price` double COMMENT '价格',
`sku_name` string COMMENT '商品名称',
`sku_desc` string COMMENT '商品描述',
`weight` double COMMENT '重量(千克)',
`tm_id` string COMMENT '品牌 id',
`category3_id` string COMMENT '品类 id',
`create_time` string COMMENT '创建时间'
) 
COMMENT '商品信息'
PARTITIONED BY (ds string);


CREATE TABLE `ods_user_info_df` (
`id` string COMMENT '用户 id',
`name` string COMMENT '姓名',
`birthday` string COMMENT '生日',
`gender` string COMMENT '性别',
`email` string COMMENT '邮箱',
`user_level` string COMMENT '用户等级',
`create_time` string COMMENT '创建时间'
) 
COMMENT '用户信息'
PARTITIONED BY (ds string);


CREATE TABLE `ods_base_category3_df` (
`id` string COMMENT '三级品类 id',
`name` string COMMENT '名称',
`category2_id` string COMMENT '二级品类 id'
) 
COMMENT '三级品类信息'
PARTITIONED BY (ds string);
CREATE TABLE `ods_base_trademark_df` (
`tm_id` string COMMENT '品牌 id',
`tm_name` string COMMENT '名称'
) 
COMMENT '品牌信息'
PARTITIONED BY (ds string);


CREATE TABLE `ods_base_category1_df` (
`id` string COMMENT '一级品类 id',
`name` string COMMENT '名称'
) 
COMMENT '一级品类信息'
PARTITIONED BY (ds string);
CREATE TABLE `ods_base_category2_df` (
`id` string COMMENT '二级品类 id',
`name` string COMMENT '名称',
`category1_id` string COMMENT '一级品类 id'
) 
COMMENT '二级品类信息'
PARTITIONED BY (ds string);


CREATE TABLE `ods_payment_info_di` (
`id` bigint COMMENT '编号',
`out_trade_no` string COMMENT '对外业务编号',
`order_id` string COMMENT '订单编号',
`user_id` string COMMENT '用户编号',
`alipay_trade_no` string COMMENT '支付宝交易流水编号',
`total_amount` double COMMENT '支付金额',
`subject` string COMMENT '交易内容',
`payment_type` string COMMENT '支付类型',
`payment_time` string COMMENT '支付时间'
) 
COMMENT '支付流水表'
PARTITIONED BY (ds string);
CREATE TABLE `ods_base_region_df` (
`id` bigint COMMENT '地区 id',
`region_name` string COMMENT '地区名称'
) 
COMMENT '地区'
PARTITIONED BY (ds string);


CREATE TABLE `ods_base_province_df` (
`id` bigint COMMENT '品牌 id',
`name` string COMMENT '名称',
`region_id` bigint COMMENT '地区 id'
) 
COMMENT '省份'
PARTITIONED BY (ds string);

2. 导入ODS层11张表

3. RDS层的数据同步到ODS层

1.新建节点

2. 在dataworks中找到所见区的白名单

3. 添加白名单

4. 新建mysql数据源

5. 新建maxcompute数据源

6. 填写参数

7. 数据同步成功

8. 每日全量表同步

表1:


以此类推,将所有的表进行同步

9. 每日增量表同步

数据过滤:
DATE_FORMAT(create_time,'%Y%m%d')='${bizdate}'
注意事项

10. 每日新增及变化同步

查询的结果

11. 建立好ODS层的上下游关系

posted @ 2022-05-21 23:36  jsqup  阅读(260)  评论(0编辑  收藏  举报