从 Amazon S3 获取数据

本文介绍如何将数据从 Amazon S3 获取到新的表或现有表中。 Amazon S3 是一种用于存储和检索数据的对象存储服务。

有关 Amazon S3 的详细信息,请参阅什么是 Amazon S3?

先决条件

Source

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

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

  2. 从可用列表中选择数据源。 在此示例中,将从 Amazon S3 引入数据

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

配置

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

    注意

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

  2. 在“URI”字段中,粘贴单个 Bucket 的连接字符串或采用以下格式的单个对象

    存储桶:https://BucketName.s3.RegionName.amazonaws.com;AwsCredentials=AwsAccessID,AwsSecretKey

    (可选)可以应用 Bucket 筛选器,以便根据特定的文件扩展名筛选数据。

    “配置”选项卡的屏幕截图,其中输入了新表,并粘贴了 Amazon S3 连接字符串。

  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 选项。

总结

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

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