Ухудшение производительности Vertica при загрузке файлов паркета поверх файлов с разделителями из s3 в vertica - PullRequest
0 голосов
/ 30 октября 2019

У меня есть файлы паркета для 2 миллиардов записей со сжатием GZIP и те же данные со сжатием SNAPPY. Кроме того, у меня есть файлы с разделителями для тех же 2 миллиардов записей. У нас есть 72 узла Vertica в AWS prod, мы наблюдаем огромный скачок производительности для файлов паркета при перемещении данных из s3 в Vertica с помощью команды COPY, чем файлов с разделителями. Паркет занимает в 7 раз больше времени, чем файлы с разделителями, хотя размер файла с разделителями в 50 раз больше, чем у паркета.

Ниже приведена статистика проведенного нами теста.

enter image description here

Общий размер файла

Паркет GZIP - 6 ГБ

Паркет Snappy - 9,2 ГБ

С разделителями - 450 ГБ

Ниже приведены копииКоманда, используемая для Parquet и Delimited. Мы увидели улучшение примерно на 2 минуты, когда мы удалили «No commit» в запросе на копирование.

Файлы с разделителями

COPY schema.table1 ( col1,col2,col3,col4,col5 ) FROM 's3://path_to_delimited_s3/*' DELIMITER E'\001' NULL AS '\N' NO ESCAPE ABORT ON ERROR DIRECT NO COMMIT;

Файлы паркета

COPY schema.table2 (col1,col2,col3,col4,col5 ) FROM 's3://path_to_parquet_s3/*' PARQUET ABORT ON ERROR DIRECT NO COMMIT;

Мы удивлены, увидев этот всплеск по сравнению с файлами паркета, Это ожидается для паркетной копии? Любые указатели, мысли будут действительно полезны.

Спасибо

1 Ответ

0 голосов
/ 31 октября 2019

Не зная больше ничего, трудно ответить. Вы должны, опять же, следить за LOAD_STREAMS, чтобы выяснить, что происходит.

Одной из причин может быть то, что различные файлы в s3://path_to_parquet_s3/* для CSV-версии оптимально распределены между узлами вашего процесса загрузки, что повышаетзначительно параллелизм.

Чтобы подсчитать количество разборов потоков - во время работы загрузки найдите работающий LOAD_STREAM (WHERE is_executing ...), а затем соедините его с помощью LOAD_SOURCES - USING(transaction_id,statement_id).

...