1. spark 是什么?
>Apache Spark 是一个类似hadoop的开源高速集群运算环境 与后者不同的是,spark更快(官方的说法是快近100倍)。提供高层JAVA,Scala,PythonI ,R API接口.而且提tools:Spark SQL for SQL 处理结构化数据, MLlib for machine learning, GraphX for graph processing, and Spark Streaming.
2. spark streaming
Spark Streaming: 构建在Spark上处理Stream数据的框架,主要的原理是将Stream数据分成小的时间片断(几秒),以类似batch批量处理的方式来处理这小部分数据。Spark Streaming构建在Spark上,一方面是由于Spark的低延迟运行引擎(100ms+),尽管比不上专门的流式数据处理软件。也能够用于实时计算,还有一方面相比基于Record的其他处理框架(如Storm)。一部分窄依赖的RDD数据集能够从源数据又一次计算达到容错处理目的。
3. build spark:
1) 安装 scala
scala 语言非常简洁,属于函数式语言。其简洁度令人惊讶(代码量仅仅有java的十分之中的一个)值得学习。
http://www.scala-lang.org/download/
下载,解压 :tar -zxvf filename loaction
改动环境变量:vim /etc/profile 在PATH后增加scala解压后文件位置。
> export SCALA_HOME =
$/opt/scala/scala-2.11.7
> export SPARK_HOME=$opt/spark/spark-1.4.1
> export PATH=$SCALA_HOME/bin:$PATH:$SPARK_HOME/bin
update( very important or you may failed to change the path) >
source /etc/profile
检測: scala -version
2)安装 spark streaming
下载这个版本号: spark-1.4.1-bin-hadoop2.6.tgz (一定不要选source code 须要自己编译)
http://spark.apache.org/downloads.html
解压: tar -zxvf filemname location (文件名称太长善用 tab键)
3)几个命令
启动Spark
在Spark执行之前,首先须要让Spark集群启动,假设须要用到hadoop的HDFS的话,也须要把HDFS启动起来。
./stop-master.sh
以及 ./start-master.sh
>cd /docker/opt/spark-1.4.0-bin-hadoop2.6/sbin;
在SPARK_HOME/sbin文件夹:
- sbin/start-master.sh-在机器上运行脚本。启动 master .
- sbin/start-slaves.sh- 启动conf/slaves中指定的每个slave .
- sbin/start-all.sh- 同一时候启动master 以及 上面所说文件里指定的slave
- sbin/stop-master.sh- 停止通过bin/start-master.sh脚本启动的master
- sbin/stop-slaves.sh- 停止通过bin/start-slaves.sh启动的slave .
- sbin/stop-all.sh- 停止上述的两种启动脚本启动的master和slave