Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL...
Transcript of Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL...
![Page 1: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/1.jpg)
Flyway
vs.
LiquiBase
Battle der Datenbankmigrationstools
![Page 2: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/2.jpg)
Techn.
Projektleiter
Software-
Architekt
JEE – SOA - Host
Java seit 2002Speaker & Autor
ISTQB, ISAQB,
IREB und ITIL
zertifiziert
Leidenschaft
sind neue
Technologien
und Methoden
![Page 3: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/3.jpg)
Einleitung
Funktionsweise
BATTLE1.Runde: Funktionen
2.Runde: Einbindung in bestehende Projekte
3.Runde: Integrationsmöglichkeiten
4.Runde: Inbetriebnahme und Handhabung
5.Runde: Verfügbare Plug-Ins
6.Runde: Rahmenbedingungen
![Page 4: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/4.jpg)
![Page 5: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/5.jpg)
![Page 6: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/6.jpg)
![Page 7: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/7.jpg)
![Page 8: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/8.jpg)
http://games.on.net/2013/08/saints-row-4-steam-release-date-changes-again-now-just-says-september/
![Page 9: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/9.jpg)
http://games.on.net/2013/08/saints-row-4-steam-release-date-changes-again-now-just-says-september/
http://www.ihatecellulite.com/images/quick-fix-for-cellulite.jpg
![Page 10: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/10.jpg)
http://games.on.net/2013/08/saints-row-4-steam-release-date-changes-again-now-just-says-september/
http://www.ihatecellulite.com/images/quick-fix-for-cellulite.jpg
http://www.oio.de/m/konf/diverse/Continuous-database-design-JUGH2015.pdf
![Page 11: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/11.jpg)
Continuous Delivery?
Kontrollierte DB-Änderungen
Keine Downtime
![Page 12: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/12.jpg)
Quellcode wird versioniert,
DB-Änderungen sollten auch!
![Page 13: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/13.jpg)
![Page 14: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/14.jpg)
merken sich in einer von ihnen selbst verwalteten Metatabelle für jedes Schema den aktuellen Versionsstand der jeweiligen Datenbank
![Page 15: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/15.jpg)
![Page 16: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/16.jpg)
Integration in eigene Anwendung
(Migration on startup)
Oder in den Build-Prozess
(Command-Line, Ant, …)
![Page 17: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/17.jpg)
Kein Datenbank-Administrator mehr
notwendig
![Page 18: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/18.jpg)
![Page 19: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/19.jpg)
![Page 20: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/20.jpg)
![Page 21: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/21.jpg)
![Page 22: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/22.jpg)
![Page 24: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/24.jpg)
![Page 25: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/25.jpg)
![Page 26: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/26.jpg)
Funktionen
![Page 27: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/27.jpg)
Flyway zusätzlich:
SQL Azure
Google Cloud SQL
HP Vertica
AWS Redshift
DB2 on z/OS
SolidDB
Sybase ASE *
SAP HANA *
Apache Phoenix *
beide:
Oracle
SQL Server
DB2
MySQL
PostgreSQL
H2
Hsql
Derby
SQLite
MariaDB
LiquiBase zusätzlich:
Sybase_Enterprise
Sybase_Anywhere
Informix
Firebird
![Page 28: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/28.jpg)
Funktion Flyway LiquiBase
Migration +++
migrate
+++
update
Rollback - ++
rollback
Schema leeren +
clean
+
dropAll
Dokumentation +
info
++
DBDoc
![Page 29: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/29.jpg)
Funktion Flyway LiquiBase
Vergleich zweier Datenbanken
- ++
Diff
Validierung +
validate
-
Initialisierung +
baseline
-
Wartung +
repair
+
clearChecksums
![Page 30: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/30.jpg)
Funktion Flyway LiquiBase
Callbacks + -
Vorbedingungen - +
Kontexte - ++
Refactoring - ++
![Page 31: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/31.jpg)
Außerhalb der Wertung:
Die Funktion updateSQL von LiquiBase
Ermöglicht, die anstehende Migration zunächst als SQL-Befehle auszugeben, z.B. zu Review-Zwecken.
Ist bei Flyway nicht relevant, da Plain-SQL-Skripte verwendet werden
Flyway LiquiBase
Endergebnis 9 16
![Page 32: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/32.jpg)
![Page 33: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/33.jpg)
Einbindung in bestehende Projekte
![Page 34: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/34.jpg)
Herausforderung
Die aktuellen Datenbank-Stände
nachträglich versionieren
![Page 35: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/35.jpg)
LiquiBase
● Stand der Produktion per generateChangelog als Version 1 taggen
● Per Diff mit anderen Umgebungen vergleichen und changelogserzeugen
● changelogs als „bereits gelaufen“ markieren bzw. für neue Läufe ausschließen
Flyway
● Manuellen Abzug (DDL) der Produktion erzeugen als Version 1 Skript
● Per clean alle anderen Datenbanken leeren und auf Version 1 migrieren
● Oder manuell auf den Stand der Produktion bringen und per baseline-Befehl den Stand als Version 1 setzen
![Page 36: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/36.jpg)
Integration bei LiquiBase
durch geschickte Kombination
mächtiger Funktionen
deutlich vielversprechender
![Page 37: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/37.jpg)
![Page 38: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/38.jpg)
Integrationsmöglichkeiten
![Page 39: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/39.jpg)
Flyway:
Java-API
Command-Line
Maven
Ant
Gradle
SBT
LiquiBase:
Java-API
Command-Line
Maven
Ant
Spring (als Bean)
Servlet-Listener
CDI Environment
![Page 40: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/40.jpg)
Flyway LiquiBase
Java-API
Command-Line
Ant
Maven
Gradle
SBT
Spring
Servlet-Listener
CDI-Environment
![Page 41: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/41.jpg)
![Page 42: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/42.jpg)
Inbetriebnahme & Handhabung
![Page 43: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/43.jpg)
Flyway
● Archiv entpacken
● DB-Treiber inklusive
● Sehr einfach für neue Projekte
● Konfigurationsvorlage
● SQL-Skripte 1:1 verwendbar
● Aufruf mit einer Zeile in der Konsole
LiquiBase
● Archiv entpacken
● DB-Treiber besorgen
● Konfigurationsdatei selbst anlegen
● SQL-Skripte anpassen bzw. changelog.xml erstellen
● Aufruf mit einer Zeile in der Konsole
![Page 44: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/44.jpg)
Vorteile Nachteile
Flyway - Einfache Konfiguration, vieles wird direkt mitgeliefert
- Die Einbindung in Java ist sehr einfach
- Generell leicht zu erlernen und einzusetzen
- Im Fehlerfall ist kein automatisches Rollback möglich
LiquiBase - Automatisches Rollback erleichtert die Handhabung im Fehlerfall
- Viele Parameter für die Kommando-Zeile notwendig
- Schwerer zu erlernen (z.B. Syntax für Changelog-Datei)
- Einbindung in Java ist nicht beschrieben, nur JavaDoc steht online bereit
![Page 45: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/45.jpg)
![Page 46: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/46.jpg)
Verfügbare Plug-Ins
![Page 47: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/47.jpg)
Flyway:Spring Boot & Roo, Grails, Play, DropWizard, ...
http://flywaydb.org/documentation/pluginsThirdParty.html
LiquiBase:Hauptsächlich DB-Extensions
https://liquibase.jira.com/wiki/display/CONTRIB/Liquibase+Extensions+Portal
LiquiBase hat mehr, Flyway aber die interessanteren
![Page 48: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/48.jpg)
![Page 49: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/49.jpg)
Rahmenbedingungen
![Page 50: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/50.jpg)
● Community
● Entwicklung
● Dokumentation
● Support
![Page 51: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/51.jpg)
1. Community
LiquiBase ca. 3-4 mal so viele Contributor (189 zu 51)
und Commits wie Flyway (4952 zu 1540) [Stand 08.03.16]
→ Vorteil LiquiBase
![Page 52: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/52.jpg)
2. Entwicklung
LiquiBase deutlich mehr Tickets (auch offene)
Aber auch deutlich weitere Verbreitung
Releases bei beiden eher unregelmäßig
→ Unentschieden
![Page 53: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/53.jpg)
3. Dokumentation
Flyway:
alles sehr gut beschrieben, kurz aber verständlich
LiquiBase:
alles sehr gut beschrieben, mehr Umfang da mehr Features,
→ Unentschieden
![Page 54: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/54.jpg)
4. professioneller Support
Flyway: ja, sogar auf deutsch
LiquiBase: ja, Sprache Englisch, da Firmensitz Texas
→ Vorteil Flyway
![Page 55: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/55.jpg)
● Community → LiquiBase
● Entwicklung → Unentschieden
● Dokumentation → Unentschieden
● Support → Flyway
→ insgesamt Unentschieden
![Page 56: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/56.jpg)
![Page 57: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/57.jpg)
Knapper Sieg für LiquiBase, aber … Entscheidung für Flyway oder LiquiBasehängt von anderen Faktoren ab:
● Wird im Projekt eine spezielle Datenbank verwendet, die nur ein Tool unterstützt?
● Will man seine bisherigen SQL-Skripte 1:1 weiterverwenden?
● Kann man auf Rollbacks verzichten? (z.B. durch geschickte Forward-Migrationen)
● Benötigt man deutschen Support?
● Will man seine Testdaten mit verwalten lassen?
● Will man diverse DBMS unterstützen?
● Wie groß ist das Entwicklerteam?
![Page 58: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/58.jpg)
Unterstützung von NoSQL-Datenbanken ist noch offen
Starten Sie mit einem kleinen neuen Projekt
Machen Sie behutsam auf die Vorteile aufmerksam
Es sind nicht nur technische Hürden zu überwinden
![Page 59: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/59.jpg)
Noch Fragen?
Artikel dazu in ObjektSpektrum 2/2015
Stephan Kaps | @kitenco1 | [email protected]
Vielen Dank an Rebecca Nöll für die Erstellung der Boxring-Grafiken
![Page 60: Flyway vs. LiquiBase - doag.org · PDF fileSybase ASE * SAP HANA * Apache Phoenix ... MySQL PostgreSQL H2 Hsql Derby SQLite MariaDB LiquiBase zusätzlich: Sybase_Enterprise Sybase](https://reader033.fdocument.pub/reader033/viewer/2022052420/5aa601297f8b9a2f048e35f2/html5/thumbnails/60.jpg)
● Continuous
Delivery
● ApplicationLifecycleManagement
● Social-Collaboration
● Vorträge
● Artikel
● PoCs
● JIRA
● Jenkins
● Confluence
● Schulung
● Coaching
● Training