使用 Lakeflow 任务创建您的第一个工作流程

使用 Lakeflow Jobs 编排任务,以读取和处理示例数据集。 在本快速入门中,请执行以下操作:

  1. 创建一个新笔记本,添加代码来读取房产预订的示例数据集。

  2. 将数据集保存到Unity Catalog。

  3. 创建新的笔记本并添加代码,以从 Unity Catalog 读取数据集,按年份对其进行筛选,并显示结果。

  4. 使用笔记本创建新作业并配置两个任务。

  5. 运行作业并查看结果。

要求

如果工作区启用了 Unity Catalog,并且启用了无服务器作业,则默认情况下作业会在无服务器计算上运行。 你不需群集创建权限即可使用无服务器计算来运行作业。

否则,你必须拥有创建作业计算的群集创建权限或对通用计算资源的权限。

本快速入门从 samples.wanderbricks.bookings 读取数据,而该对象在每个启用了 Unity Catalog 的工作区中都可用,因此无需设置源数据。 要写入第二个笔记本读取的表,你需要具备在编录中创建架构的权限(即 USE CATALOG 和 CREATE SCHEMA 权限)。

若要设置这些权限,请咨询您的 Databricks 管理员或查阅 Unity Catalog 权限参考。

创建笔记本

以下步骤创建两个笔记本以在此工作流中运行。

检索和保存数据

要创建一个读取样本数据集并保存到 Unity 目录的笔记本:

  1. 单击侧栏中的“ 新建图标新建 ”,然后单击“ 笔记本”。

    Databricks 会在默认文件夹中创建一个新的空白笔记本并将其打开。 默认语言是你最近使用的语言,笔记本会自动附加到你最近使用的计算资源。

  2. (可选)重命名笔记本 获取预订数据。

  3. 如果需要,可将默认语言更改为 Python。

  4. 复制以下 Python 代码并将其粘贴到笔记本的第一个单元格中。 运行前,先检查一下, catalog 并 schema 指向一个你可以写入的地方。 如果不存在模式,代码会创建它。

    catalog = "main"
    schema = "example_output"
    
    spark.sql(f"CREATE SCHEMA IF NOT EXISTS {catalog}.{schema}")
    
    bookings = spark.read.table("samples.wanderbricks.bookings")
    bookings.write.mode("overwrite").saveAsTable(f"{catalog}.{schema}.bookings")
    

读取和显示经过筛选的数据

创建用于筛选和显示数据的笔记本:

  1. 单击侧栏中的“ 新建图标新建 ”,然后单击“ 笔记本”。

  2. (可选)将笔记本重命名为 Filter booking data。

  3. 以下 Python 代码读取你在上一步保存的表格,并创建一个临时视图。 它还创建了一个小部件,可以用来按签到年份过滤视图中的数据。 使用与你在第一个笔记本中使用的相同 catalog 和 schema 值。

    from pyspark.sql.functions import year
    
    catalog = "main"
    schema = "example_output"
    
    bookings = spark.read.table(f"{catalog}.{schema}.bookings")
    bookings.createOrReplaceTempView("bookings_table")
    years = spark.sql("SELECT DISTINCT year(check_in) AS year FROM bookings_table").toPandas()["year"].tolist()
    years.sort()
    dbutils.widgets.dropdown("year", "2025", [str(x) for x in years])
    display(bookings.filter(year(bookings.check_in) == dbutils.widgets.get("year")))
    

创建作业

要创建的作业由两个任务组成。

请按照以下步骤创建第一个任务:

  1. 在工作区中,单击工作流图标,然后在边栏中选择作业和管道。

  2. 单击创建,然后选择作业。

  3. 单击 “笔记本” 磁贴以配置第一个任务。 如果 笔记本 磁贴不可用,请单击“ 添加其他任务类型 ”并搜索 笔记本。

  4. (可选)将作业的名称(默认为 New Job <date-time>)替换为作业名称。

  5. 在 任务名称 字段中输入任务名称;例如, 取回预订。

  6. 如有必要,请从“类型”下拉菜单中选择“笔记本”。

  7. 在 “源 ”下拉菜单中,选择 “工作区”,以便使用之前保存的笔记本。

  8. 对于 Path,请使用文件浏览器查找创建的第一个笔记本,单击笔记本名称,然后单击“ 确认”。

  9. 单击“保存任务”。 屏幕右上角会显示一条通知。

创建第二个任务:

  1. 单击 “加号”图标。添加任务>笔记本。

  2. 在 任务名称 字段中输入任务名称;例如, 筛选预订。

  3. 对于 Path,请使用文件浏览器查找创建的第二个笔记本,单击笔记本名称,然后单击“ 确认”。

  4. 在“参数”下单击“添加” 。 在“键”字段中,输入 year。 在“值”字段中,输入 。2025

  5. 单击“保存任务”。

运行任务

若要立即运行作业,请单击右上角的 “立即运行”按钮。

查看运行详细信息

  1. 单击“ 运行 ”选项卡,然后单击“ 开始时间”列中 的链接以打开要查看的运行。

  2. 点击任一任务查看输出和详细信息。 例如,点击 筛选预订 任务以查看过滤任务的输出和运行详情:

    查看筛选预订结果

使用不同的参数运行

要重新运行工作并筛选不同年份的预订:

  1. 点击在立即运行旁边的“蓝色下拉箭头”,然后选择使用不同的设置立即运行。

  2. 在“值”字段中,输入 。2024

  3. 单击 “运行” 。

其他资源