将MySQL中大量数据导入到Hbase有什么好的方法

将MySQL中大量数据导入到Hbase有什么好的方法,第1张

将MySQL中大量数据导入到Hbase有什么好的方法

:使用sqoop工具。 1、在行键选择那里,通过用“”,将需要做行键的多个列写在一起就可以了。 2、例如要将a和b列同时做行键,那么--hbase-row-key "a,b"就可以了。 Sqoop是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql、postgresql

利用sqoop命令直接将mysql数据导入hbase

sqoop import --connect jdbc:mysql://127.0.0.1:3306/bss --table usu3 --hbase-table U --column-familyperson --hbase-row-key id --hbase-create-table --username 'root' -P

--connect jdbc:mysql://127.0.0.1:3306/bss 表示远程或者本地Mysql 服务的URI,3306是Mysql默认监听端口,bss是数据库,若是其他数据库,如Oracle,只需修改URI即可。

--table usu3 表示导出bss数据库的usu3 表。

--hbase-table U 表示在HBase中建立表U。

--column-family person 表示在表U中建立列族person。

--hbase-row-key id 表示表U的row-key是usu3表的id字段。

--hbase-create-table 表示在HBase中建立表。

--username 'root' 表示使用用户root连接Mysql。

可以代替mysql的 。

将Hive与HBase整合在一起,使Hive可以读取HBase中的数据,让Hadoop生态系统中最为常用的两大框架互相结合,相得益彰。

在Hive中创建HBase识别的表就可以替代mysql了。

如下:

CREATE TABLE hbase_hive_1(key int, value string)

STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'

WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf1:val")

TBLPROPERTIES ("hbase.table.name" = "xyz")

分别查看Hive、HBase中建立的表


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8577988.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-18
下一篇 2023-04-18

发表评论

登录后才能评论

评论列表(0条)

保存