Je Oracle-database upgraden, of niet… Welke risico’s loop je nu echt?
Geplaatst op: 20 september 2023 • Peter de Vaal • Blog

Je hebt één of meerdere Oracle-databases in je organisatie én je vraagt je af

  • Hoe lang ondersteunt Oracle de gebruikte versie(s) nog?
  • Wat het risico is van uitstellen?
  • Wat het risico is van nu upgraden?
  • Kan je die oude versie nog jaren gebruiken?
  • Of past die Oracle-database überhaupt nog wel in je toekomstplannen?

Herken je deze vragen? Lees dan snel verder. De kans is groot dat je hierna zo snel mogelijk plannen maakt om naar de laatste versie over te stappen. Je wilt immers niet zo’n schrijnende case worden die we af en toe tegenkomen in ons werk.

Ondersteuning van database versies door Oracle

Vroeger waren er major en minor releases

In het verleden bracht Oracle eens in de zoveel jaar een nieuwe Major release uit met allerlei nieuwe functionaliteit. Daar tussendoor kwamen kleinere releases met weinig of geen nieuwe functionaliteit. Tot en met versie 12 was er meestal een eerste en tweede minor release, dus 10.1 en 10.2, 11.1 en 11.2. In al deze gevallen was de tweede release de meest gebruikte. Veel organisaties wachtten met een upgrade of migratie tot de tweede release uit was. Men verwachtte in de eerste versie nog diverse bugs. Begrijpelijk. Maar hoe zit dat nu?

Nu zijn er Long Term releases en Innovation releases

Vanaf 12.2 is Oracle een andere weg ingeslagen. Er wordt nu gesproken van een Long Term release en een Innovation release. Oracle 11.2 kan beschouwd worden als de vorige Long Term release, en 19c als de huidige. De releases 12.1, 12.2 en 18c waren allen Innovation releases, en ook 21c is dat. De eerstvolgende Long term release is 23c.

In tegenstelling tot het verleden wordt nu verwacht dat elke Long Term release zonder problemen kan worden gebruikt voor de volgende upgrade. De achtergrond hiervan is dat Oracle in de cloud de upgrades routinematig uitvoert en er volledig op vertrouwt dat deze kleinere upgrades nergens grote problemen veroorzaken.

Vraag je je af of je nu al moet overstappen naar release 23c? Het onderstaande releasesondersteuningsschema kan je helpen:

Wat opvalt is dat alle versies van voor de huidige Long Term release (19c) al uit support zijn, er is zelfs geen betaalde extended support meer mogelijk. De enige 2 versies die vandaag (tweede helft 2023) volledige ondersteund worden zijn 19c en 21c. Daar komt naar alle waarschijnlijkheid 23c zeer binnenkort bij.

Waarom een upgrade op korte termijn echt nodig is

Misschien denk je dat applicaties wel blijven functioneren op een oudere, niet meer ondersteunde versie van de database. Hij draait immers al jaren stabiel. Je omgeving is echter vaak wat minder stabiel. Zo wordt regelmatig hardware vervangen of een operating system geupgrade. Of misschien wil je jouw applicaties naar de cloud verplaatsen met een Bring Your Own Licence (BYOL) optie.

Deze veranderingen kunnen maken dat de niet-meer-ondersteunde database op het nieuwe platform niet meer goed functioneert. Dat lijkt soms bangmakerij, maar wij hebben diverse schrijnende gevallen meegemaakt waarbij slechts met draconische oplossingen applicaties nog in de lucht gehouden konden worden.

Een andere reden om vaart te maken met het moderniseren van je database is dat zolang je een (eventueel extended) support contract hebt het gratis is om over te stappen naar een nieuwe, ondersteunde versie. Maar wacht je te lang, dan gaat het extra geld kosten. In feite moet je een nieuwe licentie kopen, en dat is aanzienlijk kostbaarder dan een supportcontract. Mocht je al in die situatie zitten dan kan wellicht een overstap naar een Cloud contract nog uitkomst bieden, er zijn diverse Cloud aanbiedingen die aantrekkelijker zijn dan een BYOL.

Extra voordelen van upgraden

Oracle biedt veel meer dan simpele dataopslag. Als je jouw Oracle-database ook gebruikt voor de ontwikkeling van applicaties en integraties, kan je extra profiteren van de mogelijkheden die moderne applicatiearchitecturen met zich meebrengen. Zo zijn er populaire concepten zoals een microservices architectuur, en documentgerichte applicaties een stuk eenvoudiger te realiseren. Je kunt met de oudere versies van Oracle wel zulke applicaties of services bouwen, maar daar komt veel bij kijken.

Wanneer je overstapt naar Oracle 23c dan is er een veelvoud aan nieuwe mogelijkheden:

JSON

Release 23c (en zelfs 19c) kan soepel omgaan met JSON-documenten, het gegevensformaat dat zeer populair is in moderne webapplicaties. Met het speelveld veranderde nieuwe JSON Duality Views in 23c kunnen zelfs op JSON-documenten gebaseerde applicaties low-code gebouwd worden zonder aan de applicatiekant maar iets te hoeven programmeren.

