Pull to refresh
8K+
6
44
Rating
Send message

Привет. На самом деле очень хотели на protobuf изначально заехать, но были у нас проблемы на этапе консьюминга данных спарком. Конкретную проблему я с ходу вспомнить не могу, были какие-то приседания с from_protobuf() - оно не заводилось.

Работать с avro на тот момент нам показалось проще: у нас одна спарк джоба может обслуживает N топиков, при старте кеширует схемы из апикурио и через from_avro() их раскладывает. Собственно это и стало причиной выбора.

Привет. Да, действительно, прям конкретные бенчмарки я в статью не добавлял, потому что конкретный выйгрыш здесь лишь в IO нагрузке и размера ФС кафки. Передать часовую дельту в 22GB с партиций топика или передать 7GB.

То есть задачи избавится от какого-то конкретного ботлнека не было.

Насчет сложности в поддержке не соглашусь. Нам рано или поздно все равно бы пришлось описать большую часть объектов для Iceberg-таблиц, если не в Avro-схемы, то в JSON-схемы, а это тоже незбываемое удовольствие.

Мы заплатили за порядок и предсказуемость дата-контрактов, в первую очередь.

Information

Rating
196-th
Registered
Activity

Specialization

Инженер по данным
Старший
Python
Java
Apache Kafka
ClickHouse
Greenplum
ETL
Scala
Apache Spark
Apache Airflow