Могут ли входы и выходы hadoop отличаться от файлов? - PullRequest
0 голосов
/ 29 ноября 2011

Я пытаюсь написать программу Jadoop Mapreduce в Java.Для которого вход является массивом, а выход также является массивом.Но до сих пор я видел только людей, использующих входы и выходы в качестве файлов для него.Так что мне просто интересно, может ли у mapreduce быть любой другой формат ввода и вывода.

Спасибо

Ответы [ 2 ]

1 голос
/ 30 ноября 2011

Hadoop поддерживает широкий спектр форматов ввода и вывода.Проверьте подклассы InputFormat и OutputFormat .Расширьте InputFormat и OutputFormat, если требуются какие-либо пользовательские форматы.Проверьте статью от Cloudera о формате ввода / вывода БД.

0 голосов
/ 30 ноября 2011

Hadoop - это файловая система, и задача map-Reduce состоит в том, чтобы обрабатывать большие объемы данных, которые обычно не помещаются в памяти, поэтому входные и выходные данные обычно каким-то образом хранятся на дисках (файлы .k.a.) Классы Hadoop mapreduce поставляются с поддержкой чтения различных типов файлов, поддерживаемых hadoop (текстовые файлы, последовательные файлы), вы также можете написать свои собственные источники, например, HBase поставляется с оберткой для уменьшения карты r, которая читает его формат файла. Я не пробовал этого, но вы можете, как показывает статья, на которую указывает Правин, читать из других источников

Вывод еще проще - поскольку вы пишете код Java, вы можете делать все что угодно на этапе сокращения, поэтому, если вы хотите, скажем, поместить сообщения в очередь на этапе сокращения, просто сделайте это

...