通过密钥Scalding Hadoop写入多个输出,一个MapReduce作业

sam*_*est 6 hadoop scala mapreduce cascading scalding

如何在单个Map Reduce作业中使用Scalding(/ cascading)写入依赖于键的多个输出.我当然可以使用.filter所有可能的密钥,但这是一个可怕的黑客,它将启动许多工作.

mor*_*zow 6

Scalding中有TemplatedTsv(从版本0.9.0rc16开始),与Cascading TemplateTsv完全相同.

Tsv(args("input"), ('COUNTRY, 'GDP))
.read
.write(TemplatedTsv(args("output"), "%s", 'COUNTRY))
// it will create a directory for each country under "output" path in Hadoop mode.
Run Code Online (Sandbox Code Playgroud)