当前位置: 首页 > news >正文

Scala---WordCount

一、创建Maven项目导入pom.xml文件

安装Maven仓库管理工具,版本要求是3.2版本以上。新建Maven项目,配置pom.xml。导入必要的包。

二、Spark-Scala版本的WordCount

1.val conf = new SparkConf()
2.conf.setMaster("local")
3.conf.setAppName("scala-wc")
4.val sc = new SparkContext(conf)
5.val lines = sc.textFile("./data/words")
6.val words = lines.flatMap(line=>{line.split(" ")})
7.val pairWords = words.map(word=>{new Tuple2(word,1)})
8.val result = pairWords.reduceByKey((v1:Int,v2:Int)=>{v1+v2})
9.result.foreach(println)

三、Spark-Java版本的WordCount

1.SparkConf conf = new SparkConf();
2.conf.setMaster("local");
3.conf.setAppName("java-wc");
4.JavaSparkContext sc = new JavaSparkContext(conf);
5.JavaRDD<String> lines = sc.textFile("./data/words");
6.JavaRDD<String> words = lines.flatMap(new   FlatMapFunction<String, String>() {
7.  @Override
8.  public Iterator<String> call(String s) throws Exception {
9.    String[] split = s.split(" ");
10.    return Arrays.asList(split).iterator();
11.  }
12.});
13.JavaPairRDD<String, Integer> pairWords = words.mapToPair(new PairFunction<String, String, Integer>() {
14.  @Override
15.  public Tuple2<String, Integer> call(String word) throws Exception {
16.    return new Tuple2<>(word, 1);
17.  }
18.});
19.JavaPairRDD<String, Integer> result = pairWords.reduceByKey(new Function2<Integer, Integer, Integer>() {
20.  @Override
21.  public Integer call(Integer v1, Integer v2) throws Exception {
22.    return v1 + v2;
23.  }
24.});
25.result.foreach(new VoidFunction<Tuple2<String, Integer>>() {
26.  @Override
27.  public void call(Tuple2<String, Integer> tuple2) throws  Exception {
28.    System.out.println(tuple2);
29.  }
30.});
31.sc.stop();

相关文章:

Scala---WordCount

一、创建Maven项目导入pom.xml文件 安装Maven仓库管理工具&#xff0c;版本要求是3.2版本以上。新建Maven项目&#xff0c;配置pom.xml。导入必要的包。 二、Spark-Scala版本的WordCount 1.val conf new SparkConf() 2.conf.setMaster("local") 3.conf.setAppNam…...

GTC2023全球流量大会蓄势待发,菊风在7B57展位等你!

第六届 GTC 全球流量大会&#xff08;以下简称 GTC2023&#xff09;将于12月5日- 6日&#xff0c;在深圳福田会展中心7&#xff06;8号馆举办。 据悉&#xff0c;本届大会将是历届以来规模最大、参与人数最多、跨境出海资源最丰富的一次行业盛会。7、8 号馆共 15000 平方米&am…...

喜讯!云起无垠成为国家信息安全漏洞库(CNNVD)技术支撑单位

近日&#xff0c;云起无垠凭借其在漏洞挖掘、漏洞检测以及漏洞修复等领域的卓越表现&#xff0c;荣获“国家信息安全漏洞库&#xff08;CNNVD&#xff09;技术支撑单位等级证书&#xff08;三级&#xff09;”&#xff0c;正式成为CNNVD技术支撑单位。 中国国家信息安全漏洞库&…...

cc linux用root用户执行chmod 777 -R ./提示 Operation not permitted怎么办?

如果你作为 root 用户执行 chmod 777 -R ./ 命令时收到 “Operation not permitted” 错误&#xff0c;可能有几个原因&#xff1a; 不可更改 (Immutable) 文件属性&#xff1a; 文件可能被设置为不可更改。即使是 root 用户也不能修改这些文件的权限。使用 lsattr 命令查看文件…...

scrapy框架流程

1、Scrapy从Spider子类中提取start_url,然后构造为request请求对象 2、将request请求对象传递给爬虫中间件 3、将request请求对象传递给Scrapy引擎&#xff08;核心代码&#xff09; 4、将request请求对象传递给调度器&#xff08;它负责对多个request安排&#xff0c;好比交…...

802.11 帧的Reason Code 位和Status Code 位

Reason Code 位 当对方不适合加入网络时&#xff0c;工作站会送出 Disassociation&#xff08;解除连接&#xff09;或 Deauthentication&#xff08;解除身份认证&#xff09;帧作为应答。这些帧当中包含一个长度 16bit 的 Reason Code&#xff08;原因代码&#xff09;位&am…...

骨传导能保护听力吗?为什么说骨传导耳机可以保护听力?

由于骨传导耳机的特殊传声方式&#xff0c;是可以保护听力的。 首先了解下骨传导耳机的传声方式是什么&#xff1a; 骨传导耳机是通过骨骼震动传导技术&#xff0c;将声音传至颅骨&#xff0c;然后通过颅骨传导到内耳&#xff0c;直接刺激听觉神经&#xff0c;使人感知到声音…...

