烫伤中的垂直分割

bvn4nwqk  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(260)

我有一个 TypedTipe[(String, String, Long)] 其中第一个字符串只能假定有限的(~10)个值。我想对输出进行分区,以便为每种类型创建一个文件夹(即,用第一个字符串的名称创建10个文件夹)。这是简单的实现在Hive,但我找不到一个优雅的方式来做它在烫伤。方法 def partition(p: T => Boolean): (TypedPipe[T], TypedPipe[T]) 把管子分成两部分,但不符合我的要求。
编辑
我在用烫伤 v0.13.1 我需要写一封信 PackedAvroSource

iibxawm4

iibxawm41#

如果按要分区的字段分组,则可以根据需要使用partitioneddelimitedsource来编写目录结构。前任:

val pipe: TypedPipe[(String, String, Long)] = ...
pipe
    .groupBy(_._1)
    .write(PartitionedDelimited[String, (String, String, Long)](args("output"), "%s"))

相关问题