我知道hadoop流中的文本记录是由换行符分隔的,键和值之间有一个可配置的分隔符(默认为tab)。1) rawbytes格式的结构表明不需要任何记录或键/值分隔符,但是有人能确认这种情况吗?2) 在typedbytes格式中,如何分隔键和值,以及如何分隔记录?3) 另外,键是如何以typedbytes和rawbytes格式排序的?
xwbd5t1u1#
对的标头中的长度信息使分隔符变得不必要,事实上,规范中没有使用分隔符,只有一个例外,即255分隔列表,typecode 9未指定排序顺序。根据我的经验,mapreduce中的默认比较器将它们按原始字节排序,每个字节按数字排序,数组按字典排序。它是可插拔的,所以您可以用自己的java类来更改它。看到了吗https://hadoop.apache.org/docs/current2/api/org/apache/hadoop/typedbytes/package-summary.html安东尼奥
1条答案
按热度按时间xwbd5t1u1#
对的
标头中的长度信息使分隔符变得不必要,事实上,规范中没有使用分隔符,只有一个例外,即255分隔列表,typecode 9
未指定排序顺序。根据我的经验,mapreduce中的默认比较器将它们按原始字节排序,每个字节按数字排序,数组按字典排序。它是可插拔的,所以您可以用自己的java类来更改它。
看到了吗https://hadoop.apache.org/docs/current2/api/org/apache/hadoop/typedbytes/package-summary.html
安东尼奥