Blog
Azure SQL database migration | Migratie naar Azure
Azure SQL database migration | Migratie naar Azure

Oracle migratie naar Azure SQL Server – Deel 2

Recentelijk zijn wij door twee van onze klanten benaderd om te helpen bij het overstappen van Oracle in eigen beheer naar een beheerde Azure SQL Server. In de vorige blog hebben we uitgelegd hoe wij gebruik maken van een gelaagde architectuur. Dit maakt het makkelijk om de ene database naar de andere te migreren. We vroegen Eric Wijnands om ons meer te vertellen over een van zijn huidige projecten, de migratie van een Oracle webapplicatie naar Azure. 

Wie is Eric?

Eric is onze Systeem Architect en werkt inmiddels al meer dan 20 jaar voor BSL. Hij kent veel van onze klanten en heeft menig project geleid. Daardoor heeft hij een schat aan ervaring opgebouwd.
Hoewel hij zelf met Windows werkt, heeft hij ervaring met verschillende platforms en ook met een breed scala aan technologieën.

Eric, wat was je eerste indruk van Azure?

Het Azure platform bevat een brede reeks van diensten. Er zijn verschillende Cloud services beschikbaar, waaronder Azure SQL. Binnen Azure SQL kun je kiezen uit een Azure SQL database, een beheerd platform of een SQL server in een Virtual Machine.

Voor BSL is de Azure SQL database het meest relevant. We zijn reeds bekend met veel van de SQL Server features. De database wordt geleverd als een cloud service. Dit houdt in dat Microsoft, de provider, zorgt voor de beschikbaarheid, updates en backups. Dus alle voordelen van een SQL server zonder de administratieve rompslomp. En omdat je betaalt naar gebruik kan er gemakkelijk opgeschaald worden om te voldoen aan een hogere vraag.

Hoe was het om SRS van Oracle naar Azure SQL Server te migreren?

SRS is volledig ontwikkeld in Oracle. Wij ontwikkelen vaker in Oracle, omdat dat ten opzichte van andere databases meer functionaliteit biedt. BSL is echter flexibel, dus over de jaren hebben we meerdere databases gebruikt, waaronder SQL Server databases.

We zijn bekend met zowel het Oracle (PL/SQL) als SQL Server (Transact-SQL) dialect. Ook zijn we op de hoogte van de verschillende datatypes die beide databases ondersteunen. Toch was Azure SQL Server nieuw voor ons. We zijn dus eerst begonnen met het opzetten van accounts. Om gevoel voor het product te krijgen hebben we simpele test databases opgezet. Dit gaf ons ook de kans om onze Java DB libraries te testen tegen een Azure SQL database.

Zijn er hulpmiddelen gebruikt voor de migratie?

Aanvankelijk hebben we gebruik gemaakt van de Microsoft SQL Server Migration Assistant for Oracle (SSMA) om de Oracle tabellen en packages te converteren. Het datamodel werd goed gemigreerd door SSMA, maar de SQL code minder. SSMA probeert Oracle features die niet bestaan in SQL Server na te bootsen door functionaliteit toe te voegen in SQL Server. De gegenereerde code is echter lastig om te lezen en te onderhouden.

We hebben daarna gekeken naar de programma’s van SQLines. SQLData kan zowel het datamodel als de data tussen beide databases overzetten. Dit hebben we gebruikt om de data te migreren en om de Oracle tabellen, inclusief kolomdocumentatie en indexen, aan te maken in de Azure SQL Server.

Met de SQL Converter van SQLines kan de SQL code geconverteerd worden, inclusief stored procedures (SP’s), triggers en stored functions. Met deze Converter hebben we de Oracle packages geconverteerd. De gegenereerde code van dit programma was een stuk beter leesbaar en sloot beter aan op de oorspronkelijke Oracle code.

Wat waren de uitdagingen?

