polybase插入外部表失败-路径不存在-sql server 2016 rc3

j2qf4p5b  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(317)

我用sql server 2016 rc3 developer测试了polybase:
我能够创建外部数据源
我可以创建文件格式
我创建了指向hadoop文件系统的外部表
我可以在外部表上运行select并在managementstudio中获取数据
但是,当我尝试插入到相同的表中时,出现以下错误:
'microsoft.sqlserver.datawarehouse.common.errorhandling.mppsqlexception:外部表访问失败,因为指定的路径名“”hdfs://localhost:9000/input/oldsales.csv“”不存在。输入有效路径并重试'
我确信路径存在,而且,如果我能够选择相同的外部表,外部源包含正确的路径,或者我遗漏了什么?
这是我的插入语句:

INSERT INTO [dbo].[OldTrasactions]
SELECT TOP 1000 
       [SalesOrderNumber]
      ,[SalesOrderLineNumber]
      ,p.EnglishProductName as ProductName
      ,st.SalesTerritoryCountry
      ,[OrderQuantity]
      ,[UnitPrice]
      ,[ExtendedAmount]
      ,[SalesAmount]
      ,convert(date,[OrderDate]) AS [OrderDate]
  FROM [AdventureworksDW2016CTP3].[dbo].[FactInternetSales] a
  inner join dbo.DimProduct p on a.ProductKey = p.ProductKey
  inner join dbo.DimSalesTerritory st on st.SalesTerritoryKey = a.SalesTerritoryKey
  where year(OrderDate) < 2011

我还启用polybase导出:

sp_configure 'allow polybase export', 1;
reconfigure

似乎有一个权限问题,我得到了错误的消息。
其他细节:
windows服务器2012
hadoop 2.7.1(单节点)
如有任何意见,将不胜感激。

nkcskrwz

nkcskrwz1#

对于使用polybase导出,请确保指定的路径是存在或可以创建的目录,并且可以在该目录中创建文件。
参考https://msdn.microsoft.com/en-us/library/mt652313.aspx 更多细节。

相关问题