Как правильно обновлять таблицу товаров интернет магазина?

Здравствуйте. Есть интернет магазин на самописной cms (php+mysql+js). Каждый день, соответственно, количество товаров меняется, цена может измениться и прочее. Т.е. сущетсвует необходимость обновления таблицы товаров раз в день. Я получаю csv файл, который потом должен обработать и данные загрузить в базу данных. Мое предложение было каждый раз при обновление таблицы товаров не обновлять ее, а сначала очистить от всех полей, а уже потом вставлять полученные данные из csv файл. Мне же предложили ничего не удалять, а сравнивать уже имеющиеся поля с вновь полученными данными. Какой наиболее быстрый способ используете Вы? В каком направлении смотреть, может какую-нибудь библиотеку посоветуете?
  • Вопрос задан
  • 780 просмотров
Решения вопроса 1
MaxDukov
@MaxDukov
впишусь в проект как SRE/DevOps.
ровно 2 команды MySQL
LOAD DATA INFILE - во временную таблицу, потом
INSERT INTO ON DUPLICATE KEY UPDATE в нужную.
если формат CSV 1-в-1 c таблицей - можно вообще обойтись одной первой, с параметром REPLACE
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
opium
@opium
Просто люблю качественно работать
Тот который просит заказчик
Все методы быстрые
Не использовал бы библиотеки кода строчек двадцать сорок будет
Ответ написан
Комментировать
trevoga_su
@trevoga_su
Мое предложение было каждый раз при обновление таблицы товаров не обновлять ее, а сначала очистить от всех полей
тем самым убивая товары с нулевым остатком? Батенька, для SEO это плохо. Вон, на ozon.ru, например, висит книга, которую уже лет 10 не издают и 100% больше не издадут, но с сайта книга не снимается. Угадай почему?

может какую-нибудь библиотеку посоветуете
щито? тут работы на 10 строк коды.

CSV на миллиард записей что ли? В чем проблема вообще?
Построчно читаем файл по крону в 4 часа ночи и обновляем sql базу, по артикулу или иному ID, который у вас там есть.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы