![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
sqoop
lijie_cq
It's never too old to learn
展开
-
sqoop增量导入问题
一. sqoop支持的两种增量导入 1.根据自增的id号 2.根据updateTime 这样增量更新会遇到一个数据重复的问题,比如我们每天增量更新昨天的数据(可以用cron或者oozie)都会把updateTime在昨天范围内的数据增量导入到hive仓库里面,如果我们源数据库中昨天之前的数据被更改,那么updateTime会被修改为昨天的时间,因为这条数据在之前就已经原创 2016-10-09 09:51:34 · 8776 阅读 · 2 评论 -
sqoop的--query工作中的实际的使用
需求: 有一个需求,就是需要从hive通过sqoop导数据回oracle,但是导入过程需要用另外一张表记录导入过程,比如导入的时间、导入是否准备中或者运行中、成功或者失败,因为别人需要通过这个标志来触发一些处理。这里就可以用shell脚本结合sqoop的–query来实现。其中IS_FLAG :1为准备中 2为运行中 0为完成 -1为异常出错失败#!/bin/bash source ExitCod原创 2016-10-10 16:55:10 · 12192 阅读 · 1 评论 -
sqoop增量导入且表无主键
之前写过一个sqoop增量导入的文章http://blog.csdn.net/qq_20641565/article/details/52763663,自己控制增量导入,但是那个架构需要表有主键值,但是一般在实际中有的表却没有主键只有增量字段而且数据量特别大,这样的情况就不能使用之前那篇文章写的方式自己控制增量同步数据了,可以用如下的方法解决。1.使用sqoop的增量导入; 这里就不介绍了,网上有原创 2016-10-18 20:14:48 · 3281 阅读 · 0 评论 -
hive增量更新的新方案
之前是采用的join的方法来增量更新。详情见: http://blog.csdn.net/qq_20641565/article/details/52763663现在有一种新方案如下:Select b.id,b.name,b.addr,b.updated_date From ( select a.*,row_number() over(distribute by a.id sort by upd原创 2016-11-14 20:36:48 · 9229 阅读 · 0 评论 -
mongoDB同步数据到hive
sqoop作为很常用的数据同步工具,用于RDBMS和HDFS的数据迁移,但是不支持NoSql,比如说MongoDB,那如果我们需要同步mongoDB的数据到hive该怎么处理呢?下面提供下我的思路:1.我先去查询了一下mongoDB可以导出数据为CSV格式或者json格式的文件,CSV是以逗号分隔的,这样可以直接把这个文件put到hdfs中然后load到hive,但是有个问题就是:如果数据本身就自带原创 2016-11-30 20:07:17 · 12946 阅读 · 1 评论 -
数据同步之关系型数据库删数据解决方案
之前介绍了从oracle,mysql,pg等数据库增量同步数据到hive中,并且能使关系型数据库中的数据修改之后,hive也能与之一致。但是之前的方案,只能解决源数据端的数据修改同步一致性的问题,而不能解决源数据端删除数据一致性问题。下面给出一个解决方案以供参考:如下图所示oracle和hive中正常情况下数据同步应该保持一致: 但是oracle源端数据库进行了数据删除,删除了zhangsan这一原创 2016-12-07 23:31:10 · 2865 阅读 · 0 评论