Самый простой способ написания HBase MapReduce не на Java? - PullRequest
1 голос
/ 29 декабря 2010

Я давно над этим работаю и чувствую себя очень измученным;Я надеюсь на [очевидное?] Понимание со стороны сообщества SO, которое может вернуть мой любимый проект в движение, чтобы я мог перестать пинать себя.Я использую Cloudera CDH3, HBase .89 и Hadoop .20.

У меня есть приложение Python / Django, которое записывает данные в одну таблицу HBase с использованием интерфейса Thrift, и это прекрасно работает.Теперь я хочу отобразить / уменьшить его еще на несколько таблиц HBase.

Очевидный ответ здесь - либо Dumbo, либо Apache PIG, но с Pig поддержка адаптера HBaseStorage для моей версии пока недоступна (Pig может загружать классы и определения, но зависает на «карте»."step, жалуясь на" Input Splits "; списки рассылки Pig предполагают, что это исправлено в Pig 0.8, что несовместимо с CDH3 Hadoop, поэтому мне придется использовать крайние версии всего (я думаю]).Я не могу найти никакой информации о том, как заставить Dumbo использовать HBaseStorage в качестве приемника данных.

Мне все равно, Python, Ruby, Scala, Clojure, Jython, JRuby или даже PHP, я просто на самом деле не хотят писать на Java (по многим причинам, большинство из которых связаны с ощущением погружения, которое я испытываю каждый раз, когда мне приходится конвертировать Int () в IntWritable () и т. Д.).

Я пробовал буквально каждое последнее решение и пример, который я могу найти (за последние 4 недели) для написания заданий HBase Map / Reduce на альтернативных языках, но все кажется устаревшим или неполным.Пожалуйста, Stack Overflow, спаси меня от моих собственных устройств!

1 Ответ

0 голосов
/ 31 декабря 2010

Это не совсем ответ, но ближе всего я получил -

Я вчера спросил в #hbase на irc.freenode.net, и один из сотрудников Cloudera ответил. Проблема «Input Splits», которую я имею с Pig, специфична для Pig 0.7, а Pig 0.8 будет в комплекте с Cloudera CDH3 Beta 4 (без ETA на этом). Поэтому то, что я хочу сделать (легко написать M / R-задания, используя таблицы HBase как приемник и источник), станет возможным в следующем выпуске. Также кажется, что класс HBaseStorage, как правило, будет улучшен, чтобы помочь с операциями чтения / записи с ANY языка JVM, а также сделает Jython, JRuby, Scala и Clojure гораздо более осуществимыми.

Таким образом, ответом на этот вопрос в данный момент является «Ждите CDH3 Beta 4» или, если вы нетерпеливы, «Загрузите последнюю версию Pig и молитесь, чтобы она была совместима с вашей HBase»

...