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
时间: 2024-10-11 17:47:32