у каждого вытягивать товары (100-50000 шт, могут меняться) и складывать в табличку.
Планирую запустить n-колво процессов в supervisor, который будет тянуть данные и сохранять в бд.
Вижу пару сценариев сохранения:
1. Получил данные, удалил старые и записал новые
2. Получил данные, вытянул все записи, изменил/сохранил цену.
Как лучше всего реализовать, важна производительность?
Опыта в реализации подобных задач не было, думаю может есть нюансы какие-нибудь...
имхо, вариант 1 будет быстрее, т.к. не будет тратиться ресурс на сопоставление товаров по id. но на удаление старых записей тоже бело не быстрое, вдобавок таблица фрагментируется. поэтому я бы сделал партиции или отдельные таблицы - для каждого обновления товаров создавать новую, а старую прибивать целиком, это быстро.
Важные моменты упустил, данные нужно будет тянуть каждые 15-30 секунд. Большая часть (+-70%) будет меняться. Связей нет.
Під 70% змін ви маєте на увазі зміну товарів в принципі, чи зміну їх характеристик?
мускуль INSERT ON DUPLICATE KEY UPDATE постгря INSERT ON CONFLICT за монгу хз если это все кроном тянуть будет, то о какой важности производительности идет речь? судя по вопросу тебе бы подумать не о том, как результат сохранить, а как их вытянуть не положив сервак по памяти
монга - апсерт (не душнила)
Обсуждают сегодня