Что такое OpenLineage и как это связано с Apache AirFlow

Как Apache AirFlow отслеживает происхождение данных, какова структура спецификации OpenLineage, чем она схожа с OpenAPI, какие инструменты позволяют сформировать эту документацию и чем она полезна. Что такое OpenLineage В области инженерии данных и управления конвейерами их обработки очень важно понятие происхождения данных (Data Lineage). Это концепция отслеживания и визуализации данных...

Модульное тестирование в Apache NiFi

Как тестировать пользовательские процессоры и службы контроллера Apache NiFi: знакомимся с методами интерфейса TestRunner в модуле nifi-mock. Как создать тестовый объект, настроить его и проверить валидность работы собственного компонента Apache NiFi. Тестирование компонентов Apache NiFi: создание тестовых объектов и их настройка Будучи разработанным на Java, Apache NiFi позволяет использовать возможности...

Инструменты для ETL и миграций графовой базы данных Neo4j

Как организовать миграцию схемы Neo4j и импортировать в графовую базу данные из реляционных систем. Знакомимся с инструментами проекта Neo4j Labs: Neo4j-ETL и Neo4j-Migrations. Как работает Neo4j-ETL В рамках развития своих продуктов, таких как графовая СУБД Neo4j и экосистема элементов вокруг нее (Graph Data Science, Neo4j Bloom, Neo4j Browser и пр.),...

Apache AirFlow vs Spark в Databricks для оркестрации рабочих процессов

Чем отличается оркестрация ETL-процессов в Databricks и Apache AirFlow: принципы работы, достоинства и недостатки, а также что выбирать дата-инженеру для решения практических задач. Apache AirFlow vs Spark в Databricks: сходства и отличия Облачная платформа Databricks, основанная на Apache Spark, предлагает пользователям единую среду для создания, запуска и управления различными рабочими...

Зачем переходить на Apache NiFi 1.23.2: критичная ошибка и ее устранение

Недавно мы писали про Apache NiFi 1.23.1, выпущенный 18.08.2023. Однако, использовать его не следует, также как и предыдущий релиз этой линейки. Разбираемся, почему тем, кто перешел на NiFi 1.23, нужно срочно обновиться до версии 1.23.2 от 22 августа 2023 года. Что не так с Apache NiFi 1.23 и как это...

Apache NiFi 1.23.1: 10 исправленных ошибок и обновление зависимостей

18 августа 2023 года вышел очередной релиз Apache NiFi. Смотрим, какие проблемы устранены в этом выпуске, знакомимся с обновлениями коннекторов, а также прочими изменениями в NiFi 1.23.1. Apache NiFi 1.23.1: главные новости Apache NiFi 1.23.1 не зря назван отладочным выпуском. В нем нет ни одной новой фичи, однако, исправлено 11...

Apache AirFlow 2.7: обзор августовского релиза

14 августа 2023 года вышел очередной релиз Apache AirFlow . Разбираем его самые главные новые возможности, улучшения и исправления ошибок: отказ от Python 3.7, задачи установки/демонтажа, встроенная поддержка спецификации OpenLineage, обновления интерфейса, упрощение управления сложными зависимостями и другие фичи Apache AirFlow  2.7. Задачи установки/демонтажа Apache AirFlow  2.7 содержит более 35...

Разгружаем PostgreSQL: ETL-конвейер с Apache AirFlow в Google Colab

Сегодня усложним пример из прошлой статьи с простым ETL-конвейером, который добавлял в базу данных интернет-магазина новые записи о клиентах, сгенерированные с помощью библиотеки Faker. Разбираем, как удалить из PostgreSQL данные об успешно доставленных заказах за прошлый месяц, предварительно сохранив их в JSON-файл с многоуровневой структурой. Пишем и запускаем DAG Apache...

От ETL до EtLT: эволюция в архитектуре конвейеров обработки данных

Как развивалась архитектура конвейеров обработки данных, что такое EtLT и почему этот подход почему постепенно заменяет классические ETL и ELT-инструменты. Краткая история развития современной дата-инженерии. От ETL к ELT и обратно: предыстория Архитектура конвейеров обработки данных претерпела несколько итераций от ETL, ELT, XX ETL (Reverse ETL, Zero-ETL) до EtLT. Если экосистема...

ETL для PostgreSQL с Apache AirFlow в Google Colab

Сегодня реализуем простой ETL-конвейер для реляционной СУБД PostgreSQL, запустив Apache AirFlow в интерактивной среде Google Colab. Пример DAG из 3-х задач: получить количество строк в одной из таблиц БД, сгенерировать новые строки и записать их, не нарушив ограничений уникальности первичного ключа. Постановка задачи Возьмем в качестве примера базу данных для...