diff --git a/README.md b/README.md index 0f2da32..fdc4f90 100644 --- a/README.md +++ b/README.md @@ -93,6 +93,11 @@ - Краткая теория про [DWH](https://halltape.github.io/HalltapeRoadmapDE/DWH/) - повторим еще раз, в другом изложении - Хорошее общее введение в модели данных дано в статье и докладе от Yandex: [Как мы внедрили свою модель хранения данных — highly Normalized hybrid Model. Доклад Яндекса](https://habr.com/ru/companies/yandex/articles/557140/) +**Когда блок SQL считаем пройденным:** +- вы уверенно пишете запросы с JOIN, агрегатами, подзапросами и CTE; +- можете объяснить простую модель данных (3NF/звезда) и прочитать схему DWH; +- решаете типовые задачи уровня SQL live-coding без долгих пауз. + ## Python @@ -125,6 +130,12 @@ Цель — уверенно решать простые задачи на Python в формате live-coding; дальше эти навыки пригодятся для создания DAG Airflow. +**Когда блок Python считаем пройденным:** +- вы без подсказок пишете небольшие скрипты с циклами, функциями, обработкой ошибок и работой с коллекциями; +- умеете читать и модифицировать чужой код, в том числе с использованием pandas и DataFrame; +- уверенно проходите простой live-coding по Python для DE: прочитать CSV/JSON, отфильтровать, сгруппировать данные и посчитать агрегаты. +- можете отвечать как на простые вопросы собеседований (циклы, списки, словари), так и продвинутые (итераторы, декораторы, управление памятью, базовые понятия ООП) + ## Технические навыки ### Продвинутый Git @@ -170,6 +181,10 @@ Apache Airflow — инструмент для оркестрации ETL-про Материалы: - [Учебник по Airflow](https://github.com/dementev-dev/airflow-manual) +**Когда блок Airflow считаем пройденным:** +- вы можете объяснить, что такое DAG, задачи, операторы и сенсоры, и как между ними задаются зависимости; +- на базе учебного стенда подготавливаете, отлаживаете и запускаете свои DAG'и с расписанием и несколькими шагами (например, загрузка данных и последующие трансформации); +- уверенно смотрите логи, находите место падения и понимаете, как перезапустить задачу. ## Greenplum Разбираем, чем Greenplum отличается от PostgreSQL и зачем нужны MPP-хранилища. @@ -186,6 +201,11 @@ Apache Airflow — инструмент для оркестрации ETL-про Сложные варианты с виртуалками — только если менти сильно захочет, в базовый путь не включаем. +**Когда блок Greenplum считаем пройденным:** +- вы понимаете, как данные распределяются по сегментам, что такое skew и как его увидеть; +- на базе учебного стенда (например, DE Starter Kit) можете загружать и выгружать данные в Greenplum, выполнять запросы и разбирать планы выполнения (`EXPLAIN`); +- можете объяснить, в чём практическая разница между MPP-хранилищем и одиночным Postgres на уровне типичных задач DE и собеседований. + ## Курсовая работа ### Стенд в Docker Compose - Apache Airflow