Архитектура данных с Apache Spark

Проектирование и реализация ETL-процессов для хранилищ данных с Apache Spark, разработка и оптимизация Spark-приложений, оркестрация заданий с AirFlow: практический курс для дата-инженеров.

 

О продукте:

Архитектура данных — это комплексное понятие, которое охватывает не только технологии их хранения. Оно также включает вопросы сбора, подготовки и загрузки данных в корпоративные озера и хранилища. Чтобы бизнес-пользователи могли получить нужные данные согласно заданным SLA, все ETL/ELT-процессы должны работать максимально эффективно, т.е. быстро и с высокой пропускной способностью. Эти задачи отлично решают специализированные вычислительные фреймворки, которые позволяют создавать устойчивые высоконагруженные приложения для распределенной обработки данных. Сегодня самым популярным таким движком является Apache Spark — фреймворк с открытым исходным кодом для распределённой пакетной и потоковой обработки неструктурированных и слабоструктурированных данных. Он входит в экосистему проектов Apache Hadoop и поддерживает вычислительную модель MapReduce, однако, реализует ее намного быстрее, храня промежуточные результаты вычислений в памяти без записи на диск.

Благодаря поддержке распространенных систем хранения данных (HDFS, HBase, Hive, Cassandra, Amazon S3), а также интеграции с реляционными и нереляционными СУБД и потоковыми платформами передачи событий (Kafka, RabbitMQ и пр.), Spark позволяет спроектировать и реализовать надежную архитектуру данных с высокой скоростью и большой пропускной способностью. А наличие богатых API-интерфейсов для нескольких языков программирования (Java, Scala, Python и R) дает возможность написать эффективные ETL/ELT-конвейеры для корпоративных озер и хранилищ данных.

Поэтому умение использовать Apache Spark для построения отказоустойчивой архитектуры хранения и аналитики больших данных является очень востребованной компетенцией для современного дата-инженера и проектировщика DWH/Data Lake. Все практические приемы и лучшие практики применения этого фреймворка для разработки приложений сбора, подготовки, преобразований и загрузки больших данных в корпоративные озера и хранилища разбираются на нашем курсе «SPAD: Архитектура данных с Apache Spark».

Аудитория:

  • Начинающие инженеры данных или инженеры данных с опытом, которые хотят изучить Spark Scala API;
  • Аналитики данных, которые хотят изучить Spark Scala API;

Уровень подготовки:

  • Базовые знания Python или любого другого языка;
  • Базовые знания Linux;

О курсе:

Офлайн-обучение или онлайн-курс проходят в формате интерактивного семинара: даже в дистанционном режиме с вами занимается живой преподаватель — рассказывает теорию, дает практические задания и проверяет результаты выполнения. В качестве примеров рассматриваются реальные бизнес-кейсы и лучшие практики разработки высоконагруженных приложений для анализа больших данных

Продолжительность курса: 28 ак.часов (7 учебных дней по 4 ак.часа)

Соотношение теории к практике: 50/50

Инструментальные средства: для практических занятий используются бесплатные среды для разработки (Jupyter Notebook и IDEA) и российские решения (ArenaData).

Цель курса: освоить терминологию архитектур хранилищ данных, разобрать архитектуру Spark, научиться писать и оптимизировать Spark приложения на языке scala.

Программа курса «Архитектура данных с Apache Spark»

1. Архитектуры хранилищ данных и Hadoop

    • Изучение теоретических основ Big Data и Hadoop
    • Схема звезды и снежинки
    • Изучение DWH
    • Изучение DataLake
    • Изучение Data Vault

2. Разработка Spark-приложений на Scala

    • Разбираем язык Scala
    • Теоретические основы
    • Типы данных.
    • Базовый синтаксис
    • ООП
    • Работа с зависимостями (sbt)
    • Практика в среде IDEA

3. Основы Spark

    • Введение в основные понятия и архитектуру
    • Основные структуры данных
    • Операции и actions
    • Практика в среде Jupyter Notebook – инициализация и конфиги

4. Операции на Spark

    • Чтение данных из разных источников
    • Базовые трансформации
    • Более продвинутые операции и UDF
    • Запись данных
    • Запуск приложения в среде кластера
    • Практика в среде Jupyter Notebook и IDEA – разбираем операции и работаем с данными

5. Оптимизация Spark-приложения

    • Базовые понятия – shuffling, broadcast, кэширование и так далее.
    • Физическое исполнение операций соединения
    • Разбор Spark UI
    • Оптимизация Spark-приложений
    • Практика в среде IDEA – запуск задач в среде кластера и оптимизация приложения

6. Оркестрация spark-приложений в Airflow

    • Основы Apache Airflow
    • Обзор основных операторов, создание Dag Airflow и запуск Spark-задачи
    • Практика в среде ArenaData
Скачать программу курса «Архитектура данных с Apache Spark»

Укажите e-mail, на который будет оправлена ссылка для скачивания файла:

Чему Вы научитесь:

В результате обучения вы приобретете базовые знания и навыки, необходимые для эффективной работы с большими объемами данных с использованием Apache Spark на языке scala, и сможете:

    • Считывать данные из HDFS или СУБД с помощью Spark
    • Разрабатывать Spark-приложения
    • Оптимизировать Spark-приложения
    • Использовать Scala-стек технологий для создания веб-сервисов
    • Запускать Spark-приложения в среде Hadoop
    • Оркестрировать Spark-приложения в Airflow

Что Вы получите:

Успешно окончив курс «Архитектура данных с Apache Spark» в нашем лицензированном учебном центре «Школа Больших Данных», вы получите удостоверение установленного образца, которое может засчитываться в качестве свидетельства о повышении квалификации.

Кто проводит курс

Темирханов Зелимхан
Российская академия народного хозяйства и государственной службы при президенте РФ, ЭМИТ, цифровая экономика
Профессиональные компетенции:
  • Организация ETL-конвейеров (Apache Airflow, Spark)
  • Старший разработчик (Axenix ex. Accenture) дата-инженер
  • Сопровождение, интеграция данных с помощью Apache Hadoop (Hdfs, Kafka, Spark, Hive)