Любая идея о том, как написать Hadoop InputFormat / OutputFormat для Hbase - PullRequest
1 голос
/ 20 февраля 2011

Есть ли у кого-нибудь опыт написания Hadoop InputFormat / OutputFormat, который получает свою дату из Hbase?

Я бы хотел что-то более конкретное, чем HbaseTableInputFormat, потому что моя идея состоит в том, чтобы вернуть мои бизнес-объекты непосредственно в программу с отображением. Это означает, что можно построить объект, который может распределяться по нескольким строкам.

спасибо за помощь Эх

Ответы [ 2 ]

1 голос
/ 21 февраля 2011

Вы можете расширить RecordReader и / или FileInputFormat и реализовать то, что вам нужно сделать внутри них. Может быть, расширить HbaseTableInputFormat и переопределить функции, в которых вам нужно другое поведение. (Не работал с HbaseTableInputFormat, поэтому не уверен, что вы будете делать, просто идея посмотреть)

В проекте, над которым я работал, нам пришлось расширить RecordReader и FileInputFormat, чтобы иметь возможность обрабатывать файлы журналов WC3. Причина была в том, чтобы каждый маппер имел доступ к заголовкам, которые находятся только в начале файла, а не в каждом чанке.

Я не работал над их расширением и не уверен в вашей конкретной ситуации, он может (или нет) работать для расширения и реализации различных функциональных возможностей с помощью RecordReader и / или FileInputFormat.

У меня, к сожалению, нет знакомства с системами, которые мне бы хотелось, чтобы я мог уточнить это с дальнейшими советами.
Надеюсь, то, что я сказал, больше указывает на правильное направление. :)

0 голосов
/ 20 февраля 2011

Я не думаю, что это возможно без грубых хаков с Partitioner. Просто сначала уменьшите таблицы Hbase, чтобы сложить несколько строк в одну строку, которая позже будет использоваться для создания ваших бизнес-объектов.

...