spark单机环境搭建以及快速入门

1 单机环境搭建

系统环境

cat /etc/centos-release
CentOS Linux release 7.3.1611 (Core)

配置jdk8

wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a2fad6ed6d1/jdk-8u181-linux-x64.tar.gz"
tar -xf jdk-8u181-linux-x64.tar.gz

echo ‘export JAVA_HOME=/home/work/fsj/jdk1.8.0_181
export PATH=$JAVA_HOME/bin:$PATH‘ >> ~/.bashrc

source ~/.bashrc
java -version

配置spark

从http://spark.apache.org/downloads.html 下载最新版spark预编译包并解压。

echo ‘export SPARK_HOME=/home/work/fsj/spark-2.3.0-bin-hadoop2.7
export PATH=$SPARK_HOME/bin:$PATH‘ >> ~/.bashrc
source ~/.bashrc
run-example SparkPi 10  # 运行例子

2 spark-shell

$ spark-shell --master local[2]
2018-09-02 16:12:37 WARN  NativeCodeLoader:62 - Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
Spark context Web UI available at http://localhost:4040
Spark context available as ‘sc‘ (master = local[2], app id = local-1535875965532).
Spark session available as ‘spark‘.
Welcome to
      ____              __
     / __/__  ___ _____/ /__
    _\ \/ _ \/ _ `/ __/  ‘_/
   /___/ .__/\_,_/_/ /_/\_\   version 2.3.0
      /_/

Using Scala version 2.11.8 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_181)
Type in expressions to have them evaluated.
Type :help for more information.

scala> sc
res1: org.apache.spark.SparkContext = [email protected]

scala> val textFile = spark.read.textFile("README.md")
2018-09-02 16:16:44 WARN  ObjectStore:6666 - Version information not found in metastore. hive.metastore.schema.verification is not enabled so recording the schema version 1.2.0
2018-09-02 16:16:45 WARN  ObjectStore:568 - Failed to get database default, returning NoSuchObjectException
2018-09-02 16:16:45 WARN  ObjectStore:568 - Failed to get database global_temp, returning NoSuchObjectException
textFile: org.apache.spark.sql.Dataset[String] = [value: string]

scala> textFile.first()
res2: String = # Apache Spark

可以看到shell给出了ui地址:http://localhost:4040

3 独立项目

spark-submit提交作业包括local模式和集群模式。这里只涉及local模式。

通过maven来管理Scala依赖,新建SimpleApp项目。

在pom文件中需要加上scala maven plugin

由于插件包含scala,所以我们用maven编译项目时,本地并不需要配置scala

代码和具体pom写法见:https://github.com/shenjiefeng/spark-examples/tree/master/SimpleApp

$ cd /path/to/SimpleApp && mvn clean package  # 建议选择国内mvn源
$ tree
.
├── pom.xml
├── src
│   └── main
│       └── scala
│           └── SimpleApp.scala
└── target
    ├── classes
    │   ├── SimpleApp$$anonfun$1.class
    │   ├── SimpleApp$$anonfun$2.class
    │   ├── SimpleApp.class
    │   └── SimpleApp$.class
    ├── classes.timestamp
    ├── maven-archiver
    │   └── pom.properties
    ├── simple-project-1.0.jar
    ├── surefire
    └── test-classes

$ spark-submit   --class "SimpleApp"   --master local[*]   target/simple-project-1.0.jar
...

修改spark-submit命令的日志级别:

$ cd $SPARK_HOME
$ cp conf/log4j.properties.template conf/log4j.properties
log4j.rootCategory=INFO, console # 改成WARN

$ spark-submit   --class "SimpleApp"   --master local[*]   target/simple-project-1.0.jar
18/09/02 17:27:52 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Lines with a: 61, Lines with b: 30

更多

  • 集群环境搭建:https://showme.codes/2017-01-31/setup-spark-dev-env/
  • http://spark.apache.org/docs/latest/quick-start.html

原文地址:https://www.cnblogs.com/lawlietfans/p/9574689.html

时间: 2024-11-01 13:57:04

spark单机环境搭建以及快速入门的相关文章

Spark入门三部曲之第二步Spark开发环境搭建

使用Scala+IntelliJ IDEA+Sbt搭建开发环境 提示 搭建开发环境常遇到的问题: 1.网络问题,导致sbt插件下载失败,解决方法,找到一个好的网络环境, 或者预先从我提供的网盘中下载jar(链接:http://pan.baidu.com/s/1qWFSTze 密码:lszc) 将下载的.ivy2压缩文件,解压后,放到你的用户目录下. 2.版本匹配问题,版本不匹配会遇到各种问题,解决方法,按照如下版本搭建, scala(2.10.3),sbt(0.13),sbt-assembly(

kafka单机环境搭建

1,准备工作:  windows下虚拟机上安装centos7,下载putty工具. 2,windows下下载相关的安装包 jdk-8u71-linux-x64.rpm kafka_2.11-0.9.0.0.tgz zookeeper-3.4.6.tar.gz 3,通过putty的pscp工具将上述3个文件上传到centos的/home/xf/backup目录(自己指定目录) 4,启动一个putty窗口连接centos,rpm方式安装jdk-8u71-linux-x64.rpm 5,解压kafka

Apache Spark源码走读之12 -- Hive on Spark运行环境搭建

欢迎转载,转载请注明出处,徽沪一郎. 楔子 Hive是基于Hadoop的开源数据仓库工具,提供了类似于SQL的HiveQL语言,使得上层的数据分析人员不用知道太多MapReduce的知识就能对存储于Hdfs中的海量数据进行分析.由于这一特性而收到广泛的欢迎. Hive的整体框架中有一个重要的模块是执行模块,这一部分是用Hadoop中MapReduce计算框架来实现,因而在处理速度上不是非常令人满意.由于Spark出色的处理速度,有人已经成功将HiveQL的执行利用Spark来运行,这就是已经非常

Grunt JS构建环境搭建以及使用入门

Grunt JS构建环境搭建以及使用入门 1.应用场景 一种自动化任务处理工具,对于日常的需求(代码规则检查.代码合并)可以实现自动化执行,只需要保留package.json和Gruntfile.js便能用一句代码行进行依赖下载. 2.搭建步骤 Grunt 依赖 Node.js 所以在安装之前确保你安装了 Node.js,然后开始安装 Grunt. 2.1安装 Node.js 进入nodejs官网https://nodejs.org/en/download/,根据当前机型选择对应版本下载安装后,

scala 入门Eclipse环境搭建及第一个入门经典程序HelloWorld

IDE选择并下载: scala for eclipse 下载: http://scala-ide.org/download/sdk.html 根据自己的机器配置选择合适的IDE: 我这里选择For scala2.11 版本的Windows 32 bit的IDE,单击即下载. scala安装: 安装包下载地址,进入官网:http://www.scala-lang.org/ 进入DOWNLOAD下,选择scala 2.11 版本,单击下载: Windows上安装scala 2.11: 单击运行sca

安卓自动化测试(2)Robotium环境搭建与新手入门教程

Robotium环境搭建与新手入门教程 准备工具:Robotium资料下载 知识准备: java基础知识,如基本的数据结构.语法结构.类.继承等 对Android系统较为熟悉,了解四大组件,会编写简单的Android应用程序 熟悉Eclipse IDE使用方法 有足够的耐心与探索精神,遇到问题可以熟练的Google 环境搭建 安装jdk,配置环境变量,如果不会请自行Google 下载安装Android SDK,并更新 下载Eclipse,并安装ADT插件,集成Android SDK Roboti

[转载] Hadoop和Hive单机环境搭建

转载自http://blog.csdn.net/yfkiss/article/details/7715476和http://blog.csdn.net/yfkiss/article/details/7721329 下载hadoophadoop下载地址:http://www.apache.org/dyn/closer.cgi/hadoop/core/这里下载的版本是1.0.3$ mkdir hadoop$ wget http://www.fayea.com/apache-mirror/hadoop

kafka单机环境搭建及其基本使用

最近在搞kettle整合kafka producer插件,于是自己搭建了一套单机的kafka环境,以便用于测试.现整理如下的笔记,发上来和大家分享.后续还会有kafka的研究笔记,依然会与大家分享! 1 kafka环境搭建 1.1 kafka单机环境搭建 (1).解压kafka_2.11-1.1.0.tgz,得到"kafka_2.11-1.1.0"文件夹. (2).kafka需要安装zookee使用,但kafka集成zookeeper,在单机搭建时可直接使用.使用需配置kafka_2.

Spark编程环境搭建及WordCount实例

基于Intellij IDEA搭建Spark开发环境搭建 基于Intellij IDEA搭建Spark开发环境搭——参考文档 ● 参考文档http://spark.apache.org/docs/latest/programming-guide.html ● 操作步骤 ·a)创建maven 项目 ·b)引入依赖(Spark 依赖.打包插件等等) 基于Intellij IDEA搭建Spark开发环境—maven vs sbt ● 哪个熟悉用哪个 ● Maven也可以构建scala项目 基于Inte