当前位置: 首页 > news >正文

Spark 1.0.0 横空出世 Spark on Yarn 部署(Hadoop 2.4)

就在昨天,北京时间5月30日20点多。Spark 1.0.0最终公布了:Spark 1.0.0 released

依据官网描写叙述,Spark 1.0.0支持SQL编写:Spark SQL Programming Guide

个人认为这个功能对Hive的市场的影响非常小。但对Shark冲击非常大。就像win7和winXP的关系,自相残杀嘛? 

这么着急的公布1.x 版是商业行为还是货真价实的体现,让我们拭目以待吧~~~~

本文是CSDN-撸大湿原创,如要转载请注明出处,谢谢:http://blog.csdn.net/tntzbzc/article/details/27817189

进入今天的正题:Spark 1.x onYarn (Hadoop 2.4)


源代码编译

我的測试环境:

  • 系统:Centos 6.4 - 64位
  • Java:1.7.45
  • Scala:2.10.4
  • Hadoop:2.4.0 社区版

Spark 1.0.0 源代码地址:http://d3kbcqa49mib13.cloudfront.net/spark-1.0.0.tgz

解压源代码,在根去根文件夹下运行下面命令(sbt编译我没尝试)

./make-distribution.sh --hadoop 2.4.0 --with-yarn --tgz --with-hive

几个重要參数

--hadoop :指定Hadoop版本号 

--with-yarn yarn支持是必须的

--with-hive 读取hive数据也是必须的,反正我非常讨厌Shark,以后开发们能够在Spark上自己封装SQL&HQLclient。也是个不错的选择。


#      --tgz: Additionally creates spark-$VERSION-bin.tar.gz
#      --hadoop VERSION: Builds against specified version of Hadoop.
#      --with-yarn: Enables support for Hadoop YARN.
#      --with-hive: Enable support for reading Hive tables.
#      --name: A moniker for the release target. Defaults to the Hadoop verison.

不想自己编译的话直接下载二进制包吧:

Spark 1.0.0 on Hadoop 1 / CDH3, CDH4 二进制包:http://d3kbcqa49mib13.cloudfront.net/spark-1.0.0-bin-hadoop1.tgz

Spark 1.0.0 on Hadoop 2 / CDH5, HDP2 二进制包:http://d3kbcqa49mib13.cloudfront.net/spark-1.0.0-bin-hadoop2.tgz

  

进过漫长的等待。在源代码跟文件夹下会生成一个tgz压缩包     


把这个包copy到你想部署的文件夹并解压。

特别注意:仅仅须要把解压包copy到yarn集群中的随意一台。一个节点就够了,不须要在全部节点都部署。除非你须要多个Client节点调用spark作业。

在这里我们不须要搭建独立的Spark集群,利用Yarn Client调用Hadoop集群的计算资源。

mv 解压后的文件夹/conf/spark-env.sh.template 解压后的文件夹/conf/spark-env.sh

编辑spark-env.sh


export HADOOP_HOME=/opt/hadoop
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
SPARK_EXECUTOR_INSTANCES=4
SPARK_EXECUTOR_CORES=1
SPARK_EXECUTOR_MEMORY=1G
SPARK_DRIVER_MEMORY=2G
SPARK_YARN_APP_NAME="Spark 1.0.0"

这是我的配置,配置和之前的几个版本号略有不同,但大差不差。


用Yarn Client调用一下MR中的经典样例:Spark版的word count

这里要特别注意。SparkContext有变动。之前版本号wordcount样例中的的第一个參数要去掉。

为了方便。我把 SPARK_HOME/lib/spark-assembly-1.0.0-hadoop2.4.0.jar 复制到了HDFS中进行调用。(直接调用本地磁盘也是能够的)


SPARK_JAR="hdfs://master001.bj:9000/jar/spark/spark-assembly-1.0.0-hadoop2.4.0.jar" \
./bin/spark-class org.apache.spark.deploy.yarn.Client \
--jar ./lib/spark-examples-1.0.0-hadoop2.4.0.jar \
--class org.apache.spark.examples.JavaWordCount \
--args hdfs://master001.bj:9000/temp/read.txt \
--num-executors 50 \
--executor-cores 1 \
--driver-memory 2048M \
--executor-memory 1000M \
--name "word count on spark"

执行结果在stdout中查看




速度还行吧,用6台节点/50个core计算4.3GB文件,用时31秒。

今天就到这吧,有时间还的把那篇神经网络继续写下去,下次再见

相关文章:

  • 使用docker遇到的问题
  • 武汉区块链软件技术公司:区块链将如何优化产业链?
  • echarts简单使用
  • .NET项目中存在多个web.config文件时的加载顺序
  • Linux工具性能调优系列三:swap问题定位
  • Ubuntu 12.04 root账户开启及密码重设
  • ipv6最长前缀匹配算法
  • oracle 11.2.0.1 rman异机恢复 11.2.0.3(windows X64)
  • Linux查询网址
  • GCP为Kubernetes引擎提供支持原生容器的负载均衡器
  • input文本框实现宽度自适应代码实例
  • 牛课练习赛34 Flittle w and Discretization 主席树维护Mex
  • 阿里云购买磁盘后挂载
  • Struts2原理
  • 雷军带领小米老员工公园步行 称这些人是小米最宝贵财富
  • 0基础学习移动端适配
  • C++类的相互关联
  • java概述
  • October CMS - 快速入门 9 Images And Galleries
  • Spark in action on Kubernetes - Playground搭建与架构浅析
  • Terraform入门 - 1. 安装Terraform
  • Vue--数据传输
  • Vue小说阅读器(仿追书神器)
  • XForms - 更强大的Form
  • 创建一种深思熟虑的文化
  • 大整数乘法-表格法
  • 分布式事物理论与实践
  • 移动端唤起键盘时取消position:fixed定位
  • 深度学习之轻量级神经网络在TWS蓝牙音频处理器上的部署
  • kubernetes资源对象--ingress
  • 微龛半导体获数千万Pre-A轮融资,投资方为国中创投 ...
  • ​【原创】基于SSM的酒店预约管理系统(酒店管理系统毕业设计)
  • ​低代码平台的核心价值与优势
  • ​渐进式Web应用PWA的未来
  • #{}和${}的区别?
  • #数学建模# 线性规划问题的Matlab求解
  • (三)c52学习之旅-点亮LED灯
  • (数位dp) 算法竞赛入门到进阶 书本题集
  • (学习日记)2024.02.29:UCOSIII第二节
  • (已解决)vue+element-ui实现个人中心,仿照原神
  • (原創) 如何將struct塞進vector? (C/C++) (STL)
  • (转)Spring4.2.5+Hibernate4.3.11+Struts1.3.8集成方案一
  • **PyTorch月学习计划 - 第一周;第6-7天: 自动梯度(Autograd)**
  • .NET CF命令行调试器MDbg入门(二) 设备模拟器
  • // an array of int
  • /boot 内存空间不够
  • /var/log/cvslog 太大
  • @javax.ws.rs Webservice注解
  • [ Algorithm ] N次方算法 N Square 动态规划解决
  • [ C++ ] template 模板进阶 (特化,分离编译)
  • [ CTF ] WriteUp- 2022年第三届“网鼎杯”网络安全大赛(白虎组)
  • [Angular] 笔记 7:模块
  • [ARC066F]Contest with Drinks Hard
  • [c#基础]DataTable的Select方法
  • [C#基础知识系列]专题十七:深入理解动态类型