Об этом проекте

Этот проект представляет собой полный серверлесс-конвейер кликстрим-данных, построенный на сервисAWS. Проект принимает события кликов в реальном времени через Amazon API Gateway, маршрутизирует их в Kinesis Data Streams для ингестии, преобразует и партицирует данные в формат Parquet через Kinesis Firehose и сохраняет всё в S3 как озеро данных. AWS Glue каталогизирует схему, а Athena обеспечивает выполнение SQL-запросов по требованию. Планируемый через EventBridge Lambda автоматически выполняет восстановление партиций. Репозиторий включает Infrastructure as Code на базе AWS SAM и CloudFormation для повторяемых, контролируемеых развёртываний. Входящие полезные нагрузки используют формат JSONL с Base64-кодированием, где deviceId выступает ключом партиции Kinesis. Преобразованные данные хранятся с партицированием по году/месяцу/дню и сжатием Snappy для экономичного выполнения запросов. Производственные аспекты подробно документированы и включают оптимизацию скорости ингестии, клиентское сжатие, обработку эволюции схемы, мониторинг через CloudWatch, модели безопасности и альтернативы пакетному восстановлению партиций для сценариев реального времени. Исходные данные получены из набора кликстрим-данных Kaggle.