Мне нужно обновить схему из 20 баз данных с тем же журналом изменений Liquibase.Время, требуемое для создания схемы для одной пустой базы данных, составляет около 5 с.В последующем обновлении Liquibase для той же базы данных это все равно займет 3,6 с, даже если изменения не применяются.Поскольку обновление Liquibase выполняется 20 раз (один раз для каждой базы данных), итоговое общее время выполнения (100 и 72 с) либо для создания схемы, либо для проверки схемы является критическим для моего варианта использования.
Моя версия Liquibase равна 3,5.5, но я также попробовал версию 3.6.3, результаты которой даже немного хуже.
Я использую сценарий bash для перебора своих баз данных и выполнения обновления Liquibase.Это выглядит следующим образом:
for i in {1..5}; do
liquibase --contexts=MT --logLevel=warning \
--username=sa --password=XXX \
--url="jdbc:sqlserver://<ip-address>:50179;DatabaseName=db$i" \
--changeLogFile=/my-changelogs.xml \
update
done
Есть ли способ сократить время выполнения Liquibase для одного обновления?В качестве альтернативы, возможно ли сократить общее время выполнения, запустив обновление Liquibase параллельно или загрузив путь к классам Liquibase только один раз?