2014-01-08 44 views
2

我试图将数据追加到已存在的hive表中。先使用以下命令将表从MS-SQL Server导入配置单元。使用Sqoop将数据添加到配置单元表

Sqoop命令:
sqoop import --connect "jdbc:sqlserver://XXX.XX.XX.XX;databaseName=mydatabase" --table "my_table" --where "Batch_Id > 100" --username myuser --password mypassword --hive-import

现在我想将数据以相同的现有表追加在蜂房其中 “BATCH_ID < 100” 我使用下面的命令:

sqoop import --connect "jdbc:sqlserver://XXX.XX.XX.XX;databaseName=mydatabase" --table "my_table" --where "Batch_Id < 100" --username myuser --password mypassword --append --hive-table my_table

但是,此命令成功运行也会更新HDFS数据,但是当您连接到配置单元外壳并查询该表时,附加的记录不可见。 Sqoop更新了hdfs “/ user/hduser/my_table”上的数据,但“”/ user/hive/warehouse/batch_dim“上的数据未更新。

如何解决此问题。

问候, Bhagwant Bhobe

回答

1

使用

sqoop import --connect "jdbc:sqlserver://XXX.XX.XX.XX;databaseName=mydatabase" 
       --table "my_table" --where "Batch_Id < 100" 
       --username myuser --password mypassword 
       --hive-import --hive-table my_table 

当您使用--hive-import切勿使用--append参数尝试。

相关问题