通过 Azure CLI 开始使用 Azure Data Lake Analytics

重要

除非已启用订阅,否则无法再创建新的 Azure Data Lake Analytics 帐户。 如果您需要激活订阅,联系支持人员 并提供您的业务场景。

如果已在使用 Azure Data Lake Analytics,则需要在 2024 年 2 月 29 日为组织创建到 Azure Synapse Analytics 迁移计划。

本文介绍如何使用 Azure CLI 命令行接口创建 Azure Data Lake Analytics 帐户、提交 USQL 作业和目录。 该作业读取制表符分隔值 (TSV) 文件,并将其转换为逗号分隔值 (CSV) 文件。

先决条件

在开始之前,需要以下项:

登录到 Azure

若要登录到 Azure 订阅,请执行以下步骤:

az login

系统会请求浏览到 URL,并输入身份验证代码。 然后按照说明输入凭据。

登录后,登录命令会列出订阅。

若要使用特定订阅,请执行以下步骤:

az account set --subscription <subscription id>

创建 Data Lake Analytics 帐户

需要一个 Data Lake Analytics 帐户,然后才能运行任何作业。 若要创建 Data Lake Analytics 帐户,必须指定以下项:

  • Azure 资源组。 必须在 Azure 资源组中创建 Data Lake Analytics 帐户。 Azure 资源管理器 使你可以将应用程序中的资源作为组进行操作。 可以在单个协调的作中部署、更新或删除应用程序的所有资源。

列出订阅下的现有资源组:

az group list

若要创建新的资源组:

az group create --name "<Resource Group Name>" --location "<Azure Location>"
  • Data Lake Analytics 帐户名。 每个 Data Lake Analytics 帐户都有一个名称。
  • Location。 使用支持 Data Lake Analytics 的 Azure 数据中心之一。
  • 默认 Data Lake Store 帐户:每个 Data Lake Analytics 帐户都有默认的 Data Lake Store 帐户。

列出现有的 Data Lake Store 帐户:

az dls account list

若要创建新的 Data Lake Store 帐户,请执行以下作:

az dls account create --account "<Data Lake Store Account Name>" --resource-group "<Resource Group Name>"

使用以下语法创建 Data Lake Analytics 帐户:

az dla account create --account "<Data Lake Analytics Account Name>" --resource-group "<Resource Group Name>" --location "<Azure location>" --default-data-lake-store "<Default Data Lake Store Account Name>"

创建帐户后,可以使用以下命令列出帐户并显示帐户详细信息:

az dla account list
az dla account show --account "<Data Lake Analytics Account Name>"

将数据上传到 Data Lake Store

在本教程中,将处理一些搜索日志。 搜索日志可以存储在 Data Lake Store 或 Azure Blob 存储中。

Azure 门户提供了一个用户界面,用于将一些示例数据文件复制到默认的 Data Lake Store 帐户,其中包括搜索日志文件。 请参阅 准备源数据 将数据上传到默认 Data Lake Store 帐户。

若要使用 Azure CLI 上传文件,请使用以下命令:

az dls fs upload --account "<Data Lake Store Account Name>" --source-path "<Source File Path>" --destination-path "<Destination File Path>"
az dls fs list --account "<Data Lake Store Account Name>" --path "<Path>"

Data Lake Analytics 还可以访问 Azure Blob 存储。 有关将数据上传到 Azure Blob 存储,请参阅 将 Azure CLI 与 Azure 存储配合使用。

提交 Data Lake Analytics 作业

Data Lake Analytics 作业采用 U-SQL 语言编写。 若要了解有关 U-SQL 的详细信息,请参阅 U-SQL 语言 入门和 U-SQL 语言参考

创建 Data Lake Analytics 作业脚本

使用以下 U-SQL 脚本创建文本文件,并将文本文件保存到工作站:

@a  =
    SELECT * FROM
        (VALUES
            ("Contoso", 1500.0),
            ("Woodgrove", 2700.0)
        ) AS
              D( customer, amount );
OUTPUT @a
    TO "/data.csv"
    USING Outputters.Csv();

此 U-SQL 脚本使用 Extractors.Tsv()读取源数据文件,然后使用 Outputters.Csv()创建 csv 文件。

除非将源文件复制到其他位置,否则不要修改这两个路径。 Data Lake Analytics 创建输出文件夹(如果不存在)。

使用相对路径来处理存储在默认数据湖存储帐户中的文件会更简单。 还可以使用绝对路径。 例如:

adl://<Data LakeStorageAccountName>.azuredatalakestore.net:443/Samples/Data/SearchLog.tsv

必须使用绝对路径来访问链接存储帐户中的文件。 存储在链接 Azure 存储帐户中的文件的语法为:

wasb://<BlobContainerName>@<StorageAccountName>.blob.core.windows.net/Samples/Data/SearchLog.tsv

注释

不支持包含公共 Blob 的 Azure Blob 容器。 不支持具有公共容器的 Azure Blob 容器。

提交作业

使用以下语法提交作业。

az dla job submit --account "<Data Lake Analytics Account Name>" --job-name "<Job Name>" --script "<Script Path and Name>"

例如:

az dla job submit --account "myadlaaccount" --job-name "myadlajob" --script @"C:\DLA\myscript.txt"

列出职位并显示职位详细信息

az dla job list --account "<Data Lake Analytics Account Name>"
az dla job show --account "<Data Lake Analytics Account Name>" --job-identity "<Job Id>"

取消作业

az dla job cancel --account "<Data Lake Analytics Account Name>" --job-identity "<Job Id>"

检索作业结果

作业完成后,可以使用以下命令列出输出文件,并下载文件:

az dls fs list --account "<Data Lake Store Account Name>" --source-path "/Output" --destination-path "<Destination>"
az dls fs preview --account "<Data Lake Store Account Name>" --path "/Output/SearchLog-from-Data-Lake.csv"
az dls fs preview --account "<Data Lake Store Account Name>" --path "/Output/SearchLog-from-Data-Lake.csv" --length 128 --offset 0
az dls fs download --account "<Data Lake Store Account Name>" --source-path "/Output/SearchLog-from-Data-Lake.csv" --destination-path "<Destination Path and File Name>"

例如:

az dls fs download --account "myadlsaccount" --source-path "/Output/SearchLog-from-Data-Lake.csv" --destination-path "C:\DLA\myfile.csv"

后续步骤