hadoop:不带分隔符的可变长度文件的inputformat

r6l8ljro  于 2021-05-29  发布在  Hadoop
关注(0)|答案(0)|浏览(355)

我必须(通过hadoop)处理不带分隔符的可变长度文件。这些文件的格式为:
(长度记录1)(记录1)(长度记录2)(记录2)…(长度记录n)(记录n)
记录之间没有分隔符(文件在一行中)。lenghtrecord和记录本身之间没有分隔符(为了清楚起见,在本文中添加了括号)。
我想我既不能使用textinputformat也不能使用keyvaluetextinputformat默认类,因为它们是基于使用换行符或回车符返回信号然后换行结束。
所以,我想我必须自定义一个输入格式来加载这些文件。但我不知道该怎么做。
我必须重写createrecordreader()才能读取记录n的长度,并标识记录n的结尾吗?如果是这样的话,我如何处理拆分可以有半行的事实?
提前谢谢。
当做

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题