Basisconcepten Databases en Databasesystemen PDF

Summary

Dit document beschrijft de basisconcepten van databases en databasesystemen. Het behandelt onderwerpen zoals data, informatie, databases, databasesystemen en de rol van hardware in deze systemen. Er wordt ook een korte historische blik geworpen op het gegevensbeheer door de eeuwen heen.

Full Transcript

DATABASES EN DATABASESYSTEMEN ENKELE BASISCONCEPTEN Data: losse gegevens en feiten, zonder context betekend data niets en heeft dus ook geen waarde. Voorbeelden van data: Rotterdam, 1882,vissershuis,monet. Informatie: data + betekenis, hier wordt een context aan de data gegeven zodat hij betekeni...

DATABASES EN DATABASESYSTEMEN ENKELE BASISCONCEPTEN Data: losse gegevens en feiten, zonder context betekend data niets en heeft dus ook geen waarde. Voorbeelden van data: Rotterdam, 1882,vissershuis,monet. Informatie: data + betekenis, hier wordt een context aan de data gegeven zodat hij betekenis krijgt en dus ook waarde. vb. informatie: In het museum Boijmans van Beuningen te Rotterdam bevindt zich het schilderij ‘Vissershuis’ dat in 1882 door Monet werd geschilderd.’ Database: een verzameling van persistente data, de database is een computersysteem dat deze data beheerd. Een database zal informatie opslaan op een logische wijze en in een bepaalde structuur Persistente data = data blijft opgeslagen in het permanent geheugen. Dus ook na het uitschakelen. Databasesysteem is een computersysteem dat is opgezet voor het beheer van databases. vb. van database over de inhoud van een wijnkelder Welke data je in de databank steekt hangt af van de noden van het bedrijf en waarvoor je de databank wilt gebruiken. Het opslaan van data is niet gratis dus in theorie wil je enkel dat opslaan wat je denkt nodig te zullen hebben. Alle data in de database moeten het doel van deze database dienen. Het is belangrijk dat deze databank up to date wordt gehouden, als dit niet gebeurd zal de databank niet meer in overeenstemming zijn met de realiteit. GEGEVENSBEHEER DOOR DE EEUWEN HEEN § Codex van Hammoerabi (2000 voor Christus) eerste registratie van data § ‘Fysice akroasis’ van Aristoteles (384-322 voor Christus) ordening, structureren van data § ‘Analytical engine’ van Charles Babbage (1830) geautomatiseerde registratie van data machineacties programmeren data ordenen via vooraf gedefinieerde structuur § Magneetband- en magneetschijfgeheugens (1960-1970) 1 eerste databasesystemen: ‘tweelagen’-systeemarchitectuur, structuur voor de opslag (interne laag) en voor het verwerken (logische laag) Magneetbanden: sequentieel (1 voor 1) doorzoeken Magneetschijven: kan men efficiënter adresseren § ‘Drielagen’-systeemarchitectuur (1970-1980) eerste ‘moderne’ databasesystemen met extra laag, de externe laag. Deze kan de data op verschillende manieren weergeven. Het relationeel databasemodel (Codd, 1970) DB2, eerste relationeel databasesysteem (IBM, 1983) DATABASESYSTEEM In een databasesysteem onderscheiden we 3 componenten § Hardware § Data § Software Daarnaast is het ook belangrijk om de gebruikers van het systeem te beschouwen Opm: de terminal wordt ook wel een databaseclient genoemd HARDWARE Central Processing Unit (CPU): één of meerdere processoren die zorgen voor het uitvoeren van de software-instructies. De processorsnelheid zegt hoeveel berekeningen per seconde uitgevoerd kunnen worden (3 gigahertz, iedere nanoseconde kunnen er 3 instructies uitgevoerd worden) Geheugen: om redenen van efficiëntie en implementeerbaarheid is het hiërarchisch georganiseerd: § Primair geheugen: rechtstreeks aanspreekbaar door CPU, snelst toegankelijk. databasebuffers Statisch RAM-random access memory: cache geheugen, gebruikt om uitvoering van programma’s te versnellen Dynamisch RAM: werkgeheugen, tijdelijke opslag programmacode. Trager dan statisch RAM. à Dit geheugen is een databuffer, data die hierin wordt opgeslagen staat tijdelijk klaar voor gebruik, na het afsluiten van de pc zal deze data verdwijnen (de data is volatiel). Sommige databases zijn in een databuffer opgeslagen, indien het snel moet gaan. Er wordt wel een kopie op permanent geheugen geplaatst. Een speciale vorm van geheugen is het flashgeheugen. Hier wordt EEPROM-technologie gebruikt (Electrically Erasable Programmable Read-Only Memory. Vb digitale fototoetellen, mp3-spelers,… § Secundair geheugen (harde schijf): het geheugen waar de persistente data wordt opgeslagen, is veel groter dan het primair geheugen. Magneetschijfgeheugens: 1 of meer roterende schijven die langs 1 of 2 zijden beschrijfbaar zijn. o Primaire bestandorganisatie: manier waarop een database fysiek wordt opgeslagen, al dan niet geordend o Secundaire bestandorganisatie: doel de toegang tot fysiek opgeslagen data te optimaliseren door extra data bij te houden over bvb de locatie en verbanden tussen gegevens. Vb indexen 2 CD-rom en DVD-geheugens: kunnen worden samengebracht in een soort van jukeboxsysteem. Ze hebben minder goede schrijffaciliteiten en worden dus gebruikt voor gegevens die enkel geraadpleegd moeten worden. Magneetbandgeheugens: gebruikt voor archivering en back-up. Werken alleen efficiënt bij sequentiële toegang. Ook hierbij kan een jukeboxsysteem worden toegepast om de capaciteit te vergroten. Opm: buffergrootte: Het primair geheugen gaat altijd een volledige pagina uit het secundair geheugen inladen, dit is omdat secundaire data werkt als een cd en er fysiek iets verplaats moet worden, dit kost het meeste tijd (het inlezen zelf is zeer snel) dus het is best om zoveel mogelijk data in 1 keer in te laden è de buffergrootte moet dus altijd tenminste 1 pagina kunnen inladen. DATA Records: Een database wordt meestal gestructureerd opgeslagen als en collectie van records. Elk record is opgebouwd uit 1 of meer velden die data kunnen bevatten. Recordtype: de velden zijn hierin vastgelegd d.m.v. een naam en datatype. Het datatype legt de toegelaten waarden en operatoren voor het veld vast. Bestanden: hierin worden records opgeslagen van verschillende bestandtypen. Een databasesysteem kan instaan voor meerdere databases. Voorbeeld van een databasesysteem en de verschillende delen hiervan 3 een recordtype: een volledige tabel, deze tabel kan uit iedere combinatie van kolommen bestaan maar voor iedere kolom moeten alle rijen gegeven zijn een record: een kolom, dit is 1 type van informatie, een recordtype bestaat altijd uit een aantal kolommen wat een database een database maakt is het feit dat de kolommen aan elkaar gelinkt zijn, aan de record artiest is namelijk de record naam, voornaam, geboren en gestorven verbonden die meer informatie geven, door deze links wordt data met elkaar verbonden en krijgt het dus een context (en wordt het dus informatie) Het veld eigenaar in het eerste recordtype is een vreemde sleutel CHAR(n): karakterstrings van lengte n INTEGER: gehele getallen REAL: reële getallen Een database is een geïntegreerd geheel. Data die in de reële wereld samenhangen brengen we onder in dezelfde database en de verbanden geven we zo goed mogelijk weer. Daarbij wordt overlap tot een minimum gehouden om overtollige data te vermijden. SOFTWARE Het databasemanagementsysteem (DBMS): de software- component van een databasesysteem die instaat voor het beheer van de databases. Iedere keer als we de data willen opzoeken, toevoegen, wijzigen of verwijderen gaan we dit doen door het databasemanagement systeem Toepassingsprogramma’s: zorgt voor verbinding met het DBMS en de toegang tot de relevante databases, vertaalt gebruikersacties naar databaseoperaties die dan worden doorgestuurd naar de DMBS. Na uitvoering stuurt de DBMS de resultaten door naar het toepassingsprogramma. Dit moet ook de fouten opvangen bij de interactie. § Online: verwerking opdrachten real-time. § Batch-toepassing: verwerkt op een meer geschikt tijdstip. Tools: vergemakkelijken en automatiseren van de taken voor databasebeheer. Vb automatisch back-up systeem, importeren/exporteren vanuit bestanden, conversie naar ander dataformaat, prestatiemonitoring Communicatiesoftware: zorgt voor de correcte overdracht van data en instructies over het netwerk indien databasesysteem verspreid is over verschillende computers die met een telecommunicatienetwerk verbonden zijn. Vb client-serverconfiguratie. 4 Datawarehousing: een database die bedoeld is voor data-analyse. Hier wordt vaak ook de geschiedenis bijgehouden van de verschillende records (dit wordt niet gedaan in een DBMS). Naast de tijdsdimensie worden ook geografische dimensie en productdimensie (hiërarchische onderverdeling) bijgehouden. Data warehouse word opgebouwd door 1 of meerdere databases op regelmatige tijdstippen te importeren en integreren. Software voor data-analyse: doel zinvolle verbanden in data vinden die voorheen niet bekend waren. Rapportgeneratoren: genereren automatische rapporten over de inhoud van een database of datawarehouse. GEBRUIKERS Gebruiker: elke persoon die op een of andere manier interactie heeft met het databasesysteem. Als er verschillende gebruikers zijn worden er gebruikersprofielen aangemaakt. Belangrijkste gebruikersprofielen: (meestal meer dan 1 van ieder type maar niet per se noodzakelijk) § Data-administrator (DA): verantwoordelijk voor de data, hogere kaderfunctie. Speelt een belangrijke rol bij het ontwerp van een database en bij grote conversies of aanpassingen aan db. Welke data In welk formaat In welke database Beslist wie toegang krijgt, de gebruikersprofielen, beveiliging, verwerking en beveiliging van data Beslist prioriteiten gebruikers § Database-administrator (DBA): technisch verantwoordelijk voor implementatie en onderhoud van databases. Verantwoordelijk voor: Herstel na falen (back-up en restore) Consistentie van databases Observatie en controle van prestaties en goed functioneren In een grote onderneming meestal verdeeld over meerdere personen. Pleegt nauw overleg met de DA’s en volgt zijn beslissingen strikt op. § Toepassingsontwikkelaar ontwikkeling van toepassingsprogamma’s. Om software te testen moet hij beschikken over een werkkopie van de databases. § Gewone eindgebruiker: mensen die werken met de databases. Werkt via toepassingsprogramma’s, eenvoudige query’s, voorspelbaar/optimaliseerbaar. § Geavanceerde eindgebruiker: complexere instructies, minder routinematig gebruik, niet voorspelbaar/optimaliseerbaar. Opm: gewone gebruikers krijgen meestal voorrang omdat een analyse vaak niet onmiddellijk moet werken DATABASEMANAGEMENTSYSTEEM HOOFDFUNCTIONALITEIT Belangrijkste taken van een DBMS zijn de definitie, manipulatie en constructie van databases. Definitie: databasestructuur en semantische regels worden vastgelegd. Semantische regels zijn nodig voor de integriteit te garanderen. Integriteit houd in dat de data correct en consistent is over de hele database. Men gebruikt integriteitsrestricties om ervoor te zorgen dat geen inconsistenties kunnen ontstaan. Vb een schilderij kan als datum van creatie niet een datum hebben nadat de schilder is gestorven. 5 Manipulatie: er moeten noodzakelijke operatoren gecreëerd worden (in een datamanipulatietaal). § data toevoegen § data aanpassen § data verwijderen § data opzoeken de voorschriften voor de definitie en manipulatie van databases zijn vastgelegd in een zogenaamd data(base)model Constructie: mogelijk maken om een gepaste primaire bestandorganisatie op te zetten. De databasestructuur van bij de definitie moet worden omgezet naar een recordstructuur. ANDER FUNCTIONALITEIT VAN HET DMBS Delen van dezelfde data: iedere gebruiker moet de volledige database kunnen gebruiken alsof hij de enigste gebruiker is. Er moet dus simultane toegang mogelijk zijn. Bv bij het boeken van een bepaald zitje op het vliegtuig gebeurd een dubbele boeking omdat ze op hetzelfde moment boeken. beveiliging van de data: beschermen tegen ongeoorloofd gebruik (authorisatie) en fysiek falen (dataverlies beperken). Optimaal systeemgedrag: efficiënte secundaire bestandsorganisatie is noodzakelijk vb indexering Administratie en controle: aanpassen secundaire bestandsorganisatie aan de behoeften, bijhouden en analyseren van prestatiestatistieken, beheer van gebruikersprofielen, back-ups maken, aanleggen logbestanden en onderhoud. ARCHITECTUUR De structuur van een DMBS kent 3 lagen. De belangrijkste reden is dataonafhankelijkheid. Je kunt de ene laag veranderen zonder dat de andere lagen belemmerd worden of crashen. (opm: vroeger was er enkel een 2-lagen structuur en was er geen externe laag) interne laag deze laag beschrijft de databaserecords: structuur, manier van opslag en toegangspaden. Structuur wordt vastgelegd in recordtypes, manier van opslag wordt bepaald door primaire bestandsorganisatie en toegangspaden door secundaire bestandsorganisatie. 6

Use Quizgecko on...
Browser
Browser