TGViewer
Data Engineer Data Engineer @dataengineernews · 478 subscribers
Post #283 253
#заметкинаполях #depatterns

Открывая новую главу «Шаблоны работы над ошибками», автор перефразирует Бенджамина Франклина:

«В мире данных ни в чем нельзя быть уверенным, за исключением ошибок и проблем с качеством данных.»


В сей главе обсуждаются такие частые случаи, как «необработанные записи», «опоздавшие данные» и даже «дубликаты».

Про «необработанные записи» они же «битые записи» - здесь.

«Опоздавшие данные» они же «долеты» - еще один интересный случай. Одним из вариантов решения является простой пересчет за нужные периоды. Например, каждый день витрина дособирается за последние сутки, в выходные пересчитываем за всю неделю, а в начале нового месяца - за предыдущий месяц. Если что-то произошло за этими пределами, то игнорируем.

Главный плюс такого решения - оно очень простое. Тем более, что, если «долеты» случаются каждый день, то и с логикой их определения и причинами возникновения заморачиваться не нужно. Зато, если их нет, то пересчет запускается впустую. Это статический вариант шаблона, период пересчета задается заранее и не изменяется в ходе выполнения задачи. Я всегда реализовывал именно такой вариант, даже не подозревая, что когда-нибудь прочитаю об этом в книге.

Динамический вариант подразумевает пересчет только тех периодов, которые содержат «долеты», но для этого их нужно сначала определить.

В реализации обоих варианта может помочь динамическое сопоставление задач - «фича», появившаяся в Apache Airflow версии 2.3, если мне память не изменяет. Рекомендую освоить, если еще не…

Продолжение следует…
Telegram Data Whisperer Data Engineering Design Patterns: Глава 3 - Error Management Design Patterns Продолжаю читать Data Engineering Design Patterns, краткое summary по паттерну Dead-Letter. В работе с потоковыми данными часто встречается проблема: одна битая запись может уронить…
  • 👍 2
More from @dataengineernews
  1. Sep 27, 20262️⃣3️⃣✖️0️⃣✖️2️⃣6️⃣ 🦀 Big Data дайджест · 22–23 сентября 2026 🍄 CLICKHOUSE • На этой нед…
  2. Sep 23, 2026Кабанчик приехал
  3. Sep 12, 2026LLMSQLQueryOperator В Airflow появился новый декоратор task.llm_sql, который генерирует SQ…
  4. Sep 2, 2026Кабанчик уже не тот https://t.me/alexgladkovblog/7608
  5. Aug 25, 2026Apache Airflow 3.3.0: Stateful Tasks and Multi-Language Support В Airflow 3.3 появился AIP…
  6. Aug 25, 2026Продолжая закрывать свой букдолг, дошел до книги Питхейна Стренгхольта «Архитектура медаль…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →