На первую страницу Курсы для специалистов Курсы ЕГАИС Психология - Управление - Маркетинг Курсы  Big Data Science  

Курсы Big Data Science

Микроинформ логотип

Курсы Big Data Science в Микроинформ

 Курс: BD-SPARK Анализ больших данных в Apache Spark

Ориентирован: на специалистов, администраторов, аналитиков данных, желающих получить опыт настройки и использования компонентов Apache Spark (Spark SQL, MLLib, Spark Streaming, Spark GraphX).
Предварительный уровень подготовки:

  • Начальный опыт работы в Unix/SQL;
  • Начальный опыт программирования (Scala/Python/Java).

Продолжительность: 3 дня, 24 академических часа.
Методические материалы: учебные материалы в эл. виде на русском языке.
Документ об окончании курса: свидетельство учебного центра Микроинформ.
Квалификационный тест: нет.

Курс представляет собой практическое обучение по администрированию кластера Apache Spark, использованию Spark SQL, организации потоковой обработки Spark Streaming, работе с библиотеками машинного обучения Spark ML, построению графов в Spark GraphX.

В ходе интенсивного практического тренинга по знакомству с платформой для распределенной обработки больших данных Apache Spark вы научитесь: настраивать кластер Apache Spark для запуска задач на Scala и R при обработке больших массивов неструктурированных данных, применяя алгоритмы машинного обучения встроенных библиотек Spark MLLib; поймете разницу использования различных форматов хранения данных и использования RDD , dataframes и datasets; обращаться к данным с использованием Spark SQL или Hive QL; настраивать и анализировать данные в потоке Spark Streaming; интегрировать компоненты Apache Spark с другими компонентами экосистем Hadoop.

Программа курса

  1. Введение в Apache Spark.
    • Сравнение Hadoop и Spark
    • Сравнение Batch, Real-Time и in-Memory процессинг
    • Особенности Apache Spark
    • Компоненты экосистемы Apache Spark.
  2. Введение в RDD — Resilient Distributed Dataset
    • Что такое RDD?
    • Особенности использования RDD, RDD lineage
    • Трансформация в Spark RDD
    • Lazy evaluation и отказоустойчивость в Spark
    • Использование Persistence RDD в памяти и на диске
    • Использование key-value пар (ReduceByKey, CountByKey, SortByKey, AggregateByKey)
    • Интеграция Hadoop с Spark. Выполнение базовых операций с Cloudera Manager.
  3. Запуск задач в Apache Spark
    • Знакомство со Spark-shell
    • Выполнение задач в Apache Spark
    • Написание программ в Apache Spark
    • Чтение данных с локальной файловой системы и HDFS 
    • Зависимости (Dependencies)
    • Кэширование данных в Apache Spark
    • Отказоустойчивость (Fault Tolerance). Хранение файлов в HDFS: сжатие, sequence файлы. Формат AVRO, RCfile, ORC, Parquet.
  4. Spark SQL, DataFrames, DataSet
    • Альтернатива RDDs
    • Сравнение DataFrame, DataSet и SQL API
    • Введение в Spark SQL, пользовательские функции в SparkSQL
    • Использование DataFrames и DataSet, DataSets вместо RDD
    • Простые запросы, фильтрация и агрегация DataFrames
    • Объединение (JOIN) DataFrames
    • Интеграция Hive и Spark: Hive запросы в Spark, создание Hive контекста, запись Dataframe в Hive, архитектура Apache Spark.
  5. Управление ресурсами в кластере Apache Spark
    • Архитектура Apache Spark
    • Особенности управления ресурсами в автономном режиме кластера (Standalone)
    • Особенности управления ресурсами в режиме Hadoop-кластера с YARN
    • Динамическое распределение ресурсов Dynamic Resource Allocation
    • Оптимизация Apache Spark: использование разделов (partition hash,range,map, static), управление расписанием (dynamic, fair scheduler), использование переменных (shared, broadcast) и аккумуляторов (accumulators).
    • Использование Catalyst Optimizer для оптимизации исполнения запросов
    • Project Tungsten — оптимизация управления памятью и кэшом CPU, импорт и обработка данных в кластере Hadoop.
  6. Машинное обучение (Machine Learning) в Apache Spark
    • Введение в Machine Learning с использованием MLLib
    • Алгоритм линейной регрессии (Linear Regression)
    • Деревья решений (Decision Trees)
    • Случайные леса (Random Forest)
    • Использование DataFrames с MLLib. Введение в Hive: структура Hive таблиц, синтаксис HiveQL, формат хранения файлов, работа с внешними и внутренними таблицами Hive.
  7. Потоковая обработка (Streaming) в Apache Spark
    • Потоковая обработка данных для аналитики больших данных
    • Особенности реализации потоковой обработки данных в Apache Spark
    • Основные концепции потоковой обработки
    • Агрегированные и не агрегированные запросы
    • Обработка событий Event Time, Window и Late Events (скользящее окно событий)
    • Поддержка последних событий (Late Events) в потоковой обработке данных в Apache Spark
    • Режимы работы Apache Spark с потоковыми данными
  8. Введение в GraphX
    • GraphX и Pregel
    • Поиск в ширину (Breadth-First-Search) с использование GraphX.