把 mysql 表数据导入 hive 中

  • 命令格式
    1
    
    sqoop import {参数列表}
    
  • 默认在 hive 中创建指定表,如果该表已存在,则把 mysql 表数据追加到该表中,常规参数如下
    1
    2
    3
    4
    5
    6
    7
    8
    9
    
    --connect jdbc:mysql://_mysql_server_:3306/_mysql_dbname_
    --username _mysql_user_
    --password _mysql_password_
    --table _mysql_tablename_
    --hive-import
    --hive-database _hive_dbname_
    --hive-table _hive_tablename_
    --hive-drop-import-delims
    -m 1
    
  • 如果该表已存在,则报错退出,参数如下
    1
    
    --create-hive-table
    
  • 如果该表已存在,则覆盖重新导入,参数如下
    1
    
    --hive-overwrite
    
  • 导入增量数据,参数如下
    1
    2
    3
    
    --incremental append
    --check-column _mysql_tablecolumn_
    --last-value _last_value_
    

把 hive 表数据导入 mysql 中

  • 命令格式
    1
    
    sqoop export {参数列表}
    
  • mysql 中需提前创建好待导入的表,常规参数如下
    1
    2
    3
    4
    5
    6
    
    --connect jdbc:mysql://_mysql_server_:3306/_mysql_dbname_
    --username _mysql_username_
    --password _mysql_password_
    --table _mysql_tablename_
    --hcatalog-database _hive_dbname_
    --hcatalog-table _hive_tablename_
    
  • 只导出 hive 表中的部分的指定(部分)字段,参数如下
    1
    
    --columns "_column_name1_,_column_name2_,_column_name3_"