Задать вопрос
@xiiicool

Как оптимизировать синхронизацию сторонних данных с таблицей?

У меня есть таблица rates в которой есть поля
oldRatesId uuid(unique) ...
И мой скрипт делает выгрузку из другой базы данные и пробует обновлять/создавать их в моей основной
При обновлении/создании идёт проверка по oldRatesId, поле не делаю уникальным, т.к могут быть записи созданные в основной таблице.
Проблема заключается в скорости если делать по одной записи, либо если использовать bulkCreate (INSERT values ON DUPLICATE KEY UPDATE values) нужно уникальное поле, которое будет известно зарание
  • Вопрос задан
  • 58 просмотров
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Shultais Education
    Основы SQL
    3 месяца
    Далее
  • Shultais Education
    Продвинутый SQL
    1 месяц
    Далее
  • Merion Academy
    Основы реляционных баз данных SQL
    1 месяц
    Далее
Пригласить эксперта
Ответы на вопрос 2
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Каждой точке назначается свой префикс, который она добавляет перед uuid или в отдельное поле при составном первичном ключе.
Ответ написан
Комментировать
Adamos
@Adamos
В скрипте сначала определить список конфликтующих oldRatesId и по ним разделить синхронизацию на пакетный INSERT и пакетный же UPDATE.
Попутно может оказаться, что играет только MAX(oldRatesId), потому что поля с уже существующими в базе и не меняются.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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