Dynamische datamodellen: hoe omgaan met doorlopend nieuwe tabellen en kolommen

Go to English version

Voor de meeste drivers van Invantive verandert de inhoud van het datamodel per release van Invantive SQL-gebaseerde producten zoals Invantive Cloud.

Onder andere de Loket SQL en Power BI-tabellen kent een dynamisch datamodel: Loket neemt zelfstandig en regelmatig nieuwe releases in productie. Deze nieuwe releases kunnen gepaard gaan met een bijgewerkt datamodel. Dit nieuwe Loket datamodel wordt normaliter binnen enkele dagen automatisch verwerkt in Invantive Cloud en Invantive SQL zonder dat daarvoor een aparte release van Invantive Cloud of SQL voor nodig is.

Op dit moment bevat de Loket API driver circa 609 tabellen en bijna 12.000 kolommen.

Nieuwe releases van Loket kunnen gepaard gaan met nieuwe tabellen, nieuwe kolommen, maar ook vervallen tabellen en kolommen. Ook kan een nieuwe Loket-release gepaard gaan met een gewijzigde betekenis, maar dit zal zelden het geval zijn omdat het bestaande verdere verwerkingen kan schaden.

Invantive publiceert op dit moment geen releasenotes voor de datamodellen van platformpartners zoals wel voor de eigen programmatuur op https://releasenotes.invantive.com. Er zijn ook geen plannen op dit moment om releasenotes uit te brengen voor door derden bepaalde datamodellen. De meeste platformpartners brengen momenteel geen of beperkte release notes uit of alleen een overzicht van de huidige situatie; dit lijkt de industriestandaard te zijn.

Gebruikers kunnen zelf indien gewenst release notes naar eigen behoefte samenstellen door de inhoud van de tabellen SystemTables@DataDictionary en SystemTableColumns@DataDictionary in de tijd te volgen.

Advies is om de verwerking van alle datamodellen zo vorm te geven dat nieuwe kolommen en/of nieuwe tabellen geen impact hebben. Voor het vervallen van of wijzigen van de betekenis van tabellen of kolommen is meestal een controle nodig.

Daarnaast is het advies om voor de programmatuur voor verdere verwerking intern of extern een SLA af te spreken, aangezien veel platformen geen private hosted bevroren versies kennen.

De datamodellen waarvan bekend is dat ze een dynamisch datamodel per release hebben zijn:

Daarnaast zijn de volgende datamodellen erg dynamisch doordat ze door de gebruiker zelf deels of geheel bepaald worden:

In het geval van Teamleader kan het toevoegen van een multi-optie custom field al een datamodelwijziging veroorzaken, maar ook bijvoorbeeld het hernoemen van een custom field.