De uitdaging zat hem vooral in het converteren van de datatypes. Het Oracle type ORDImage bijvoorbeeld bestaat niet in Azure SQL. Dit type bevat onder andere het mime-type en de binaire inhoud. In Azure SQL hebben we dit datatype moeten scheiden over twee kolommen – één voor het mime-type en één voor de binaire data.

Daarnaast hebben we enkele gebruikte datatypes kunnen optimaliseren. In Oracle gebruikten we bijvoorbeeld een NUMBER(1) datatype om Boolean waarden (ja/nee) op te slaan. In SQL Server kunnen we het type BIT gebruiken, wat ruimte besparing en betere prestaties oplevert.

Welke problemen kwamen jullie tegen bij het converteren van de SP’s?

We hebben ongeveer 20.000 regels code en meer dan 200 stored procedures geconverteerd. Dit moesten we allemaal nalopen na de conversie door SQLines. Sowieso moesten we onze foutafhandeling aanpassen, zowel in de database code als in de Java database libraries. Daarnaast waren er een aantal verschillen in syntax.

Hoewel de gebruikte tools veel van het conversiewerk voor zijn rekening hebben genomen, moesten onze ontwikkelaars de gegeneerde code wel volledig nalopen en aanpassen waar nodig. Zo liepen we bijvoorbeeld tegen de volgende problemen aan:

  • Oracle converteert automatisch tussen numerieke en tekst waarden, maar SQL Server doet dit niet.
  • Oracle maakt geen onderscheid tussen de NULL waarde en een lege tekst, maar SQL Server ondersteunt dit onderscheid wel.
  • De XML manipulatie van Oracle (XML DB) verschilt van de implementatie van de SQL Server. Gelukkig konden wij dankzij het gebruik van Transact-SQL een één-op-één conversie bewerkstelligen.

We hadden ongeveer zo’n 12 dagen nodig om alle code na te lopen en aanpassingen te doen. Het gehele proces van de database conversie, inclusief data, nam zo’n 14 dagen in beslag.

Hoe kijk je nu aan tegen het Azure platform?

Eric was kort en bondig: “De Azure SQL Database werkt prima: we kunnen met onze applicaties de database bereiken en het uitvoeren van de geconverteerde SQL code levert dezelfde resultaten op als bij een connectie met een Oracle database. We zijn er ook van overtuigd dat er vrij weinig database onderhoud nodig is in het toekomst.

Neem contact op

Heeft u plannen om uw eigen systeem te migreren naar Azure, of naar andere databases waarmee wij bekend zijn? Neem dan contact met ons op. Wellicht kunnen we u van dienst zijn. U bent vrij om contact op te nemen met onze relatiemanager Caroline Bos. Zij kan dan een online call opzetten.

Progressive Web Apps in EU ondermijnd door Apple?

Progressive Web Apps in EU ondermijnd door Apple?

Mocht u niet bekend zijn met de ontwikkeling van mobiele apps: Apple heeft onlangs voor opschudding in het iOS-ecosysteem gezorgd. Sinds de eerste bèta’s van iOS 17.4 merkten ontwikkelaars dat zogenaamde “Progressive Web Apps” (PWA’s) niet meer functioneerden in de EU. Ons blog legt meer uit.

De rol van AI in Business Intelligence voor multinationals

De rol van AI in Business Intelligence voor multinationals

BSL levert Business Intelligence-oplossingen aan multinationale organisaties, waarbij content uit duizenden publicaties wereldwijd wordt geïntegreerd en dagelijkse thematische nieuwsberichten en briefings aan zakelijke gebruikers worden geleverd. Onlangs hebben we AI-technologieën geïntroduceerd in deze diensten.

Digitale schoolborden en de Canon van Nederland

Digitale schoolborden en de Canon van Nederland

Onlangs nam de leverancier van digitale schermen CTOUCH contact op met BSL met het verzoek om de Canon van Nederland app in hun winkel op te nemen voor gebruik op hun digitale schoolborden in klaslokalen. Wij vonden het een goed idee en hebben onlangs een versie van onze app gemaakt, speciaal voor het grote scherm.

