От сырых данных до отчета. Архитектурные подходы в проекте АвтотекаМикросервисы
Ведущий разработчик в компании Avito. Львиную долю времени занимаюсь проектом Автотека.
До этого разрабатывал проекты Авторамблер, Рамблер Новости, Quto.
Автотека (autoteka.ru) - новый проект, с помощью которого можно проверить историю автомобиля. Для получения данных по конкретному VIN за секунду сервису нужно посетить более 10 сторонних API, а также извлечь заранее собранные данные от дилеров и из других источников, предоставляющих статичную информацию. На этом сложности не заканчиваются, структура данных у каждого источника своя, встречаются пересечения записей по времени. Используя VIN и дату события в качестве уникальных идентификаторов, мы производим слияние по определенному набору правил, что позволяет нам получить выборку событий, интересных для конечного потребителя, исключив оттуда всё лишнее.
В докладе я расскажу про особенности нашей архитектуры, как мы генерируем отчет, как устроен поиск и агрегация, и для чего мы их выносим в отдельные микросервисы.