利用sqoop从mysql向hbase导数据(拼接mysql多字段做为hbase rowkey)

本文介绍了如何利用sqoop将mysql中的数据迁移到hbase,以解决资源限制问题并实现准实时查询。通过创建临时表,拼接mysql字段作为hbase的rowkey,优化查询效率。详细步骤包括创建临时表、添加新列、更新数据和运行sqoop命令进行导入。
摘要由CSDN通过智能技术生成

说说自己的思路,路过的朋友请帮忙指正或提新建议,万分感谢。


场景介绍:

自己在mysql中有1张表,每天2GB左右的统计数据,,因为资源原因需定期删除。

但有其他场景需要保存1年以上,所以想把数据备份在hbase里,同时还要能支持准实时查询。


选择Sqoop原因: 

希望以后能有一个较通用的数据迁移方案(在mysql和hbase/hive/hdfs之间),尽量减少重复代码的开发与维护。


测试场景(已验证)

假设在数据库实例 logdb 中有一张表:system_log, 包含如下五个字段: 

id: int(12) PRI  AUTO_INCREMENT  (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)

mytime: datetime (格式:2015-12-12 12:12:12)

mytype: varchar(128)

value1: varchar(256)

value2: varchar(256)

为了提高查询效率,我设计hbase rowkey如下: mytype_mytime_id,  列族(cf)中有两列:cf:value1,  cf:value2。因为我的查找需求就是查询某个mytype在指定时间段内的属性值。


具体测试步骤: 

<1> 创建一张临

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值