Рассматривали ли вы использовать Sqoop. Sqoop можно использовать для извлечения данных из любой БД с поддержкой JDBC и помещения их в HDFS.
http://www.cloudera.com/blog/2009/06/introducing-sqoop/
Команда импорта Sqoop принимает количество выполняемых заданий карты (по умолчанию 1). Кроме того, при распараллеливании работы (задачи карты> 1) можно указать столбец разделения или Sqoop сделает предположение на основе ключа последовательности для таблицы. Каждый файл карты создаст отдельный файл для результатов в каталоге. NN не будет узким местом, если огромное количество созданных файлов не будет огромным (NN хранит метаданные о файлах в памяти).
Sqoop также может интерпретировать исходную БД (Oracle, MySQL или другие) и использовать специальные инструменты БД, такие как mysqldump и импорт, вместо канала JDBC для повышения производительности.