Преимущества использования Liquibase в автоматизации баз данных:
- Версионность и контроль изменений. 5 Каждое изменение схемы базы данных документируется и отслеживается, есть возможность отката к предыдущим версиям структуры базы данных. 5
- Кроссплатформенность. 5 Поддержка множества систем управления базами данных: PostgreSQL, MySQL, Oracle, SQL Server и других. 5 Единый подход к миграциям независимо от выбранной СУБД. 5
- Безопасность и согласованность. 5 Автоматическая проверка применимости миграций, механизмы блокировки от параллельного применения конфликтующих изменений, встроенные транзакционные механизмы защиты целостности данных. 5
- Интеграция с CI/CD. 5 Лёгкая интеграция в pipeline непрерывной разработки, автоматизация процессов развёртывания базы данных. 5
- Гибкость и расширяемость. 5 Поддержка сложных сценариев миграции, возможность написания собственных расширений, поддержка контекстов и метаданных для миграций. 5
Недостатки использования Liquibase в автоматизации баз данных:
- Изменение данных — плохая практика. 1 Liquibase предназначен для управления структурой базы данных (таблицами, индексами, связями), а не для внесения изменений в данные. 1
- Проблемы с откатом. 1 Откат структуры в Liquibase работает предсказуемо, а вот с данными всё сложнее: откат вставки данных может привести к потере важных данных или нарушению целостности базы. 1
- Сложности с управлением VIEW в Liquibase. 1 После нескольких изменений сложно находить актуальный скрипт создания VIEW для его обновления, так как изменения могут быть разбросаны по нескольким файлам или версиям. 1