Логика расщепления HDFS?

Какое значение имеет метод isSplittable() класса FileInputFormat? http://hadoop.apache.org/docs/r2.2.0/api/index.html

2 ответа

Когда isSplitable возвращает false, только один преобразователь обрабатывает весь файл.

Вы можете предоставить свою собственную реализацию FileInputFormat и вернуть true/false для isSplitable в зависимости от ваших потребностей.

Если файлы сжимаются потоком, как tar.gz или zip файлы, и когда ваши записи имеют переменное количество строк; может существовать вероятность того, что часть одной записи может оказаться в одном блоке, а остальная часть записи - в другом блоке. И, таким образом, программа, написанная для чтения записей, может аварийно завершить работу.

Таким образом, в подобных сценариях можно было бы установить isSplittable() как false.

Другие вопросы по тегам