Notebook开发快速入门

EMR Serverless Spark支持通过Notebook进行交互式开发。本文带您快速体验Notebook的创建、运行等操作。

前提条件

操作步骤

步骤一:准备测试文件

本快速入门为了带您快速熟悉Notebook任务,为您提供了测试文件,您可以直接下载待后续步骤使用。

单击employee.csv,直接下载测试文件。

说明

employee.csv文件中定义了一个包含员工姓名、部门和薪水的数据列表。

步骤二:上传测试文件

上传数据文件(employee.csv)到阿里云对象存储OSS控制台,详情请参见文件上传

步骤三:开发并运行Notebook

  1. 在EMR Serverless Spark页面,单击左侧的数据开发

  2. 新建Notebook。

    1. 开发目录页签下,单击新建

    2. 在弹出的对话框中,输入名称,类型使用Python > Notebook,然后单击确定

  3. 在右上角选择已创建并启动的Notebook会话实例。

    您也可以在下拉列表中选择创建Notebook会话,新建一个Notebook会话实例。关于Notebook会话更多介绍,请参见管理Notebook会话

    说明

    当前Notebook会话实例同一时间仅支持被单个Notebook占用,如果当前无可用Notebook会话实例,您可以在Notebook会话下拉列表中解绑Notebook与Notebook会话实例,或新建Notebook会话实例。

  4. 数据处理与可视化。

    运行PySpark作业

    1. 拷贝如下代码到新增的Notebook的Python单元格中。

      # 创建一个简单的DataFrame,其中OSS路径需要替换为步骤二中上传的文件路径。
      df = spark.read.option("delimiter", ",").option("header", True).csv("oss://path/to/file")
      # 显示DataFrame的前几行
      df.show(5)
      # 执行一个简单的聚合操作:计算每个部门的总薪资
      sum_salary_per_department = df.groupBy("department").agg({"salary": "sum"}).show()
    2. 单击运行所有单元格,执行创建的Notebook。

      您也可以使用不同的单元格,然后单击单元格前面的image图标。

      image

    3. (可选)查看Spark UI。

      您可以在会话下拉列表中,将鼠标悬停在当前任务的Notebook会话实例的image上,然后单击Spark UI跳转至Spark Jobs页面,可以查看Spark任务的信息。

      image

    通过第三方库进行可视化分析

    说明

    Notebook会话已预装matplotlib、numpy、pandas库,如果需要使用其他第三方库,请参见在Notebook中使用Python第三方库

    1. 使用matplotlib库进行数据可视化。

      import matplotlib.pyplot as plt
      
      l = sc.parallelize(range(20)).collect()
      plt.plot(l)
      plt.ylabel('some numbers')
      plt.show()
    2. 单击运行所有单元格,执行创建的Notebook。

      您也可以使用不同的单元格,然后单击单元格前面的image图标。

      image

步骤四:发布Notebook

  1. 运行完成后,单击右上角的发布

  2. 在发布对话框,输入发布信息,然后单击确定,保存为一个版本。