brughagedis.nl

Deze blog gaat over mezelf en mijn bezigheden



Databases

28 April, 2008 (21:19) | Bibliotheek, Technopraat | By: brughagedis

Samen met een collega heb ik vandaag de bibliotheek open gehouden. Het was vrij rustig, in totaal kwamen er denk ik zo’n 50 studenten langs om op de studieplekken te werken of te studeren en enkele medewerkers en studenten met vragen over ibl en het aanvragen van een lenerspas. Een groot deel van de tijd kon ik mij dan ook met mijn databases bezighouden, want daarin moeten de recente gegevens van de collectie Logica worden toegevoegd. Het gaat in totaal om ongeveer 2600 titels waar het afgelopen jaar zo’n 12 nieuwe zijn bijgekomen, zo’n 20 zijn verwijderd en waarvan een deel van de signaturen is aangepast. Met het toevoegen van dat vrij geringe aantal mutaties ben ik nu alweer een paar dagen bezig. Dat komt niet alleen omdat de uitdraai van de centrale UB eerst vertaald moet worden in bruikbare gegevens, maar ook doordat alle gegevens het hele proces van invoeren in het eerste bestand tot en met uitvoer naar de diverse werkbestanden moeten doorlopen. Het is alsof je voor het doorsmeren van de auto eerst de motor uit elkaar moet halen, dan pas een blik olie in het carter kunt gieten en vervolgens de moter weer onderdeel voor onderdeel in elkaar moet zetten. Dat begint nu een beetje onhandig te worden. Het probleem ontstaat doordat je niet alleen nieuwe gegevens wilt toevoegen, maar ook de oude het liefst wilt bewaren. Dat betekent dat je velden voor elk jaar moet herhalen. Als de tabellen in zo’n database dan uit 25 of meer velden bestaan, worden dat er al snel erg veel. Om dit op te lossen is het relationele database model uitgevonden, waarin alle gegevens zijn opgenomen in tabellen die zijn opgebouwd uit rijen en kolommen. Elke rij bevat de feitelijke gegevens van een onderdeel (bijvoorbeeld een boek) of record en de kolommen geven de verschillende soorten gegevens (titel, auteur, isbn, uitleningen) aan. Door elke rij een uniek identificatienummer te geven kunnen gegevens uit verschillende tabellen met elkaar worden gecombineerd. Op dit moment zijn mijn tabellen gerelateerd middels het unieke exemplaar produktie nummer (epn) en worden verder onderverdeeld volgens de selectiecriteria en de afzonderlijke collecties. Voor elk nieuw jaar maak ik gewoon een nieuwe database, of eigenlijk een verzameling databases. Maar het kan waarschijnlijk intelligenter door binnen elk bestand voor elk jaar afzondelijke tabellen met gegevens  te maken.

Relaties

Een tweede probleem is dat de tabellen in de verschillende databases niet gelijk opgebouwd zijn en de namen van de kolommen soms verschillen. Dat is tijdens het bouwen zo ontstaan. Maar dit blijkt nu lastig bij het overbrengen van gegevens van het ene bestand naar het andere waardoor veel handmatige aanpassingen nodig zijn. Waarschijnlijk is de enige oplossing hiervoor alle tabellen nog eens goed te bekijken en ze zoveel mogelijk gelijk maken.

Omdat het direct aanpassen van het systeem de boel enorm zou vertragen moet ik bekijken of ik deze verbeteringen geleidelijk kan doorvoeren. De ervaring leert dat als je er eenmaal aan begint het vaak vrij snel gaat. Dus dat hoop ik dan maar.

»


View Stats