Apache beam / Scala Combine perkey

时间:2018-06-01 13:10:48

标签: java scala apache-beam

我正在寻找某人使用beam Java API提供在Scala中使用Apache beam Combine.perkey转换的工作示例。

我遇到了scala / java类型互操作性问题。

我无法将每个键组合起来工作。我永远无法让它在语法上正确。

示例:

val sales: PCollection KV[(Int,Int), Long]

sales.apply(Combine.perKey[(Int,Int),Long,Long](new SumLongs()))

import org.apache.beam.sdk.transforms.SerializableFunction

class SumLongs extends SerializableFunction[Iterable[Long], Long] {
  override def apply(input: Iterable[Long]): Long = {
  var sum = 0L
  for (item <- input) {
    sum += item
  }
  sum
  }
}

它给出了错误,&#34; perkey&#34;的类型参数太多了。当我拿出它时,它表示&#34;未指定的类型参数:OutputT&#34;。

1 个答案:

答案 0 :(得分:0)

我只需要用java.lang.Iterable

更改scala Iterable