Google Looker Studio: Big data begrijpelijk gemaakt

Google Looker Studio: Big data begrijpelijk gemaakt

In de wereld van vandaag is het belangrijk om snel en goed geïnformeerde beslissingen te nemen. Google Looker Studio is een gratis tool die hierbij helpt. Het kan uw grote hoeveelheid Analytics gegevens omzetten in informatieve, eenvoudig leesbare dashboards en rapporten die volledig aanpasbaar zijn.

Laat BSL uw website onderhoudsupdates verzorgen

Laat BSL uw website onderhoudsupdates verzorgen

We begrijpen het belang van updates voor website onderhoudsupdates voor WordPress en Drupal. Hackers hebben het gemunt op open-source producten, dus het up-to-date houden van uw CMS is essentieel. Vertrouw op BSL om uw website veilig te houden terwijl u zich concentreert op het maken van content voor uw publiek.

BSL Zomerevenement op het water

BSL Zomerevenement op het water

Het was tijd voor ons jaarlijkse zomerevenement met het hele bedrijf. Dit jaar had Diana een boottocht geregeld in een salonboot over de Vecht richting Loenen en Vreeland. Na de boottocht werd de middag voortgezet in het restaurant van Bistrotel ‘t Amsterdammertje, waar iedereen genoot van een heerlijk diner.

Adobe Firefly en Photoshop Beta met generative fill

Adobe Firefly en Photoshop Beta met generative fill

Na het succes van ChatGPT en Midjourney AI, kon Adobe niet achterblijven en maakten ze hun Beta releases van Adobe Firefly en Photoshop AI openbaar. Met de komst van de Adobe Beta’s hebben we onze aandacht gericht op deze nieuwkomers in vergelijking met Midjourney.

Midjourney prompt – Hoe beschrijf je een afbeelding

Midjourney prompt – Hoe beschrijf je een afbeelding

In een eerdere blog hebben we Midjourney geïntroduceerd als een hulpmiddel dat we binnen BSL gebruiken bij het ontwerpen van websites en banners voor blogs. Om Midjourney de afbeelding te laten maken dat je in gedachten hebt, moet je een prompt maken die de afbeelding beschrijft. Dit nieuwe blog bespreekt de mogelijkheden.

Drupal 9 ontwikkeling met Tailwind CSS

Drupal 9 ontwikkeling met Tailwind CSS

Met behulp van Drupal heeft BSL een uitgebreide intranet site gebouwd dat voor alle medewerkers toegankelijk is. We zijn een nieuwe versie van de site aan het ontwikkelen. In dit blog vertelt een van onze ontwikkelaars over de tools die we gebruiken, zoals Twig templates, de Entity en Form APIs en Tailwind CSS.

Midjourney – Jouw ideeën omzetten in beelden

Midjourney – Jouw ideeën omzetten in beelden

De afgelopen weken heeft de Bright Side of Life zich verdiept in de mogelijkheden van Artificial Intelligence. In ons nieuwste blog gaan we het hebben over Midjourney AI, een webdienst die afbeeldingen genereert op basis van natuurlijke taalbeschrijvingen (genaamd “prompts”). En de resultaten zijn erg indrukwekkend.

Langdurige samenwerking met klanten biedt vele voordelen

Langdurige samenwerking met klanten biedt vele voordelen

NBD Biblion biedt gepersonaliseerde aanbevelingen voor boeken en mediatitels aan scholen en bibliotheken en levert hen de titels die zij selecteren. BSL en NBD Biblion hebben een langdurige samenwerking. Wij leveren al meer dan twintig jaar technisch advies, ontwikkelingsteams en ondersteuning.

ChatGPT gebruikt voor bedrijfsinformatie analyses

ChatGPT gebruikt voor bedrijfsinformatie analyses

