Spark在MaxCompute的运行方式

一、Spark系统概述

左侧是原生Spark的架构图,右边Spark on MaxCompute运行在阿里云自研的Cupid的平台之上,该平台可以原生支持开源社区Yarn所支持的计算框架,如Spark等。

二、Spark运行在客户端的配置和使用

2.1打开链接下载客户端到本地

http://odps-repo.oss-cn-hangzhou.aliyuncs.com/spark/2.3.0-odps0.30.0/spark-2.3.0-odps0.30.0.tar.gz?spm=a2c4g.11186623.2.12.666a4b69yO8Qur&file=spark-2.3.0-odps0.30.0.tar.gz

2.2将文件上传的ECS上

2.3将文件解压

tar -zxvf spark-2.3.0-odps0.30.0.tar.gz

2.4配置Spark-default.conf

# spark-defaults.conf
# 一般来说默认的template只需要再填上MaxCompute相关的账号信息就可以使用Spark
spark.hadoop.odps.project.name =
spark.hadoop.odps.access.id =
spark.hadoop.odps.access.key =

# 其他的配置保持自带值一般就可以了
spark.hadoop.odps.end.point = http://service.cn.maxcompute.aliyun.com/api
spark.hadoop.odps.runtime.end.point = http://service.cn.maxcompute.aliyun-inc.com/api
spark.sql.catalogImplementation=odps
spark.hadoop.odps.task.major.version = cupid_v2
spark.hadoop.odps.cupid.container.image.enable = true
spark.hadoop.odps.cupid.container.vm.engine.type = hyper

2.5在github上下载对应代码

https://github.com/aliyun/MaxCompute-Spark

2.5将代码上传到ECS上进行解压

unzip MaxCompute-Spark-master.zip

2.6将代码打包成jar包(确保安装Maven)

cd MaxCompute-Spark-master/spark-2.x
mvn clean package

2.7查看jar包,并进行运行

bin/spark-submit --master yarn-cluster --class com.aliyun.odps.spark.examples.SparkPi \
MaxCompute-Spark-master/spark-2.x/target/spark-examples_2.11-1.0.0-SNAPSHOT-shaded.jar

三、Spark运行在DataWorks的配置和使用

3.1进入DataWorks控制台界面,点击业务流程

3.2打开业务流程,创建ODPS Spark节点

3.3上传jar包资源,点击对应的jar包上传,并提交

3.4配置对应ODPS Spark的节点配置点击保存并提交,点击运行查看运行状态

四、Spark在本地idea测试环境的使用

4.1下载客户端与模板代码并解压

客户端:
http://odps-repo.oss-cn-hangzhou.aliyuncs.com/spark/2.3.0-odps0.30.0/spark-2.3.0-odps0.30.0.tar.gz?spm=a2c4g.11186623.2.12.666a4b69yO8Qur&file=spark-2.3.0-odps0.30.0.tar.gz

模板代码:

https://github.com/aliyun/MaxCompute-Spark

4.2打开idea,点击Open选择模板代码

4.2安装Scala插件

4.3配置maven

4.4配置JDK和相关依赖

 

本文作者:耿江涛

原文链接

本文为云栖社区原创内容,未经允许不得转载。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Hadoop从业者为什么需要Spark?答案是Hadoop已死,Spark称霸。 而Hadoop的死亡过程在2012年已经开始: 1,由于Hadoop自身架构的导致了在离线数据存储分析意外的一切领域都力不从心,理论已经证明MapReduce模型可以模拟一切分布式计算,但是效率成为其死穴,而Spark基于RDD的计算图可以轻松、完整地表达MapReduce模型,并且能极为容易的处理实时流计算、机器学习、图计算、误差查询等; 2,2012年以来Hadoop本身架构臃肿并未得到本质性的改善,很多修改升级也就只是补丁式的修修补补,现在Hadoop这个云计算大数据前期做出卓越贡献的平台正在继续的死亡; 4,原先支持Hadoop的四大商业机构纷纷宣布支持Spark; 5,Mahout前一阶段表示从现在起他们将不再接受任何形式的以MapReduce形式实现的算法,另外一方面,Mahout宣布新的算法基于Spark; 6,Cloudera的机器学习框架Oryx的执行引擎也将由Hadoop的MapReduce替换成SparkSpark是继Hadoop之后,成为替代Hadoop的下一代云计算大数据核心技术,目前SPARK已经构建了自己的整个大数据处理生态系统,如流处理、图技术、机器学习、NoSQL查询等方面都有自己的技术,并且是Apache顶级Project,可以预计的是2014年下半年到2015年在社区和商业应用上会有爆发式的增长。 国外一些大型互联网公司已经部署了Spark。甚至连Hadoop的早期主要贡献者Yahoo现在也在多个项目中部署使用Spark;国内的淘宝、优酷土豆、网易、Baidu、腾讯等已经使用Spark技术用于自己的商业生产系统中,国内外的应用开始越来越广泛。Spark正在逐渐走向成熟,并在这个领域扮演更加重要的角色。 现在很多原来使用深度使用Hadoop的公司都在纷纷转向Spark,国内的淘宝是典型的案例,我们在这里就不做介绍。在此,我们以使用世界上使用Hadoop最典型的公司Yahoo!为例,大家可以看一下其数据处理的架构图: 而使用Spark后的架构如下: 大家可以看出,现阶段的Yahoo!是使用Hadoop和Spark并存的架构,而随着时间的推进和Spark本身流处理、图技术、机器学习、NoSQL查询的出色特性,最终Yahoo!可能会完成Spark全面取代Hadoop,而这也代表了所有做云计算大数据公司的趋势。 最后,不得不提的是Spark的“One stack to rule them all”的特性,Spark的特点之一就是用一个技术堆栈解决云计算大数据中流处理、图技术、机器学习、交互式查询、误差查询等所有的问题,此时我们只需要一个技术团队通过Spark就可以搞定一切问题,而如果基于Hadoop就需要分别构建实时流处理团队、数据统计分析团队、数据挖掘团队等,而且这些团队之间无论是代码还是经验都不可相互借鉴,会形成巨大的成本,而使用Spark就不存在这个问题; 再说一点,Hadoop现在人才已经非常多了,想在该技术领域做到中国前100人之内是非常有难度的,而如果从事Spark则会更容易些,因为现在Spark人才不是稀少,而是太稀缺。 Hadoop从业者们,您需要Spark
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值