【iOS】实现评论区展开效果

文章目录 前言实现行高自适应实现评论展开效果解决cell中的buttom的复用问题 前言 在知乎日报的评论区中&#xff0c;用到了Masonry行高自适应来实现评论的展开&#xff0c;这里设计许多控件的约束问题&#xff0c;当时困扰了笔者许久&#xff0c;特此撰写博客记录 实现行高自…...

POE交换机——电源解决方案-升压控制器\降压控制器\中高压降压转换器

PoE是一种有线以太网供电技术&#xff0c;使用于数据传输的网线同时具备直流供电的能力&#xff0c;PoE供电具有可靠、连接简捷、标准统一的优势。越来越多的工业物联网设备开始采用PoE供电&#xff0c; 如IP电话、网络视频监控以及无线以太网设备等。 PoE交换机是一种用于提供…...

[C/C++]数据结构 循环队列

前言: 队列是一种具有先进先出特性的结构,但是当数据出队列以后,前面的空间就无法再次利用了,循环队列就可以解决这个问题 一:概念及结构: 1.循环队列概念 循环队列是一种线性数据结构&#xff0c;其操作表现基于 FIFO&#xff08;先进先出&#xff09;原则并且队尾被连接在队…...

Cache学习(2):Cache结构 命中与缺失 多级Cache结构 直接映射缓存

1 Cache名词解释 命中&#xff08;hit&#xff09;&#xff1a; CPU要访问的数据在Cache中有缓存缺失&#xff08;miss&#xff09;&#xff1a; CPU要访问的数据在Cache中没有缓存Cache Size&#xff1a;Cache的大小&#xff0c;代表Cache可以缓存最大数据的大小Cache Line&a…...

vue前端前端页面权限验证方式

在Vue应用中使用Vuex&#xff08;Vue的状态管理库&#xff09;来存储用户组&#xff08;user group&#xff09;和角色&#xff08;roles&#xff09;信息是一种合理的做法&#xff0c;特别是在涉及到权限管理和用户身份的情况下。Vuex提供了一个集中式的状态管理方案&#xff…...

jenkins springCloud项目优雅下线

文章目录 场景解决下线请求效果如图贴一个可用的部署脚本 场景 在 Spring Cloud 项目的微服务实例关闭时&#xff0c;需要首先从注册中心设置为下线&#xff0c;避免该服务的消费者继续请求该服务实例&#xff0c;导致请求失败如果我们在服务实例从注册中心取消注册后&#xff…...

indexOf

