Verwerking data bibliotheeksysteem

Alles wat ingevoerd wordt in het bibliotheeksysteem, wordt ’s nachts gekopieerd (geïmporteerd) naar Aquabrowser (AB). De catalogus van de bibsite is gebouwd op de webservice (API) van AB, dus de verwerking van de data gebeurt nog steeds in AB.

Op weekdagen is dit een incrementele import: alles wat nieuw of gewijzigd is, wordt toegevoegd. In het weekend gebeurt er een “full import“, dit betekent dat alle data wordt hernieuwd.

Er zijn twee schema’s online die de imports visualiseren en waarop je de duur van de imports kunt bekijken (meer uitleg hieronder):

– http://talkback.medialab.nl/logs/be-import-stats/slidingweek.xml

– http://talkback.medialab.nl/logs/be-import-stats/monthcumuweek.xml

[ Vroeger werd er gewerkt met een overzichtstabel van importtijden – maar dit wordt sinds de online schema’s niet meer up-to-date gehouden. Er worden wel nog steeds statusmails verstuurd – deze kloppen wel nog. Meer uitleg hieronder. ]

Importeren: hoe?

De import van de data in AB gebeurt:

  • ofwel via de webservices van de bibliotheeksystemen (Wise en Vubis – het koppelvlak): Aquabrowser vraag de records hieraan op
  • ofwel via een exportbestand dat opgehaald wordt door Aquabrowser op een ftp-server (Open Vlacc, Aleph, Luisterpunt). Dit bestand wordt hiervoor dus op vaste tijdstippen klaargezet door het systeem in kwestie waarvan er data wordt geïmporteerd.

Een voorbeeld van een exportbestand is dat van de Open Vlacc-authorities: elke dag wordt er geïmporteerd, maar er wordt maar één keer per maand een nieuw bestand op de ftp gezet (laatste weekend van de maand). Elke dag checkt Aquabrowser dus of er een bestand is en importeert het aanwezige bestand (dus meestal altijd hetzelfde bestand) – te zien in het importschema. Voor de authorities zichtbaar zijn op alle sites, moeten er overigens 2 dagen over gaan.

Elke import bestaat uit twee delen:

  • een fase 1 import (ophalen data uit koppelvlak of van ftp en data ‘prepareren’) op 1 centrale dataprovider server, dit maakt monitoring eindelijk mogelijk en beheersbaar (vroeger liep dit proces op elke afzonderlijke Aquabrowser)
  • een fase 2 import (matching, merging, indexeren, …) in elke afzonderlijke Aquabrowser (= per provincie)

Waar kan het fout gaan:

De fase 1 import is soms te laat klaar en de fase 2 import is al gestart: we missen dan de aansluiting tussen beide fases en krijgen dus de incrementele update van de vorige dag niet mee, met als gevolg geen nieuwe data. Er wordt dus geen data van de vorige dag meegenomen in de fase 2: bij de indexwissel is er geen data van de vorige dag. Die data wordt automatisch wel opgepikt de volgende dag.

Let wel dat de importproblematiek erg ‘levend’ is: grootte van imports is elke dag anders, nieuwe functies in AB kunnen een langere importtijd vragen, etc. 

Er wordt altijd geprobeerd om de fase 1 en fase 2 imports zo goed mogelijk te laten aansluiten zodat er geen “gemiste aansluitingen” zijn. Ook neemt de indexwissel (op het einde van fase 2) zo snel mogelijk plaats, zodat jullie zo vroeg mogelijk op de dag nieuwe data zien in de catalogus.

Importschema’s online: uitleg

– http://talkback.medialab.nl/logs/be-import-stats/slidingweek.xml
– http://talkback.medialab.nl/logs/be-import-stats/monthcumuweek.xml

Het eerste schema: slidingweek

Hier zie je het verloop van de imports voor de voorbije week, zowel van de incrementele als de full-imports. Dit is bijna een “live” verslag: de data is maximum een uur oud (elk uur wordt de pagina namelijk ververst).

Je ziet per AB-instantie onder elkaar de verschillende datasources: de Fase 1-imports en onder de verschillende bronnen staat er telkens bij “Portaal:” de Fase 2.

Via een mouseover zie je de informatie over elke import. Je moet dus met de muisaanwijzer op de groene balkjes (of lijntjes voor korte imports) gaan staan. Dan verschijnt er een hoverbox met startuur en duur.

Voor de full-imports, die lopen natuurlijk van zaterdag op zondag. Ze beginnen dus in feite helemaal rechts op elke lijn en het einde staat helemaal links, terug aan het begin. Als deze begon zaterdagavond en echt liep tot zondag staat dit aangegeven met pijltjes: >> en << .

Het tweede schema: monthcumuweek

Dit is een samenvatting van de afgelopen 30 dagen, waarop de gemiddelden zijn aangegeven. Zo is er een visueel overzicht van de verschillen in duurtijd van dezelfde imports en zie je duidelijk of de fases goed op elkaar aansluiten. Het groene geeft aan hoe lang de import minimaal duurt, het gele is het gemiddelde en de oranje is de maximumduur.  De informatie zie je op dezelfde manier als bij slidingweek.

Errors

Als er iets misgaat met een import, staat er een geel icoontje met een uitroepteken. Als je daarop gaat staan met je muis, zie je eveneens de errorboodschap. Het is echter mogelijk dat het groene balkje toch nog verder loopt bij een icoontje. Dan wil dit zeggen dat de import toch succesvol is doorgegaan (meestal zie je dit als de import twee keer gestart is geweest: dan is er één import in error omdat het proces al bezig was).

Statusmails (import monitoring)

Via het groepsmailadres bibliotheekportalen@bibliotheek.be worden er dagelijks statusmails verstuurd om 9u30 en om 16u30. Er worden er twee verstuurd omdat een aantal provincies al ’s ochtends klaar zijn (Brussel en Vlaams-Brabant), andere provincies pas later op de dag. De statusmail bevat de informatie over de importfases van alle datasources.

Het belangrijkste in de statusmails is dat er kan gecheckt worden of de fase 2 import is gestart na het einde van de fase 1 import.

Een voorbeeld uit de statusmail van deze morgen 9:30 waar het goed is gegaan:

FASE I pbsbrussel Start import: 28-5-2013 19:45:53 Einde import: 28-5-2013 21:28:36 Importduur: 1,7 uur Leeftijd huidige DB: 12,0 uur

FASE II pbsbrussel Start import: 28-5-2013 22:00:01 Einde import: 29-5-2013 5:28:31 Importduur: 7,5 uur Leeftijd huidige DB: 4,0 uur

Fase I was klaar om 21u28, Fase II startte om 22u en was klaar om 5:28 vanmorgen. Om 5u28 is er data van de vorige dag in de Aquabrowser van Bruno.

Een voorbeeld uit de statusmail van gisteren 16:30 waar het NIET goed is gegaan:

FASE I pbswinob Start import: 27-5-2013 23:23:58 Einde import: 28-5-2013 3:28:53 Importduur: 4,1 uur Leeftijd huidige DB: 13,0 uur

FASE II pbswinob Start import: 28-5-2013 0:12:02 Einde import: 28-5-2013 16:01:29 Importduur: 15,8 uur Leeftijd huidige DB: 0,5 uur

Fase I was klaar om 3:28, maar Fase II startte al om 0u12 en was klaar om 16:01. Om 16:01 is er dus GEEN data van de vorige dag in de Aquabrowser van Winob (wel de data van eergisteren die toen ook aansluiting heeft gemist). De data van vorige dag gaat maar mee in de volgende Fase II enz.