【问题标题】:Sqoop Import Command DirectoriesSqoop 导入命令目录
【发布时间】:2017-04-16 16:45:19
【问题描述】:

环境:CDH 工具:Sqoop

版本:Sqoop 1.4.6-cdh5.8.0

目的:从MySQL数据库导入表

  1. 使用源数据子集创建配置单元表(例如 order_status = 'CLOSED')
  2. 使用 order_status not in ('CLOSED') 重新导入同一目录中的更多数据

结果: 1.使用命令完成目标1

sqoop import --connect jdbc:mysql://xxx:000/xxxx_db
             --username=xxxx_dba --P
             --warehouse-dir=/user/hive/warehouse/hex.db/
             -m 1
             --table orders --compression-codec=snappy
             --hive-import --as-textfile --create-hive-table
             --hive-table closed_orders
             --hive-overwrite
             --where "order_status='CLOSED'"
             --compress
             --columns "order_id, order_customer_id, order_status"

创建目录 /user/hive/warehouse/hex.db/closed_orders,其中包含一个数据文件和一个带有“CLOSED”订单的配置单元表。

  1. 我正在尝试重新导入更多数据 - 这次是order_status not in ('CLOSED') -- 这次不创建 hive 表,只是将 order_status != 'CLOSED' 导入不同的目录 (open_orders)。

问题:它创建了一个目录/user/hive/warehouse/hex.db/open_orders/orders/. 2.a 如何将文件导入目录/user/hive/warehouse/hex.db/open_orders?

2.b 我们如何导入 order_status 的子集日期!= 'CLOSED' 即。将订单打开到步骤 1 中创建的同一目录中,即。 /user/hive/warehouse/hex.db/closed_orders ?

用于第 2 步的命令:

sqoop import --connect jdbc:mysql://xxxx:0000/retail_db
             --username=xxxx_dba --P --warehouse-dir=/user/hive/warehouse/hex.db/ -m 1 
             --table orders --compression-codec=snappy  --hive-import
             --as-textfile --hive-table open_orders
             --where "order_status not in ('CLOSED')"
             --compress --columns "order_id, order_customer_id, order_status"

2.3 --append 命令出错,我试图将打开的订单导入从步骤 1 /user/hive/warehouse/hex.db/closed_orders 创建的目录中

17/04/15 14:24:22 INFO tool.BaseSqoopTool: Using Hive-specific delimiters for output. You can override
17/04/15 14:24:22 INFO tool.BaseSqoopTool: delimiters with --fields-terminated-by, etc.
Append mode for hive imports is not  yet supported. Please remove the parameter --append-mode

【问题讨论】:

    标签: sqoop


    【解决方案1】:

    当您执行 #2 即重新导入数据时,请使用

    --target-dir /user/hive/warehouse/hex.db/open_orders

    而不是

    warehouse-dir

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-03-21
      • 1970-01-01
      • 1970-01-01
      • 2019-05-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-13
      相关资源
      最近更新 更多