Na de eerste enthousiaste reacties bij de introductie van ChatGPT en AI verschoof de aandacht naar de slechte kwaliteit van veel antwoorden. Door Azure OpenAI en Cognitive Search met betrouwbare data te gebruiken kunnen gebruikers zoeken door middel van natuurlijke taal bedrijfsinformatie van hoge kwaliteit vinden.

Oorlog tussen browser-engines – deel 2 – monopolie Apple

Oorlog tussen browser-engines – deel 2 – monopolie Apple

Het Apple’s monopolie betekent dat elke app op iOS – ook browsers van concurrenten van Apple – WebKit moet gebruiken om webinhoud weer te geven. Hoewel het niet ongebruikelijk is dat ontwikkelaars een engine van derden gebruiken, kunnen ze vaak zelf bepalen welke eigenschappen ze in hun browser gebruiken.

Oorlog tussen browser-engines – deel 1 – de verschillende kampen

Oorlog tussen browser-engines – deel 1 – de verschillende kampen

The Register meldde onlangs dat Google werkt aan een iOS-versie van Chromium. Een paar dagen later volgde een tweede artikel met hierin dat Mozilla werkt aan een iOS-versie van Gecko, de browser-engine van Firefox. Beide berichten suggereren dat de browser-engine van Apple iOS, WebKit, zijn monopolie dreigt te verliezen.

Donatie aan de slachtoffers van de aardbeving in Turkije en Syrië

Donatie aan de slachtoffers van de aardbeving in Turkije en Syrië

Op 6 februari zijn Turkije en Syrië getroffen door meerdere krachtige aardbevingen en naschokken. Deze bevingen hebben naar schatting 23 miljoen mensen getroffen, waaronder velen die door het conflict in Syrië al in grote nood verkeerden. Indien mogelijk, doneer dan net als BSL op Giro 555.

WordPress en page builders zoals Divi en Elementor

WordPress en page builders zoals Divi en Elementor

Voor het bouwen van websites maken wij gebruik van WordPress in combinatie met page builders. In WordPress is het makkelijk de content te beheren en krijg je vele opties om de website uit te breiden. Met page builders zoals Divi en Elementor kun je gemakkelijk en snel pagina’s ontwerpen en bouwen.

2022 en de Bright Side of Life

2022 en de Bright Side of Life

De tijd nemen om regelmatig stil te staan bij de dingen waar we dankbaar voor zijn, kan helpen ons perspectief te verleggen en ons te richten op de positieve aspecten van ons werk. Dus, hier zijn de dingen waarvoor ik dankbaar ben in 2022.

SEO-voordelen en de kracht van inhoud van goede kwaliteit

SEO-voordelen en de kracht van inhoud van goede kwaliteit

Veel bedrijfseigenaren denken nog steeds dat hun website een visitekaartje is. Hun uitdrukking is vaak: “onze klanten/publiek weten ons al te vinden…”. Dit kan kloppen, maar door uw website te optimaliseren bereikt u een nieuw publiek.

Nieuwe vacature website voor Keylane Careers

Nieuwe vacature website voor Keylane Careers

Keylane heeft BSL gevraagd te helpen bij het ontwerpen en bouwen van een nieuwe Keylane Careers vacature website. Het belangrijkste doel is om het aantal bezoekers te verhogen door de organische zoekprestaties te verbeteren.

Nieuwe website voor BoekWijzer

Nieuwe website voor BoekWijzer

We hebben de BoekWijzer website geheel vernieuwd! De website is gebouwd ter ondersteuning van de BoekWijzer app, de mobiele gids in de wereld van de Nederlandse literatuur. Met deze app blijf je makkelijk op de hoogte van het laatste literaire nieuws.

Nieuwe developer / webdesigner binnen BSL

Nieuwe developer / webdesigner binnen BSL

Als u vragen heeft over uw website of webdesign, dan staat Patrick van Bennekom 5 dagen per week tot uw beschikking! Hij werkt onder andere aan websites, apps, logo’s en huisstijlen. Patrick zorgt ervoor dat er een professioneel eindproduct staat.

