2017-04-26 32 views
0

我已经从我的SQL数据库,将数据传输到我的Azure的数据湖下面的命令Sqoop忽略列名:为什么从SQL数据库导入数据时

sqoop-import --connect "jdbc:sqlserver://MYDB.database.windows.net:1433;[email protected];password=MYPW;database=MYDb" --table TABLENAME --target-dir adl://TESTTT.azuredatalakestore.net/Sqoop/TABLENAME 

结果是,除了一个事实,即它不”精包括列名称,是否有办法包含这些列名称?

enter image description here

+0

你导入到表或只在HDFS目录?您的sqoop作业无法导入少量列?请澄清 ? –

+0

进入HDFS目录。我的sqoop作业正确导入数据本身,但它忽略列名称。 (例如第一列应该是PKey) – Smut

回答

1

通常Sqoop进口不支持列名,同时将数据导入HDFS。如果您想要将模式与数据一起携带,那么您可以考虑让Sqoop将数据导入Avro文件格式。

其他解决方法是,您可以使用Sqoop Hive导入将整个表导入Hadoop环境中的Hive表。

以下是Hive导入的良好阅读参考。

  1. Sqoop Hive Import
  2. Sqoop Importing data into Hive.
+0

清除!感谢您的推荐! – Smut

相关问题