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