spark本地模式

spark本地模式_第1张图片


spark-shell

还可带参数,设置开启几个线程

spark-shell --master local[3]

设置开启3个线程去跑任务


spark调度

spark本地模式_第2张图片


spark本地模式_第3张图片

spark本地模式_第4张图片


repartition(1)设置reduce的个数,这里设置为1


spark读取hdfs上的文件:wuke01为namenode所在机器名。

sc.textFile("hdfs://wuke01:9000/input/wuke.txt").flatMap(_.split(",")).map((_,1)).collect




var rdd1=sc.parallelize(Array(("one",1),("two",2),("three",3),("four",4)))

var rdd2=sc.parallelize(Array(("five",5),("six",6)))

(rdd1 union rdd2).repartition(1).saveAsTextFile("hdfs://wuke01:9000/tmp")


创建RDD 

https://www.iteblog.com/archives/1512


RDD血统

spark本地模式_第5张图片


.cache虚拟化  (针对宽依赖的处理)


Spark standalone模式安装
   配置: spark-env.sh (conf 目录下 )
        export JAVA_HOME= /usr/java/jdk1.7.0_67-cloudera/   
        export SPARK_MASTER_IP= 127.0.0.1   (指定主节点)
        export SPARK_WORKER_CORES=6      (配置worker节点的cpu核数)
        export SPARK_WORKER_INSTANCES=2    (启动多少个worker,一台从节点机器可以有多个WORKER,一个worker启动一个JVM)
        export SPARK_WORKER_MEMORY=10g    (每个worker占多少内存)
        export SPARK_MASTER_PORT= 7076 (spark URL端口,如spark://crxy172:7076)
        export SPARK_JAVA_OPTS= "-verbose:gc -XX:-PrintGCDetails -XX:+PrintGCTimeStamps”  (用来设置 GC 参数)
       注意:SPARK_WORKER_CORES * SPARK_WORKER_INSTANCES= 每台机器总cores
    slaves  (conf 目录下 )
xx.xx.xx. 1     // 从节点机器 ip ,可以写 hostname
xx.xx.xx. 2
   spark-shell 指定 URL 地址  
MASTER=spark://crxy172:7077  ./spark-shell

Spark standalone模式安装
   Spark 1.0相关变动:
    spark-defaults.conf 默认参数:
             spark.master  spark://server1:8888
spark.local.dir 本地目录   /data/tmp_spark_dir/  ( 新增 )
spark.executor.memory 10g
SPARK_JAVA_OPTS    不建议在使用 (用来设置 GC 参数)
             SPARK_SUBMIT_OPTS  作为替代者
SPARK_MEM  已被弃⽤
 
    任务提交:
    ./bin/spark-submit –class cn.crxy.standalone  xxx.jar  inputdir outdir


提交任务

用maven将项目打包成jar包后,拷贝到服务器上,用spark-submit提交任务spark-submit --class main函数所在的类全路径名  jar包所在位置    后面就是输入的参数(比如输入路径 输出路径)

spark-submit --class com.xxx.mainClass  xxx.jar hdfs://xxx/input/word.txt hdfs://xxx/output

你可能感兴趣的:(spark)