分享

导入hbase的表之间有字段冲突怎么解决?

jchubby 发表于 2016-1-21 10:47:17 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 8 10710
如题,导入5个表到hbase中,rowkey是主键反转,问题是,其中两个表的字段是一模一样的,但是数据不一样,这样一来,这两个表导入的时候rowkey一样,就会覆盖到之前的数据,请问这个如何解决呢?
在rowkey后面+标识的后缀吗,有没有其他更优雅的解决方式?

已有(8)人评论

跳转到指定楼层
jchubby 发表于 2016-1-21 10:55:18
版主和大神呢~
回复

使用道具 举报

easthome001 发表于 2016-1-21 14:14:58

一模一样?表名不一样就可以了。

回复

使用道具 举报

jchubby 发表于 2016-1-21 14:22:13
easthome001 发表于 2016-1-21 14:14
一模一样?表名不一样就可以了。

是要导入到hbase一个表里面的同一个列族呀
回复

使用道具 举报

easthome001 发表于 2016-1-21 17:30:30
jchubby 发表于 2016-1-21 14:22
是要导入到hbase一个表里面的同一个列族呀

为何会这样,楼主详细描述下。字段一样,不就是同一张表了吗?为何要变成两个表。很奇怪,要么是学习用的,正式使用不会出现这种情况
回复

使用道具 举报

jchubby 发表于 2016-1-21 17:41:16
easthome001 发表于 2016-1-21 17:30
为何会这样,楼主详细描述下。字段一样,不就是同一张表了吗?为何要变成两个表。很奇怪,要么是学习用的 ...

类似历史表吧,表结构是一样的,但是数据量不同,有些数据也不一样,做BI的人用的。。。业务不太清楚。
回复

使用道具 举报

jchubby 发表于 2016-1-21 17:44:05
easthome001 发表于 2016-1-21 17:30
为何会这样,楼主详细描述下。字段一样,不就是同一张表了吗?为何要变成两个表。很奇怪,要么是学习用的 ...

还有一种情况是,不同的表字段总有些可能会是重名的,那rowkey还是要加以区分的呀
回复

使用道具 举报

Alkaloid0515 发表于 2016-1-21 20:27:01
jchubby 发表于 2016-1-21 17:44
还有一种情况是,不同的表字段总有些可能会是重名的,那rowkey还是要加以区分的呀

也就是说可能是同一条记录呗,但是这样不合理啊,最起码时间应该不一样吧。
假如是同一条记录,其实可以合并,在退一步不能合并,可以增加一个列族,这个列族的作用就是记录同一条重复了几次。

比如下面只是举例:
姓名   班级
张三   一年级
张三   一年级

假如上面重复了,那么在hbase中可以这样
姓名   班级         记录
张三   一年级       2

2代表有两条记录


回复

使用道具 举报

jchubby 发表于 2016-1-22 09:19:02
Alkaloid0515 发表于 2016-1-21 20:27
也就是说可能是同一条记录呗,但是这样不合理啊,最起码时间应该不一样吧。
假如是同一条记录,其实可以 ...

谢谢提供思路~但是这边是要用sqoop导进来的,这么做不太方便,还要写程序修改,暂时采取的方法是rowkey后面加个表id来区分
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条