【问题标题】:Getting an error while copying data from one folder to another in Azure Data Factory在 Azure 数据工厂中将数据从一个文件夹复制到另一个文件夹时出错
【发布时间】:2023-02-02 18:47:28
【问题描述】:

此查询曾经在 Azure 数据工厂管道中工作,但几天前停止工作。 Azure Blob 存储中的文件名/格式等没有任何变化。在此行中出现错误:

SELECT * FROM OPENROWSET ( 
  BULK 
'/filepath.csv@snapshot=*', FORMAT = 'CSV' 
) 

该错误表明 .csv@snapshot=* 具有不允许的 URL 后缀。 完整代码:

-- CREATE OR REPLACE VIEW clean.barriers AS 
IF EXISTS (SELECT * FROM sys.tables t 
    JOIN sys.schemas s ON (t.schema_id = s.schema_id) 
    WHERE s.name = 'clean' AND t.name = 'barriers') 
EXEC('DROP EXTERNAL TABLE [clean].[barriers]')  

CREATE EXTERNAL TABLE [clean].[barriers]
WITH 
( 
   LOCATION = 'clean/synapse/barriers',
   DATA_SOURCE = "", 
   FILE_FORMAT = [SynapseParquetFormat] 
) 
AS  

SELECT * FROM OPENROWSET ( 
  BULK 
'/filepath.csv@snapshot=*', FORMAT = 'CSV' 
) 
WITH( 
-- Schema adjusted to what we have in clean/barriers in Bigquery 
mshp_id INT, 
prog_name NVARCHAR(256), 
barrier_name NVARCHAR(256), 
days INT 
) AS load_clean_data

【问题讨论】:

  • 您能否提供有关您尝试执行上述查询的活动以及您的目标是 Azure SQL 数据库还是突触的信息?

标签: sql azure azure-data-factory azure-synapse


【解决方案1】:

根据Official Documentation,您还应该有一个源文件的数据源,您还试图从中复制数据。

因此,尝试为源 CSV 文件创建数据源并检查,它可能有效。

此外,当您使用 ADF 执行上述脚本时,首先尝试在没有 ADF 的情况下执行它,如果出现错误,则问题可能出在脚本上,而不是 ADF 上。如果没有尝试更改 ADF 的活动并检查。

您也可以在 BULK 路径中尝试此故障排除。正如您想要的那样,该 csv 文件文件夹中的数据提供如下路径并检查。

/folder/*.csv

【讨论】:

    猜你喜欢
    • 2023-02-06
    • 2022-11-17
    • 2021-10-21
    • 1970-01-01
    • 2017-11-07
    • 1970-01-01
    • 2023-01-14
    • 2014-02-10
    • 2020-07-30
    相关资源
    最近更新 更多