-
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.
![Bestand inladen](https://github.com/B3Partners/brmo/blob/master/docs/images/brmo inladen.PNG)
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.
![Laadproces-pagina](https://github.com/B3Partners/brmo/blob/master/docs/images/brmo overzicht laadprocessen.PNG)
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.
![Bericht-pagina met log](https://github.com/B3Partners/brmo/blob/master/docs/images/brmo overzicht berichten plus log.PNG)
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.
Uiteindelijk dienen alle berichten de status RSGB_OK te hebben. Als berichten de status RSGB_NOK hebben dan dient het lograpport van het bericht beoordeeld te worden. Er kan dan vastgesteld worden wat het probleem is en mogelijk kan dit opgelost worden. Het is mogelijk om op de berichten-pagina een enkel bericht nogmaals de transformeren. Indien een fout onduidelijk is, dan kan het beste contact opgenomen worden met B3Partners. Het is van het grootste belang niet met het laden van mutaties te beginnen voordat de complete standlevering correct is getransformeerd en in de RSGB-database is opgenomen.
![Knoppen Berichtenpagina](https://github.com/B3Partners/brmo/blob/master/docs/images/Knoppen Berichtenpagina.PNG)
Voor het laden van de mutaties worden de knoppen "Selectie transformeren naar RSGB" op de laadprocessen-pagina en op de berichten-pagina gebruikt. Deze knoppen kunnen ook gebruikt worden voor het laden van een stand. Er worden dan extra sorteringen en controles uitgevoerd die geen kwaad kunnen, maar die het proces langer doen lopen. Standberichten zullen dan als mutatie worden beschouwd als er al berichten in de RSGB-database zijn opgenomen. Er zijn scenario's denkbaar waar dit nuttig is, maar normaal wordt dit niet aangeraden.
Dit werk valt onder een Creative Commons Naamsvermelding-GelijkDelen 2.0 Nederland-licentie.