Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 2008 如何使用视图将-sqoop导出到sqlserver_Sql Server 2008_Hadoop_Hive_Sqoop - Fatal编程技术网

Sql server 2008 如何使用视图将-sqoop导出到sqlserver

Sql server 2008 如何使用视图将-sqoop导出到sqlserver,sql-server-2008,hadoop,hive,sqoop,Sql Server 2008,Hadoop,Hive,Sqoop,我在配置单元中有一个表,我已经为它创建了一个视图。 比如说 我的表有以下字段 id | name | city | state | county | country 我的观点是这样的Id | name | country 现在我需要将这些值导出到sql server 如何使用视图将数据从配置单元导出到sql server 有办法吗 我一直在使用 sqoop export --connect "jdbc:sqlserver://XXXXXX;username=YYY;password=ZZZZ

我在配置单元中有一个表,我已经为它创建了一个视图。 比如说

我的表有以下字段

id | name | city | state | county | country 
我的观点是这样的Id | name | country

现在我需要将这些值导出到sql server 如何使用视图将数据从配置单元导出到sql server 有办法吗

我一直在使用

sqoop export --connect "jdbc:sqlserver://XXXXXX;username=YYY;password=ZZZZZ;database=AdventureWorksDW" --table sqlg --export-dir /hive/datawarehouse/sql -m 1 -input-fields-terminated-by "^"
但是现在我需要使用视图导出

谢谢

更新:

在HDFS中,我的.csv文件如下所示

1^hari^XX^xx^yy^zz
2^migi^na^na^na^na 
但我只需要加载

1^hari^zz
2^migi^na 

在SQL表中

相同的Sqoop命令应适用于表和视图。请检查同一页上的Sqoop文档()

sqoop export --connect "jdbc:sqlserver://172.16.2.182;username=sa;password=1timep;database=AdventureWorksDW" --table sqlg --export-dir /hive/datawarehouse/sql -m 1 -input-fields-terminated-by "^" --columns "Id,name,country" --update-key "Id"

Sqoop将在MR中的视图上运行SQL并获取数据。为什么该命令需要一个表作为参数?来吧,伙计-请看我的原始响应-正如我所说,相同的Sqoop命令适用于table和viewOK,请看我们在命令中仅指定文件路径“/hive/datawarehouse/sql”。My.cav文件6以分隔符“^”存档。但我只需要在SQL中加载三个字段。这意味着我只需要将Id | name | country加载到我的sql表中。我如何使用上面的命令做到这一点我很清楚,如果我运行上面的命令,所有字段(6个字段)都将正确加载?但是我只想加载(3个字段)您的引用是用于sqoop导入的,是的,有文档记录sqoop导入支持视图@Backtrack询问有关sqoop导出的问题。并且没有sqoop导出对视图不起作用。至少它没有文档记录,我已经派生了一个测试用例,并尝试从配置单元视图执行sqoop导出-它失败了,因为“ExportTool:Exporting job:java.io.IOException:java.lang.NullPointerException遇到IOException运行导出作业”-可能是sqoop错误。同样,您的引用与sqoop导入无关。