Spark对接MaxCompute快速入门_Spark ETL&Streaming数据源连接器_X-Pack Spark计算服务_云数据库 HBase 版
Spark对接MaxCompute快速入门
简介
大数据计算服务(MaxCompute,原名ODPS)是一种快速、完全托管的TB/PB级数据仓库解决方案。这里主要介绍通过“数据工作台”使用Spark对接MaxCompute数据表的使用方法。
前置条件
- MaxCompute工作空间已创建。
本例中MaxCompute的工作空间的区域为“华南1”,工作空间名称为:spark_on_maxcompute,模式为:简单模式(单环境)。 - 本例中Spark的区域为“华南1(深圳)”。
- MaxCompute已创建表sparktest2,建表语句为:
CREATE TABLE `sparktest2` (
`a` int,
`b` STRING
)
PARTITIONED BY (pt string);
- MaxCompute已授权案例使用的用户,如下图:详细步骤可参考:添加项目成员和角色。
使用“数据工作台”>“作业管理”运行样例
步骤 1:通过“资源管理”上传样例代码Jar包
下载样例代码jar包“spark-examples-0.0.1-SNAPSHOT.jar”以及依赖的Jar包到本地目录。
wget https://spark-home.oss-cn-shanghai.aliyuncs.com/spark_example/spark-examples-0.0.1-SNAPSHOT-shaded.jar
说明:spark-examples-0.0.1-SNAPSHOT-shaded.jar为样例代码编译出的Jar包。若用户修改了样例代码,运行时记得添加依赖的Jar包。依赖的Jar包对应的Pom文件请参考样例代码工程中对应的pom文件,样例代码路径见本文最后。
在“数据工作台”>“资源管理”中添加文件夹“spark_on_maxcompute”。上传下载的jar包到此文件夹。如下图:
步骤 2:通过“作业管理”创建并编辑作业内容
在“数据工作台”>“作业管理”中创建Spark作业,作业内容如下:
--class com.aliyun.spark.maxcompute.MaxComputeDataSourcePartitionSample
--driver-memory 1G
--driver-cores 1
--executor-cores 1
--executor-memory 2G
--num-executors 1
--name spark_on_maxcompute
/spark_on_maxcompute/spark-examples-0.0.1-SNAPSHOT-shaded.jar
xxx1 xxx2
http://service.cn.maxcompute.aliyun-inc.com/api
http://dt.cn-shenzhen.maxcompute.aliyun-inc.com spark_on_maxcompute sparktest2 2
作业内容参数说明:
参数 | 说明 |
xxx1 xxx2 | 分别为具备访问MaxCompute权限的AccessKey ID 和AccessKeySecret。 |
http://service.cn.maxcompute.aliyun-inc.com/api | MaxCompute的VPC网络Endpoint。 |
http://dt.cn-shenzhen.maxcompute.aliyun-inc.com | MaxCompute的VPC网络Tunnel Endpoint。 |
spark_on_maxcompute | MaxCompute的工作空间名称。 |
sparktest2 2 | MaxCompute的数据表名以及表的分区数。 |
作业内容如下图:
步骤 3:通过“作业管理”运行作业并查看结果
作业编辑完成后点击“运行”,选择Spark集群。运行状态会在下侧显示,如图:
运行成功后点击“YarnUI”,翻到最后看到类似如下结果表明Spark读取MaxCompute成功。如下:
999416
999417
999418
999419
小结
- 本例代码可参考:MaxComputeDataSourcePartitionSample
- 更多样例代码可参考:Spark样例代码
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。
评论