从 Azure 存储获取数据

在本文中,你会学习如何将数据从 Azure 存储(ADLS Gen2 容器、Blob 容器或单个 Blob)获取到新的表或现有表。

先决条件

Source

  1. 在 KQL 数据库的下方功能区中,选择“获取数据”。

    在“获取数据”窗口中,“源”选项卡处于选中状态

  2. 从可用列表中选择数据源。 在此示例中,你将从 Azure 存储引入数据。

    屏幕截图,其中显示了选取了“源”选项卡的“获取数据”窗口。

配置

  1. 选择目标表。 如果要将数据引入新表,请选择“+ 新建表”并输入表名称

    注意

    表名称最多可包含 1024 个字符,包括空格、字母数字、连字符和下划线。 不支持特殊字符。

  2. 若要添加数据源,请将存储连接字符串粘贴到 URI 字段中,然后选择 +。 下表列出了支持的身份验证方法,以及从 Azure 存储引入数据所需的权限。

    身份验证方法 单个 Blob Blob 容器 Azure Data Lake Storage Gen2
    共享访问 (SAS) 令牌 读取和写入 读取和列出 读取和列出
    存储帐户访问密钥

    注意

    • 最多可以添加 10 个单独的 Blob,也可以从单个容器引入最多 5000 个 Blob。 不能同时引入这两种。
    • 每个 Blob 的未压缩大小上限 1 GB。
    1. 如果粘贴了 Blob 容器或 Azure Data Lake Storage Gen2 的连接字符串,则可以添加以下可选筛选器:

      屏幕截图,其中显示了已输入新表并选择了一个示例数据文件的“配置”选项卡。

      设置 字段说明
      文件筛选器(可选)
      文件夹路径 筛选数据以引入具有特定文件夹路径的文件。
      文件扩展名 筛选数据以仅引入具有特定文件扩展名的文件。
  3. 选择“下一步”

检查

此时会打开“检查”选项卡,其中包含数据的预览

要完成引入过程,请选择“完成”

屏幕截图,其中显示了“检查”选项卡。

可选:

编辑列

注意

  • 对于表格格式(CSV、TSV、PSV),无法将列映射两次。 若要映射到现有列,请先删除新列。
  • 不能更改已有列类型。 如果尝试映射到其他格式的列,结果可能出现空列。

以下参数决定了你可在表中进行的更改:

  • 表类型为“新”或“现有”
  • 映射类型为“新”或“现有”
表类型 映射类型 可用调整
新建表 新映射 重命名列、更改数据类型、更改数据源、映射转换、添加列、删除列
现有表 新映射 新建列(随后可在其上更改数据类型、进行重命名和更新)
现有表 现有映射

屏幕截图,其中显示了打开以供编辑的列。

映射转换

某些数据格式映射(Parquet、JSON 和 Avro)支持简单的引入时间转换。 若要应用映射转换,请在“编辑列”窗口中创建或更新列

可对具有 string 或 datetime 类型且源的数据类型为 int 或 long 的列执行映射转换。 支持的映射转换为:

  • DateTimeFromUnixSeconds
  • DateTimeFromUnixMilliseconds
  • DateTimeFromUnixMicroseconds
  • DateTimeFromUnixNanoseconds

基于数据类型的高级选项

表格(CSV、TSV、PSV)

  • 如果要在现有表中引入表格格式,可以选择“高级”>“保留表架构”。 表格数据不一定要包括用于将源数据映射到现有列的列名称。 选中此选项后,映射将按顺序完成,表架构保持不变。 如果未选中此选项,无论数据结构如何,都为传入的数据创建新列。

  • 要将第一行用作列名,请选择“高级”>“首行是列标题”

    屏幕截图,其中显示了高级 CSV 选项。

JSON

  • 要确定 JSON 数据的列划分,请选择“高级”>“嵌套级别”,从 1 到 100

  • 如果选择“高级”>“跳过有错误的 JSON 行”,将以 JSON 格式引入数据。 如果未选中此复选框,则以 multijson 格式引入数据。

    屏幕截图,其中显示了高级 JSON 选项。

总结

如果数据引入成功完成,则“数据准备”窗口中的所有三个步骤都会带有绿色的对勾标记。 可以选择要查询、删除已引入数据的卡或查看引入摘要的仪表板。

屏幕截图,其中显示了已成功完成数据引入的摘要页面。