有人知道Azure HDInsight上的Sqoop是否可以编写镶木地板文件? 我正在使用HDInsight与Blob存储和Data Lake存储。 我跑的时候
sqoop import --connect 'jdbc:sqlserver://<servername>.database.secure.windows.net:1433;database=<dbname>' --username <user> --password "<password>" --table '<tablename>' --target-dir 'wasbs://<container>@<storageaccount>.blob.core.windows.net/<tablename>' --as-parquetfile -m 8 >> sqoop.<table>.out 2>&1
我收到错误
17/05/31 16:31:14 ERROR tool.ImportTool: Imported Failed: Wrong FS: wasbs://<container>@<storageaccount>.blob.core.windows.net/<tablename>, expected: wasb://<container>@<storageaccount>.blob.core.windows.net/
如果我将'wasbs://'更改为'wasb://',我会收到此错误:
17/05/31 16:32:35 ERROR sqoop.Sqoop: Got exception running Sqoop: org.kitesdk.data.DatasetNotFoundException: Unknown dataset URI pattern: dataset:wasb://<container>@<storageaccount>.blob.core.windows.net/<tablename>
Check that JARs for wasb datasets are on the classpath
org.kitesdk.data.DatasetNotFoundException: Unknown dataset URI pattern: dataset:wasb://<container>@<storageaccount>.blob.core.windows.net/<tablename>
Check that JARs for wasb datasets are on the classpath
at org.kitesdk.data.spi.Registration.lookupDatasetUri(Registration.java:128)
at org.kitesdk.data.Datasets.exists(Datasets.java:624)
at org.kitesdk.data.Datasets.exists(Datasets.java:646)
at org.apache.sqoop.mapreduce.ParquetJob.configureImportJob(ParquetJob.java:106)
at org.apache.sqoop.mapreduce.DataDrivenImportJob.configureMapper(DataDrivenImportJob.java:130)
at org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:264)
at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:692)
at org.apache.sqoop.manager.SQLServerManager.importTable(SQLServerManager.java:163)
at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:507)
at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:615)
at org.apache.sqoop.Sqoop.run(Sqoop.java:147)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76)
at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:183)
at org.apache.sqoop.Sqoop.runTool(Sqoop.java:225)
at org.apache.sqoop.Sqoop.runTool(Sqoop.java:234)
at org.apache.sqoop.Sqoop.main(Sqoop.java:243)
如果我将--target-dir更改为使用带有--as-parquetfile的数据湖adl://<datalakestorename>.azuredatalakestore.net/<tablename>
我收到错误
7/05/31 17:04:33 ERROR tool.ImportTool: Imported Failed: Wrong FS: adl://<datalakestorename>.azuredatalakestore.net/<tablename>, expected: wasb://<container>@<storageaccount>.blob.core.windows.net/
这些错误的原因是什么? 我对此感到困惑
expected wasb://<container>@<storageaccount>.blob.core.windows.net/
用于Blob存储和数据湖错误。
路径wasb://<container>@<storageaccount>.blob.core.windows.net/
恰好是群集的根和默认存储。为什么即使列出了-target-dir,它也会在错误消息中显示为默认值?它被缓存在某个地方吗?
为什么不能将HDInsight上的sqoop导入数据作为镶木地板文件?