大数据IMF传奇行动绝密课程第16课:RDD实战(RDD基本操作实战及Transformation流程图)
2016-08-11 22:42
344 查看
RDD实战(RDD基本操作实战及Transformation流程图)
RDD有几种操作:Transformation(算子),Action(触发作业,的结果foreach、reduce、saveasTextFile等),Controller(性能和容错方面persist、cache、checkpoint)
reduce要符合交换律和结合律
foreach不可以进行模式匹配
collect把各个节点计算的结果汇总到Driver
package com.tom.spark import org.apache.spark.{SparkConf, SparkContext} /** * 计算相同行出现的次数 */ object TextLines { def main(args: Array[String]): Unit = { val conf = new SparkConf() //创建SparkConf对象 conf.setAppName("Wow My First Spark App!") //设置应用程序的名称,在程序运行的监控界面可以看到 conf.setMaster("local") //此时程序在本地运行,不需要安装Spark集群 val sc = new SparkContext(conf) //创建SparkContext对象,通过传入SparkConf实例,来定制Spark运行的具体参数和配置信息 val lines = sc.textFile("F:/helloSpark.txt") //通过HadoopRDD以及MapPartitionsRDD获取文件中每一行的内容本身 val lineCount = lines.map( (_, 1)) //每一行变成行的内容与1构成的Tuple val textLine = lineCount.reduceByKey(_ + _) textLine.collect.foreach( pair => println(pair._1 + ":" +pair._2)) //collect是把结果抓到Driver上,foreach的Array中只有一个元素,只不过元素 是一个Tuple。 } }
例子中Array中只有一个元素,只不过元素是一个Tuple。
shuffle触发新的stage,action触发job。saveAsTextJob内部有Action,所以会触发job
相关文章推荐
- 大数据IMF传奇行动绝密课程第95课:通过SparkStreaming的window操作实战模拟新浪微博、百度、京东等热点搜索词案例实战
- 大数据IMF传奇行动绝密课程第60课:使用Java和Scala在IDE中实战RDD和DataFrame动态转换操作
- 大数据IMF传奇行动绝密课程第59课:使用Java和Scala在IDE中实战RDD和DataFrame转换操作
- 大数据IMF传奇行动绝密课程第22课:RDD的依赖关系彻底解密
- 大数据IMF传奇行动绝密课程第75-79课:Spark SQL基于网站Log的综合案例实战
- 大数据IMF传奇行动绝密课程第80课:Spark SQL网站搜索综合案例实战
- 大数据IMF传奇行动绝密课程第93课:SparkStreaming updateStateByKey案例实战和内置源码解密
- 大数据IMF传奇行动绝密课程第18课:RDD持久化、广播、累加器
- 大数据IMF传奇行动绝密课程第91课:SparkStreaming基于Kafka Direct案例实战和内幕源码解密
- 大数据IMF传奇行动绝密课程第22课:RDD的依赖关系彻底解密
- 大数据IMF传奇行动绝密课程第88课:SparkStreaming从Flume Poll数据案例实战和内幕源码解密
- 大数据IMF传奇行动绝密课程第89课:SparkStreaming On Kafka之kafka解析和安装实战
- 大数据IMF传奇行动绝密课程第57课:Spark SQL on Hive配置及实战
- 大数据IMF传奇行动绝密课程第67课:spark SQL案例综合实战
- 大数据IMF传奇行动绝密课程第90课:SparkStreaming基于Kafka Receiver案例实战和内幕源码解密
- 大数据IMF传奇行动绝密课程第14课:Spark RDD解密
- 大数据IMF传奇行动绝密课程第70课:Spark SQL内置函数解密与实战
- 大数据IMF传奇行动绝密课程第17课:RDD案例(join、cogroup、reduceByKey、groupByKey等)
- 大数据IMF传奇行动绝密课程第68课:Spark SQL通过JDBC操作MySQL
- 大数据IMF传奇行动绝密课程第82课:Spark Streaming案例动手实战并在电光石火间理解其工作原理