-
Notifications
You must be signed in to change notification settings - Fork 16
Standleveringen laden in de BRMO
Het laden van een standlevering kan een behoorlijke tijd duren voor grote gebieden zoals provincies of zelfs geheel Nederland. Hier volgen enige tips om dit zo efficiënt mogelijk te maken.
Een standlevering bestaat meestal uit meerdere bestanden ofwel meerdere bestanden binnen een zip-bestand. In een bestand zitten vele standberichten. Een standlevering wordt normaal gesproken geladen via de BRMO-pagina "Bestand inladen". Er ontstaat dan per bestand een laadproces en per laadproces een zelfde aantal berichten als in het bestand gevonden konden worden. De bestanden van de standlevering kunnen in willekeurige volgorde geladen worden.
Na het laden van een bestand uit de standlevering moet eerst gecontroleerd worden of het laden goed is verlopen. Hiertoe wordt op de berichten-pagina gecontroleerd of er geen berichten zijn met de status STAGING_NOK. Dit kan door de filteren op die status, als er geen resultaten zijn is het goed. Vervolgens wordt de status van de laadprocessen gecontroleerd. Als hier een een status STAGING_NOK voorkomt dan is minimaal een bericht uit het bestand niet geladen. Dit is uitzonderlijk en kan bijvoorbeeld optreden als de tablespace onvoldoende is. De logfiles zullen moeten worden geraadpleegd.
Zodra alle bestanden van de standlevering geladen zijn en alle laadprocessen en berichten de status STAGING_OK hebben, dan kan gestart worden met het transformeren van de berichten zodat de RSGB-database wordt gevuld. Het is verstandig het transformatie-proces per laadproces te starten. Dit wordt gedaan door het vinkje voor het laadproces aan te zetten en dan de knop "Selectie versneld transformeren naar RSGB (alleen stand)" te klikken. Er opent dan een pagina waar de voortgang gevolgd kan worden. Dit kan uren tot zelfs dagen duren.
Omdat een standlevering alleen startberichten bevat en geen mutaties mag elk bestand in willekeurige volgorde getransformeerd worden. Het is daarnaast niet nodig om te controleren of een update danwel insert in de database nodig is. De standlevering is immers het eerste record voor ieder object. Hierdoor kan de voornoemde knop "Selectie versneld transformeren naar RSGB (alleen stand)" de berichten sneller verwerken. Als de knop gebruikt wordt bij mutaties dan zal de transformatie worden afgebroken. Een bericht uit een standlevering is te herkennen aan een volgnummer van -1. Als een standlevering tweemaal wordt geladen dan wordt de transformatie ook afgebroken omdat de insert in de database onmogelijk is.
Alle bestanden uit de standlevering moeten getransformeerd zijn voordat mutaties geladen mogen worden. Regelmatig moet gecontroleerd worden of alle transformatie processen goed zijn afgerond. Dit wordt gedaan via de status en eventueel het lograpport bij elk bericht. Als er serieuze problemen, zoals bij voorbeeld een database-shutdown tijdens een transformatie-proces dan is het mogelijk dat het transformatie-proces is afgebroken en een aantal berichten met de status RSGB_WAITING en/of RSGB_PROCESSING zijn achtergebleven. Dit kan gecontroleerd worden via de berichten-pagina en dan te filteren op die statussen. Op die pagina staat de knop "WAITING-berichten nogmaals transformeren naar RSGB (alleen stand)". Via het klikken op de knop kan het proces weer worden herstart. Indien meerdere processen tegelijkertijd waren gestart kan het mogelijk zijn om deze knop meerdere keer te gebruiken, wel graag wachten tot het vorige proces is afgerond.
Dit werk valt onder een Creative Commons Naamsvermelding-GelijkDelen 2.0 Nederland-licentie.