可以通過String的indexOf判斷是否包括某個字符。 SpringBootTest Slf4j class BaseApplicationTests {Testvoid contextLoads() {log.info("01".indexOf(".")"");log.info("0.1".indexOf(".")"");log.info("…...

STM32分区跳转问题

项目场景&#xff1a; 在OTA中&#xff0c;FLASH通常被划分为以下几种类型 bootloaderiapappbootloaderappapp保存区bootloaderapp1app2 不同的分区方式有不同的有点&#xff0c;但是共同点都是需要执行分区跳转 问题1描述 但在分区跳转过程中遇到过使用不同的编译器不能跳转…...

亿级流量架构服务降级

什么是服务降级 如果看过我前面对服务限流的分析,理解服务降级就很容易了,对于一个景区,平时随便进出,但是一到春节或者十一国庆这种情况客流量激增,那么景区会限制同时进去的人数,这叫限流,那么什么是服务降级呢? 简单来说就是,将一些不太重要的景区项目砍掉,平时就那么三五…...

【技术分享】RK3399 Ubuntu通过Python实现录音和播放功能

​本文基于IDO-SBC3968 Ubuntu 系统通过Python脚本实现录音和播放功能。 IDO-SBC3968采用RK3399国产六核64位CPU高性能处理器&#xff0c;支持4K HDMI2.0显示&#xff0c;接口丰富&#xff0c;拥有千兆以太网&#xff0c;全协议TypeC接口&#xff0c;USB3.0 &#xff0c;eDP 和…...

关于vs code Debug调试时候出现“找不到任务C/C++: g++.exe build active file” 解决方法

vs code Debug调试时候出现“找不到任务C/C: g.exe build active file” &#xff0c;出现报错&#xff0c;Debug失败 后来经过摸索和上网查找资料解决问题 方法如下 在Vs code的操作页面左侧有几个配置文件 红框里的是需要将要修改的文件 查看tasks.json和launch.json框选&…...

交叉导轨在光学工作台起什么重要作用?

光学工作台常常需要承载和移动各种光学元件和仪器&#xff0c;如望远镜、显微镜、光谱仪等&#xff0c;这些设备需要在空间中进行精确的定位和稳定支撑&#xff0c;而交叉导轨作为一种高精度、高刚度的直线传动元件&#xff0c;为光学工作台提供了重要的支撑和导向。 1>交叉…...

易点易动固定资产管理系统:实现固定资产与财务系统的高效对接

在企业的日常运营中&#xff0c;固定资产的管理和财务账目的记录是两项不可或缺的任务。然而&#xff0c;由于传统的管理方式存在数据孤岛和信息不一致等问题&#xff0c;往往导致工作效率低下和管理混乱。为了解决这一问题&#xff0c;易点易动固定资产管理系统应运而生。该系…...

从公式到代码:手把手推导STM32舵机控制PWM的占空比计算(附两种角度表示法)

从公式到代码&#xff1a;手把手推导STM32舵机控制PWM的占空比计算&#xff08;附两种角度表示法&#xff09; 第一次接触舵机控制时&#xff0c;看到代码里那些神秘的"(角度135)/9"或"角度*20/1805"公式&#xff0c;你是否也感到一头雾水&#xff1f;这些…...

2026 SMT贴片线数字孪生开发平台选型

SMT贴片线数字孪生平台选型需聚焦“高精度、高节拍、高复杂度”特性。专项能力一&#xff1a;微米级精度的“贴装过程仿真”高精度模型导入&#xff1a;能直接导入贴片机头部组件的精密CAD模型&#xff08;SolidWorks、CATIA&#xff09;&#xff0c;保持装配约束。关节运动与I…...

FuckFuckadblock终极指南:如何彻底告别烦人弹窗和反广告屏蔽

FuckFuckadblock终极指南&#xff1a;如何彻底告别烦人弹窗和反广告屏蔽 【免费下载链接】fuckfuckadblock Filters for blocking mining, pop-ups and anti-adblock bypass. 项目地址: https://gitcode.com/gh_mirrors/fu/fuckfuckadblock FuckFuckadblock是一款强大的…...

告别虚拟机!在Win10上原生运行ROS Melodic/Foxy的保姆级配置指南(含VS2022适配)

在Windows 10上原生运行ROS Melodic/Foxy的终极指南&#xff08;VS2022适配版&#xff09; 对于机器人开发者而言&#xff0c;长期依赖虚拟机运行ROS不仅消耗系统资源&#xff0c;还会导致开发效率低下。本文将彻底解决这一痛点&#xff0c;手把手教你如何在Windows 10上原生配…...

LFM2-2.6B-GGUF快速部署:Ubuntu系统依赖(libglib2.0-0等)安装

LFM2-2.6B-GGUF快速部署&#xff1a;Ubuntu系统依赖&#xff08;libglib2.0-0等&#xff09;安装 1. 项目介绍 LFM2-2.6B-GGUF是由Liquid AI公司开发的大语言模型&#xff0c;经过GGUF量化处理后特别适合在资源有限的设备上运行。这个2.6B参数的模型经过量化后体积大幅缩小&a…...

品牌智能增长效果如何评估?三大核心指标拆解

当下&#xff0c;很多品牌投入大量资源布局品牌智能增长&#xff0c;却普遍面临一个核心困境&#xff1a;AI 在解答用户相关问题时&#xff0c;鲜少提及自身品牌。其症结在于&#xff1a;AI 平台品牌增长的效果评估&#xff0c;不可套用传统 SEO 的逻辑框架。与 SEO 聚焦搜索排…...

为什么孩子要先学盲打再提速?科学打字训练方法应该是怎样的?

不少家长都有同款困惑&#xff1a;孩子写作文、整理课堂笔记、线上交作业&#xff0c;思路想得清清楚楚&#xff0c;实操打字却拖后腿。打两行就低头找键盘&#xff0c;频繁回删改错字&#xff0c;写作思路反复中断&#xff0c;半小时敲不出一小段内容。 很多人盲目把问题归为孩…...

10分钟快速上手:Iris Web Framework 完整安装与配置指南

10分钟快速上手&#xff1a;Iris Web Framework 完整安装与配置指南 【免费下载链接】examples This repository contains small and practical examples for the Iris Web Framework. 项目地址: https://gitcode.com/gh_mirrors/examples22/examples GitHub 加速计划 /…...

Ralph库存盘点功能详解:简化企业资产验证流程的5个技巧

Ralph库存盘点功能详解&#xff1a;简化企业资产验证流程的5个技巧 【免费下载链接】ralph Ralph is the CMDB / Asset Management system for data center and back office hardware. 项目地址: https://gitcode.com/gh_mirrors/ra/ralph Ralph作为一款专业的CMDB/资产…...

Stable-Diffusion-v1-5-archive教学素材生成:教师快速制作PPT配图/知识图解/习题图示

Stable Diffusion v1.5 Archive教学素材生成&#xff1a;教师快速制作PPT配图/知识图解/习题图示 1. 引言&#xff1a;当老师遇上AI绘图 想象一下这个场景&#xff1a;明天上午第一节课&#xff0c;你需要讲解“光合作用”&#xff0c;PPT里还缺一张生动形象的示意图。晚上十…...