【问题标题】:USQL Activity in ADF V2 - 2705 User is not able to access to datalake storeADF V2 中的 USQL 活动 - 2705 用户无法访问数据湖存储
【发布时间】:2017-11-16 18:30:31
【问题描述】:

在使用 Azure 数据工厂 V2 运行 U-SQL 脚本时遇到问题。

这个 U-SQL 脚本在门户或 vs 中工作正常:

 @a  = 
  SELECT * FROM 
    (VALUES
       ("Contoso",   1500.0, "2017-03-39"),
       ("Woodgrove", 2700.0, "2017-04-10")
    ) AS D( customer, amount );

@results =
  SELECT
    customer,
    amount
  FROM @a;    

OUTPUT @results
  TO "test"
  USING Outputters.Text();

但在 Azure 数据工厂 V2 活动中启动时不起作用,请查看我的 ADF 脚本。

Creating or updating linked service ADLA [adla] ...
{
  "properties": {
    "type": "AzureDataLakeAnalytics",
    "typeProperties": {
      "accountName": "adla",
      "servicePrincipalId": "ea4823f2-3b7a-4c-78d29cffa68b",
      "servicePrincipalKey": {
        "type": "SecureString",
        "value": "jKhyspEwMScDAGU0MO39FcAP9qQ="
      },
      "tenant": "41f06-8ca09e840041",
      "subscriptionId": "9cf053128b749",
      "resourceGroupName": "test"
    }
  }
}

Creating or updating linked service BLOB [BLOB] ...
{
  "properties": {
    "type": "AzureStorage",
    "typeProperties": {
      "connectionString": {
        "type": "SecureString",
        "value": "DefaultEndpointsProtocol=https;AccountName=totoblob;AccountKey=qZqpKyGtWMRXZO2CNLa0qTyvLTMko4lzfgsg07pjloIPGZtJel4qvRBkoVOA==;EndpointSuffix=core.windows.net"
      }
    }
  }
}

Creating or updating pipeline ADLAPipeline...
{
  "properties": {
    "activities": [
      {
        "type": "DataLakeAnalyticsU-SQL",
        "typeProperties": {
          "scriptPath": "src/test.usql",
          "scriptLinkedService": {
            "referenceName": "blob",
            "type": "LinkedServiceReference"
          },
          "degreeOfParallelism": 1
        },
        "linkedServiceName": {
          "referenceName": "adla",
          "type": "LinkedServiceReference"
        },
        "name": "Usql-toto"
      }
    ]
  }
}

1 - 我检查了与 blob 存储的连接,成功找到了 u-sql 脚本(如果我重命名它,它会抛出未找到的错误)

2 - 我检查了与 Azure Data Lake Analytics 的连接,它似乎已连接,如果我设置了错误的凭据,它会引发另一个错误

3 - 运行管道时出现以下错误:“Activity Usql-toto failed: User is not able to access to datalake store”实际上我没有提供 Data Lake Store 凭据,但有一个默认的 datalake 存储帐户附加 ADLAnalytics。

有什么提示吗?

【问题讨论】:

    标签: azure-data-factory azure-data-lake u-sql


    【解决方案1】:

    终于在这篇文章中找到了帮助:U-SQL Job Failing in Data Factory

    文件夹系统和目录从父权限继承...所以我不得不重新分配这两个文件夹的权限。

    【讨论】:

    • 新文件夹/文件的权限继承自父文件夹的默认权限。你设置好了吗?
    【解决方案2】:

    我也遇到了这个问题。帮助我的是从 Data Lake Analytics 运行“添加用户向导”。使用此向导,我将在 Data Lake Analytics 的链接服务中使用的服务主体添加为具有 R+W 权限的所有者。

    在使用该向导之前,我尝试通过在“探索数据”屏幕中设置适当的权限来手动配置它,但这并没有解决问题。 (SP 已经是该服务的贡献者)

    【讨论】:

    • 我发现这很重要,因为每天都会添加新文件夹,但它们没有正确继承权限,因此每天更改我的数据工厂脚本都会开始失败。
    • 这就像一个魅力!我遇到了同样的问题,奇怪的是,将 SP 作为贡献者角色添加到 ADLA 并没有帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-26
    • 1970-01-01
    • 2023-03-04
    • 1970-01-01
    相关资源
    最近更新 更多