Bokdata-Nielsen
Innledning
Denne integrasjonen henter oppdaterte bok-data (både tittel/forfatter og bilder) Nielsen databasen og oppdaterer informasjonen i Alma, vår bibliotek-system, via en intern AWS-api-endepunkt.
Siden antall kall til Nielsen databasen er begrenset til max 5000 vellykkede kall pr døgn og det ønskes å maksimere benyttelsen av dette, opererer vi på en liste over alle potensielle ISBN nummer som ønskes oppdatert. Listen oppdateres via en fil sync (sftp).
Nøkkel info
Initiering av flyt | Scheduler (4 ganger med noen timer mellomrom) |
|
---|---|---|
Flyt mønster | Synkron |
|
Bruk av meldingskø | Nei |
|
Open API | Nei |
|
IntArk | Nei |
|
Bakgrunn
Bibliotek data trenger visst å oppdateres. Til dette benyttes data fra Nielsen basen. Nielsen basen tillater bare ca 5000 vellykkede kall. Vi må derfor slå opp i den helt inntil vi får feilmeldingen max-limit-reached.
Interessenter
Det er bibliotek-tjenesten som er bestiller her ved Asbjørn Risan
Brukerhistorie
Hent 5000 av eldste (laveste sistOppdatert) ISBN records fra vår database
For hver av dem:
Slå opp i Nielsen basen 2 ganger, 1 gang for å hente bokdata og en gang for å hente eventuelle bilder
Hvis svar tilbake (vellykket oppslag) : Send informasjonen til AWS-Lamda endepunktet team smile har laget.
Gjenta operasjonen over 4 ganger pr natt
Hver natt, list ut filene i sftp-mappen
For hver fil:
hent filen, pakk den ut, less innholdet
For hver element (xml) i filen,
Hvis filenes navn inneholdet “new”, legg til record i databasen
Hvis filenes navn inneholdet “delete”, slett fra databasen
Systemer/tjenester/Data/API
System | Data | Brukt API (endepunkter) |
---|---|---|
Innholdsinformasjon-ext | Sender | putInfo |
innholdsinformasjonDb extension | Henter (01:30, 02:30, 03:30 og 04:30, hver dag) projections-lister ( | Get next isbns |
innholdsinformasjonDb extension | Legger til | Update datetime by isbn |
innholdsinformasjonDb extension | Legger til | Add isbn |
innholdsinformasjonDb extension | Sletter dokumenter i henhold til deres | Delete by isbn and mmsid |
Nielsen-ext | Henter et dataobjekt ( | Get information by isbn |
Slack | Sender feilmeldinger (inkludert også data på | Report Error |
Tilgangsstyring og logging
Integrasjonen logger til Humio med detaljert logging av prosessen. Loggene er viktige for å finne ut om antallet vellykkede kall til Nielsen basen har nådd maks grensen.
Ingen tilgangstyring er nødvendig.
Forretningsregler
Se under Brukerhistorie
Behandlingstid/responstid og volum
Volumet er begrenset/gitt av maks-grensen til Nielsen basen som igjen er begrenset av abonnemang avtalen.
Hver runde (som består av 5000 av våre ISBNer) kan ta opp til 1 time, men det er svært variert.
Feilhåndtering, konsekvenser av feil og overordnet risikoanalyse
Hva skjer med ufullstendinge meldinger?
De vil føre til feilmeldinger som vi fanges opp av loggen.Hva skjer hvis ende-punktet hos Nielsen ikke svarer/feiler.
Det vil logges, men det vil ikke føre til noe stort problem. Vi prøver uansett til maks tillatt grense mot Nielsen er nådd.
Inneholder meldingene personopplysninger?
Nei
Noe om viktige feil/situasjoner som må passes ekstra på (som kan ha stor konsekvens).
At vi ikke får lest inn data fra sftp (info om ISBN som må sjekkes). Går vi glipp av dem, blir hele grunnlaget vårt feil og det er ingen måte å oppdage det på.
Å oppdaterer feil data. Det vil føre til feil informasjon i bibliotek-systemet
At vi ikke utnytter Nielsen databasen nok
Flytdiagram ?