从零开始学习Spark--第1章 安装和测试

原创 2013年12月03日 16:44:57

spark 安装 0.8 版本


操作系统Ubuntu 10.04,已经安装JDK 1.7。


1. 下载spark代码
http://spark.incubator.apache.org/downloads.html


2. spark 0.8依赖于scala 2.9.3,安装这个版本的scala。
2.1 下载scala 0.9.3  http://www.scala-lang.org/download/2.9.3.html#Software_Requirements
2.2 解压缩到/usr/local/scala目录下
2.3 在/etc/profile添加一行代码:
    export PATH=$PATH:/usr/local/scala/bin


3. 编译spark
3.1 在~/setup/spark-new/目录下,将spark-0.8.0-incubating.tgz解压缩到目录~/setup/spark-new/spark-0.8.0:
    tar xvf spark-0.8.0-incubating.tgz
3.2 运行sbt进行编译:
                . /etc/profile #更新环境变量
cd ~/setup/spark-new/spark-0.8.0
sbt/sbt assembly
    这个步骤会下载很多库,然后进行编译,编译时间大概会在1个小时左右。


4. 交互式运行
4.1 参考这里:http://spark.incubator.apache.org/docs/latest/quick-start.html
4.2 在运行例子前,如果系统已经安装了Hadoop,所以需要启动了Hadoop,然后把spark的README.md文件复制到HDFS上。
4.3 启动spark shell:
cd /home/brian/setup/spark-new/spark-0.8.0
        ./shark-shell
4.4 按照运行例子,处理README.md文件。


5. 写scala写一个标准的spark app
5.1 创建一个目录~/test
5.2 test目录的内容如下,其中,simple.sbt和SimpleApp.scala是文件,其他都是目录
find . 

.
./simple.sbt
./src
./src/main
./src/main/scala
./src/main/scala/SimpleApp.scala


5.3 simple.sbt文件内容如下:
name := "Simple Project"
version := "1.0"
scalaVersion := "2.9.3"
libraryDependencies += "org.apache.spark" %% "spark-core" % "0.8.0-incubating"
resolvers += "Akka Repository" at "http://repo.akka.io/releases/"


5.4 SimpleApp.scala文件内容如下:
import org.apache.spark.SparkContext
import org.apache.spark.SparkContext._

object SimpleApp{
    def main(args: Array[String]){
    val logFile = "/home/brian/setup/spark-new/spark-0.8.0/README.md"
val sc = new SparkContext("local", "Simple App", 
          "/home/brian/setup/spark-new/spark-0.8.0",
    List("target/scala-2.9.3/simple-project_2.9.3-1.0.jar"))
        val logData = sc.textFile(logFile, 2).cache()
val numAs = logData.filter(line => line.contains("a")).count()
val numBs = logData.filter(line => line.contains("b")).count()
        println("Lines with a: %s, lines with b: %s".format(numAs, numBs))
    }
}


5.5 编译:
cd ~/test
~/setup/spark-new/spark-0.8.0/sbt/sbt package
~/setup/spark-new/spark-0.8.0/sbt/sbt run


5.6 运算结果:
Lines with a: 66, lines with b: 35

自动化测试基础篇—从零开始搭建测试工程

1、下载JDK:       下载地址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151....
  • iamhuanggua
  • iamhuanggua
  • 2016年12月26日 11:11
  • 22758

从零开始学习Hadoop--第1章 Hadoop的安装

转载地址:http://blog.csdn.net/lizhe_dashuju/article/details/13502659 (大数据与机器学习,一系列的hadoop文章) Hadoo...
  • u012556077
  • u012556077
  • 2015年08月17日 13:12
  • 284

从零开始学习Hadoop--第1章 Hadoop的安装

Hadoop的安装比较繁琐,有如下几个原因:其一,Hadoop有非常多的版本;其二,官方文档不尽详细,有时候更新脱节,Hadoop发展的太快了;其三,网上流传的各种文档,或者是根据某些需求定制,或者加...
  • wwwway
  • wwwway
  • 2014年07月13日 16:41
  • 23

从零开始学习Hadoop--第1章 Hadoop的安装

Hadoop的安装比较繁琐,有如下几个原因:其一,Hadoop有非常多的版本;其二,官方文档不尽详细,有时候更新脱节,Hadoop发展的太快了;其三,网上流传的各种文档,或者是根据某些需求定制,或者加...
  • u011539200
  • u011539200
  • 2013年10月29日 09:44
  • 5204

第1章从零开始

一 机试的意义 可以考察一个考生从实际问题当中抽象得出数学模型的能力,利用所学的计算机专业知识对该模型进行分析求解的能力。 二 机试的形式 机试考试中的问题往往有五部分组成。1,问题描述,,以待...
  • qibofang
  • qibofang
  • 2016年04月13日 08:59
  • 424

从零开始学习Spark--第3章 spark的example

1. 计算Pi值 1.1 命令行: #spark安装在/home/brian/setup/spark-new/spark-0.8.0目录 cd /home/brian/setup/spark-...
  • u011539200
  • u011539200
  • 2013年12月05日 11:51
  • 10212

如何从零开始学习C#

多造轮子,实际编码为主,理论学习为辅。 这个太抽象了,举个具体例子吧,够让你干上一年了。 比如,以做爬虫为例子。 可以分成下面几个阶段。 第一版:单页面读取 目标:写一个控制台程...
  • oDaHua12
  • oDaHua12
  • 2015年05月03日 22:07
  • 1147

Ext JS 6学习文档–第1章–ExtJS入门指南

Ext JS 入门指南 前言 本来我是打算自己写一个系列的 ExtJS 6 学习笔记的,因为 ExtJS 6 目前的中文学习资料还很少。google 搜索资料时找到了一本国外牛人写的关于 ExtJS ...
  • fanfzj
  • fanfzj
  • 2017年03月19日 15:29
  • 93

Ext JS 6学习文档–第2章–核心概念

核心概念 在下一章我们会构建一个示例项目,而在这之前,你需要学习一些在 Ext JS 中的核心概念,这有助于你更容易理解示例项目。这一章我们将学习以下知识点: 类系统,创建和扩展类 ...
  • jiangbo110119
  • jiangbo110119
  • 2017年03月10日 21:57
  • 225

读书笔记 - Python机器学习及实践 —— 从零开始通往Kaggle竞赛之路

第1章 简介篇 1.1机器学习综述 机器学习系统具备如下特点: >许多机器学习系统所解决的都是无法直接使用固定规则或者流程代码完成的问题,通常这类问题对人类而言却很简单。比如,计算机和手机中的计...
  • Islotus
  • Islotus
  • 2017年04月18日 10:49
  • 1829
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:从零开始学习Spark--第1章 安装和测试
举报原因:
原因补充:

(最多只允许输入30个字)