- Регистрация
- 26.05.2022
- Сообщения
- 26 736
- Реакции
- 192
- Баллы
- 63
Data Engineer [2021]
karpov.courses
Евгений Ермаков, Александр Волынский, Антон Пилипенко, Дина Сафина, Валерий Соколов, Роман Бунин
Инженерия данных от проектирования до нетривиальной обработки.
Научитесь правильно готовить данные любых размеров и сложности.
Изучайте архитектуру DWH и подходы к их проектированию
Сравнивайте на практике BigData-решения на базе Hadoop и реляционные MPP СУБД
Учитесь работать в облаках и запускать задачи на Airflow
Для кого эта программа
1. Для дата-сайентистов
Понимание инженерии данных позволит выйти на качественно другой уровень в работе аналитика и понять работу вне очистки и анализа датасетов.2. Для разработчиков
Программа поможет осознать проблематику построения хранилища данных и покажет, как применить свой опыт в инженерии данных.
Содержание
Модуль 1 - Проектирование DWH
В этом модуле мы познакомимся с верхнеуровневой логической архитектурой DWH, разберём её основные компоненты, которые будут освещены далее в курсе, а также рассмотрим в теории и разберём на практике разные подходы к проектированию детального слоя.
1. Архитектура DWH
Начнём с простого: что такое хранилище данных, зачем в нём столько слоев, кто такие Инмон и Кимбалл и в чём различие их подходов к построению DWH.
2. Нормальные формы
Вспомним важные аспекты теории о нормальных формах, нормализации и денормализации.
3. Методология Dimensional modeling
Многомерное моделирование является классическим подходом к созданию витрин данных. Рассмотрим популярные схемы: звезда, снежинка, созвездие. Обсудим таблицы фактов и измерений и поговорим о вариантах хранения медленно меняющихся измерений.
4. Методология Data Vault
Data Vault является одним из современных подходов к проектированию хранилищ данных. На занятии мы рассмотрим его особенности и предпосылки возникновения новой методологии. Также поговорим про основные сущности Data Vault: Hub, Link, Sattelite.
5. Методология Anchor modeling
Что будет, если довести нормализацию до предельной формы? Получится Anchor modeling, особенности которого мы рассмотрим на занятии. Также обсудим основные сущности Anchor modeling: Anchor, Link, Knot, Attribute.
6. Сравнение методологий проектирования
Сравним все рассмотренные подходы между собой и дадим ответ на самый главный вопрос: Как выбрать оптимальный в каждом отдельном случае?
Модуль 2 - MPP реляционные СУБД
В этом модуле познакомимся с реляционными и MPP базами данных, рассмотрим, как они работают изнутри, и узнаем, что и в каком случае лучше выбрать. Изучим архитектуру разнообразных решений на рынке. Попрактикуемся готовить PostgreSQL и MPP на примере GreenPlum.
1. Реляционные и MPP Базы данных. Что и как в них хранить.
Разберёмся, как работают реляционные базы данных, как хранятся данные и какое назначение у реляционных баз данных.
2. Объекты баз данных. Зачем и что используется.
Поговорим про таблицы и индексы, обсудим последовательности и возможные триггеры, и разберемся в процедурах и функциях.
3. Обработка запросов в обычной СУБД и в MPP СУБД.
Поговорим про особенности построения запросов и изучение плана запроса. Обсудим эффективное получение данных из GreenPlum. Разберемся, в чем отличия от обычных реляционных баз данных. Посмотрим варианты решений на рынке и их особенности.
4. Применение R, Python, GeoSpatial в расчетах на GreenPlum
Поговорим о том, как использовать R и Python прямо внутри GreenPlum.
Модуль 3 - Big Data
В этом модуле познакомимся с механизмами распределённого хранения и обработки данных на базе Hadoop стека. Разберём основные паттерны реализации распределённой обработки. Рассмотрим вопросы отказоустойчивости и восстановления после сбоев. Коснёмся потоковой обработки данных и уделим внимание методам и средствам мониторинга и профилирования spark заданий.
1. HDFS
Подробно рассмотрим реализацию идеи распределённого отказоустойчивого хранения в Hadoop экосистеме.
2. YARN, MapReduce
Поговорим про универсальный менеджер ресурсов, обсудим реализацию MapReduce парадигмы и обсудим её сильные и слабые стороны.
3. Apache Hive. SQL для Big Data
Рассмотрим SQL поверх больших данных, пройдём путь от запросов до уровня хранения.
4. Apache HBase. Масштабируемая колоночная база данных
Обсудим NoSQL базы данных и рассмотрим колоночную базу данных в мире Hadoop.
5. Apache Spark
Познакомимся с основными идеями Apache Spark. Обсудим, чем он отличается от MapReduce. Поговорим про модель вычисления и RDD.
6. Spark SQL. Dataframes
Обсудим Spark Dataframe и научимся использовать SQL в Spark.
7. Apache Kafkа. Spark streaming
Познакомимся с масштабируемым брокером сообщений. Научимся обрабатывать данные на лету.
8. Отладка, профилирование и мониторинг Spark job
Поговорим про инструментальные средства отладки и мониторинга. Обсудим, как правильно читать статистику и логи.
Модуль 4 - ETL
В этом модуле познакомимся с Apache Airflow, научимся его настраивать и строить с его помощью пайплайны.
1. ETL
ETL — основной инструмент для управления хранилищами данных, у которого есть свои принципы построения. Пройдёмся по основным из них и познакомимся с шедулерами.
2. Airflow
Airflow состоит из DAGов (Directed Acyclic Graph), DAG — из тасков. Таск может быть оператором или сенсором. Посмотрим, как всё это выглядит на практике. Расскажем о таких компонентах Airflow, как воркер, шедулер, веб-сервер, база данных. На примере рассмотрим простой DAG.
3. Сложные пайплайны
В Airflow для более сложных пайплайнов есть дополнительные инструменты: сабдаги и группы тасков для группировки задач, trigger rule и BranchPythonOperator для настраивания правил, jinja для параметризации и xcom для передачи данных между тасками. Научимся ими пользоваться.
4. Разработка своих плагинов
В Airflow есть много готовых операторов. Но иногда нужно автоматизировать работу с каким-нибудь API или реализовать хитрый обработчик для стандартного источника. На этом уроке мы напишем собственный хук, оператор и сенсор.
5. Установка и настройка Airflow
Есть несколько способов развернуть Airflow: просто запустить pip3 install apache-airflow, развернуть готовый докер-образ или устроить хайлоад с кластеризацией. Немного поговорим о плюсах и минусах каждого подхода. Посмотрим, какие ручки даёт нам Airflow для настройки. Научимся управлять Airflow через Command Line Interface.
Модуль 5 - Хранилище в облаках
В этом модуле познакомимся с облаками и инструментами для построения DWH и Data Lake, рассмотрим основы Kubernetes и получим практические навыки применения Kubernetes для работы с данными.
1. Введение в облака
Рассмотрим основные модели облачных услуг: IaaS, PaaS, SaaS. Обсудим основы создания и использования VM и сервисов.
2. DWH и Data Lake в облаках
Обсудим BigQuery, Snowflake, AWS Athena и разные другие инструменты. Рассмотрим архитектуру хранилищ данных в облаках, обсудим традиционный и облачный подходы, а также поговорим про разнесение на слои данных.
3. DE и Kubernetes
Рассмотрим основы Kubernetes, поговорим про его архитектуру и базовые абстракции. Обсудим инструменты DE в Kubernetes, такие как Spark, Airflow, Presto и др.
Модуль 6 - Визуализация
В этом модуле познакомимся с Tableau — одним из самых мощных BI-инструментов. Рассмотрим основные принципы работы с данными с точки зрения их визуализации.
1. Зачем нужна визуализация. Основы Tableau
Разберёмся, зачем инженеру данных нужно изучать визуализацию данных. Поймем, какие бизнес-задачи она решает, как выбрать основные виды графиков и как построить их в Tableau.
2. Как сделать дашборд
Рассмотрим, какие бывают дашборды, чем они отличаются и как сверстать свой дашборд в Tableau.
3. Расчёты и интерактивность
Поговорим о том, как делать расчёты на стороне Tableau и какую интерактивность можно сделать на дашборде.
4. Сбор требований: Dashboard Canvas
Разберёмся с тем, как Tableau работает с данными: какие есть способы подключения и модели данных, что лучше подходит в разных бизнес-кейсах. Рассмотрим запросы Tableau при подключении к базам данных в различных случаях.
5. Разбор дашбордов по мониторингу
Рассмотрим дашборд по мониторингу ETL процесса.
6. Разработка дашборда Meta DWH
Обсудим, с помощью каких KPI можно оценивать работу DWH платформы, и рассмотрим дашборды для мониторинга этих KPI.
Продажник
karpov.courses
Евгений Ермаков, Александр Волынский, Антон Пилипенко, Дина Сафина, Валерий Соколов, Роман Бунин
Инженерия данных от проектирования до нетривиальной обработки.
Научитесь правильно готовить данные любых размеров и сложности.
Изучайте архитектуру DWH и подходы к их проектированию
Сравнивайте на практике BigData-решения на базе Hadoop и реляционные MPP СУБД
Учитесь работать в облаках и запускать задачи на Airflow
Для кого эта программа
1. Для дата-сайентистов
Понимание инженерии данных позволит выйти на качественно другой уровень в работе аналитика и понять работу вне очистки и анализа датасетов.2. Для разработчиков
Программа поможет осознать проблематику построения хранилища данных и покажет, как применить свой опыт в инженерии данных.
Содержание
Модуль 1 - Проектирование DWH
В этом модуле мы познакомимся с верхнеуровневой логической архитектурой DWH, разберём её основные компоненты, которые будут освещены далее в курсе, а также рассмотрим в теории и разберём на практике разные подходы к проектированию детального слоя.
1. Архитектура DWH
Начнём с простого: что такое хранилище данных, зачем в нём столько слоев, кто такие Инмон и Кимбалл и в чём различие их подходов к построению DWH.
2. Нормальные формы
Вспомним важные аспекты теории о нормальных формах, нормализации и денормализации.
3. Методология Dimensional modeling
Многомерное моделирование является классическим подходом к созданию витрин данных. Рассмотрим популярные схемы: звезда, снежинка, созвездие. Обсудим таблицы фактов и измерений и поговорим о вариантах хранения медленно меняющихся измерений.
4. Методология Data Vault
Data Vault является одним из современных подходов к проектированию хранилищ данных. На занятии мы рассмотрим его особенности и предпосылки возникновения новой методологии. Также поговорим про основные сущности Data Vault: Hub, Link, Sattelite.
5. Методология Anchor modeling
Что будет, если довести нормализацию до предельной формы? Получится Anchor modeling, особенности которого мы рассмотрим на занятии. Также обсудим основные сущности Anchor modeling: Anchor, Link, Knot, Attribute.
6. Сравнение методологий проектирования
Сравним все рассмотренные подходы между собой и дадим ответ на самый главный вопрос: Как выбрать оптимальный в каждом отдельном случае?
Модуль 2 - MPP реляционные СУБД
В этом модуле познакомимся с реляционными и MPP базами данных, рассмотрим, как они работают изнутри, и узнаем, что и в каком случае лучше выбрать. Изучим архитектуру разнообразных решений на рынке. Попрактикуемся готовить PostgreSQL и MPP на примере GreenPlum.
1. Реляционные и MPP Базы данных. Что и как в них хранить.
Разберёмся, как работают реляционные базы данных, как хранятся данные и какое назначение у реляционных баз данных.
2. Объекты баз данных. Зачем и что используется.
Поговорим про таблицы и индексы, обсудим последовательности и возможные триггеры, и разберемся в процедурах и функциях.
3. Обработка запросов в обычной СУБД и в MPP СУБД.
Поговорим про особенности построения запросов и изучение плана запроса. Обсудим эффективное получение данных из GreenPlum. Разберемся, в чем отличия от обычных реляционных баз данных. Посмотрим варианты решений на рынке и их особенности.
4. Применение R, Python, GeoSpatial в расчетах на GreenPlum
Поговорим о том, как использовать R и Python прямо внутри GreenPlum.
Модуль 3 - Big Data
В этом модуле познакомимся с механизмами распределённого хранения и обработки данных на базе Hadoop стека. Разберём основные паттерны реализации распределённой обработки. Рассмотрим вопросы отказоустойчивости и восстановления после сбоев. Коснёмся потоковой обработки данных и уделим внимание методам и средствам мониторинга и профилирования spark заданий.
1. HDFS
Подробно рассмотрим реализацию идеи распределённого отказоустойчивого хранения в Hadoop экосистеме.
2. YARN, MapReduce
Поговорим про универсальный менеджер ресурсов, обсудим реализацию MapReduce парадигмы и обсудим её сильные и слабые стороны.
3. Apache Hive. SQL для Big Data
Рассмотрим SQL поверх больших данных, пройдём путь от запросов до уровня хранения.
4. Apache HBase. Масштабируемая колоночная база данных
Обсудим NoSQL базы данных и рассмотрим колоночную базу данных в мире Hadoop.
5. Apache Spark
Познакомимся с основными идеями Apache Spark. Обсудим, чем он отличается от MapReduce. Поговорим про модель вычисления и RDD.
6. Spark SQL. Dataframes
Обсудим Spark Dataframe и научимся использовать SQL в Spark.
7. Apache Kafkа. Spark streaming
Познакомимся с масштабируемым брокером сообщений. Научимся обрабатывать данные на лету.
8. Отладка, профилирование и мониторинг Spark job
Поговорим про инструментальные средства отладки и мониторинга. Обсудим, как правильно читать статистику и логи.
Модуль 4 - ETL
В этом модуле познакомимся с Apache Airflow, научимся его настраивать и строить с его помощью пайплайны.
1. ETL
ETL — основной инструмент для управления хранилищами данных, у которого есть свои принципы построения. Пройдёмся по основным из них и познакомимся с шедулерами.
2. Airflow
Airflow состоит из DAGов (Directed Acyclic Graph), DAG — из тасков. Таск может быть оператором или сенсором. Посмотрим, как всё это выглядит на практике. Расскажем о таких компонентах Airflow, как воркер, шедулер, веб-сервер, база данных. На примере рассмотрим простой DAG.
3. Сложные пайплайны
В Airflow для более сложных пайплайнов есть дополнительные инструменты: сабдаги и группы тасков для группировки задач, trigger rule и BranchPythonOperator для настраивания правил, jinja для параметризации и xcom для передачи данных между тасками. Научимся ими пользоваться.
4. Разработка своих плагинов
В Airflow есть много готовых операторов. Но иногда нужно автоматизировать работу с каким-нибудь API или реализовать хитрый обработчик для стандартного источника. На этом уроке мы напишем собственный хук, оператор и сенсор.
5. Установка и настройка Airflow
Есть несколько способов развернуть Airflow: просто запустить pip3 install apache-airflow, развернуть готовый докер-образ или устроить хайлоад с кластеризацией. Немного поговорим о плюсах и минусах каждого подхода. Посмотрим, какие ручки даёт нам Airflow для настройки. Научимся управлять Airflow через Command Line Interface.
Модуль 5 - Хранилище в облаках
В этом модуле познакомимся с облаками и инструментами для построения DWH и Data Lake, рассмотрим основы Kubernetes и получим практические навыки применения Kubernetes для работы с данными.
1. Введение в облака
Рассмотрим основные модели облачных услуг: IaaS, PaaS, SaaS. Обсудим основы создания и использования VM и сервисов.
2. DWH и Data Lake в облаках
Обсудим BigQuery, Snowflake, AWS Athena и разные другие инструменты. Рассмотрим архитектуру хранилищ данных в облаках, обсудим традиционный и облачный подходы, а также поговорим про разнесение на слои данных.
3. DE и Kubernetes
Рассмотрим основы Kubernetes, поговорим про его архитектуру и базовые абстракции. Обсудим инструменты DE в Kubernetes, такие как Spark, Airflow, Presto и др.
Модуль 6 - Визуализация
В этом модуле познакомимся с Tableau — одним из самых мощных BI-инструментов. Рассмотрим основные принципы работы с данными с точки зрения их визуализации.
1. Зачем нужна визуализация. Основы Tableau
Разберёмся, зачем инженеру данных нужно изучать визуализацию данных. Поймем, какие бизнес-задачи она решает, как выбрать основные виды графиков и как построить их в Tableau.
2. Как сделать дашборд
Рассмотрим, какие бывают дашборды, чем они отличаются и как сверстать свой дашборд в Tableau.
3. Расчёты и интерактивность
Поговорим о том, как делать расчёты на стороне Tableau и какую интерактивность можно сделать на дашборде.
4. Сбор требований: Dashboard Canvas
Разберёмся с тем, как Tableau работает с данными: какие есть способы подключения и модели данных, что лучше подходит в разных бизнес-кейсах. Рассмотрим запросы Tableau при подключении к базам данных в различных случаях.
5. Разбор дашбордов по мониторингу
Рассмотрим дашборд по мониторингу ETL процесса.
6. Разработка дашборда Meta DWH
Обсудим, с помощью каких KPI можно оценивать работу DWH платформы, и рассмотрим дашборды для мониторинга этих KPI.
Продажник