# Events Matcher
Планируемый планируемый бэклог и общий пайплайн разбработки.
## Scope
#### Изменения логики обработки видов спорта
- Параллелизация матчинга видов спорта одного запроса и возврат результатов в раздельных, независящих друг от друга ответов. :first_place_medal:
- Мгновенная передача пары событий у которых ~100% уверенность матчинга. :first_place_medal:
:question: Обсудить: Трешхолд "уверенности" - 95%
#### Конфигурация источников
- Кастомные спецификации параметров сервиса для источников, видов спорта, а также их комбинации. :first_place_medal:
:handshake: Потребуется внешняя экспертиза и оценка наладки значений параметров.
- Создание, внедрение и последующие внешнее обогащение словарей, содежащий семантически нерелевантные токены. :second_place_medal:
(Аббревиатуры, сокращения, общие термины вида спорта и др.)
#### Сбор статистики, сервис тестирования и ручной перепроверки результатов.
- Пользовательский интерфейс
1. Возможность настройки матчера (всех параметров). :first_place_medal:
2. Разметка результатов и вытекающая из нее **статистика качества** матчера. :first_place_medal:
**Сценарий**: Пользователь имеет возможность смотреть исторические результаты матчинга и валидировать их на корректность.
3. Ручная разметка пар событий, которые не попали в результат из-за недостаточно высокой схожести. :first_place_medal:
*Пояснение*: Такие пары могут оказаться false-negative результатами, которые должны были попасть в ответ.
**Цель**: Показывать их в интерфейсе, для настройки параметров матчера чтобы повысить общее качество работы.
4. Тестовый матчер. :second_place_medal:
**Сценарий**: Осуществлять прогон матчера на тестовых данных (небольшие события с corner кейсами) с целью наглядной проверки изменений функционала.
#### Функционал core-алгоритма матчинга
1. Оптимизация перфоманса. :first_place_medal:
2. Маштабирование на несколько инстансов и многопоточность. :first_place_medal:
3. Добавление обратной транслитерации и специфичных для имен/фамилий и правил.:second_place_medal:
4. Добавление метрики, на основе deep learning модели (Deep Levenshtein). :third_place_medal:
## Timeline
1. Аналитика архитектуры сервиса, схемы БД, back-end'a и шаблона интерфейса. Проведения нагрузочного тестирования и срез текущей эффективности сервиса.
(1 неделя)
2. Изменения логики обработки видов спорта (0.5 недели)
3. Конфигурация источников (0.5 недели)
4. Пользовательский интерфейс (2 недели)
## Вопросы
- Мощности для развертывания БД, сервиса и тд? Доступы к серверам
- Планируемая нагрузка на микро-сервис (Нагрузочное тестирование)
- Вид спорта - унифицированный формат (?)
- Как хранить исторические данные в БД (часть или ориг)
-