-
Spark快速且通用的集群计算平台
➢ spark是快速的
○ Spark扩充了流行的Mapreduce计算模型
○ Spark是基于内存的计算
➢ spark是通用的
○ 容纳了其他分布式系统拥有的功能:批处理、迭代式计算、交互查询和流处理等,方便维护
○ 优点:降低了维护成本
➢ spark是高度开放的
○ Spark提供了Python,Java,Scala,SQL的API和丰富的内置库。
○ Spark和其他的大数据工具整合的很好,包括hadoop,kafka等。查看全部 -
RDDs血统关系图
Spark维护着RDDs之间的依赖关系和创建关系,叫做 血统关系图
Spark使用血统关系图计算每个RDD的需求和恢复丢失的数据
延迟计算( Lazy Evaluation)
在第一次使用Action操作时才进行计算, 减少数据传输
Spark内部记录metadat表明 transformation操作已经相应
RDD.persist() 持久操作
默认每次RDD进行action操作,会重新计算
persist()后可以重复利用一个RDD (缓存)
查看全部 -
//scala //RDD逐元素transformation lines.map(word=>(word,1)) lines.filter(word=>word.contains("hello")) lines.flatMap(line=>line.split(" ")) //压扁 //集合运算 rdd1.distinct() //去重 rdd1.union(rdd2) //并集 rdd1.intersection(rdd2) //交集 rdd1.subtract(rdd2)
查看全部 -
RDDs创建
#scala val rdd= sc.parallelize(Array(1,2,3,4),4) #参数1:待并行化处理的集合 #参数2:分区个数 rdd.count() rdd.foreach(println) #加载外部数据 val rddText = sc.textFile("hello.txt")
Scala基础
#变量 val 变量值不可修改 var 可指向类型相同的值 #匿名函数和类型推断 自动推断line是string类型,可调用contain方法 lines.filter(line => line.contains("world"))
查看全部 -
Drive Programs通过 SparkContext 对象访问Spark
SparkContext 对象(即sc) 代表和一个集群的连接
scala> val lines= sc.textFile("/home/soft/hello.txt") lines即为RDDs
RDDs弹性分布式数据集: 并行分布在整个集群中
RDDs是Spark分发数据和计算的基础抽象类
一个RDD是不可改变的分布式集合对象
Spark中所有计算都是RDD操作完成
分片:
一个RDD内部有许多partitions分片组成,
每个partition包含一部分数据, 可在集群不同节点计算
分片是Spark并行处理的单元
查看全部 -
Wordcount
//Scala Object WordCount{ def main(args: Array[String]){ val conf= new SparkConf().setAppName("wordcount") val sc = new SparkContext(conf) val input= sc.textFile("/home/soft/hello.txt") //RDD操作:压扁 val lines = input.flatMap(line=> line.split(" ")) //转换成kv对 val count= lines.map(word=>(word,1)).reduceByKey{case (x,y)=>x+y} val output= count.saveAsTextFile("/home/result") } }
Project Structure -> Artifacts ->+然后 BuildArtifacts 打包Jar
启动集群:
启动master start-master.sh
启动worker spark-class
提交作业 spark-submit
#启动worker spark-class org.apache.spark.deploy.worker.Worker spark://localhost.localdomain:4040 #提交 spark-submit --master spark://localhost.localdomain:4040 --class WordCount /home/soft/hello.jar #上传jar包 rz -be
查看全部 -
RDDS的特性
查看全部 -
RDD基本操作之action
查看全部 -
rdd缓存级别
查看全部 -
小结
查看全部 -
distinct:驱虫
union:合并
intersection:交集
subtract:差集
查看全部 -
spark与hadoop
spark计算时效:几秒钟、几分钟
存储:基于内存计算,需要借助hdfs持久化数据
查看全部 -
spark core
查看全部 -
spark的生态
查看全部 -
思路,PPT查看全部
举报