有没有人有一些编写Hadoop InputFormat / OutputFormat从Hbase获取日期的经验?
我想要比HbaseTableInputFormat更具体的东西,因为我的想法是将我的业务对象直接返回到mapred程序。这意味着能够构建一个可以在多行之间传播的对象。
谢谢你的帮助 Ech
答案 0 :(得分:1)
您可以扩展RecordReader
和/或FileInputFormat
并在其中实施您需要执行的操作。也许扩展HbaseTableInputFormat
并覆盖你需要不同行为的函数。(没有使用过HbaseTableInputFormat
所以不确定你要做什么,只是想看看)
在我参与过的项目中,我们必须扩展RecordReader
和FileInputFormat
才能处理WC3日志文件。原因是要确保每个映射器都可以访问标题,这些标题只位于文件的顶部,而不是每个块。
我没有使用扩展这些内容,也不确定您的确切情况,它可能(或不)使用RecordReader
和/或FileInputFormat
来扩展和实现不同的功能。< / p>
不幸的是,我不熟悉我想要的系统,这将使我能够通过进一步的建议对其进行详细阐述。
希望我所说的更多指向正确的方向。 :)
答案 1 :(得分:0)
我认为如果没有与分区者的严重破坏,这是可能的。只需首先减少Hbase表,将多行折叠成一行,稍后用于构建业务对象。