:使用sqoop工具。 1、在行键选择那里,通过用“”,将需要做行键的多个列写在一起就可以了。 2、例如要将a和b列同时做行键,那么--hbase-row-key "a,b"就可以了。 Sqoop是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql、postgresql
利用sqoop命令直接将mysql数据导入hbasesqoop 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中建立的表
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)