Сравниваем форматы файлов для больших данных | OTUS

Сравниваем форматы файлов для больших данных

Как известно, обработка больших данных повышает нагрузку на подсистему хранения. Кроме дисков, нагружается сеть, процессор, система ввода-вывода. Чем быстрее растет объем данных, тем быстрее повышается цена их хранения и обработки. Чтобы решить эти проблемы, в Hadoop существуют разные форматы файлов. Выбрав нужный формат, можно получить следующие преимущества:

  • увеличение быстроты чтения;
  • увеличение быстроты записи;
  • поддержка эволюции схем;
  • поддержка разделяемых файлов;
  • расширенная поддержка сжатия.

Одни форматы хороши для общего применения, вторые -- для специфического использования, третьи специально разработаны с учетом определенных характеристик данных. В принципе, выбор существует, что не может не радовать.

Говоря о выборе, давайте вспомним, что мы уже подробно рассказывали про следующие форматы файлов в Big Data:

1_Xv7zG9XLlq6ZmYquxBX5eQ_1-1801-6dbb2e.png

Что же, давайте вкратце сравним их между собой.

Avro vs Parquet

Говоря об этих форматах, стоит выделить следующее:

  1. Avro представляет собой формат хранения по строкам, в то время как Parquet хранит данные по столбцам.
  2. В Avro операции записи выполняются более эффективно.
  3. Parquet лучше подходит для выполнения аналитических запросов (операции чтения и запроса данных выполняются более эффективно, чем операция записи).
  4. Считается, что Avro лучше работает с эволюцией схем. Если тот же Parquet поддерживает лишь добавление схемы, то в Avro поддерживается многофункциональная эволюция, включая добавление и изменение столбцов.
  5. Формат Parquet идеален, если говорить о запросе подмножества столбцов в таблице многоколоночного типа. В то же самое время Avro прекрасно подходит для выполнения ETL-операций, к примеру, когда запрашиваются все столбцы.

1_d0Bw5OvBEB_dWBnALh_Bvg_1-1801-b7ce12.png

ORC vs Parquet

В данном сравнении следует выделить лишь 4 тезиса:

  1. Формат Parquet лучше хранит вложенные данные.
  2. Формат ORC лучше приспособлен к predicate pushdown (проталкиванию предикатов).
  3. ORC поддерживает ACID-свойства.
  4. ORC лучше сжимает данные.

1_DZvaKAYUXQFG8dq4SBbRrw_1-1801-e2174e.png

По материалам https://blog.clairvoyantsoft.com/big-data-file-formats-3fb659903271.

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться