Data Engineering

Патерни ETL / ELT / ETLT

ETL vs ELT vs ETLT, batch vs micro-batch vs streaming, ідемпотентність, обробка помилок, dead letter queue, якість даних, lineage

20 питань зі співбесід·
Senior
1

Яка основна різниця між ETL та ELT?

Відповідь

У ETL (Extract-Transform-Load) дані трансформуються на проміжному сервері перед завантаженням у пункт призначення. У ELT (Extract-Load-Transform) сирі дані спочатку завантажуються в пункт призначення (зазвичай хмарне data warehouse), а потім трансформуються безпосередньо в ньому з використанням його обчислювальної потужності. ELT став популярним з хмарними data warehouse, такими як BigQuery, Snowflake або Redshift, які пропонують еластичну обчислювальну потужність.

2

Яка основна перевага підходу ELT порівняно з традиційним ETL?

Відповідь

Підхід ELT використовує еластичну обчислювальну потужність сучасних хмарних data warehouse (BigQuery, Snowflake, Redshift). Замість підтримки окремої інфраструктури трансформації, яка може стати вузьким місцем, трансформації безпосередньо використовують можливості масштабування data warehouse. Це зменшує операційну складність і дозволяє обробляти значно більші обсяги даних без ручного провіженінгу ресурсів.

3

Що таке патерн ETLT і коли він є актуальним?

Відповідь

ETLT поєднує обидва підходи: спочатку виконується легка трансформація під час екстракції (очищення, фільтрація, анонімізація), потім дані завантажуються, і складніші трансформації застосовуються в data warehouse. Цей патерн корисний, коли певні трансформації мають бути зроблені на ранніх етапах з причин відповідності (маскування чутливих даних перед завантаженням), зменшення обсягу (раннє фільтрування) або нормалізації гетерогенних форматів джерел.

4

Що таке ідемпотентність у контексті data pipeline?

5

Як реалізувати ідемпотентність при завантаженні даних у таблицю?

+17 питань зі співбесід

Інші теми співбесід Data Engineering

Linux & Shell - Основи

Junior
20 запитань

Git & GitHub - Основи

Junior
20 запитань

Просунутий Python для Data Engineering

Junior
25 запитань

Docker - Основи

Junior
25 запитань

Google Cloud Platform - Основи

Junior
20 запитань

CI/CD та якість коду

Mid-Level
20 запитань

Docker Compose

Mid-Level
20 запитань

FastAPI - API даних

Mid-Level
20 запитань

Просунутий SQL для Data Engineering

Mid-Level
20 запитань

Data Lake - Архітектура та завантаження даних

Mid-Level
20 запитань

BigQuery для Data Engineering

Mid-Level
20 запитань

PostgreSQL - Адміністрування

Mid-Level
20 запитань

Data Modeling для Data Engineering

Mid-Level
20 запитань

Fivetran & Airbyte - Завантаження даних

Mid-Level
20 запитань

dbt - Основи

Mid-Level
20 запитань

Apache Airflow - Основи

Mid-Level
20 запитань

Kubernetes - Основи

Mid-Level
20 запитань

dbt - Розширені можливості

Senior
20 запитань

Apache Airflow - Просунутий

Senior
20 запитань

Airflow + dbt - Оркестрація пайплайнів

Senior
20 запитань

PySpark - Великомасштабна обробка

Senior
20 запитань

Google Pub/Sub - Стрімінг даних

Senior
20 запитань

Apache Beam & Dataflow

Senior
20 запитань

Kubernetes - Продакшн та масштабування

Senior
20 запитань

Terraform - Infrastructure as Code

Senior
20 запитань

Бази даних NoSQL

Senior
20 запитань

Сучасна Data Architecture

Senior
20 запитань

Моніторинг та спостережуваність

Senior
20 запитань

IAM та безпека даних

Senior
20 запитань

Опануй Data Engineering для наступної співбесіди

Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.

Почни безкоштовно