Spark的安装配置以及初步测试

来源:互联网 发布:进销存 淘宝 编辑:程序博客网 时间:2024/05/29 17:40

简单来说Spark就是专为大规模数据处理而 设计的快速通用计算引擎

spark伪分布式安装配置
1、解压
$ tar -zxvf /opt/softwares/spark-1.6.1-bin-2.5.0-cdh5.3.6.tgz

2、配置,添加属性
$ mv spark-env.sh.template spark-env.sh
JAVA_HOME=/opt/modules/jdk1.7.0_79
SCALA_HOME=/opt/modules/cdh/scala-2.10.4
HADOOP_CONF_DIR=/opt/modules/cdh/hadoop-2.5.0-cdh5.3.6/etc/hadoop

3、启动HDFS服务
$ sbin/start-dfs.sh

4、启动
$ bin/spark-shell

PS:
常见问题
若处于安全模式,则可以强制离开
$ bin/hadoop dfsadmin -safemode leave

Spark的数据处理流程
a)数据输入(从数据源获取数据)
b)数据处理(ETL等)
c)数据输出(数据持久化)
d)结果展示(如:图表形式)

** 示例一 (最常见的用法,先忽略掉实现的细节)
val rdd = sc.textFile(“/input/a.txt”) //hdfs路径
val wcrdd=rdd.flatMap(line=>line.split(“\t”)).map(word=>(word,1)).reduceByKey((a,b)=>(a+b))
wcrdd.saveAsTextFile(“wc-spark1”) //默认路径为/user/tom

** 示例二
val rdd = sc.textFile(“/input/a.txt”)
val linerdd=rdd.flatMap(line=>line.split(“\t”))
val kvrdd=linerdd.map(word=>(word,1))
val wcrdd=kvrdd.reduceByKey((a,b)=>(a+b))
wcrdd.saveAsTextFile(“wc-spark2”)

** 示例三
val wcrdd=sc.textFile(“/input/a.txt”).flatMap(line=>line.split(“\t”)).map(word=>(word,1)).reduceByKey((a,b)=>(a+b)).saveAsTextFile(“wc-spark3”)

** 示例四
val rdd = sc.textFile(“/input/a.txt”)
//如果某参数只使用一次,则可以使用下划线来代替
val wcrdd=rdd.flatMap(.split(“\t”)).map((,1)).reduceByKey(+)
wcrdd.saveAsTextFile(“wc-spark4”)

原创粉丝点击