hbase结合hive和sqoop实现导数据到mysql,hbasesqoop
hive整合hbase表的两点好处:1.实现数据导入到MYSQL。
2.实现hbase表转换为另外一张hbase表。
三个操作环节:
1.hbase关联hive作为外部表:
Sql代码
- CREATE EXTERNAL TABLE hive_device_app(row_key string,genera_type string,install_type string,label string,meid string,model string,pkg_name string,specific_type string)
- STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
- WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf:genera_type,cf:install_type,cf:label,cf:meid,cf:model,cf:pkg_name,cf:specific_type")
- TBLPROPERTIES("hbase.table.name" = "tb_yl_device_app_info1");
2.hbase真正关联hive,hive的插入更新等操作直接影响hbase中的数据
Sql代码
- CREATE TABLE hbase_device_app(row_key string,genera_type string,install_type string,label string,meid string,model string,pkg_name string,specific_type string)
- STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
- WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf:genera_type,cf:install_type,cf:label,cf:meid,cf:model,cf:pkg_name,cf:specific_type")
- TBLPROPERTIES("hbase.table.name" = "tb_yl_device_app_info2");
3.创建一张hive表
Sql代码
- CREATE TABLE hive_device_app_real(row_key string,genera_type string,install_type string,label string,meid string,model string,pkg_name string,specific_type string)
4.外部表数据导入hive实表
Sql代码
- insert overwrite table hive_device_app_real select * from hive_device_app
5.sqoop导出hive的数据到mysql
Sql代码
- sqoop export --connect jdbc:mysql://Hadoop48/toplists -m 1 --table hive_device_app_real --export-dir /user/hive/warehouse/hive_device_app_real/000000_0 --input-null-string "\\\\N" --input-null-non-string "\\\\N" --input-fields-terminated-by "\\01" --input-lines-terminated-by "\\n"
6.habse(关联hive)中一张表转到另外一张表当然可以利用hive的内置函数实现数据处理
Sql代码
- insert overwrite table another_hive_hbase_related_table select * from hbase_device_app
导出hbase中数据到mysql需要经过步骤:1345
hbase中一张表到另外一张表(中间可以利用hive内置函数做数据处理):226
一条简单的命令就可以
sqoop import --jar-file (你的jar包) --class-name (classname) --connect (mysql实例) --username (用户名) --password (密码) -table (表名) -hbase-table (hbase表名) -column-family (familyColumn) -hbase-row-key (hbase rowkey) --hbase-create-table
将sql修改一下试试,相同效果的其他sql
本站文章为和通数据库网友分享或者投稿,欢迎任何形式的转载,但请务必注明出处.
同时文章内容如有侵犯了您的权益,请联系QQ:970679559,我们会在尽快处理。