【问题标题】:Spark MLLIB questionsSpark MLLIB 问题
【发布时间】:2016-04-25 20:38:22
【问题描述】:

我正在研究 Spark-mllib 的源代码,我注意到所有源代码都在 scala 中,而不是 java。

scala 通常不会比 Java 使用更多的资源吗?为什么这里的 ML 引擎是用 Scala 而不是 Java 编写的?我在这里有什么遗漏吗?

另外,Eclipse Luna 似乎无法与最新版本的 scala 协调?人们会推荐哪种 IDE 来使用 scala 模块构建 spark 代码?

非常感谢!

【问题讨论】:

  • 为什么你认为 scala 通常会使用更多的资源? Scala 代码可以在需要的地方进行优化。
  • 仅根据我的研究,scala 比 java 占用更多的内存。例如:stackoverflow.com/questions/5901452/… 或者我错过了什么?
  • 您是否阅读了 Rex Kerr 在链接问题中的第一个答案?它与你所说的相反。
  • 是的,我阅读了 Rex Kerr 的评论。而他的以下评论正是我所担心的: val bigEnough = array.filter(_.length > 2).flatMap(mapping.get) 简单!但是,除非您非常熟悉集合的工作原理,否则您可能没有意识到这样做会创建一个额外的中间数组(使用过滤器),并为数组的每个元素创建一个额外的对象(使用映射。 get,它返回一个选项)。它还创建了两个函数对象(一个用于过滤器,一个用于 flatMap),尽管这很少是主要问题,因为函数对象很小。
  • 继续阅读 - 看起来你没有读到他回答的最后两段。

标签: scala apache-spark apache-spark-mllib


【解决方案1】:
  1. Spark 最新版本(1.4) 中大部分地方的源代码都在 scala、java 和 python 中。 (https://spark.apache.org/docs/latest/index.html)
  2. 我建议您使用 IntelliJ IDEA。根据大多数人的经验,它是 Scala 开发中最智能的 IDE。

【讨论】:

    猜你喜欢
    • 2015-07-14
    • 2016-06-09
    • 2016-03-07
    • 2015-02-23
    • 2017-12-20
    • 2018-02-17
    • 2016-08-18
    • 2015-06-30
    • 2017-11-03
    相关资源
    最近更新 更多