Spark1.3.0安装
之前在用Hadoop写ML算法的时候就隐约感觉Hadoop实在是不适合ML这些比较复杂的算法。记得当时写完kmeans后,发现每个job完成后都需要将结果放在HDFS中,然后下次迭代的时候再从文件中读取,对于kmeans这种高迭代的算法,感觉Hadoop的瓶颈会出现在IO上,后来又写了个Naive bayes,这种非常简单的算法,用Hadoop写,由于只有一种mapreduce范式,完全感觉到力不从心,为了处理这些简单的格式,总共用了4个mapreduce才完成,哭了。后面的logistics Regress等等只会让Hadoop更加难堪。
之前一直听spark如何虐Hadoop,但是舍友说spark只是因为在内存上跑,必然玩爆Hadoop,所以当时潜意识认为spark是内存版的Hadoop,昨天无意中看到关于spark的RDD的论文,感觉spark很适合写ML,并且性能比Hadoop好也并不全是因为在内存上跑,他所解决的问题刚好也是我在写Hadoop时候不想遇到的问题。同时spark最近这段时间这么火爆,没有理由不尝试下。
总的来说安装spark是比较简单的,可能是因为之前已经装了Hadoop。
由于我已经装了Hadoop2.4了,所以下了spark-1.3.0-bin-hadoop2.4。安装spark还需要有jdk,python,scala。因为装Hadoop的时候已经装了jdk和python了,所以只介绍下安装scala和spark
1 安装scala
下载scala-2.10.5
将其放置你的某个目录下,我这里是/home/Scala
接着解压缩
tar -xvzf scala-2.10.5.tgz
接着就是添加路径名
vi /etc/profile
增加两行
export SCALA_HOME=/home/Scala/scala-2.10.5
export PATH=$PATH:$SCALA_HOME/bin
接着便是立即生效
source /etc/profile
验证方式和java很像
scala -version
如果正确安装了,就会出现
Scala code runner version 2.10.5 --Copyright 2002-2013等信息
接着就可以将scala拷贝到另外几个节点上,我这里是两个节点,并且记得修改对应节点的profile文件
安装spark
同理,下载spark-1.3.0-bin-hadoop2.4。这里的Hadoop是根据你机子上的Hadoop版本来的,目前最新的spark版本是1.4,相比1.3最明显的就是增加了对R语言的支持,由于目前还用不到R,加之实验室机房不让用外网,安装R语言又比较麻烦,所以下载1.3.0了。
将spark-1.3.0-bin-hadoop2.4放置到你的某个目录下。例如我这里是/home/Spark/
解压缩
tar -xvzf spark-1.3.0-bin-hadoop2.4.tgz
接着是增加路径
vi /etc/profile
export SPARK_HOME=/home/Spark/spark-1.3.0-bin-hadoop2.4
export PATH=$PATH:$SPARK_HOME/bin
然后令其生效
source /etc/profile
接着是修改配置文件
1 添加从节点IP
vi slaves
我这里添加了两个节点
10.107.8.110
10.107.8.120
2
修改spark的环境,主要是jdk,scala以及Hadoop的路径,master的IP
添加:
export JAVA_HOME=(你自己的jdk路径,如果不清楚可以在shell中打$JAVA_HOME)
export SCALA_HOME=(你的scala路径)
export SPARK_MASTER_IP=(master的hostname)
export SPARK_WORKER_MEMORY=4g(这个具体看你节点的配置了)
export HADOOP_CONF_DIR=(如果不清楚可以在shell打$HADOOP_CONF_DIR)
接着就是将spark复制到另外的节点上就好了。
如果一切顺利,spark就算是安装完了。
简要验证
1 在浏览器上输入masterIP:8080例如我这里是http://10.107.8.110:8080/
会出现各个worker的节点状况

输入http://10.107.8.110:4040则会出现spark的jobs

