欢迎投稿

今日深度:

hbase结合hive和sqoop实现导数据到mysql,hbasesqoop

hbase结合hive和sqoop实现导数据到mysql,hbasesqoop


hive整合hbase表的两点好处: 
   1.实现数据导入到MYSQL。 
   2.实现hbase表转换为另外一张hbase表。
 


三个操作环节: 
    1.hbase关联hive作为外部表: 
Sql代码  收藏代码
  1. 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)   
  2. STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'   
  3. WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf:genera_type,cf:install_type,cf:label,cf:meid,cf:model,cf:pkg_name,cf:specific_type")   
  4. TBLPROPERTIES("hbase.table.name" = "tb_yl_device_app_info1");  


   2.hbase真正关联hive,hive的插入更新等操作直接影响hbase中的数据 
  Sql代码  收藏代码
  1. 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)   
  2. STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'   
  3. WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf:genera_type,cf:install_type,cf:label,cf:meid,cf:model,cf:pkg_name,cf:specific_type")   
  4. TBLPROPERTIES("hbase.table.name" = "tb_yl_device_app_info2");  

   
   3.创建一张hive表 
Sql代码  收藏代码
  1. 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代码  收藏代码
  1. insert overwrite table hive_device_app_real select * from hive_device_app   

    5.sqoop导出hive的数据到mysql 
    Sql代码  收藏代码
  1. 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代码  收藏代码
  1. insert overwrite table another_hive_hbase_related_table select * from hbase_device_app   



导出hbase中数据到mysql需要经过步骤:1345 
hbase中一张表到另外一张表(中间可以利用hive内置函数做数据处理):226
 

sqoop导入的数据 hbase可以直接用?还是需要在hbase里见表格 然后再把导入的数据插进去?

一条简单的命令就可以

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
 

将mysql数据库中数据通过sqoop导入到hive中时报 javaioIOException: SQLException in nextKeyValue

将sql修改一下试试,相同效果的其他sql
 

www.htsjk.Com true http://www.htsjk.com/shujukunews/2872.html NewsArticle hbase结合hive和sqoop实现导数据到mysql,hbasesqoop hive整合hbase表的两点好处: 1.实现数据导入到MYSQL。 2.实现hbase表转换为另外一张hbase表。 三个操作环节: 1.hbase关联hive作为外部表: Sql代...
相关文章
    暂无相关文章
评论暂时关闭