3000门徒内部训练绝密视频(泄密版)第8课:彻底实战详解使用IDE开发Spark程序
2016-08-11 21:55
597 查看
彻底实战详解使用IDE开发Spark程序
使用IDE开发Spark分析使用IDE开发Spark实战
使用IDE开发Spark的Local和Cluster
开发两种选择:IDEA、Eclipse
下载Scala for Eclipse
创建工程WordCount
改变Scala编译版本,右键工程,Properties->Scala Conpiler 划勾,Latest2.10
加入Spark1.6.x的jar文件依赖,下载spark
找到依赖的spark jar文件,并导入到eclipse中的jar依赖中
在src下建立spark工程包
创建Scala入口类
把class变成object并编写main入口方法
package com.tom.spark /** * 使用Scala开发本地测试的Spark WordCount程序 */ object WordCount { def main(args: Array[String]){ /** * 第一步:创建Spark的配置对象,SparkConf,设置Spark程序的运行时的配置信息 * 例如通过setMaster来设置程序要连接的spark集群的Master的URL,如果设置 * 为local,则代表Spark程序在本地运行,特别适合于机器配置条件非常差的初学者 * */ val conf = new SparkConf() //创建SparkConf对象 conf.setAppName("Wow My First Spark App!") //设置应用程序的名称,在程序运行的监控界面可以看到 conf.setMaster("local") //此时程序在本地运行,不需要安装Spark集群 /** * 第二步:创建SparkContext对象 * SparkContext是Spark程序所有功能的唯一入口,无论采用Scala、Java、Python、R等都必须有一个SparkContext * SparkContext核心作用:初始化Spark应用程序运行所需要的核心组件,包括DAGScheduler、TaskScheduler、SchedulerBackEnd * 同时还会负责Spark程序往Master注册程序等 * SparkContext是整个Spark应用程序中最为至关重要的一个对象 */ val sc = new SparkContext(conf) //创建SparkContext对象,通过传入SparkConf实例,来定制Spark运行的具体参数和配置信息 /** * 第三步:根据具体的数据来源(HDFS、HBase、Local FS、DB、S3等)通过SparkContext来创建RDD * RDD的创建基本有三种方式:根据外部的数据来源(例如HDFS)、根据Scala集合、由其他RDD操作 * 数据会被RDD划分成为一系列的Partitions,分配到每个Partition的数据属于一个Task的处理范畴 */ val lines = sc.textFile("F:/channel.txt",1)//读取本地文件并设置为1个Partition /** * 第四步:对初始的RDD进行Transformation级别的处理,例如map、filter等高阶函数等的编程,来进行具体的数据计算 * 第4.1步:将每一行的字符串拆分成单个的单词 */ val words = lines.flatMap(_.split(" ")) //对每一行的字符串进行单词拆分,并把所有行的拆分结果通过flat合并成一个大的单词集合 /** * 第4.2步:在单词拆分的基础上对每个单词实例计数为1,也就是word => (word, 1) */ val pairs = words.map( word => (word, 1)) /** * 第4.3步:在单词实例计数为1基础上,统计每个单词在文件中出现的总次数 */ val wordCounts = pairs.reduceByKey(_+_) //对相同的key,进行Value的累加(包括Local和Reducer级别同时Reduce) wordCounts.foreach(wordNumberPair => println(wordNumberPair._1 + " : " + wordNumberPair._2)) sc.stop() } }
相关文章推荐
- 3000门徒内部训练绝密视频(泄密版)第10课:彻底实战详解使用Java开发Spark程序
- 3000门徒内部训练绝密视频(泄密版)第9课:彻底实战详解使用IntelliJ IDEA下的Spark程序开发
- 第8课:彻底实战详解使用IDE开发Spark程序
- 第8课:彻底实战详解使用IDE开发Spark程序
- 第8课:彻底实战详解使用IDE开发Spark程序--集群模式运行
- 第8课:彻底实战详解使用IDE开发Spark程序
- DT_大数据梦工厂 第8课 彻底实战详解使用IDE开发Spark程序
- 3000门徒内部训练绝密视频(泄密版)第3课:Scala中函数式编程彻底精通及Spark源码阅读
- 3000门徒内部训练绝密视频(泄密版)第7课:实战解析Spark运行原理和Rdd解密
- 3000门徒内部训练绝密视频(泄密版)第5课:彻底精通Scala隐式转换和并发编程及Spark源码阅读
- 3000门徒内部训练绝密视频(泄密版)第4课:Scala模式匹配、类型系统彻底精通与Spark源码阅读
- 3000门徒内部训练绝密视频(泄密版)第2课:Scala面向对象彻底精通及Spark源码阅读
- 3000门徒内部训练绝密视频(泄密版)第6课:精通Spark集群搭建与测试
- 第10课:底实战详解使用Java开发Spark程序学习笔记
- 第10课:底实战详解使用Java开发Spark程序学习笔记(二)
- 大数据Spark “蘑菇云”行动前传第3课:在IDE下开发第一个Scala程序透彻解析及Scala控制结构详解实战
- Spark API编程动手实战-08-基于IDEA使用Spark API开发Spark程序-01
- 大数据IMF传奇行动绝密课程第83课:透彻讲解使用Scala和Java两种方式实战Spark Streaming开发
- Spark实战----(1)使用Scala开发本地测试的Spark WordCount程序
- 3000门徒内部训练绝密视频(泄密版)第1课:大数据最火爆语言Scala光速入门