Каталог

Корпоративный блог: CMS SKIFMISIC – создание товаров в базе данных

В большинстве интернет-магазинов к вопросу контента карточек товара подходят достаточно поверхностно.

Как правило есть какой-то список товаров в базе, которые нужно добавить в каталог на сайте. Есть какое-то количество сотрудников, продавцов или фрилансеров, которые каким-то образом выкладывают товары. Но как товары попадают в базу данных?

Как товары попадают в базу данных?

Отвечу одним словом — парсеры.

На данный момент мы работаем с 61 поставщиком как в России, так и в США. Наша система поставок построена таким образом, что часть товара мы храним на складах в РФ и США или в магазинах, а часть привозим клиенту «под заказ».

Так вот, информацию о том, что есть у поставщиков на данный момент и что мы можем привозить «под заказ» нам и нужно получать на регулярной основе.

Кто-то из поставщиков передает информацию по наличию и ценам по API, кто-то через рассылку файликов на почту, кто-то через свои личные кабинеты дилера. В общем тот еще винегрет.

Теперь переходим к ответу на вопрос: как именно товары от поставщиков попадают в нашу базу данных?

Для каждого поставщика мы написали так называемые парсеры — микропрограммы, которые выполняются по заданному расписанию и получают информацию из различных источников.

Полученная информация попадает в так называемую «песочницу». Отдельная база, где хранится сырая, не обработанная информация от поставщиков.

pesochnitsa-bbb.png


Далее в работу включаются следующие скрипты

У одного товара может быть несколько поставщиков. Поэтому перед созданием нового товара нужно проверить, а вдруг такой товар в базе уже есть?

Сначала алгоритмы сопоставляют данные из песочницы с данными из основной базы данных. Мы проверяем каждую запись по нескольким параметрам:

  • Бренд
  • Артикул
  • Штрих-код
  • Название
  • Ценовой диапазон

Если алгоритм нашел товар из основной базы, который 100% соответствует записи из песочницы, то запись как-бы привязывается к товару. А в товаре появляется еще один поставщик со своим наличием и ценами.

postavschiki-tovara-41c.png

Если товара нет в базе, то мы создаем новый товар.

Для того, чтобы находить и склеивать дубли товаров, нам пришлось написать еще несколько алгоритмов проверки и сопоставления товаров между собой.

Проверка проходит по штрих-кодам и артикулам товаров:

dublikaty-2a2.png

Проверку товаров в базе дубликатов проводит уже человек и при необходимости «склеивает» товары между собой.

Преимущества такой сложной системы

  1. Точность сопоставления превышет 99,995%. Это значит, что в базе из 70000 товаров только 0,005% задублированных товаров. Это около 350 позиций, которые мы проверяем и исправляем. Остальные товары уникальны между собой.
  2. Ручной труд присутствует только на этапе проверки дубликатов. Всё остальное происходит автоматически, без участия человека. Представляете какая экономия людских ресурсов?
  3. Скорость обновления информации. От момента появления товара в прайсе поставщика до момента появления товара в нашей базе проходят считанные минуты!
  4. Любые изменения доступного к продаже количества или цен продажи практически мгновенно транслируется в нашу базу данных!


Один раз создав такую хитрую автоматизированную систему мы сэкономили тысячи человеко-часов в год, а значит сэкономили сотни тысяч рублей.

Теперь вы знаете как товары попадают в базу. А в следующий раз я расскажу как мы работаем над контентом такого количества товаров.