Показать сообщение отдельно
Старый 02.09.2018, 17:51   #1  
Ion is offline
Ion
Участник
 
332 / 16 (1) ++
Регистрация: 19.12.2012
Update millions of records
Привет,

Написал скрипты по интеграции нескольких сущностей. Нужно с SQL вытянуть 5 милионов записей и потом обновить их в СРМ Online системе. В общем - сплошная боль, даже с балками перфоманс очень посредственный. Вытянуть за раз 5 тысяч, обновить 1 тысячу, как Вы живете с проектами в которых нужны такие массовые операции? Многопоточность не поможет ибо все запросы становяться в очередь, и все следующие запросы будут ждать выполнения. Как жить в таких условиях?

Результаты следующие:
- retrieve 5000 = 30 сек, итого только 8,3 часов чтобы вытянуть 5 млн записей
- update 1000 = ~2 минуты, итого только 83,33 часов для апдейта
- select from SQL by Id 5000 records == 10 минут (слабое место, оптимизирую)

Нет плагинов на сущности, + там еще операция назначения.

Последний раз редактировалось Ion; 02.09.2018 в 18:07.