专栏名称: 阿里云大数据AI平台
阿里云大数据AI平台依托阿里领先的云基础设施、大数据和AI工程能力、场景算法技术和多年行业实践,一站式地为企业和开发者提供云原生的大数据和AI能力体系。帮助提升AI应用开发效率,促进AI在产业中规模化落地,激发业务价值。
目录
相关文章推荐
51好读  ›  专栏  ›  阿里云大数据AI平台

阿里云 EMR Serverless Spark 1000 CU*小时资源免费试用,助力大规模数据分析

阿里云大数据AI平台  · 公众号  ·  · 2025-03-05 08:00

正文

请到「今天看啥」查看全文


01

产品介绍
阿里云 EMR Serverless Spark 是一款兼容开源 Spark 的高性能的 Lakehouse 产品,专门设计用于大规模数据处理和分析。它为企业提供了一站式的数据平台服务,包括任务开发、调试、调度和运维等,显著简化了数据处理的全生命周期工作流程。通过使用 EMR Serverless Spark,企业能够更加专注于数据分析和价值提炼,从而提升工作效率。
秉承普惠开发者的宗旨,EMR Serverless Spark 推出 免费试用 活动。EMR Serverless Spark 新用户可免费领取 1000 CU*小时 资源包,快速体验 ETL 开发、任务调度、数据查询与分析全流程。 (链接:https://x.sm.cn/8PgROFV)

02

核心优势
云原生极速计算引擎
内置 Spark Native Engine,相对开源版本性能提升3倍;内置企业级 Celeborn (Remote Shuffle Service),支持 PB 级 Shuffle 数据,计算资源总成本最高下降 30% 。
弹性资源管理
资源调度具备秒级弹性,支持按需分配最小粒度为 1 核的资源,按任务或队列级别进行精细化资源计量,确保资源使用的最大化与灵活性。
Data 和 AI
提供完全兼容 PySpark/Python 的开发与运行环境,支持 Python 生态的机器学习 Lib,以及 Spark MLlib,支持产品化管理 Python 三方依赖库。
生态兼容
具备强大的兼容性与集成能力。支持 DLF 和 Hive MetaStore 数据目录,兼容 Paimon、Iceberg、Hudi 和 Delta 等主流湖格式,可对接 Airflow 和 Dolphin Scheduler 等主流调度系统,支持 Kerberos/LDAP 认证和 Ranger 鉴权,还支持 DataWorks 和 DBT 提交任务,全方位满足用户需求。

03

试用教程

准备环境和资源

开始教程前,请按以下步骤准备环境和资源:
1. 访问 阿里云免费试用
单击页面右上方的登录/注册按钮,并根据页面提示完成账号登录(已有阿里云账号)、账号注册(尚无阿里云账号)或实名认证(根据试用产品要求完成个人实名认证或企业实名认证)。 (链接:https://x.sm.cn/7Omwzc8)
2. 成功登录后,请先领取对象存储 OSS 资源抵扣包。
进入
对象存储 OSS ,单击产品卡片上的立即试用,在确认并了解相关信息后,根据页面提示申请试用。 (链接:https://x.sm.cn/4txuBJl)
如果您的对象存储OSS资源抵扣包已使用完毕或无领取资格,开通 EMR Serverless Spark 试用后,将正常收取费用,计费详情请参见
按量付费 (链接:https://x.sm.cn/5Abd5H6)
3. 在产品类别下,选择大数据计算 > 数据计算与分析,在EMR Serverless Spark卡片上,单击立即试用。
4. 如果您首次访问该服务,可能需要进行角色授权。请在弹出的授权请求页面中,单击前往RAM进行授权,然后单击同意授权,以完成自动化角色授权。授权成功后,请返回立即试用页面。详情信息请参见 阿里云账号角色授权 ( 链接:https://x.sm.cn/6WrHWNH)
5. 在 EMR Serverless Spark 开通页面,单击上方提示框中的领取免费的资源抵扣包,领取EMR Serverless Spark 资源抵扣包。
6. 在 EMR Serverless Spark 资源抵扣包页面,确认相关信息后,单击确认订单,根据页面提示完成领取。
7. 资源抵扣包领取完毕后,在 EMR Serverless Spark 开通页面,刷新此页面完成参数配置。

参数

说明

教程配置

地域

建议选择与您数据所在地相同的地域。

华东1(杭州)

付费类型

建议选择 按量付费

按量付费

资源抵扣包

可用于抵扣中国站公有云地域按量付费模式用量,自购买资源包日起有效期三个月。领取资源包后,单击刷新按钮,即可更新此参数。

1000 CU*H

您需要 领取 对象存储OSS 资源抵 扣包进行抵扣(即点击所给链接,单击对应产品卡片上的立即试用,在确认并了解相关信息后,根据页面提示申请试用),否则将会产生额外费用。

如果您的对象存储OSS资源抵扣包已使用完毕或无领取资格,开通Serverless Spark试用后,将正常收取费用,计费详情请参见 按量付费

确认领取后,选中

工作空间名称

以字母开头,仅支持英文字母、数字和短划线(-),长度限制为1~60个字符。

说明: 同一个阿里云账号下的工作空间名称是唯一的,请勿填写已有的名称,否则会提示您重新填写。

emr-serverless-spark

瞬时配额上限

工作空间同时处理任务的最大并发CU数量。

1000

工作空间基础路径

用于存储任务日志、运行事件、资源等数据文件。

建议选择一个开通了OSS-HDFS服务的Bucket,它提供了原生HDFS接口兼容性。如果您的应用场景不涉及HDFS,则可以直接选择一个OSS Bucket。

emr-oss-hdfs

DLF作为元数据服务

用于存储和管理您的元数据。

开通DLF后,系统会为您选择默认的DLF数据目录,默认为UID。如果针对不同集群您期望使用不同的数据目录,则可以按 照以下方式新建目录。

1. 单击 创建数据目录 ,在弹出的对话框中输入 目录ID ,然后单击 确定

2. 在下拉列表中,选择您新建的数据目录。

emr-dlf

高级设置

打开该开关后,您需要配置以下信息:

执行角色 :指定 EMR Serverless Spark运行任务所采用的角色名,角色名称为AliyunEMRSparkJobRunDefaultRole。

EMR Serverless Spark使用该角色来访问您在其他云产品中的资源,包括OSS和DLF等产品的资源。

AliyunEMRSparkJobRunDefaultRole

8. 请再 次确认已了解并领取Serverless Spark、对象存储OSS资源抵扣包。
重要: 如果您的EMR Serverless Spark和对象存储OSS资源抵扣包已使用完毕或无领取资格,开通Serverless Spark试用后,将正常收取费用。
9. 单击立即试用,并根据页面提示,完成阿里云EMR Serverless Spark工作空间的创建。
工作空间创建需要约5~10分钟,请耐心等待。5~10分钟后,请刷新页面以查看工作空间状态。当工作空间状态显示为运行中时,即可进入下一步。如果您需要添加其他子账号使用Serverless Spark,请参考 管理用户和角色 ( 链接:https://x.sm.cn/5Gh5uKb)

通过 SQL 和 PySpark 开发进行数据分析

1. 准备测试文件。
a. 单击 car_prices.csv 直接下载测试文件。 (链接:https://x.sm.cn/78i54Zh)
b. 上传测试文件(car_prices.csv)到阿里云对象存储OSS控制台,详情请参见
简单上传 (链接:https://x.sm.cn/7MG8aWB)
例如,本文上传的路径为oss://emr-oss-hdfs/spark/car_prices.csv。
2. 创建SQL和Notebook会话资源。
a. 进入会话管理页面。
  • 登录 E-MapReduce控制台 (链接:https://x.sm.cn/7x9r7ZN)
  • 在左侧导航栏,选择EMR Serverless > Spark。
  • 在Spark页面,单击目标工作空间名称。
  • 在EMR Serverless Spark页面,单击左侧导航栏中的会话管理。
b. 创建SQL会话。
  • 在SQL 会话页面,单击创建 SQL 会话。
  • 在创建 SQL 会话页面,单击创建。
    更多参数详情,请参见 管理SQL会话 (链接:https://x.sm.cn/B5cbq28)
c. 创建 Notebook 会话。
  • 单击Notebook 会话页签。
  • 在Notebook 会话页面,单击创建 Notebook 会话。
  • 在创建 Notebook 会话页面,单击创建。
    更多参数详情,请参见
    管理Notebook会话 (链接:https://x.sm.cn/CBcxXS2)
3. 新建load_data任务,将测试文件中的数据加载到数据目录中。
a. 在EMR Serverless Spark页面,单击左侧导航栏中的数据开发。
b. 在开发目录页签下,单击新建。
c. 在新建对话框中,输入名称(例如load_data),类型使用Python > Notebook,然后单击确定。
d. 在右上角的未选择 Notebook 会话下拉列表中,选择已创建并启动的Notebook会话实例。
您也可以在下拉列表中选择创建 Notebook 会话,新建一个Notebook会话实例。关于Notebook会话更多介绍,请参见管理Notebook会话。
e. 运行PySpark作业。
  • 拷贝如下代码至新增的Notebook Python单元格中。
sql = "CREATE DATABASE IF NOT EXISTS serverless_spark"spark.sql(sql)
#创建一个简单的DataFrame,其中OSS路径需要替换为步骤1中上传的文件路径url = "oss://emr-oss-hdfs/spark/car_prices.csv"df = spark.read.csv(url, header=True, inferSchema= True)df.write.format("paimon").saveAsTable("serverless_spark.ods_car_sales_history")
  • 单击运行所有单元格,执行创建的Notebook。
4. 新建cleaned_data_task任务,对数据进行清洗处理,排除数据记录不全或存在较大误差的数据。
a. 在开发目录页签下,单击新建。
b. 在新建对话框中,输入名称(例如cleaned_data_task),类型使用默认的SparkSQL,然后单击确定。
c. 拷贝如下代码到新增的Spark SQL页签(cleaned_data_task)中。
USE serverless_spark;
--进行数据清洗:去除空值、脏数据和极限范围的记录CREATE TABLE  IF NOT EXISTS cleaned_car_sales ASSELECT     `make`,    `model`,    `trim`,    `body`,    `transmission`,    `vin`,    `state`,    `color`,    `interior`,    `seller`,    TO_DATE(`saledate`, 'yyyy-MM-dd') AS sale_date,    CAST(`year` AS INT) AS `year`,    CAST(`condition` AS DECIMAL(3,1)) AS `condition`,    CAST(`odometer` AS DECIMAL(10,2)) AS `odomete`,    CAST(`mmr` AS DECIMAL(10,2)) AS `mmr`,    CAST(`sellingprice` AS DECIMAL(10,2)) AS `sellingprice`FROM ods_car_sales_historyWHERE `year` IS NOT NULL AND `year` != 0  AND `make` IS NOT NULL  AND `model` IS NOT NULL   AND `trim` IS NOT NULL   AND `body` IS NOT NULL   AND `transmission` IS NOT NULL   AND `vin` IS NOT NULL  AND `state` IS NOT NULL  AND `condition` IS NOT NULL AND `condition` != 0  AND `odometer` IS NOT NULL AND `odometer` != 0  AND `color` IS NOT NULL  AND `interior` IS NOT NULL  AND `seller` IS NOT NULL  AND `mmr` IS NOT NULL AND `mmr` != 0  AND `sellingprice` IS NOT NULL AND `sellingprice` != 0  AND `saledate` IS NOT NULL;
d. 在右上角的未选择 SQL 会话下拉列表中,选择已创建并启动的SQL会话实例。
e. 单击运行,执行创建的任务。
5. 新建car_summary任务,对明细表cleaned_car_sales进行进一步加工处理,计算不同品牌的销售总额和总车辆数,供后续的业务查询、数据分析使用。
a. 在开发目录页签下,单击新建。
b. 在新建对话框中,输入名称(例如car_summary),类型使用默认的SparkSQL,然后单击确定。
c. 拷贝如下代码到新增的Spark SQL页签(car_summary)中。
-- 计算每个品牌的销售总额和总车辆数CREATE TABLE IF NOT EXISTS brand_sales_summary ASSELECT     make,    COUNT(*) AS total_vehicles,    SUM(sellingprice) AS total_sales,    AVG(sellingprice) AS avg_sellingprice,    AVG(condition) AS avg_conditionFROM cleaned_car_salesGROUP BY makeORDER BY total_sales DESC;
select * from brand_sales_summary limit 10;
d. 在未选择默认数据库下拉列表中选择一个数据库,在未选择 SQL 会话下拉列表中选择一个已启动的SQL会话实例。
e. 单击运行,执行创建的任务。
图片
返回结果信息可以在下方的运行结果中查看。如果有异常,则可以在运行问题中查看。
6. 新建数据分析任务,使用Notebook进行数据可视化分析。
a. 在开发目录页签下,单击新建。
b. 在新建对话框中,输入名称(例如数据分析),类型使用Python > Notebook,然后单击确定。
c. 在右上角选择已创建并启动的Notebook会话实例。您也可以在下拉列表中选择创建Notebook会话,新建一个Notebook会话实例。关于Notebook会话更多介绍,请参见管理Notebook会话。
d. 运行PySpark作业。
  • 拷贝如下代码至新增的Notebook Python单元格中。
import matplotlib.pyplot as plt
df = spark.table("serverless_spark.brand_sales_summary")# 将 DataFrame 转换为 Pandas DataFrame 以便于绘图pandas_df = df.toPandas()
plt.figure(figsize=(10, 6))plt.bar(pandas_df['make'], pandas_df['total_vehicles'])plt.xlabel('Brand')plt.ylabel('Total Vehicles')plt.title('Total Vehicles by Brand')plt.xticks(rotation=90)plt.tight_layout()plt.show()
  • 单击运行所有单元格,执行创建的Notebook。
    图片

完成

通过简单的汽车销售数据分析示例,您已完成了创建Spark工作空间,并使用Spark进行数据处理和可视化分析,帮助您快速体验EMR Serverless Spark。

清理及后续

EMR Serverless Spark提供的按量付费(3个月1000CU*H计算资源)试用,具有时长和容量限制,使用完请及时清理相关资源。如果未及时清理资源,相关Serverless Spark工作空间将按照按量付费模式正常进行计费,涉及的其他产品服务也会正常收取费用。完成教程后,您可以按照如下场景进行处理:
如果您需要继续使用, 此时1000CU*H资源已使用完或者已经超过3个月,请随时查看欠费金额,并在规定时间内充值结清欠费账单,否则无法继续正常使用工作空间。计费详情请参见产品计费。
如果您不需要继续使用, 请及时清理测试数据和试用资源:
  • Serverless Spark资源清理
    删除工作空间,详情请参见删除工作空间。
  • 对象存储OSS资源清理
    删除对象存储空间,详情请参见删除存储空间。
  • DLF资源清理
    删除数据目录,详情请参见删除数据目录。

产品购买

EMR Serverless Spark 提供资源抵扣包计费模式。与按量付费相比,资源抵扣包享有更高的折扣优惠,并可根据业务需要灵活设置生效时间,适用于业务用量相对稳定的场景。 首次购买EMR Serverless Spark 3000 CU·小时 资源抵扣包的用户将享受 五折优惠 (链接: https://x.sm.cn/2Jmevfa)

联系我们

如果在使用EMR Serverless Spark的过程中遇到任何疑问,可加入钉钉群58570004119咨询。
/ END /

更多推荐

图片
图片
图片

点击 阅读原文 了解 EMR Serverless Spark 详情!







请到「今天看啥」查看全文