业务域数据导入数仓

业务域数据导入到数仓

sqoop增量数据导入 
bin/sqoop import \
--connect jdbc:mysql://linux01:3306/myword \
--username root \ 
--password root \
--target-dir /sqoopdata/t_md_areas   \   --中间存储在hdfs 的目录
--hive-import \   
--hive-database mydata    \   --存入hive的数据库
--hive-table areas \                -- 存入hive的表
--delete-target-dir \              --如果hdfs的目录存在则删除
--as-textfile \                         -- 存入以text方式    sqoop不太支持parquet格式  不支持orc格式
--fields-terminated-by ',' \
--compress   \
--null-string '\\N' \                -- 如果有空字段字符串  以\N 格式存储
--null-non-string '\\N' \
--hive-overwrite \                --覆盖导入
--split-by id \                       --分片字段
--query 'select id, areaname from t_md_areas  where level=1 AND $CONDITIONS '   \       -- sql语句
-m 2

主要有三种方式 :
1. 采用全量导入: 这种方式适合数据基本不变化,比如各种字典表,商品类目表

2,增量导入 : 适用于数据一直变化的 比如订单信息表
 但是增量导入会出现数据重复问题 ,解决方式有两种:
 1) 每天生成当天的全量快照表 :
     优点:是方便统计查询 
     缺点:是会有大量冗余
 2) 拉链表来解决,每天不断更新拉链表:
     优点:存储冗余量低还能够在一天的分区能看到所有用户的历史订单变化 
     缺点:查询的时候会稍微麻烦一点点 有个过滤

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值