[bigdata team] Практический курс по Big Data 2023. Все части [Алексей Драль]

1000

Кому подойдет этот курс

  • Разработчикам
    Вы программируете, но хотите расширить профессиональные возможности и получить практические навыки работы с большими данными? На курсе вы научитесь работать с Hadoop, MapReduce, Hive, Spark, Kafka, Cassandra и будете выполнять задания на реальном кластере.
  • Data Engineers
    Хотите расширить свой арсенал для работы с данными и структурировать свои знания в DE? Вы узнаете о современных технологиях работы с Big Data, научитесь грамотно их использовать и понимать, какую технологию в каких случаях лучше применять.
  • Аналитикам
    Хотите освоить работу с большими данными, чтобы решать более сложные и интересные аналитические задачи? Вы научитесь использовать инструменты работы с большими данными, проводить аналитику с помощью SQL и NoSQL инструментов, готовить данные и отчеты на основе больших массивов информации.

  • Data Scientists
    Ловите себя на мысли, что качество модели во многом зависит от правильного сбора и предобработки данных? Вы получите базу по современным инструментам и подходам, необходимым для сбора, хранения и обработки данных; изучите особенности укладки данных для оптимизации вычислений, подготовки фичей и масштабирования ML-моделей.

Вы научитесь работать с распределенными файловыми системами, познакомитесь с экосистемой Hadoop, разберетесь с оптимизацией MapReduce вычислений и работой с Hive.

Часть 1. HDFS, Map Reduce, Hive
В этом модуле вы изучите:

▶ вводная часть: знакомство (задачи, оценки, дедлайны), подробности курса;
▶ распределенные файловые системы (GFS, HDFS). Их составляющие, достоинства, недостатки и сфера применения;
▶ чтение и запись в HDFS. HDFS APIs: Web, shell.
▶ Hadoop Streaming;
▶ элементы Hadoop-задачи (Mapper, reducer, combiner, partitioner, comparator).
▶ приложения с несколькими Hadoop-задачами;
▶ тюнинг Hadoop-job (настройка партиционирования, сложные ключи, uber jobs);
▶ задачи с несколькими входами. Joins в Hadoop.
▶ архитектура Hive, виды таблиц, форматы хранения данных;
▶ трансляция Hive-запросов в MapReduce-задачи;
▶ сериализация и десериализация;
▶ тюнинг Join’ов в Hive;
▶ партиционирование, бакетирование, семплирование;
▶ User defined functions, Hive Streaming.

Часть 2. Spark: from zero to hero
На протяжении этой части курса вы будете работать со Spark: от основных терминов и RDD до Spark DataFrames и оптимизации Spark вычислений.

В этом модуле вы изучите:
▶ cхема выполнения задачи в Spark;
▶ основные термины Spark (job, task, stage);
▶ представление вычислений в виде графа. Spark Python API. Spark RDD API;
▶ Broadcast-сообщения и счетчики.
▶ взаимодействие Hive и Spark SQL;
▶ отличия DF от RDD.
▶ Spark on YARN;
▶ типы stage в Spark;
▶ оптимизация операции shuffle;
▶ настройка Garbage Collection, тюнинг потребления памяти.

Часть 3. RT, NoSQL, Data layout, Kafka
В этом модуле вы изучите:
▶ подходы к Realtime-обработке;
▶ гарантии обработки, переход от одной гарантии к другой, архитектуры «Лямбда» и «Каппа»;
▶ Spark Streaming vs. Spark RDD, Spark Structured Streaming vs. Spark DataFrames, DStream;
▶ архитектура Kafka, Kafka Streams, репликация в Kafka. Отличие Kafka от классических очередей;
▶ семантики доставки сообщений, сжатие данных в Kafka, синхронная и асинхронная репликация.
▶ отличия Key-Value хранилищ от реляционных БД;
▶ компактификация и её виды, CQLSH;
▶ архитектура Cassandra;
▶ обеспечение надёжности и высокодоступности в Key-Value хранилищах;
▶ интеграция Spark с Cassandra.
▶ как бороться с Data Skew с помощью MapReduce подходов в разных фреймворках;
▶ trade-off между CPU и IO-bound приложениями, подходы к сжатию в Big Data, горячие и холодные данные;
▶ форматы данных в Big Data: ORC vs Parquet, Avro, …