Voordelen en kansen bij het migreren naar de cloud

Voordelen en kansen bij het migreren naar de cloud

Sommige van onze klanten migreren naar de cloud of heroverwegen hun legacy-systemen om in de toekomst alsnog naar de cloud te migreren. In opdracht van multinationals hebben wij twee migraties uitgevoerd en onze ervaring leert ons dat een directe aanpak (simpelweg het overzetten van bestaande databases en applicaties op virtuele machines) niet altijd de beste route is…

Beleev: de interactieve snoezelruimte

Beleev: de interactieve snoezelruimte

Wellicht heb je nog nooit van snoezelen gehoord. Dit betekent dat je de zintuigen extra laat prikkelen door externe middelen die in een omgeving aanwezig zijn, de zogenaamde snoezelruimte. In opdracht van St. Jan Baptist, school voor speciaal onderwijs, te Kerkrade hebben we software ontwikkeld voor snoezelruimtes om de verlichting, audio, switches en een videoprojector te kunnen beheren.

Vaarwel 2021 en Covid-19 -lockdowns – tijd om terug te blikken

Vaarwel 2021 en Covid-19 -lockdowns – tijd om terug te blikken

Wie had begin 2020 gedacht dat we in januari 2022 nog steeds onder COVID-19 lockdown maatregelen zouden werken? Gelukkig heb ik meer verstand van softwareontwikkeling, dan van horeca. Als directeur van een IT-bedrijf ben ik blij te kunnen zeggen dat Bright Side of Life werken op afstand heeft opgepakt als een vis in het water. Laat me je vertellen over ons jaar.

Canon van Nederland apps zijn verkrijgbaar in de stores

Canon van Nederland apps zijn verkrijgbaar in de stores

De Canon van Nederland (2007) vertelt het verhaal hoe Nederland is ontstaan. Aan de hand van de Canon ontwikkelde BSL een paar jaar later de populaire EnToen Nu apps voor iOS en Android. In 2020 is de Canon uitgebreid herzien, dus hebben we de Canon apps volledig herschreven, up-to-date gemaakt. Ze zijn nu beschikbaar in de app stores.

Krachtige AI-zoekmogelijkheden integreren in apps en webservices

Krachtige AI-zoekmogelijkheden integreren in apps en webservices

Zoektechnologie evolueert voortdurend, dus we staan altijd klaar om nieuwe technologieën te integreren voor onze klanten. Dit blog schetst onze recente ervaringen met Azure Cognitive Search en AI-zoekmogelijkheden, die we gebruiken om elke dag duizenden nieuwe documenten te classificeren en op maat attenderingen aan abonnees te leveren.

Canon van Nederland apps binnenkort beschikbaar!

Canon van Nederland apps binnenkort beschikbaar!

De Commissie Ontwikkeling Canon van Nederland ontwikkelde in 2007 de Canon van Nederland. BSL ontwikkelde een paar jaar later de apps, en sinds de lancering in 2013 zijn het een van de best beoordeelde schoolapps. In 2020 heeft een nieuwe Canoncommissie de Canon geactualiseerd. En de nieuwe Canon van Nederland apps zijn onderweg!

Drupal 9 vervangt Drupal 8. Lang leve Drupal 7!

Drupal 9 vervangt Drupal 8. Lang leve Drupal 7!

Vorig jaar is Drupal 9 uitgebracht en Drupal 8 is end-of-life in november 2021. Daar is niets vreemds aan. Maar wist je dat de levensduur van Drupal 7 is verlengd tot november 2022? Door het hoge aantal actieve gebruikers zal het langer in gebruik blijven dan Drupal 8! Maar als je Drupal 7 nog steeds gebruikt wordt het hoog tijd om je overgang naar Drupal 9 te plannen.

4

Previous

5

Next

Contact BSL