[EPIC-AFF-002] Exponential Decay Window Scheduler
Разработка математического фонового демона деградации неактуальных предпочтений
NoteКраткая карточка эпика
- Эпик: (EPIC-AFF-002)
- Компоненты: affinity-prediction-core (Cron Decay Engine), Redis Matrix Cache
- Статус: Готово к реализации
- Направление связи: Внутренний планировщик \(\rightarrow\) Batch Update Redis / Postgres
Бизнес-контекст и цель (Business Context)
Если группа пользователей когда-то часто покупала продукт, но перестала это делать, система не должна рекомендовать его вечно. Ровно в 00:00 специализированный Cron-демон запускает функцию экспоненциального затухания. Чтобы избежать просадки дискового IOPS основной базы данных, расчеты проводятся инкрементально в Redis с последующим пакетным (Batch) сбросом в Postgres.
Список атомарных задач:
- [Backend] Демонизированный Cron-планировщик [Метод 1]: Конфигурация Celery Beat / Cron задачи для гарантированного триггера функции ровно в 00:00 по системному времени (
decay_scheduler.py). - [Backend] Математический движок деградации весов [Метод 2]: Реализация алгоритма Exponential Decay Window для применения понижающего коэффициента к неактивным позициям матриц (
exponential_decay_engine.py). - [DevOps/Infra] Оптимизация пакетной записи [Метод 3]: Настройка скрипта безопасного фонового сброса измененных в кэше Redis весов в СУБД Postgres без блокировки таблиц чтения (
affinity_batch_pipeline.conf).