scala - scala 上的 hadoop 有哪些选项

标签 scala hadoop mapreduce jvm-languages

我们正在启动一个基于大数据的分析项目,我们正在考虑采用 scala(类型安全堆栈)。我想知道可用于执行 hadoop、map reduce 程序的各种 scala API/项目。

最佳答案

一定要检查Scalding .作为用户和偶尔的贡献者,我发现它是一个非常有用的工具。 Scalding API 也意味着与标准 Scala 集合 API 非常兼容。就像你可以在普通集合上调用 flatMap、map 或 groupBy 一样,你也可以在 scalding Pipes 上做同样的事情,你可以把它想象成一个分布式元组列表。还有一个类型化的 API 版本,它提供更强的类型安全保证。我没有使用过 Scoobi,但 API 似乎与他们提供的类似。

此外,还有其他一些好处:

  • Scalding 在 Twitter 的生产中大量使用,并且已经在 Twitter 规模的数据集上经过实战测试。
  • 它在 Twitter 内外都有几位活跃的贡献者,他们致力于让它变得更好。
  • 它可以与您现有的级联作业互操作。
  • 除了 Typed API 之外,它还有一个 Fields API,R 和数据框架框架的用户可能更熟悉它。
  • 它提供了一个强大的Matrix Library .

关于scala - scala 上的 hadoop 有哪些选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14596500/

相关文章:

scala - saveAsNewAPIHadoopFile() 在用作输出格式时出错

java - 一个mapreduce代码的优化(reduce side join)

java - 如何在 Hadoop Mapreduce 中使用 MultithreadedMapper 类?

java - 找到接口(interface) org.apache.hadoop.mapreduce.TaskAttemptContext

hadoop - Cloudera Hadoop 没有运行 hadoop 1.0.4?

scala - 使用 Spark Streaming 读取 fileStream

scala - 如何将字符串写入 Scala Process?

scala - 相当于SPARK中的左外连接

hadoop - 在 Hadoop 中,存储在 dfs.data.dir 中的内容(在 hdfs-site.xml 参数中)和我们使用 dfs -mkdir 创建的目录

hadoop - 在增量更新中选择时间戳作为列时,Sqoop 合并失败