Пользовательский формат ввода Hadoop, который не использует файлы

Я только начинаю работать с Hadoop и пытаюсь понять, как использовать другие источники ввода, не являющиеся файлами, т.е. читать все строки из AWS SimpleDB или все записи из REST API в другой системе. Все онлайн только показывает, как обрабатывать файлы или несколько выбранных баз данных.

API для InputFormat выглядит довольно сложным, поэтому я пытаюсь найти самый быстрый способ чтения данных из любого нефайлового источника данных, который затем можно обработать с помощью MapReduced с помощью Amazon Elastic MapReduce (на основе Hadoop). Я использую JAVA для написания кода.

Спасибо!


person dgildeh    schedule 23.04.2013    source источник


Ответы (1)


«Самый быстрый» способ — использовать какой-нибудь инструмент для агрегации данных, например Flume или Чуква. Вы можете найти очень хороший пример того, как собирать данные Twitter через Flume с использованием Twitter API здесь. В нем показано, как вы можете использовать Flume для чтения данных Twitter в кластер Hadoop, а затем обрабатывать их с помощью Hive. Вы можете написать свою собственную работу MR, чтобы сделать это, если вам это нужно. Попытка разработать собственный InputFormat для таких вещей действительно требует некоторой работы, и я не думаю, что вы найдете много помощи в этом (если только кто-то не сделал это и не готов поделиться этим с вами).

ХТН

person Tariq    schedule 23.04.2013