Nu de Wegiz met succes door de beide kamers is geloodst, is het tijd voor weer een nieuw paradigma. De nieuwe visie op het gezondheidsinformatiestelsel geeft prioriteit aan databeschikbaarheid, boven de gegevensuitwisselingen uit het Wegiz-tijdperk. Waar de Wegiz uitging van het uitwisselen van specifieke datasets ten behoeve van specifieke use cases of (transmurale) zorgpaden, gaat de nieuwe visie uit van brede beschikbaarheid van data los van specifieke zorgpaden. Daar is veel voor te zeggen, want zelfs een onwetende kan meer zorgpaden bedenken dan Nictiz kan standaardiseren. En iedere zorgverlener weet dat patiënten zich zelden houden aan een gestandaardiseerd zorgpad. Databeschikbaarheid komt tegemoet aan deze werkelijkheid; de zorgverlener bepaalt welke data nodig is voor de zorg aan een specifieke patiënt, en gebruikt daarvoor alle in het zorgnetwerk beschikbare data voor zover de professionele en wettelijke kaders dit toestaan. Met de toenemende nadruk op databeschikbaarheid binnen zorgnetwerken, wordt het ook van belang om opnieuw na te denken over op welke plek zorgdata het best kan worden opgeslagen in dat zorgnetwerk. En dus op welke plek ze het best beschikbaar kan worden gemaakt. Bij de patiënt zelf (bijvoorbeeld in een PGO of datakluis), ergens op een centrale plek of op een aantal samenwerkende centrale plekken? Of verspreid over verschillende zorgaanbieders (vaak data bij de bron genoemd). Zoals altijd in de (zorg-)ict, is er niet één beste optie en zijn er diverse varianten op de verschillende opties. In deze blog schets ik een theoretisch kader dat helpt in het nemen van beslissingen over de opslaglocatie(s) van zorgdata.
Centraal of gedistribueerd?
Laten we beginnen met de eenvoudigste maar ook meest bediscussieerde keuze; moet zorgdata centraal worden opgeslagen (in landelijke of regionale dataplatforms) of gedistribueerd worden opgeslagen (verspreid over diverse bronnen)? Centrale opslag (alle zorgdata in onderlinge samenhang op 1 plek opslaan) heeft op het eerste oog veel voordelen. De technologie is relatief eenvoudig en beproefd. Maar inmiddels zijn de nadelen van centrale opslag (of centrale verwerking in het algemeen) duidelijk. Centrale opslag leidt tot single-point-of-failure, is beperkt schaalbaar en is moeilijk te verenigen met het privacy by design principe uit de AVG. Let wel, dit geldt niet alleen voor zorgdata, maar voor alle persoonsgegevens. Hoepman (2012, Radboud University) beschrijft 8 design strategies die bijdragen aan 'privacy by design '. De derde strategie, 'separate' genoemd, stelt het volgende: Personal data should be processed in a distributed fashion, in separate compartments whenever possible (Hoepman, 2012). Omdat gedistribueerde opslag van data in 2023 beproefde technologie is, is duidelijk dat zorgdata niet samengevoegd dient te worden in grote centrale dataplatforms, maar in aparte compartimenten (partities) moet worden verdeeld. Maar hoe zien die partities er dan uit? Dit vraagt om een partitioneringsstrategie.
Partitioneren van zorgdata
Gedistribueerde opslag betekent dat zorgdata moet worden opgesplitst en verdeeld over verschillende knooppunten in het zorgnetwerk. Er zijn grofweg twee vormen van partitioneren: verticaal partitioneren en horizontaal partitioneren.
Horizontaal partitioneren wordt ook wel 'sharding' genoemd. Hierbij wordt data opgesplitst in gelijkvormige samenhangende subsets. Bijvoorbeeld door subsets van maximaal 10.000 patiënten te maken, en iedere subset in een apart ‘compartiment’ (zoals een dataplatform) op te slaan. Een algoritme is nodig om te bepalen welke patiënten in welke subset (partitie) belanden. Dat zou een mathematisch algoritme kunnen zijn (bijvoorbeeld op basis van het BSN of geboortedatum) of een meer arbitrair algoritme, bijvoorbeeld door mensen in te delen in regio’s. Een extreme vorm van horizontaal partitioneren, is partitionering per individu; iedere patiënt zijn eigen opslag compartiment voor zorgdata, soms een ‘datakluis’ genoemd.
Horizontaal partitioneren draagt bij aan de stabiliteit omdat bij grootschalige uitval alleen een deel van de gegevens (in dit geval van een groep patiënten) niet beschikbaar is, maar het grootste deel nog steeds wel. Het draagt bij aan privacy omdat een datalek meestal slechts een deel van de patiënten betreft en niet alle patiënten.
Verticaal partitioneren betekent dat data wordt opgesplitst door de samenhang te verbreken. De data die behoort bij 1 patiënt wordt verdeeld over verschillende compartimenten volgens een vast algoritme. Die indeling kan bijvoorbeeld worden gemaakt door te bepalen wie de meest natuurlijke bronhouder van een subset is. Voor data in het kader van Advanced Care Planning (ACP) zou dat bijvoorbeeld de huisarts kunnen zijn, of een regionale partij zoals een RSO. Let wel dat in de laatste voorbeelden een combinatie van verticaal en horizontaal partitioneren wordt ingezet (horizontaal per huisarts of regio, verticaal per inhoudelijke subset).
Verticaal partitioneren draagt bij aan de stabiliteit omdat bij grootschalige uitval alleen een deel van de gegevens (bijvoorbeeld alleen de ACP-data) niet meer beschikbaar is, maar alle andere zorgdata van alle patiënten nog wel. Ze draagt bij aan privacy omdat in geval van een datalek alleen een specifiek deel van de gegevens (bijvoorbeeld de ACP-data) van individuen wordt gelekt, niet alle data van individuen.
Homogene of heterogene opslag?
Een andere dimensie om te denken over de gedistribueerde opslag van zorgdata betreft de mate waarin opslag in alle knooppunten op gelijke wijze plaatsvindt.
Bij homogene opslag wordt zorgdata ongeacht de bronhouder en usecase of zorgpad, op een gelijkvormige manier opgeslagen. Dat betekent dat huisartsen, RSO’s, ziekenhuizen, en alle andere denkbare opslaglocaties, data in hetzelfde (gestandaardiseerde!) formaat opslaan. Homogene opslag heeft een groot voordeel in gedistribueerde architecturen, omdat het makkelijker is om de verschillende opslaglocaties te benaderen als ware het één grote virtuele database; homogene databeschikbaarheid dus. Het benaderen van verschillende bronnen als één grote virtuele database wordt ook wel ‘federatie’ genoemd. Homogene opslag heeft als nadeel dat alle opslag (en dus ook alle bronsystemen en bronhouders) in hetzelfde ‘harnas’ van een gestandaardiseerd opslagformaat moeten worden gedrukt.
Bij heterogene opslag gebruikt iedere bronhouder (en ieder bronsysteem) zijn eigen opslagmodel. Het benaderen van zorgdata uit de verschillende bronnen vraagt dan ook het continu vertalen van data van- en naar een gemeenschappelijk formaat.
Steeds vaker wordt geprobeerd om data uit bronsystemen te ‘homogeniseren’ door naast de bronsystemen een ‘dataplatform’ te plaatsen dat is gebaseerd op een gestandaardiseerd opslagformaat. In de wereld van de medische beelden wordt dit een VNA (Vendor Neutraal Archief) genoemd. Voor overige data vaak gewoon dataplatform of CDR (Clinical Data Repository). Voor die dataplatforms moet allereerst een opslagformaat gekozen worden. De keuze lijkt zich nu toe te spitsen op twee formaten: FHIR en openEHR. Vervolgens dient een partitioneringsstrategie worden gekozen:
Soms wordt gekozen voor horizontale partitionering, bijvoorbeeld door data uit verschillende bronsystemen samen te voegen in een regionaal dataplatform of door alleen de data van de betreffende zorginstelling in het dataplatform op te nemen.
Soms wordt (ook) gekozen voor verticale partitionering, door bijvoorbeeld specifieke data (zoals de eerdergenoemde ACP-data) op een specifieke opslaglocatie te brengen.
Het juiste opslagmodel is mede afhankelijk van het soort zorgdata
Het is nuttig om zorgdata onder te verdelen in ‘veranderlijk’ (mutable) en onveranderlijk (immutable):
Onveranderlijke zorgdata ontstaat op 1 plek en wordt, zodra zij geautoriseerd is, niet meer aangepast, zeker niet door anderen in het zorgnetwerk. Voorbeelden zijn uitslagen en metingen.
Veranderlijke zorgdata ontstaat ergens maar wordt gedurende de levensloop van een patiënt door verschillende partijen in het zorgnetwerk (inclusief de patiënt) op verschillende momenten aangepast. Er is sprake van gemeenschappelijke en continue aanpassingen. Voorbeelden zijn de ACP-data maar ook bijvoorbeeld medicatie.
Bij veranderlijke zorgdata is het risico op informatie-asymmetrie groot. Daarom is verticale positionering een goede optie: zoek de meest natuurlijke bronhouder en breng de zorgdata daar onder. Eventueel kan dit worden gecombineerd met horizontale positionering, bijvoorbeeld per regio of per huisarts.
Voor onveranderlijke zorgdata is horizontale partitionering een goede optie. Onveranderlijke zorgdata is ook gemakkelijker te homogeniseren door naast het bronsysteem een dataplatform te plaatsen; een eenmalige kopie naar het dataplatform volstaat.
Dynamisch of algoritmisch horizontaal partitioneren?
Horizontaal partitioneren kan min of meer spontaan gebeuren of volgens een vast en voorspelbaar patroon.
In het laatste geval partitioneren we op basis van een eenduidig algoritme: algoritmisch partitioneren. Bijvoorbeeld: alle data van een individu op een vast adres van zijn of haar datakluis. Of alle data van een individu bij dienst huisarts of op een meer centrale opslaglocatie die kan worden afgeleid van de postcode, het BSN of geboortedatum. Dit type partitionering is voorspelbaar: het is altijd duidelijk waar de data van een patiënt zich bevindt.
‘Data bij de bron’ is een voorbeeld van dynamisch partitioneren. In dit geval is onvoorspelbaar waar de data van een patiënt zich bevindt (vaak op verschillende vooraf onbekende plekken) en is ‘lokalisatie’ belangrijker. Lokalisatie kan op een hele naïeve manier (gewoon iedereen vragen of er data is), of op een meer geavanceerde manier in de vorm van een ‘generieke functie voor lokalisatie van data’. Beide methoden kennen hun eigen technische en juridische uitdagingen. Centrale indexen zijn de meest voorkomende manier om een lokalisatie functie te ontwikkelen, maar ze is ook privacy onvriendelijk omdat een grote centrale index met verwijzingen niet in overeenstemming is met de ‘separate’ strategie van Hoepman.
Wat is de beste plek om zorgdata op te slaan?
De vervelende waarheid is dat er niet één beste manier is. Een paar vuistregels kunnen helpen:
Kies voor verticale partitionering in geval van veranderlijke zorgdata zoals het ACP.
Probeer dynamisch horizontaal partitioneren zoveel mogelijk te voorkomen zodat er geen centrale verwijsindexen nodig zijn.
Als dynamisch horizontaal partitioneren toch noodzakelijk is, overweeg dan een alternatief voor centrale indexen door de index zelf algoritmisch horizontaal te partitioneren (per regio bijvoorbeeld, of zelfs per patiënt in een datakluis).
Streef naar homogeniseren van opslag en begin bij de veranderlijke zorgdata.
Comments