LightIngest 到 Azure 数据资源管理器

问题描述 投票:0回答:1

我正在使用 lightIngest 将数据从 Azure 中的 Blob 提取到 Azure 数据资源管理器。我在 Azure 数据资源管理器群集下分配了存储 Blob 数据读取器角色。我能够读取并列出这些文件,但无法下载 blob 并将其提取到 Azure 数据资源管理器数据库中。

这是错误消息:失败详细信息:无法下载 blob:访问持久存储路径

我的问题是:

  1. lightingest 如何实际摄取数据?我在文档中找不到它
  2. 我需要什么角色来克服上述错误?我是否需要存储 Blob 数据贡献者角色,或者我的命令有问题

旁注:我对 azure data explorer 中的数据库拥有数据库管理员权限

我的命令:

 LightIngest "https://{XXX}.kusto.windows.net;Fed=True" -database:XXX -table:XXX -source:"https://{storage account}.blob.core.windows.net/{container}/{blob path}/{blob path}/{blob path}/{blob path};managed_identity=system" -pattern:"*.parquet" -format:"parquet" -ingestWithManagedIdentity:"system" -connectToStorageWithUserAuth:"PROMPT"

azure azure-blob-storage azure-data-explorer
1个回答
0
投票

回答您的问题

  1. LightIngest 依靠 Kusto 托管表来高效地摄取数据。当您使用 LightIngest 时,它会生成 Kusto 命令以将数据提取到托管表中。
  2. 要解决该错误,请检查您是否拥有我下面提到的权限 存储 Blob 数据读取器 存储 Blob 数据贡献者 数据库管理员权限
  3. 我想使用托管身份(-ingestWithManagedIdentity:“system”)很好。

尝试一下我修改过的代码

LightIngest "https://{cluster}.kusto.windows.net;Fed=True" `
  -database:YourDatabase `
  -table:YourTable `
  -source:"https://{storage account}.blob.core.windows.net/{container}/{blob path}/*.parquet;managed_identity=system" `
  -format:"parquet" `
  -ingestWithManagedIdentity:"system" `
  -connectToStorageWithUserAuth:"PROMPT"

如果您仍然遇到该错误,我建议您查看 Microsoft 文档,我会给您链接

https://learn.microsoft.com/en-us/search/?terms=LightIngest

https://learn.microsoft.com/en-us/search/?terms=Data%20Explorer%20Storage%20Blob%20Data%20Ingestion

© www.soinside.com 2019 - 2024. All rights reserved.