`
ordinary
  • 浏览: 77568 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

scala并行集合

阅读更多

 每一个集合都能通过`par`方法 转换为一个并行的集合,并行集合利用多核实现并发操作,如:foreachmapfilter等等。并行集合在`scala.collection.parallel`.

 有下面这些并行集合:

  •  parallel arrays - scala.collection.parallel.mutable.ParArray
  • parallel ranges - scala.collection.parallel.immutable.ParRange
  • parallel hash maps - scala.collection.parallel.mutable.ParHashMap
  • parallel hash sets - scala.collection.parallel.mutable.ParHashSet
  • parallel hash tries - scala.collection.parallel.immutable.{ParHashMap, ParHashSet}
  • parallel vectors - scala.collection.parallel.immutable.ParVector

方法seq 把并行集合转换为和它一致的一个序列集合,该方法的效率是(O(1)).

并行集合的使用:

例如:在一个非常大的字符串中过滤一些元素,在调用process方法。

非并行集合的写法

val result = data.filter(line => line.contains("keyword")).map(line => process(line))

并行集合的写法
val result = data.par.filter(line => line.contains("keyword")).map(line => process(line))

  

分享到:
评论

相关推荐

    akka-mapreduce:基于Scala和Akka的map-reduce框架

    我们认为,在某些特定情况下,我们的框架提供了比Hadoop Streaming或Scala并行集合更好的替代方案。 我们的项目针对的情况是,您只能在单个多核计算机上运行单片应用程序,并且输出数据能够容纳可用的RAM内存。 ...

    Scala程序设计(第2版)

    12.1 通用、可变、不可变、并发以及并行集合 288 12.1.1 scala.collection包 289 12.1.2 collection.concurrent包 290 12.1.3 collection.convert包 291 12.1.4 collection.generic包 291 12.1.5 ...

    快学 scala 中文版 带完整目录

    13.15 并行集合 215 练习 217 第14章 模式匹配和样例类 A2 221 14.1 更好的switch 222 14.2 守卫 223 14.3 模式中的变量 223 14.4 类型模式 224 14.5 匹配数组、列表和元组 225 14.6 提取器 227 14.7 变量...

    大数据—Scala

    二、课程内容和目标本课程重点讲解Scala核心编程,内容包括: Scala语言概述、运算符、程序流程控制、数据结构之集合、Map映射、过滤、化简、折叠、扫描、拉链、视图、并行集合、高阶函数、函数柯里化、偏函数、参数...

    chopsticks:日常必需的Scala库

    chopsticks是用于日常使用的Scala库的重要集合。 它是专门为构建高性能,生产级功能性React流系统而设计的。 这些已在我们的内部生产流系统中得到广泛使用,多年来,处理持久性写入次数超过一百万次/秒,而每台...

    java8集合源码-IteRace:Java并行循环的竞争检测

    由于并行集合在 Java 中尚不可用(它们将在明年的 Java8 中提供),IteRace 分析了一个主要遵循的集合 报告应用程序中的竞争,而不是库和代码。 例如,您不必追踪发生在 HashSet 中的竞争——它只会告诉您您无意中...

    Simuquant:用Scala编写的量子电路模拟器-开源

    利用scala 2.9中引入的并行集合并行进行仿真处理。 该应用程序是汉堡应用科学大学的学士学位论文的一部分。 该论文可在以下网址获得:http://opus.haw-hamburg.de/volltexte/2012/1843/pdf/ba_dahl.pdf未来计划:-...

    spark官方文档中文版

    Spark 应用程序都由一个驱动程序...统),或者从一个已有的 Scala 集合转换得到。用户可以要求 Spark 将 RDD 持久化(persist)到内存中,来让它在并行计算中 高效地重用。最后,RDDs 能在节点失败中自动地恢复过来。

    大数据spark交流SPARK 技术交流

    在这些操作中,诸如map、flatMap、filter等转换操作实现了monad模式,很好地契合了Scala的集合操作。除此之外,RDD还提供了诸如join、groupBy、reduceByKey等更为方便的操作(注意,reduceByKey是action,而非...

    spark-3.5.1-bin-hadoop3.tgz

    Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎。Spark是UC Berkeley AMP lab ...与 Hadoop 不同,Spark 和 Scala 能够紧密集成,其中的 Scala 可以像操作本地集合对象一样轻松地操作分布式数据集。

    spark-3.4.3-bin-hadoop3.tgz

    Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎。Spark是UC Berkeley AMP lab ...与 Hadoop 不同,Spark 和 Scala 能够紧密集成,其中的 Scala 可以像操作本地集合对象一样轻松地操作分布式数据集。

    spark 2.0 详解

    与 Hadoop 不同,Spark 和 Scala 能够紧密集成,其中的 Scala 可以像操作本地集合对象一样轻松地操作分布式数据集。 尽管创建 Spark 是为了支持分布式数据集上的迭代作业,但是实际上它是对 Hadoop 的补充,可以在 ...

    Apache Hadoop---Spark.docx

    与Hadoop不同,Spark和Scala能够紧密集成,其中的Scala可以像操作本地集合对象一样轻松地操作分布式数据集。 尽管创建Spark是为了支持分布式数据集上的迭代作业,但是实际上它是对Hadoop的补充,可以在Hadoop文件...

    Spark官方中文文档

    与 Hadoop 不同,Spark 和 Scala 能够紧密集成,其中的 Scala 可以像操作本地集合对象一样轻松地操作分布式数据集。 尽管创建 Spark 是为了支持分布式数据集上的迭代作业,但是实际上它是对 Hadoop 的补充,可以在 ...

    Spark大型集群上的快速和通用数据处理架构

    与 Hadoop 不同,Spark 和 Scala 能够紧密集成,其中的 Scala 可以像操作本地集合对象一样轻松地操作分布式数据集。 尽管创建 Spark 是为了支持分布式数据集上的迭代作业,但是实际上它是对 Hadoop 的补充,可以在 ...

    Spark亚太研究院-Spark实战高手之路

    与 Hadoop 不同,Spark 和 Scala 能够紧密集成,其中的 Scala 可以像操作本地集合对象一样轻松地操作分布式数据集。 尽管创建 Spark 是为了支持分布式数据集上的迭代作业,但是实际上它是对 Hadoop 的补充,可以在 ...

    spark Core RDD持久化详解

    与 Hadoop 不同,Spark 和 Scala 能够紧密集成,其中的 Scala 可以像操作本地集合对象一样轻松地操作分布式数据集。 尽管创建 Spark 是为了支持分布式数据集上的迭代作业,但是实际上它是对 Hadoop 的补充,可以在 ...

    Spark大数据处理:技术、应用与性能优化

    与 Hadoop 不同,Spark 和 Scala 能够紧密集成,其中的 Scala 可以像操作本地集合对象一样轻松地操作分布式数据集。尽管创建 Spark 是为了支持分布式数据集上的迭代作业,但是实际上它是对 Hadoop 的补充,可以在 ...

    1.1.1 Spark基础入门

    与 Hadoop 不同,Spark 和 Scala 能够紧密集成,其中的 Scala 可以像操作本地集合对象一样轻松地操作分布式数据集。 尽管创建 Spark 是为了支持分布式数据集上的迭代作业,但是实际上它是对 Hadoop 的补充,可以在 ...

    spark 入门学习教程

    Spark使用Scala语言进行实现,它是一种面向对象、函数式编程语言,能够像操作本地集合对象一样轻松地操作分布式数据集(Scala 提供一个称为 Actor 的并行模型,其中Actor通过它的收件箱来发送和接收非同步信息而...

Global site tag (gtag.js) - Google Analytics