2 进入到spark下的bin目录运行spark-shell
运行论文上的例子
我们先把一段文件放到HDFS中
hadoop fs -copyFromLocal /home/sunrye/words.txt hdfs://10.107.8.110:9000/spark_test/
接着运行
var lines=sv.textFile(“hdfs://10.107.8.110:9000/sprak_test/words.txt”)

此时相当于生成了一个RDD,接着就可以在RDD上实现各自action了,例如我们统计他的字数就可以
lines.count()

当然可也可查询某个关键字的字数,例如
lines.filter(_.contains(“the”)).count()
Spark1.3.0安装的更多相关文章
- spark1.2.0安装
standalone 安装SCALA 下载.解压.加入环境变量 安装spark1.2.0 下载.解压.加入环境变量 tar zxvf spark--bin-.tgz export SPARK_HOME ...
- 最新版spark1.1.0集群安装配置
和分布式文件系统和NoSQL数据库相比而言,spark集群的安装配置还算是比较简单的: 很多教程提到要安装java和scala,但我发现spark最新版本是包含scala的,JRE采用linux内嵌的 ...
- spark 1.6.0 安装与配置(spark1.6.0、Ubuntu14.04、hadoop2.6.0、scala2.10.6、jdk1.7)
前几天刚着实研究spark,spark安装与配置是入门的关键,本人也是根据网上各位大神的教程,尝试配置,发现版本对应最为关键.现将自己的安装与配置过程介绍如下,如有兴趣的同学可以尝试安装.所谓工欲善其 ...
- spark1.1.0下使用SparkSQL
spark1.1.0的安装参见http://blog.csdn.net/bluejoe2000/article/details/41391407 安装了spark之后,可以在 shell中执行Spar ...
- Apache Spark1.1.0部署与开发环境搭建
Spark是Apache公司推出的一种基于Hadoop Distributed File System(HDFS)的并行计算架构.与MapReduce不同,Spark并不局限于编写map和reduce ...
- Spark1.5.0 + Hadoop2.7.1整合
Hadoop2.7.1已经配置完毕. Hosts分配如下: master 172.16.15.140 slave1 172.15.15.141 slave2 172.16.15.142 一.安装Sca ...
- 搭建Hadoop2.6.0+Spark1.1.0集群环境
前几篇文章主要介绍了单机模式的hadoop和spark的安装和配置,方便开发和调试.本文主要介绍,真正集群环境下hadoop和spark的安装和使用. 1. 环境准备 集群有三台机器: master: ...
- 在Win7虚拟机下搭建Hadoop2.6.0+Spark1.4.0单机环境
Hadoop的安装和配置可以参考我之前的文章:在Win7虚拟机下搭建Hadoop2.6.0伪分布式环境. 本篇介绍如何在Hadoop2.6.0基础上搭建spark1.4.0单机环境. 1. 软件准备 ...
- 记:MySQL 5.7.3.0 安装 全程截图
前言: 下一个班快讲MySQL数据库了,正好把服务器里面的MySQL卸了重装了一下. 截个图,作为笔记.也正好留给需要的朋友们. 目录: 下载软件 运行安装程序 安装程序欢迎界面 许可协议 查找更新 ...
随机推荐
- 从今日起,我会把OpenGL红宝书上的例子用完整的代码形式写在我的博客中,
1.使用教程:OpenGL红宝书第8版 2.使用的库工具:GLEW和GLFW 3.使用的IDE:vs2012 4.说说目的:完整的看一遍OpenGL,加深印象并且熟练掌握运用OpenGL 5.欢迎有相 ...
- java设计模式案例详解:代理模式
代理模式就是用一个第三者的身份去完成工作,其实际意义跟字面意思其实是一样的,理解方式有很多,还是例子直观. 本例的实现类是实现买票功能,实际应用想要添加身份验证功能,利用代理模式添加验证步骤.上例子: ...
- php如何获取本地手机号
<?php function inquiry_number_infor($phonenumber) /* *传入手机号码,通过API的到xml格式数据,对xml进一步解析,最后返回相应的号码信息 ...
- struts2中的<s:select>默认选项
//... public class SelectAction extends ActionSupport{ private List<String> searchEngine; priv ...
- 移动Web框架:jQuery Mobile VS Sencha Touch
最近常被问到是用 jQuery Mobile还是Sencha Touch,本人也比较关注这两个框架,试图从以下两方面发表点儿见解: 身家背景,都系出名门 1.jQuery Mobile 建立在jQue ...
- java 数据流
Example10_11.java import java.io.*; public class Example10_11 { public static void main(String args[ ...
- android 市场发布应用小结
1:360平台发布应用 网址:http://dev.app.360.cn/ 2:腾讯应用宝 平台发布应用: 地址:http://op.open.qq.com/ (未审核通过的不能更新版本) 3:发布 ...
- linux下安装rabbitmq
1.安装erlang虚拟机 Rabbitmq基于erlang语言开发,所有需要安装erlang虚拟机.安装erlang有两种方式: 第一种:使用yum安装: wget -O /etc/yum.repo ...
- java工程开发之图形化界面之(第二课)
上一节主要是讨论小的应用程序,在这里我们将采用一种全新的方式来重新编写它. 在这里我们注重关注JFrame和JOptionPane.这些类提供了在JAVA应用程序使用图形的方法以及在JAVA程序中对I ...
- URL 传+号到后台变空格问题解决方案
今天巧合遇到这个问题,下面是网上找的解决方案. 原文:http://blog.sina.com.cn/s/blog_a0949eec01010xta.html 今天在调试客户端向服务器传递参数时,参数 ...