Мы в Telegram
Добавить новость
103news.com
Работа
Июль
2023

Ecom, БД MySQL с 10+ млн. товаров, рекомендации по проектированию БД

0
Консультация за 3000 р. в час, потом реализация.

Есть ecommerce проект прайс агрегатор (аналоги regmarkets.ru, satom.ru, yavitrina.ru и др.). Сейчас есть порядка 10 млн. товаров, планируется рост до десятков - сотен млн. товаров.

Входные данные из партнерок Admitad, Яндекс дистрибуция - фиды XML (вариация Yml - Yandex Market Language). Фиды скачиваются через API.

Каждый yml фид содержит название магазина и компании, например:
<shop><name>Yandex Market</name><company>Yandex</company>

(в самой партнерке Admitad каждый shop также имеет свой числовой ID).

ID категорий:
<category id="8269840" parentId="8264460">Купальники и плавки</category>

ID офферов (товаров):
<offer available="true" id="1779862800">

В фидах некоторых магазинов одинаковые товары <offer>, но например разных цветов имеют параметр <group_id>, например <group_id>1779862800</group_id>. Группирующие одинаковые товары.

У крупных шопов вроде Яндекс Маркет сами фиды также делятся на несколько частей (как правило по крупной родительской категории, например "Одежда и обувь") и каждая такая часть имеет свой feed ID (возможно их тоже стоит использовать).

Изначально использовали только данные Яндекс маркет, сейчас планируем подключить множество других магазинов.

Возникает проблема с идентификаторами товаров. В каждом магазине своя нумерация <offer>. В некоторых магазинах <offer> имеет даже буквенные значения (хотя чаще всего это цифры).

Также возникает проблема с нагрузкой на MySQL при таком количестве товаров. С техниками шардирования, партицирования знакомы поверхностно и пока к ним не прибегали.

В настоящий момент в качестве бэкенда используем Pimcore (PHP, Symphony, подробнее о технологическом стеке Pimcore), БД MySQL.
Рассматриваем вариант переделки бэкенда на ensi (PHP) + PostgreSQL (если поймем, что на Pimcore не сможем работать нормально с шардированной MySQL).
Очень не хотелось бы писать полностью свой бэкенд самопис. Хотим использовать готовую платформу.

Важный момент! Не хотелось бы связываться с Kubernetes на первых этапах. Хотим работать с сервисной архитектурой, вынося сервисы по разным ВМ (или железным серверам).

Примеры XML (yml) файлов фидов (файлы много весят):
https://mega.nz/file/lwciRKaL#j94tfcQlJsNbCbuVJYeL...


Как нам построить свой уникальный ID товара для БД?
Как учесть, что в будущем одинаковые товарных из разных магазинов мы будем объединять в одну карточку (после product matching) с разными предложениями внутри? Имеется ввиду как учесть ID.
Как правильно обновлять такую БД (в каждом магазине и в каждом фиде могут появляться новые товары каждый день)? Товар может менять цену каждый день.
Вообще как лучше проектировать БД для такого большого числа товаров (у нас MySQL)? Шарды, партиции и др.

По железу - имеем множество своих серверов в стойке.



Требования к исполнителю:
Исполнитель должен иметь опыт работы с крупными ecommerce, с миллионами товаров.
Опыт работы с MySQL или PostgreSQL с миллионами товаров. Будет большим плюсом, если работали конкретно с фидами Admitad.
Желателен опыт программирования на PHP, Python.
В отклике на проект ОБЯЗАТЕЛЬНО укажите проекты над которыми работали и коротко подтвердите выполнение подобных работ (чтобы после отклика хоть как-то было понятно, что с Вами можно обсуждать подобную задачу и приступать к сотрудничеству).

Со студиями не работаем! Рассматриваем только опытных разработчиков, непосредственных исполнителей!


Порядок работы и оплаты:
Сперва нужна консультация или серия консультаций. Цена указана за час консультации. В дальнейшем возможно договоримся о работах с БД.
Согласовываем с исполнителем цену (строго в рублях) и сроки. Если условия устраивают и меня и вас - работаем!
Работаю строго без предоплат! Возможны поэтапные постоплаты.




Губернаторы России
Москва

Сергей Собянин сообщил о планах благоустройства на северо-востоке Москвы





Москва

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


Губернаторы России

103news.net – это самые свежие новости из регионов и со всего мира в прямом эфире 24 часа в сутки 7 дней в неделю на всех языках мира без цензуры и предвзятости редактора. Не новости делают нас, а мы – делаем новости. Наши новости опубликованы живыми людьми в формате онлайн. Вы всегда можете добавить свои новости сиюминутно – здесь и прочитать их тут же и – сейчас в России, в Украине и в мире по темам в режиме 24/7 ежесекундно. А теперь ещё - регионы, Крым, Москва и Россия.

Moscow.media
Москва

Собянин рассказал о работе сервиса «Вместе с культурой»



103news.comмеждународная интерактивная информационная сеть (ежеминутные новости с ежедневным интелектуальным архивом). Только у нас — все главные новости дня без политической цензуры. "103 Новости" — абсолютно все точки зрения, трезвая аналитика, цивилизованные споры и обсуждения без взаимных обвинений и оскорблений. Помните, что не у всех точка зрения совпадает с Вашей. Уважайте мнение других, даже если Вы отстаиваете свой взгляд и свою позицию. 103news.com — облегчённая версия старейшего обозревателя новостей 123ru.net.

Мы не навязываем Вам своё видение, мы даём Вам объективный срез событий дня без цензуры и без купюр. Новости, какие они есть — онлайн (с поминутным архивом по всем городам и регионам России, Украины, Белоруссии и Абхазии).

103news.com — живые новости в прямом эфире!

В любую минуту Вы можете добавить свою новость мгновенно — здесь.

Музыкальные новости

Бато Багдаев

Дети из землячества Узбекистана в Улан-Удэ стали зрителями театр кукол «Ульгэр»: Россия и Культура




Спорт в России и мире

Алексей Смирнов – актер, которого, надеюсь, еще не забыли

Никакой магии! В спортивном прогнозировании не бывает безусловных выигрышных стратегий

Полезные приложения для поклонников спортивной ходьбы

Звезды спорта. Кто они такие и почему их так называют?


WTA

Потапова проиграла Остапенко во втором круге турнира WTA 1000



Новости Крыма на Sevpoisk.ru


Киев

Ждём расстрела или отравления Зеленского в ближайшее время – Макгрегор



Частные объявления в Вашем городе, в Вашем регионе и в России