Wdrożenia bez niedostępności
Problem: migracja pola date do datetime, bez zaprzestania działania.
dodajemy kolumnę datetime
wdrażamy wersję 2.0
odczyt z date
zapis do date+datetime
migrujemy dane date => datetime
wdrażamy wersję 3.0
odczyt z datetime
zapis do date+datetime - w momencie wdrożenia cały czas działa wersja 2.0 (która czyta z kolumny date)
wdrażamy wersję 4.0
odczyt z datetime
zapis do datetime
usuwamy kolumnę date
concurrentt ddl
lockmount
nie pozwala na powrót do aplikacji w wersji 3.0
Wersja
Odczyt
Zapis
1
date
date
2
date
date+datetime
3
datetime
date+datetime
4
datetime
datetime
omawiana zmiana nie jest trudna
złożone zmiany typu denormalizacja modelu są praktycznie nierealne do wykonania
w tym modelu mechanizm jest uniwersalny
Last updated
Was this helpful?