实例代码:

import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaPairRDD;
import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;
import org.apache.spark.api.java.function.FlatMapFunction;
import org.apache.spark.api.java.function.Function2;
import org.apache.spark.api.java.function.PairFunction; import scala.Tuple2; import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List; //Driver
public class SparkWordCount1{
public static void main(String[] args) { SparkConf sparkConf = new SparkConf() // 第一步:创建SparkConf对象,设置相关配置信息
.setMaster("local")
.setAppName("wordcount");
JavaSparkContext ctx = new JavaSparkContext(sparkConf); // 第二步:创建JavaSparkContext对象,是Spark的所有功能的入口
ctx.setLogLevel("WARN");
// final JavaRDD<String> linesRdd = ctx.textFile(args[0]); // 根据文件类型的输入源创建RDD的方法textFile()
ArrayList<String> lines = new ArrayList<String>();
lines.add("Hello Java Hi Ok");
lines.add("Ok No House Hello");
JavaRDD<String> linesRdd = ctx.parallelize(lines); // 第三步:创建一个初始的RDD 并行化 parallelize
JavaRDD<String> words = linesRdd.flatMap((s) -> Arrays.asList(s.split(" ")).iterator());
JavaPairRDD<String, Integer> ones = words.mapToPair(s->new Tuple2<String, Integer>(s, 1));
JavaPairRDD<String, Integer> counts = ones.reduceByKey((x,y)->x+y);
List<Tuple2<String, Integer>> results = counts.collect();
// System.out.println(counts.collect());
// System.out.println(results.toString());
// counts.foreach(System.out::println);
counts.foreach(x->System.out.println(x));
ctx.close();
}
}

实例结果:

  

Spark学习之wordcount程序的更多相关文章

  1. 50、Spark Streaming实时wordcount程序开发

    一.java版本 package cn.spark.study.streaming; import java.util.Arrays; import org.apache.spark.SparkCon ...

  2. 在Spark上运行WordCount程序

    1.编写程序代码如下: Wordcount.scala package Wordcount import org.apache.spark.SparkConf import org.apache.sp ...

  3. Spark中的wordCount程序实现

    import org.apache.spark.SparkConf; import org.apache.spark.api.java.JavaPairRDD; import org.apache.s ...

  4. spark学习11(Wordcount程序-本地测试)

    wordcount程序 文件wordcount.txt hello wujiadong hello spark hello hadoop hello python 程序示例 package wujia ...

  5. Spark学习之第一个程序 WordCount

    WordCount程序 求下列文件中使用空格分割之后,单词出现的个数 input.txt java scala python hello world java pyfysf upuptop wintp ...

  6. Spark学习笔记1——第一个Spark程序:单词数统计

    Spark学习笔记1--第一个Spark程序:单词数统计 笔记摘抄自 [美] Holden Karau 等著的<Spark快速大数据分析> 添加依赖 通过 Maven 添加 Spark-c ...

  7. [转] 用SBT编译Spark的WordCount程序

    问题导读: 1.什么是sbt? 2.sbt项目环境如何建立? 3.如何使用sbt编译打包scala? [sbt介绍 sbt是一个代码编译工具,是scala界的mvn,可以编译scala,java等,需 ...

  8. Spark学习笔记-如何运行wordcount(使用jar包)

    IDE:eclipse Spark:spark-1.1.0-bin-hadoop2.4 scala:2.10.4 创建scala工程,编写wordcount程序如下 package com.luoga ...

  9. 006 Spark中的wordcount以及TopK的程序编写

    1.启动 启动HDFS 启动spark的local模式./spark-shell 2.知识点 textFile: def textFile( path: String, minPartitions: ...

随机推荐

  1. FragmentManager中Fragment的重复创建、复用问题

    当我们在Activity中使用 Fragment可以用FragmentManager去添加到对应个ViewGoup中使用 FragmentManager fragmentManager = getSu ...

  2. 使用Jmeter连接数据库检查数据库记录的方法

    一.首先下载Jdbc驱动(jdbc驱动分两种,classes与ojdbc文件,该用哪个需要检查电脑安装的jdk版本(查看方法cmd命令java –version) 关于各种版本的说明:http://e ...

  3. 安装Pygame(Python3.6,windows)

    1. 本机为python3.6的环境 2. 到pygame官网下载对应系统,对应python版本的pygame文件,下载地址:https://pypi.python.org/pypi/Pygame/1 ...

  4. 多个表左联,要返回全部的结果,解决不能用where的问题

    qb.leftJoin('info_student', 'grouping_class_student.studentId', 'info_student.id'); qb.leftJoin('gro ...

  5. g++ 学习笔记

    gcc and g++分别是GNU的c & c++编译器.gcc/g++在执行编译的时候一般有下面4步: 1 预处理,生成.i的文件. 命令如下:g++ -E  test.cpp 此命令只进行 ...

  6. Golang:sync.Map

    由于map在gorountine 上不是安全的,所以在大量并发读写的时候,会出现错误. 在1.9版的时候golang推出了sync.Map. sync.Map 通过阅读源码我们发现sync.Map是通 ...

  7. select标签操作

    //遍历select标签 WebElement select = driver.findElement(By.tagName("select")); List<WebElem ...

  8. AX_xSession

    Session  xSession = new xSession();  ;  xSession.userId();

  9. Flask cookie

    一 什么是cookie        什么是cookie?如果单单从数据结构的角度来说,它可以被理解成用来保存数据的一个dictionary,由一组组键值对组成.如果从作用上来说,我们知道Http协议 ...

  10. Jenkins构建maven项目跳过测试用例的命令

    在Jenkins构建项目的时候,有时候执行大量的单元测试用例需要浪费很多时间,又或者测试环境与其他dubbo,zookeeper服务器环境不通执行失败, 为了更快速的构建,可在build选项中使用如下 ...