Parsing X · Блог
Как организовать сбор и обработку данных для интернет-магазина
От сбора данных по конкурентам и каналам до витрин в BI/DWH: этапы сбора и обработки данных для интернет-магазина.
Этапы сбора и обработки данных
- Сбор из сайтов, маркетплейсов и API.
- Нормализация и дедупликация.
- Quality checks и мониторинг отклонений.
- Хранение истории и витрины для команд.
- Доставка через API/выгрузки в BI и DWH.
Типичные ошибки
- Нет истории изменений, только текущий срез.
- Нет контроля полноты и качества.
- Сбор и аналитика живут отдельно и не сходятся по схеме.
На практике это обычно собирается из Сбор и подготовка данных, Интеграций, Парсинг через API и витрин в Аналитике.
Пример потока данных от источника до отчёта
Для ежедневного мониторинга можно разделить процесс на четыре шага: получение наблюдений, сохранение исходного ответа, нормализация полей и публикация проверенной витрины. Исходный слой позволяет повторить обработку после исправления ошибки без нового обращения к источнику. В витрину попадают только записи, прошедшие согласованные проверки.
У каждой записи должны быть источник, внешний идентификатор, время наблюдения и идентификатор запуска. Для предложения дополнительно могут понадобиться продавец и регион. Состав ключа зависит от задачи: один товар у разных продавцов нельзя случайно объединять в одну цену.
Что делать при повторе или сбое
Повторная обработка одного запуска должна давать тот же результат без дублирования строк. Для этого используйте устойчивый ключ и операцию обновления либо отдельную таблицу обработанных запусков. Не заменяйте вчерашнюю полную витрину сегодняшней пустой выборкой при таймауте источника.
Ошибочные записи направляйте в отдельную очередь проверки с причиной отклонения. Например, пустая валюта, отрицательная цена или неизвестная категория требуют разных действий. После исправления правила нормализации такие записи можно обработать повторно, сохранив связь с исходными данными.
Критерии готовности к регулярной работе
- Известны ожидаемое число записей, допустимая задержка и ответственный за сбой.
- Проверяются обязательные поля, дубли и неожиданное падение объёма относительно обычного диапазона.
- Доступен журнал запусков с временем начала, окончания и числом принятых и отклонённых строк.
- Проверено восстановление после частичной загрузки и повторная публикация исправленного периода.
Изменения схемы сначала проверяйте на тестовой витрине. Потребителям данных заранее сообщайте об удалении или переименовании полей и согласуйте переходный период.