Содержание пакета (8 курсов)
1. Apache Airflow: ETL-проект на PostgreSQL+DataLens (Yandex Cloud) 4.00
Введение и контекст
4 урока
1.
О чём этот курс и кому он подойдёт
↗
2.
Какой проект мы будем строить (обзор схемы)
↗
3.
Связь с преподавателем
↗
4.
Настройка Окружения
↗
Источник данных и постановка задачи
4 урока
1.
Зачем нам OpenAQ и что это за данные
↗
2.
Структура OpenAQ API: locations, sensors, params, measurements
↗
3.
Ограничения API: задержки, пагинация, неполные данные
↗
4.
Проектирование модели данных под аналитику
↗
Архитектура аналитического пайплайна в Yandex Cloud
4 урока
1.
Общая архитектура решения (API → Airflow → Postgres → DataLens)
↗
2.
Роль оркестратора: почему именно Airflow
↗
3.
Где и как живёт PostgreSQL в Yandex Cloud
↗
4.
Object Storage и служебные компоненты (DAG, логи, артефакты)
↗
Apache Airflow: реализация пайплайнов
10 уроков
1.
Как устроен Airflow: DAG, task, schedule, execution date
↗
2.
Развёртывание Apache Airflow в Yandex Cloud (Managed Service)
↗
3.
Структура наших DAG: логика и ответственность (без кода)
↗
4.
Учебный DAG: классический подход (PythonOperator + XCom)
↗
5.
Учебный DAG: современный подход (TaskFlow API)
↗
6.
Production-пайплайн: почему иногда одна task — это нормально
↗
7.
Dimension-пайплайны в Airflow: locations, parameters, sensors
↗
8.
Fact-пайплайн: measurements и инкрементальная загрузка
↗
9.
Идемпотентность и service tables
↗
10.
Обработка ошибок и уведомления (Telegram)
↗
Хранилище данных: PostgreSQL под аналитику
5 уроков
1.
Развертывание PostgreSQL в Yandex Cloud (Managed Service)
↗
2.
Проектирование схемы БД для аналитики
↗
3.
Fact и Dimension таблицы: зачем так, а не иначе
↗
4.
Индексы, уникальные ключи, контроль дублей
↗
5.
Подготовка данных для BI-инструментов
↗
Сборка и запуск Аналитической Системы
3 урока
1.
Сборка системы: что у нас уже есть
↗
2.
Запуск DAG’ов и ожидание данных
↗
3.
Проверка результата: данные в Postgre и стабильность пайплайнов
↗
Визуализация и аналитика в DataLens
5 уроков
1.
Роль BI и DataLens в нашем проекте
↗
2.
Подключение PostgreSQL к DataLens
↗
3.
Подготовка датасета для аналитики
↗
4.
Построение дашборда: метрики и визуализации
↗
5.
Интерпретация данных и возможные расширения проекта
↗
Завершение и развитие проекта
3 урока
1.
Итоги: что мы построили и чему научились
↗
2.
Как можно развивать этот проект дальше
↗
3.
Куда двигаться дальше (следующие темы, курсы, стек)
↗
2. ClickHouse с нуля 5.00
О курсе
1 урок
1.
Содержание и правила курса
↗
Введение в ClickHouse
5 уроков
1.
История ClickHouse
↗
2.
OLAP и OLTP
↗
3.
Колоночное хранение
↗
4.
Векторизация
↗
5.
Параллельная обработка
↗
Типы данных
3 урока
1.
Простые типы данных
↗
2.
Сложные типы данных
↗
3.
LowCardinality
↗
SQL
5 уроков
1.
DDL (Data Definition Language)
↗
2.
DML (Data Manipulation Language)
↗
3.
DQL (Data Query Language)
↗
4.
ARRAY JOIN
↗
5.
LIMIT BY
↗
Хранение и оптимизация данных
8 уроков
1.
Знакомство с MergeTree
↗
2.
Дедупликация данных
↗
3.
Суммирование на лету
↗
4.
Умная агрегация
↗
5.
Шардирование
↗
6.
Репликация
↗
7.
Автоматизация расчетов
↗
8.
Обогащение данных
↗
Функции
13 уроков
1.
Функции по работе с датой и временем
↗
2.
Функции округления даты и времени
↗
3.
Функция нахождения временного интервала
↗
4.
Агрегатные функции
↗
5.
Индексация и срезы массивов
↗
6.
Функции поиска элементов в массиве
↗
7.
Функции удаления дубликатов в массивах
↗
8.
Функции объединения и сравнения массивов
↗
9.
Функции высшего порядка для обработки массивов
↗
10.
Функции высшего порядка для обработки массивов 2
↗
11.
Условные функции
↗
12.
Функции разбиения строк
↗
13.
Функции извлечения данных из JSON
↗
Практика
1 урок
1.
Реализуем сквозной проект
↗
Заключение
1 урок
1.
Подводим итоги
↗
Библиотека курса
2 урока
1.
Полезные ссылки
↗
2.
Гайды
↗
3. ClickHouse с нуля: практика с поддержкой автора 5.00
О курсе
1 урок
1.
Содержание и правила курса
↗
Подготовка инфраструктуры
4 урока
1.
Введение в Docker
↗
2.
Установка Docker Desktop
↗
3.
Запуск контейнера ClickHouse
↗
4.
Установка DBeaver и подключение к ClickHouse
↗
Бронзовый слой: проектирование и загрузка данных
4 урока
1.
Введение
↗
2.
Создание базы данных
↗
3.
Проектирование таблицы
↗
4.
Загрузка данных
↗
Серебряный слой: трансформация и обогащение данных [выход 06.04]
5 уроков
1.
Введение
↗
2.
Проектирование таблицы
↗
3.
Очистка данных
↗
4.
Обогащение данных
↗
5.
Загрузка данных
↗
Золотой слой: агрегация данных [выход 04.05]
3 урока
1.
Введение
↗
2.
Проектирование витрин данных
↗
3.
Загрузка данных
↗
Продуктовая аналитика [выход 08.06]
6 уроков
1.
Введение в продуктовую аналитику
↗
2.
Метрики пользовательской активности
↗
3.
Когортный анализ
↗
4.
Источники трафика и качество
↗
5.
Монетизация и финансовые метрики
↗
6.
Воронка продаж и конверсия
↗
Заключение [выход 08.06]
1 урок
1.
Подводим итоги
↗
4. Git и GitHub [Начинающий+] 4.88
Приветствие
2 урока
1.
Здравствуйте!
↗
2.
Что потребуется для обучения
↗
Что такое Git и GitHub
11 уроков
1.
Что такое Git
↗
2.
Основные понятия Git
↗
3.
Разница между Git и GitHub
↗
4.
Установка Git на Ubuntu
↗
5.
Установка Git на Windows
↗
6.
Установка Git на MacOS
↗
7.
Установка имени пользователя и email
↗
8.
Переключение языка интерфейса Git
↗
9.
Переключение языка на Windows
↗
10.
Переключение языка на Linux
↗
11.
Переключение языка на MacOS
↗
Основные действия в Git
4 урока
1.
Инициализация Git
↗
2.
Добавление в индекс
↗
3.
Создание коммита
↗
4.
Переключение коммитов
↗
Настройка GitHub
5 уроков
1.
Создаём репозиторий в GitHub
↗
2.
Создаём токен доступа на GitHub
↗
3.
Для чего нам SSH
↗
4.
Linux и MacOS: создаём SSH-ключ для GitHub
↗
5.
Windows: создаём SSH-ключ для GitHub
↗
Ветки, Pull Request и ревью кода
12 уроков
1.
Что такое ветки
↗
2.
Сливаем (мерджим) ветки локально
↗
3.
Что такое Pull Request
↗
4.
Приглашаем участника в личный репозиторий на GitHub
↗
5.
Пишем код в новой ветке
↗
6.
Открываем Pull Request первым способом
↗
7.
Проводим ревью кода
↗
8.
Устраняем недостатки после ревью
↗
9.
Одобряем Pull Request
↗
10.
Сливаем ветки и закрываем Pull Request
↗
11.
Пулимся после слияния
↗
12.
Открываем Pull Request вторым способом
↗
Особенности коммитов и веток
15 уроков
1.
Удаление файлов из индекса отслеживания
↗
2.
Создание коммита через редактор
↗
3.
Сброс коммита git reset (откат изменений)
↗
4.
Безопасная отмена коммита git revert
↗
5.
"Отсоединённая голова" и git checkout
↗
6.
Cбросить состояние файла git restore
↗
7.
Переключиться git switch и отличия от git checkout
↗
8.
Обновляем локальную ветку изменениями из main
↗
9.
Слияние веток через git rebase
↗
10.
Интерактивный rebase и squash
↗
11.
Merge или Rebase - что выбрать
↗
12.
Конфликты слияния в IDE
↗
13.
Конфликты слияния в GitHub
↗
14.
Разница в файлах git diff
↗
15.
Получаем изменения с помощью git fetch
↗
Работа с репозиторием
10 уроков
1.
Клонирование репозитория HTTPS (git clone)
↗
2.
Клонирование репозитория SSH (git clone)
↗
3.
Создаём форк репозитория
↗
4.
Обновляем форк репозитория из оригинального репозитория
↗
5.
Отправляем Pull Request в оригинальный репозиторий
↗
6.
Сохраняем пустые папки в удаленном репозитории (.gitkeep)
↗
7.
Оптимизация .gitignore
↗
8.
Интеграция Git в IPyCharm
↗
9.
Интеграция Git в VS Code
↗
10.
Графические клиенты для Git
↗
Дополнительно
2 урока
1.
Таблица команд
↗
2.
Завершение курса
↗
5. SQL Оконные функции 5.00
Введение
4 урока
1.
О Курсе
↗
2.
Руководство по стилю SQL
↗
3.
Что такое оконные функции в SQL
↗
4.
Учебная база данных
↗
Агрегатные оконные функции
6 уроков
1.
О Модуле
↗
2.
MIN
↗
3.
MAX
↗
4.
COUNT
↗
5.
AVG
↗
6.
SUM
↗
Практика по работе с агрегатными оконными функциями
1 урок
1.
Часть 1
↗
Ранжирующие оконные функции
6 уроков
1.
О Модуле
↗
2.
ROW_NUMBER
↗
3.
RANK
↗
4.
DENSE_RANK
↗
5.
PERCENT_RANK
↗
6.
NTILE
↗
Практика по работе с ранжирующими оконными функциями
1 урок
1.
Часть 1
↗
Оконные функции смещения
6 уроков
1.
О Модуле
↗
2.
LAG
↗
3.
LEAD
↗
4.
FIRST_VALUE
↗
5.
LAST_VALUE
↗
6.
NTH_VALUE
↗
Практика по работе с оконными функциями смещения
1 урок
1.
Часть 1
↗
Продвинутая логика окон
5 уроков
1.
О Модуле
↗
2.
Границы окна
↗
3.
Исключение строк из окна
↗
4.
Фильтрация внутри оконной функции
↗
5.
Переиспользование окон
↗
Практика по продвинутой работе с оконными функциями
1 урок
1.
Часть 1
↗
Заключение
1 урок
1.
Итоги курса
↗
6. SQL с нуля: обучение и практика для аналитика и дата-инженера 4.71
О курсе
1 урок
1.
Добро пожаловать
↗
Введение в SQL и реляционные базы данных
3 урока
1.
Базы данных
↗
2.
Основы реляционных баз данных
↗
3.
Введение в SQL
↗
Типы данных и описание учебной базы данных
3 урока
1.
Основные типы данных в SQL
↗
2.
Выбор подходящих типов данных
↗
3.
Описание учебной базы данных
↗
Основные операции в SQL
10 уроков
1.
Основы запросов
↗
2.
Литералы
↗
3.
Функции
↗
4.
Сортировка и группировка данных
↗
5.
Логические операторы
↗
6.
Операторы вхождений и диапазонов
↗
7.
Соединение таблиц
↗
8.
Оператор условий
↗
9.
Ограничение выборки
↗
10.
Объединение результатов
↗
Подзапросы и Common Table Expressions (CTE)
2 урока
1.
Подзапросы и их применение
↗
2.
Common Table Expressions (CTE)
↗
Управление схемой базы данных
4 урока
1.
Создание и изменение таблиц
↗
2.
Работа с индексами
↗
3.
Ограничения и внешние ключи
↗
4.
Представления
↗
Новая база данных. Практика
4 урока
1.
Описание новой учебной базы данных
↗
2.
Раздел 1: Базовые запросы и манипуляции с данными
↗
3.
Раздел 2: Создание и управление структурами баз данных
↗
4.
Раздел 3: Подзапросы и CTE
↗
Введение в оконные функции
3 урока
1.
Общие сведения об оконных функциях
↗
2.
Сравнение оконных и групповых функций
↗
3.
Общий синтаксис оконных функций
↗
Базовые элементы окна
4 урока
1.
ORDER BY
↗
2.
PARTITION BY
↗
3.
Определение фрейма
↗
4.
Именованное окно
↗
Логический порядок вычисления окна
2 урока
1.
Логический порядок выполнения SQL-запроса
↗
2.
Использование оконных функций в подзапросах / CTE
↗
Разновидности оконных функций
4 урока
1.
Ранжирующие оконные функции
↗
2.
Аналитические оконные функции. Часть 1
↗
3.
Аналитические оконные функции. Часть 2
↗
4.
Агрегатные оконные функции
↗
Установка СУБД MySQL и клиента Dbeaver
5 уроков
1.
Установка MySQL на Windows
↗
2.
Установка DBeaver Community Edition
↗
3.
Настройка соединения для работы с SQL-запросами в DBeaver
↗
4.
Импорт CSV в DBeaver
↗
5.
Экспорт результатов запроса в CSV в DBeaver
↗
Проект в СУБД MySQL
2 урока
1.
Описание и выполнение
↗
2.
Проверка результатов
↗
Заключение
1 урок
1.
Послесловие
↗
7. Основы Pandas для начинающих 4.62
О курсе
1 урок
1.
Информация
↗
Основы Numpy
14 уроков
1.
Зачем при изучении Pandas нужен Numpy?
↗
2.
Практика: shape, dtype, ndim, zeros, ones, arange
↗
3.
Типы данных и их преобразование, арифметика, доступ к элементам
↗
4.
Практика: арифметика, преобразование типов, доступ к элементам
↗
5.
Двумерные и трехмерные массивы. Учимся применять индексы
↗
6.
Практика: закрепляем работу с индексами
↗
7.
Маска и слайсинг вместе, прихотливая индексация, а еще reshape
↗
8.
Практика: учимся изменять форму массива
↗
9.
Еще о reshape, транспонирование, унарные и бинарные функции
↗
10.
Практика: закрепляем знания про унарные и бинарные функции
↗
11.
Логические функции и функция в функции, а еще where и статистика
↗
12.
Практика: доводим до мастерства работу с полезными функциями
↗
13.
Функции any, all, sort, unique, in1d. Обзор линейной алгебры
↗
14.
Функции permutation и shuffle. Сохранение массива в файл
↗
Введение в Pandas
14 уроков
1.
Первое знакомство с Series
↗
2.
Практика: проверяем свои знания о серии
↗
3.
Поподробнее про серии: идексы, сложение, проверка на NaN
↗
4.
Практика: тонкости при работе с сериями
↗
5.
Первое знакомство с DataFrame
↗
6.
Поподробнее про DataFrame: индексы, вложенные словари, del и .T
↗
7.
Практика: особенности индексации
↗
8.
Функции reindex, drop и индексация в датафрейме
↗
9.
Практика: вытягиваем нужное, удаляем ненужное
↗
10.
Операторы loc, iloc, at, iat. Сложение нескольких датафреймов
↗
11.
Сложение датафреймов, сортировки, арифметика с пропусками
↗
12.
Описательные статистики. Уникальные значения
↗
13.
Контрольная работа
↗
14.
Контрольная работа (продолжение)
↗
Pandas: работа с источниками данных
6 уроков
1.
Что такое формат CSV и как его приручить?
↗
2.
Поподробнее про обработку пропусков
↗
3.
Учимся читать большие файлы кусочками
↗
4.
Кто такой JSON и как с ним подружиться?
↗
5.
Знакомимся с форматами HTML, XML, PICKLE, HDF5
↗
6.
Старый добрый Excel и немного про базы данных
↗
Pandas: чистка и подготовка данных к анализу
6 уроков
1.
Учимся обрабатывать пропуски
↗
2.
Проверяем данные на дубликаты и избавляемся от них
↗
3.
Про замену значений и дискретизацию
↗
4.
Определяем выбросы и грамотно устраняем их
↗
5.
Создаём матрицы фиктивных переменных
↗
6.
Работа со строками - проще чем кажется!
↗
Pandas: объединение данных и преобразование формы
8 уроков
1.
Знакомство с иерархической индексацией
↗
2.
Действия с мультииндексами в датафреймах
↗
3.
Учимся соединять датафреймы с помощью merge
↗
4.
Аналог merge; конкатенация датафреймов через concat
↗
5.
Комбинирование данных и преобразование формы
↗
6.
Применяем свою функцию через apply
↗
7.
Самостоятельная работа по apply
↗
8.
Практика: выжимаем максимум из apply
↗
Мастерская
0 уроков
8. Полный Курс Python 3: от Новичка до Мастера (Питон, Пайтон) 4.83
Обзор Курса
5 уроков
1.
Скачиваем материалы курса
↗
2.
Обзор Содержания Курса
↗
3.
Python 2 и Python 3. Пайтон или Питон?
↗
4.
Часто Задаваемые Вопросы
↗
5.
Полезные советы об интерфейсе Stepik (опционально)
↗
Установка Python
5 уроков
1.
Замечание по эмулятору Python в Степик
↗
2.
Основы Работы в Командной Строке
↗
3.
Установка Python
↗
4.
Если мешает Anaconda Toolbox
↗
5.
Запуск Кода Python
↗
Объекты и Структуры Данных в Python
27 уроков
1.
Введение в Типы Данных Python
↗
2.
Числа (Numbers)
↗
3.
Числа (Numbers) - Часто Задаваемые Вопросы
↗
4.
Проверочные Вопросы по Числам (Numbers)
↗
5.
Присвоение Переменных
↗
6.
Введение в Строки (Strings)
↗
7.
Индексирование и Срезы Строк
↗
8.
Свойства и Методы Строк
↗
9.
Строки - Часто Задаваемые Вопросы
↗
10.
Проверочные Вопросы по Строкам
↗
11.
Форматирование Вывода для Строк
↗
12.
Форматирование Вывода - Часто Задаваемые Вопросы
↗
13.
Списки (Lists) в Python
↗
14.
Списки - Часто Задаваемые Вопросы
↗
15.
Проверочные Вопросы по Спискам
↗
16.
Словари (Dictionaries) в Python
↗
17.
Словари - Часто Задаваемые Вопросы
↗
18.
Проверочные Вопросы по Словарям
↗
19.
Кортежи (Tuples) в Python
↗
20.
Проверочные Вопросы по Кортежам
↗
21.
Множества (Sets) в Python
↗
22.
Значения Boolean в Python
↗
23.
Проверочные Вопросы - Множества и значения Booleans
↗
24.
Ввод-вывод (I/O) для файлов в Python
↗
25.
Ресурсы для Дополнительной Практики
↗
26.
Обзор Теста по Объектам и Структурам Данных Python
↗
27.
Решения для Теста по Объектам и Структурам Данных Python
↗
Операторы Сравнения в Python
3 урока
1.
Операторы Сравнения в Python
↗
2.
Сцепление Операторов Сравнения с помощью Логических Операторов
↗
3.
Проверочные Вопросы по Операторам Сравнения
↗
Операторы Python
8 уроков
1.
Операторы If, Elif и Else в Python
↗
2.
Циклы For в Python
↗
3.
Циклы While в Python
↗
4.
Полезные Операторы в Python
↗
5.
Генераторы Списков (List Comprehensions) в Python
↗
6.
Обзор Теста по Операторам Python
↗
7.
Решения Теста по Операторам Python
↗
8.
(Опционально) Задание - Игра на угадывание чисел
↗
Методы и Функции
14 уроков
1.
Методы и Документация Python
↗
2.
Функции в Python
↗
3.
*args и **kwargs в Python
↗
4.
Упражнения по Функциям
↗
5.
Обзор Упражнений по Функциям
↗
6.
Решения Упражнений - Уровень Разминка
↗
7.
Решения Упражнений - Уровень 1
↗
8.
Решения Упражнений - Уровень 2
↗
9.
Решения Упражнений - Сложные Задачи
↗
10.
Lambda-выражения, функции Map и Filter
↗
11.
Вложенные Операторы и Области Видимости (Scope)
↗
12.
Функции и Методы - Домашнее Задание
↗
13.
Полезные Советы для Задания по Функциям и Методам
↗
14.
Решения для Домашнего Задания по Функциям и Методам
↗
Проект - 1
4 урока
1.
Обзор Первого Проекта Python
↗
2.
Помощь по Проекту
↗
3.
Обзор Решения для Проекта 1 - Часть 1
↗
4.
Обзор Решения для Проекта 1 - Часть 2
↗
Объектно-Ориентированное Программирование (ООП)
9 уроков
1.
ООП: Введение
↗
2.
ООП: Атрибуты и Ключевое слово Class
↗
3.
ООП: Классы, Объекты, Атрибуты и Методы
↗
4.
ООП: Наследование и Полиморфизм
↗
5.
ООП: Специальные Методы (Magic/Dunder)
↗
6.
ООП: Домашнее Задание
↗
7.
ООП: Решение для Домашнего Задания
↗
8.
ООП: Задача
↗
9.
ООП: Решение для Задачи
↗
Модули и Пакеты
3 урока
1.
Pip Install и PyPi
↗
2.
Модули и Пакеты
↗
3.
__name__ и "__main__"
↗
Ошибки и Обработка Исключений (Exceptions)
5 уроков
1.
Ошибки и Обработка Исключений (Exceptions)
↗
2.
Домашнее Задание - Ошибки и Обработка Исключений
↗
3.
Решения для Домашнего Задания - Ошибки и Обработка Исключений
↗
4.
Обзор Pylint
↗
5.
Запуск тестов с помощью библиотеки Unittest
↗
Проект - 2
5 уроков
1.
Обзор Проекта 2
↗
2.
Решение - классы Card и Deck
↗
3.
Решение - классы Hand и Chip
↗
4.
Решение - функции для Game Play
↗
5.
Решение - Финальный скрипт Gameplay
↗
Декораторы в Python (Decorators)
2 урока
1.
Обзор Декораторов в Python
↗
2.
Декораторы - Домашнее Задание
↗
Генераторы Python (Generators)
3 урока
1.
Генераторы в Python
↗
2.
Обзор Домашнего Задания по Генераторам
↗
3.
Решения для Домашнего Задания по Генераторам
↗
Финальный Проект
1 урок
1.
Финальный Проект
↗
Резюме курса
2 урока
1.
Короткий тест
↗
2.
Финальные шаги
↗