Сценарий MapReduce с входом в локальный каталог и выходом HBase

Иногда я хотел бы выполнить какой-нибудь простой облегченный MapReduce. «Простой» означает, что он использует очень простой алгоритм, а «легковесный» означает, что я могу реализовать его несколькими строками на каком-то языке сценариев (или что-то в этом роде).

Моя текущая задача - получить данные из файлов из каталога в локальной файловой системе, сделать минимальную обработку и записать их в HBase. Hadoop Streaming может читать из локальной файловой системы. Однако он не может писать в HBase. В проекте hadoop-hbase-streaming заявлена ​​такая функциональность. К сожалению, я не мог заставить его работать. Я думаю, это потому, что последний коммит в хранилище библиотеки был в 2008 году. Моя задача выглядит довольно обычной, и мне интересно, почему с 2008 года нет никаких обновлений библиотеки hadoop-hbase-streaming. Думаю, в настоящее время есть другие способы достичь моих целей. Не могли бы вы сказать мне, что это за способы?


person Loom    schedule 08.08.2014    source источник


Ответы (1)


Я писал MR, который загружал данные из локальной файловой системы в HBase в старой версии Hadoop (Hadoop 1, не помню какой версии), и теперь мне пришлось переписать его, потому что библиотеки Hadoop совершенно другие (сейчас используется CDH5.0.1). ). Поэтому я не удивляюсь, что потоковая передача по hbase не работает. Но я обнаружил, что самый простой и легкий (для меня) способ загрузки данных из локального каталога в HBase — это использование Pig. Я попробовал этот пример, и он отлично сработал для меня:

Использование Pig для массовой загрузки данных в HBase

К сожалению, я не знаю другого более простого решения... Так что удачи и надеюсь, что это немного поможет

person Radek Tomšej    schedule 08.08.2014