搭建scala 开发spark程序环境及实例演示
发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,上一篇博文已经介绍了搭建scala的开发环境,现在进入正题。如何开发我们的第一个spark程序。下载spark安装包,下载地址http://spark.apache.org/downloads.htm
千家信息网最后更新 2025年01月31日搭建scala 开发spark程序环境及实例演示
上一篇博文已经介绍了搭建scala的开发环境,现在进入正题。如何开发我们的第一个spark程序。
下载spark安装包,下载地址http://spark.apache.org/downloads.html(因为开发环境需要引用spark的jar包)
我下载的是spark-2.1.0-bin-hadoop2.6.tgz,因为我的scalaIDE版本是scala-SDK-4.5.0-vfinal-2.11-win32.win32.x86_64.zip
最好,IDE版本和spark版本要匹配,否则,开发程序的时候,可能会包引用的jar包错误等等。
new 一个 scala project,然后new 一个 scala object
代码如下:
package com.testimport org.apache.spark.SparkContextimport org.apache.spark.SparkConf /** * 统计字符出现次数 */ object WordCount { def main(args: Array[String]) { if (args.length < 1) { System.err.println("Usage:") System.exit(1) } val conf = new SparkConf();//创建SparkConf对象 conf.setAppName("Wow,My First Spark Programe");//设置应用程序的名称,在程序运行的监 conf.setMaster("local")//此时,程序在本地运行,不需要安装Spark集群 val sc = new SparkContext(conf);//创建SparkContext对象,通过传入SparkConf实例// val lines = sc.textFile(args(0)); val lines = sc.textFile(args(0)); val words = lines.flatMap{line => line.split(" ")};//对每一行的字符串进行单词拆 val pairs = words.map{word => (word,1)}; val wordCounts = pairs.reduceByKey(_+_);//对相同的Key,进行Value的累计(包括Local和Reducer级别同时Reduce) // val wordCounts = pairs.reduce((x,y)=>(x.)); wordCounts.foreach(wordNumberPair => println(wordNumberPair._1 + " : " +wordNumberPair)); // line.flatMap(_.split(" ")).map((_, 1)).reduceByKey(_+_).collect().foreach(println) sc.stop() } }
3.配置JDK1.8 和引入spark jar包
spark的jar包是 spark安装包解压之后jars目录里面的jar包,可以把这个目录下面的所有jar包都引入工程
4.run Configurations,配置运行入参,
因为 这个代码是读入一个文本,在hadoop文件系统,可以spark-submit的时候传入这个参数,在windows 本地开发环境可以在eclipse里面配置这个参数,见下面的图
val lines = sc.textFile(args(0));
4.入参文本及运行结果
入参文本:
run scala Application运行结果
ok,开发环境搭建完毕。
开发
程序
运行
环境
文本
版本
配置
代码
参数
字符
对象
时候
目录
结果
面的
实例
相同
一行
单词
同时
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
实现记录一周数据库
服务器端口占用查询命令
采用瀑布型软件开发模型
闵行区网络技术服务价格合理
数据库唯一索引用法和场景
数据库在冷链物流管理有哪些应用
泰安量化积分管理软件开发软件
福州app软件开发制作
服务器选单个大硬盘还是多个硬盘
请求服务器失败了怎么办
警察网络安全工作
手机网络安全教育视频
浙江软件开发项目
软件开发的环节有哪些
虹口区常规软件开发服务收费
西安有德网络技术有限公司
数据库编码ut8什么意思
好的软件开发开发服务
龙之神途高爆版服务器
如何训练cnn数据库
网络安全手抄报内容大全字多
数据库在冷链物流管理有哪些应用
世界互联网的科技成果
沈阳互联网科技企业排名
数据库应用支撑层有哪些技术
软件开发报价上海
网络安全作文400字四年级
全县网络安全十四五规划
什么主板兼容ddr4服务器内存
oppo手机软件开发工资