ACID principe

Een concept van databaseapplicaties uit het client-server tijdperk heeft een comeback: Er is weer volledige concurrency controle over de transacties volgens het ACID principe (wat o.m. ervoor zorgt dat gebruikers elkaars wijzigingen niet kunnen overschrijven), een aspect dat verloren was gegaan bij webapplicatiearchitecturen.

Javascript, Property Graphs en meer

Met een database die Javascript begrijpt, die zonder wijziging met op MongoDB gebouwde applicaties kan werken, de steeds populairder wordende Property Graphs voor analytische doeleinden snapt, en die nog meer dan ooit aan afgesproken standaarden voldoet wordt er een wereld van mogelijkheden geopend.

Wereldleider

Oracle mag met recht een Translytical of in hun eigen woorden een Converged database genoemd worden (een database die voor elk soort doeleind gebruikt kan worden, zowel voor transacties als voor analytics en meer), is daar wereldleider in, en de voorsprong op de concurrentie wordt met versie 23c nog eens enorm vergroot. Het betekent dat je niet meer naar andersoortige databases, zoals NoSQL, DocumentStore (MongoDB) etc. hoeft te zoeken, Oracle kan alles aan, in de voor zowel beheerders als ontwikkelaars vertrouwde omgeving.

Naar welke versie gaan we?

Wie nog op 18c of lager zit moet dus zo snel mogelijk overstappen naar een ondersteunde versie. Wordt dat 19c, of 23c zodra die beschikbaar is?

Kies voor 19c als:

Je applicaties al jaren draaien en er geen plannen zijn om uitgebreide nieuwe functionaliteit te (laten) bouwen. De keuze om op een versie te zitten die nog langere tijd ondersteund wordt is hierbij de veiligste, ook al biedt deze niet per se veel nieuwe mogelijkheden. Dan is de keuze voor 19c een goede, zeker als de upgrade voor eind 2024 gepland staat. Wordt de upgrade uitgesteld tot 2025 dan is het aan te bevelen om meteen naar 23c te gaan.

Kies voor 23c als:

Er nog regelmatig nieuwe functionaliteit ontwikkeld wordt. Zelfs als dat alleen maar uitbreiden van bestaande applicaties betreft, is het zeer aan te bevelen om gelijk naar 23c over te stappen. Zo plukt u echt de vruchten van de huidige mogelijkheden. Het heeft geen toegevoegde waarde om eerst naar 21c te gaan omdat deze versie geen extended support heeft en bovendien nog lang niet alle features bevat die 23c zo interessant maken. Daarbij komt dat enkele van de 21c features ook in de latere updates van 19c zijn toegevoegd.

Wat zijn de risico’s bij een upgrade?

Wij hebben diverse database upgrades of migraties uitgevoerd of meegemaakt. Het aantal issues bij upgrades naar de eerstvolgende (long term) release is over het algemeen zeer laag.

Bij upgrades waar een aantal versies overgeslagen wordt kan het zijn dat er vervallen functionaliteit vervangen moet worden. Zulke wijzigingen worden zeer lang van tevoren door Oracle aangekondigd, en het daadwerkelijk vervallen wordt meestal pas na een aantal releases daadwerkelijk doorgevoerd.
Bij het overslaan van versies moet je erop rekenen dat een rechtstreeks upgrade niet mogelijk is, maar dat deze in 2 of meer stappen moet plaatsvinden. Dit vergroot de doorlooptijd. De laagste versie die in aanmerking komt voor een rechtstreekse upgrade naar 19c is 11.2.

Wanneer de versie zo oud is dat minimaal 1 tussenversie nodig is om de upgrade uit te voeren, bijvoorbeeld van 10g naar 19c, dan is het aan te bevelen om een migratie uit te voeren. Hierbij wordt via export en import de schemaobjecten en data in 1 of meer stappen van de oude naar de nieuwe database overgebracht. Met deze methode zijn goede ervaringen.

Er zijn een paar situaties waar bij upgrades rekening gehouden moet worden, zoals gebruik van Java in de database, gebruik van Advanced Queues, conversies van 8-bits karaktersets naar UTF8, gebruik van LONG kolommen, gebruik van utl_file voor lezen en schrijven van bestanden. Maar als dit vooraf goed in kaart is gebracht, kan met de juiste maatregelen de upgrade probleemloos worden uitgevoerd.

Conclusie

Meebewegen met de nieuwere Oracle-database versies brengt steeds minder risico met zich mee. Het tegengestelde is eerder waar: nieuwere versies bieden meer mogelijkheden en zijn beter bestand tegen updates van bijvoorbeeld het Operating System. Zoals hierboven geschetst hangt de exacte situatie af van je situatie en behoeften. Mocht je willen sparren over de beste aanpak, dan staan wij altijd voor je klaar. Wij kunnen helpen van een migratieplan tot en met een succesvolle uitvoering.

Nieuws

Meer nieuws

Blog

Meer blogitems

Training & Events

Meer training & events