微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Scalding

程序名称:Scalding

授权协议: Apache

操作系统: 跨平台

开发语言: Scala

Scalding 介绍

Scalding 是一个 Scala 库简化了 Hadoop MapReduce 作业开发。基于
Cascading 构建。Scalding 跟
Pig 类似,但提供更紧密的 Scala 集成。

Hadoop 是一个统计词(counting words)的分布式系统。这里看 Scalding 如何实现统计词:

package com.twitter.scalding.examples

import com.twitter.scalding._

class WordCountJob(args: Args) extends Job(args) {
  TypedPipe.from(TextLine(args("input")))
    .flatMap { line => tokenize(line) }
    .groupBy { word => word } // use each word for a key
    .size // in each group, get the size
    .write(TypedTsv[(String, Long)](args("output")))

  // Split a piece of text into individual words.
  def tokenize(text : String) : Array[String] = {
    // Lowercase each word and remove punctuation.
    text.toLowerCase.replaceAll("[^a-zA-Z0-9\\s]", "").split("\\s+")
  }
}

Scalding 官网

https://github.com/twitter/scalding

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