«Анализ покупательских сеансов с помощью Spark» — практический проект для тех, кто знаком с основами пакетной обработки в PySpark. Превратите журнал завершённых посещений магазина в повторно используемый анализ: отличайте повторные события от просмотренных пар «сеанс/товар» и связывайте добавления в корзину с нужным товаром и временем.
Две пошаговые работы создают правила связей и полное сравнение товаров. Самостоятельное задание переносит те же правила на пакет другого магазина. Результатом станут настоящие наборы данных Parquet и небольшой согласованный CSV с количествами, объясняющими каждую долю. Продолжительность 125–155 минут — оценка автора, включающая чтение и обычные ошибки.
Чему вы научитесь
После завершения курса вы сможете:
- сохранять каждую просмотренную пару «сеанс/товар» и время её первого просмотра после удаления полностью одинаковых повторно доставленных событий;
- определять наличие допустимого добавления в корзину, не используя событие другого товара и не умножая один путь при нескольких подходящих событиях корзины;
- вычислять число сеансов с просмотром как знаменатель, количества завершённых и незавершённых путей и долю незавершённых;
- сохранять товары без допустимых добавлений в корзину и все результаты с равными долями;
- записывать и читать настоящие результаты Parquet и CSV, повторно строить производный снимок и сохранять исходные данные;
- объяснять, почему закономерности завершённых сеансов служат наблюдательными подсказками, а не числом уникальных людей или доказательством причинности.
Для кого этот курс
Проект предназначен для будущих аналитиков и инженеров данных, которым нужны надёжные связи и сводные показатели в Spark.
Предварительные знания: Базовая навигация по файлам в терминале и навыки курса Apache Spark для начинающих: явные схемы, фильтрация, удаление точных дубликатов, соединения DataFrame, группировка и Parquet. Проект вводит единицу наблюдения «сеанс/товар», время первого просмотра, соединения semi/anti и полные знаменатели сравнения.
Учебная среда: Каждая работа предоставляет независимый Terminal в браузере с готовыми Spark, Python, локальными пакетными файлами и небольшими программами-драйверами вывода. Spark использует два локальных рабочих потока на одной машине. Установка программ, Hive, Kafka и удалённый кластер не требуются.
Часто задаваемые вопросы
Нужно ли писать Python?
Да. Вы завершите небольшие повторно используемые функции, возвращающие Spark DataFrame. Пошаговые работы объясняют параметры и выражения связей до их применения. Предоставленный драйвер создаёт сеанс и сериализует файлы.
Это воронка реального времени или отчёт об уникальных клиентах?
Нет. Входные данные — конечные пакеты завершённых сеансов с корректными идентификаторами и временными метками UTC. Сеанс обозначает посещение и может включать просмотры нескольких товаров. Потоковая обработка, оформление заказа и идентификация между устройствами не входят в курс.
Что меняется в самостоятельном задании?
Меняются идентификаторы пакета и связи между событиями. Инструменты Spark, правило времени, форматы вывода и способы восстановления остаются прежними. Результат должен сохранять полное сравнение, включая товары без добавлений в корзину и все равные доли.


