terasort的工作原理

mcdcgff0  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(599)

我尝试使用hadoopterasort,它与teragen和teravalid配合得很好。然后我想知道terasort是如何工作的。我以为terasort就像一个 sort 命令。所以我做了一个文本文件如下:

I have a pen.
my name is ~
I went to my lab yesterday
...

然后运行terasort,但返回错误“read over eof”。
我看到了teragen生成的“part-m-00000”,但不明白。
请告诉我terasort是怎么工作的。

xmq68pz9

xmq68pz91#

eof意味着文件在读取1 TB(随机分布的)数据之前就被完全消耗了
因此,它在尝试排序之前退出

vmpqdwk3

vmpqdwk32#

terasort不需要TB的输入数据,但它确实假设数据是teragen生成的格式。更具体地说:
(10字节键)(10字节行ID)(78字节填充符)\r\n
这些键是集合“”..“~”中的随机字符。
rowid是右对齐的行id,表示int。
填充符由7行10个字符组成,从“a”到“z”。

相关问题