Можете ли вы контролировать размер файла hdfs для управляемой таблицы HortonWorks HDP 3.4.1? - PullRequest
0 голосов
/ 09 ноября 2019

В настоящее время тестируется кластер, и при использовании "CREATE TABLE AS" результирующая управляемая таблица заканчивается одним файлом ~ 1,2 ГБ, в то время как базовый файл, из которого создается запрос, содержит много маленьких файлов. Часть SELECT выполняется быстро, но в результате получается 2 редуктора, которые создают один файл, который занимает 75% времени выполнения.

Дополнительное тестирование:

1) Если используется "CREATE EXTERNAL TABLE AS", запрос выполняется очень быстро и шаг объединения файлов не выполняется.

2) Кроме того, в версии HDP 3.0.1 слияние не происходит.

1 Ответ

0 голосов
/ 09 ноября 2019

Вы можете изменить set hive.exec.reducers.bytes.per.reducer=<number>, чтобы разрешить кусту определять количество редукторов в зависимости от размера входных данных редуктора (значение по умолчанию установлено в 1 ГБ или 1000000000 байт) [вы можете обратиться к ссылкам, предоставленным @leftjoin, чтобы получить более подробную информацию об этом свойствеи тонкая настройка для ваших нужд]

Другой вариант, который вы можете попробовать, - изменить следующие свойства

set mapreduce.job.reduces=<number>
set hive.exec.reducers.max=<number>

...