import org.apache.spark.{SparkConf, SparkContext}

object radomSampleU {
def main(args: Array[String]) {
val conf = new SparkConf().setAppName("WordCount_groupBy")
.setMaster("local")
// .set("spark.default.parallelism", "100") // 1. 调节并行度
.set("spark.executor.memory ","4g")
.set("spark.executor.cores","5")
.set("spark.executor.nums","4")//1
//静态内存机制
.set("spark.memory.useLegacyMode","false")
.set("spark.storage.memoryFraction", "0.3")// 5.cache占用的内存占比,default=0.6
//统一内存机制
.set("spark.memory.Fraction","0.3")//default=0.6
.set("spark.storage.storageFraction","0.9")//default=0.5
.set("spark.shuffle.consolidateFiles", "false")
//过滤多余日志文件
val sc = new SparkContext(conf)
sc.setLogLevel("ERROR")
val startTime=System.currentTimeMillis()
val inpath= "F:\\hml\\dataset\\1021\\1021\\####.txt"//
val lines = sc.textFile(inpath)//.cache() // 读取本地文件
val words = lines.flatMap(_.split(" ")).filter(word => word != " ") // 拆分单词,并过滤掉空格,当然还可以继续进行过滤,如去掉标点符号
//sample采样测试
words.partitions.size
println("样本汇总结果***********************************")
val wordsample=words.sample(false,0.0005)
wordsample.map(word => (word, 1))
.reduceByKey(_ + _)
.collect()
.foreach(println) println("总体数据汇总结果*************************")
val pairs = words.map(word => (word, 1)) // 在单词拆分的基础上对每个单词实例计数为1, 也就是 word => (word, 1)
val start1=System.currentTimeMillis()
val wordscount = pairs.reduceByKey(_ + _)//.collect() .foreach(println) // 在每个单词实例计数为1的基础之上统计每个单词在文件中出现的总次数, 即key相同的value相加
val end1=System.currentTimeMillis()
wordscount.collect.foreach(println) // 打印结果,使用collect会将集群中的数据收集到当前运行drive的机器上,需要保证单台机器能放得下所有数据
val endTime=System.currentTimeMillis()
println("应用总耗时"+(endTime-startTime))
println("reduceByKey耗时"+ (end1-start1))
Thread.sleep(1000000)
sc.stop() // 释放资源
}
}

spark-wordcount-sample算子测试的更多相关文章

  1. 【spark core学习---算子总结(java版本) (第1部分)】

    map算子 flatMap算子 mapParitions算子 filter算子 mapParttionsWithIndex算子 sample算子 distinct算子 groupByKey算子 red ...

  2. Spark Wordcount

    1.Wordcount.scala(本地模式) package com.Mars.spark import org.apache.spark.{SparkConf, SparkContext} /** ...

  3. Spark WordCount的两种方式

    Spark WordCount的两种方式. 语言:Java 工具:Idea 项目:Java Maven pom.xml如下: <properties> <spark.version& ...

  4. 【Spark篇】---Spark中控制算子

    一.前述 Spark中控制算子也是懒执行的,需要Action算子触发才能执行,主要是为了对数据进行缓存. 控制算子有三种,cache,persist,checkpoint,以上算子都可以将RDD持久化 ...

  5. spark wordcount 编程模型详解

    spark wordcount中一共经历多少个RDD?以及RDD提供的toDebugString    在控制台输入spark-shell   系统会默认创建一个SparkContext   sc h ...

  6. WordCount编码和测试

    WordCount编码和测试 项目地址:https://github.com/handsomesnail/WordCount PSP表格 PSP2.1 PSP阶段 预估耗时(分钟) 实际耗时(分钟) ...

  7. Scala Spark WordCount

    Scala所需依赖 <dependency> <groupId>org.scala-lang</groupId> <artifactId>scala-l ...

  8. spark wordcount程序

    spark wordcount程序 IllegalAccessError错误 这个错误是权限错误,错误的引用方法,比如方法中调用private,protect方法. 当然大家知道wordcount业务 ...

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

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

  10. 3、spark Wordcount

    一.用Java开发wordcount程序 1.开发环境JDK1.6 1.1 配置maven环境 1.2 如何进行本地测试 1.3 如何使用spark-submit提交到spark集群进行执行(spar ...

随机推荐

  1. AndroidStudio删除项目

    右键左上角的 项目名 右键 > delete 磁盘里的文件还需要手动删除

  2. ajax展示新页面同时传递参数

    HTML页面部分代码: <div id="course" hidden></div> HTML页面中ajax代码: var selectType=$(&qu ...

  3. c# aop讲解

    先说下场景,C#中为什么要使用Aop,而我又是在哪里使用Aop? 本人只是想拦截实体类的Set的方法,然后在Set之前,调用一下其它方法,把值赋给另一个对象. 而我做的都是在实体类的基类里处理: 比如 ...

  4. 4月超棒的JavaScript游戏开发框架推荐(1) – 51CTO.COM

    基于JavaScript开发的游戏是唯一一个能够跨桌面,Web和移动三种平台的.… 查阅全文 ›

  5. 转 vs2008使用技巧推荐

    Visual Studio 2008自带的1000多个 Windows 系统使用的各种图标.光标和动画文件在Visual Studio 2008的安装目录下,\Microsoft Visual Stu ...

  6. HDU-2616

    Kill the monster Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  7. HihoCoder 1121二分图一•二分图判定

    背景: 个名字,表示这两个人有一场相亲.由于姑姑年龄比较大了记性不是太好,加上相亲的人很多,所以姑姑一时也想不起来其中有些人的性别.因此她拜托我检查一下相亲表里面有没有错误的记录,即是否把两个同性安排 ...

  8. Python decorate 函数

    1. decorate 函数需要在 "@wrap" 之前定义, 否则会报错

  9. IT兄弟连 JavaWeb教程 JSTL定义

    JSTL标签库实际上包含5个不同的标签库.JSTL1.1规范为这些标签库的URI和前缀做了预定,参见表7.3. 表3  JSTL标签库

  10. IT兄弟连 JavaWeb教程 Servlet会话跟踪 Cookie技术原理

    Cookie使用HTTPHeader传递数据.Cookie机制定义了两种报头,Set-Cookie报头和Cookie报头.Set-Cookie报头包含于Web服务器的响应头(ResponseHeade ...