Spark框架概述
Spark是基于内存的运算,效率更高,语句更加简洁。
RDD 弹性分布式数据集,以实现通用性。
安装部署
运行环境与安装包不匹配的时候,就要对源代码进行编译或生成(SBT或Maven编译)。 make-distribution.sh
option param –hadoop VERSION Hadoop版本号,默认1.0.4 –with-yarn 是否支持Hadoop YARN –with-hive 是否在Spark SQL中支持hive –skip-java-test 是否编译过程中略过java测试 –with-tachyon 是否支持文件系统Tachyon –tgz 在根目录生成spark-$VERSION-bin.tgz的部署包, 若无此参数则只生成dist目录 – name 在根目录生成spark-$VERSION-bin-$NAME.tgz的部署包,与–tgz组合使用
例如:
- 生成支持yarn、hadoop2.2.0的部署包:
- ./make-distribution.sh –hadoop 2.2.0 –with-yarn –tgz
- 生成支持yarn、hive的部署包
- ./make-distribution.sh –hadoop 2.2.0 –with-yarn –with-hive –tgz
Spark Standalone 集群部署
- Java 的安装
- ssh 无密码登录
- Spark 安装包解压
- Spark配置文件配置
- 文件 conf/slave
- hadoop1
- hadoop2
- hadoop3
- 文件 conf/spark-env.sh
- export SPARK_MASTER_IP=hadoop1
- export SPARK_MASTER_PORT=7077
- export SPARK_WORKER_CORES=1
- export SPARK_WORKER_INSTANCES=1
- export SPARK_MEMORY=3g
- 文件 conf/slave
- Spark Standalone HA 部署
- 基于文件系统的HA[有问题]
- spark.deploy.recoveryMode 设置城FILESYSTEM
- spark.deploy.recoveryDirectory Spark保存恢复状态的目录
- Spark-env.sh里对SPARK_DAEMON_JAVA_OPTS 设置
- export SPARK_DAEMON_JAVA_OPTS=”-Dspark.deploy.recoverMode=FILESYSTEM -D spark.deploy.recoveryDirectory=/app/hadoop/spark/spark100/recovery”
- 基于zookeeper的HA 参考博客
- spark.deploy.recoveryMode 设置成ZOOKEEPER
- spark.deploy.zookeeper.url ZooKeeper URL
- spark.deploy.zookeeper.dir Zookeeper保存恢复状态的目录,缺省为/spark
- spark-env里对SPARK_DAEMON_JAVA_OPTS设置
- export SPARK_DAEMON_JAVA_OPTS=”-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=hadoop1:2181,hadoop2:2181,hadoop3:2181 -Dspark.deploy.zookeeper.dir=/spark”
- 基于文件系统的HA[有问题]
Spark Standalone 伪分布式部署
Spark工具介绍
- Spark 交互工具spark-shell
- Spark 应用程序部署工具spark-submit
- 参数说明
- J
1 |