你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

教程:写入 Azure Data Lake Storage Gen2 中存储的 Delta 表

本教程演示如何创建一个写入 Azure Data Lake Storage Gen2 中的 Delta 表的流分析作业。 本教程介绍如何执行下列操作:

  • 部署用于将示例数据发送到事件中心的事件生成器
  • 创建流分析作业
  • 使用 Delta 表配置 Azure Data Lake Storage Gen2
  • 运行流分析作业

先决条件

开始之前,请完成以下步骤:

创建流分析作业

  1. 登录 Azure 门户

  2. 在左侧菜单中,选择“所有服务” 。

  3. 在“分析”部分中,将鼠标移到“流分析作业”上,然后选择“+ (加号)”。

    显示在“所有服务”页中选择“流分析作业”的屏幕截图。

  4. 在 Azure 门户的左上角选择“创建资源”。

  5. 从结果列表中选择“分析”>“流分析作业”。

  6. 在“新建流分析作业”页中,执行以下步骤:

    1. 对于“订阅”,请选择你的 Azure 订阅。
    2. 对于“资源组”,请选择之前在 TollApp 部署中使用的同一资源。
    3. 对于“名称”,输入作业的名称。 流分析作业名称只能包含字母数字字符、连字符和下划线,其长度必须介于 3 到 63 个字符之间。
    4. 对于“托管环境”,确认选中“云”。
    5. 对于“流单位”,请选择“1”。 流单元表示执行作业所需的计算资源。 若要了解如何缩放流单元,请参阅了解和调整流单元一文。

    显示“创建流分析作业”页的屏幕截图。

  7. 在页面底部选择“查看 + 创建”。

  8. 在“查看 + 创建”页中,查看设置,然后选择“创建”以创建“流分析”页。

  9. 在“部署”页中选择“转到资源”,以导航到“流分析作业”页。

配置作业输入

下一步是使用在 TollApp 部署中创建的事件中心,为用于读取数据的作业定义输入源。

  1. 查找在上一部分创建的流分析作业。

  2. 在“流分析作业”的“作业拓扑”部分,选择“输入” 。

  3. 选择“+ 添加输入”和“事件中心”。

    显示“输入”页的屏幕截图。

  4. 用以下通过 TollApp Azure 模板创建的值填写输入表单:

    1. 对于“输入别名”,输入“entrystream”。

    2. 选择“从订阅选择事件中心”。

    3. 对于“订阅”,请选择你的 Azure 订阅。

    4. 对于“事件中心命名空间”,请选择在上一部分创建的事件中心命名空间。

    5. 对其余设置使用默认选项,然后选择“保存”。

      显示选择输入事件中心的屏幕截图。

配置作业输出

下一步是定义作业可向其写入数据的输出接收器。 本教程会将输出写入 Azure Data Lake Storage Gen2 中的 Delta 表。

  1. 在“流分析作业”的“作业拓扑”部分,选择“输出”选项 。

  2. 选择“+ 添加输出”>“Blob 存储/ADLS Gen2”。

    显示“输出”页的屏幕截图。

  3. 在输出窗体中填写以下详细信息并选择“保存”:

    1. 对于“输出别名”,请输入“DeltaOutput”。

    2. 选择“从订阅中选择 Blob 存储/ADLS Gen2”。

    3. 对于“订阅”,请选择你的 Azure 订阅。

    4. 对于“存储帐户”,请选择你创建的 ADLS Gen2 帐户(以 tollapp 开头的帐户)。

    5. 对于“容器”,请选择“新建”并唯一的容器名称。

    6. 对于“事件序列化格式”,请选择“Delta Lake”。 虽然 Delta Lake 在此处被列为选项之一,但它不是数据格式。 Delta Lake 使用受版本控制的 Parquet 文件存储数据。 详细了解 Delta Lake

    7. 对于“Delta 表路径”,请输入“教程文件夹/Delta 表”。

    8. 对其余设置使用默认选项,然后选择“保存”。

      显示输出配置的屏幕截图。

创建查询

此时,设置一个流分析作业以读取传入数据流。 接下来创建一个分析实时数据的查询。 这些查询使用类似 SQL 的语言,该语言具有特定于流分析的一些扩展。

  1. 现在,在左侧菜单的“作业拓扑”下选择“查询”。

  2. 将以下查询输入到查询窗口中。 在本示例中,查询从事件中心读取数据,并将所选值复制到 ADLS Gen2 中的 Delta 表。

     SELECT State, CarModel.Make, TollAmount
     INTO DeltaOutput
     FROM EntryStream TIMESTAMP BY EntryTime
    
  3. 在工具栏上选择“保存”。

    显示作业查询的屏幕截图。

启动流分析作业并检查输出

  1. 返回到 Azure 门户中的作业概述页,然后选择“启动”。

    显示在“概述”页上选择“启动作业”按钮的屏幕截图。

  2. 在“启动作业”页中,确认在“作业输出开始时间”部分选择“现在”,然后选择页面底部的“启动”。

    显示选择“启动作业”页的屏幕截图。

  3. 数分钟后,在门户中找到存储帐户和此前已配置为作业输出的容器。 现在可在容器中指定的文件夹中看到 Delta 表。 首次启动此作业需要数分钟的时间,启动后,只要有数据到达,它就会持续运行。

    显示容器中的输出数据文件的屏幕截图。

清理资源

若不再需要资源组、流分析作业以及所有相关资源,请将其删除。 删除作业可避免对作业使用的流单元进行计费。 如果计划在将来使用该作业,可以先停止它,等到以后需要时再重启它。 如果你不打算继续使用此作业,请使用以下步骤删除本教程中创建的所有资源:

  1. 在 Azure 门户的左侧菜单中选择“资源组”,然后选择已创建资源的名称。
  2. 在资源组页上选择“删除”,在文本框中键入要删除的资源的名称,然后选择“删除”。

后续步骤

在本教程中,你创建了一个简单的流分析作业,筛选了传入数据,并将结果写入了 ADLS Gen2 帐户的 Delta 表中。 要详细了解流分析作业,请参阅下文: