Bo Dedeurwaerder
Lesnotities
Databanken en datawarehouses
Damien Decorte
HW master management & IT
Inleiding
I. Databanken
→ DB maken: data modellen
→ DB gebruiken: SQL programming
II. Data warehouses
III. Data mining
→ Data analytics
IV. Big data
→ NoSQL DB
Database
Elke webshop is een schil bovenop een databank. Applicatie, programma is volledig
afhankelijk van een databank. Een business applicatie gaat dienstverlening/service vragen
aan dat databankbeheersysteem. Je hebt een server = programma, dat aan een ander
programma is gelinkt. De gestructureerde data is dan de databank.
Een databank DB <-> database management system DBMS
Een document <-> een tekstverwerker (zoals word)
Het informatieproduct die gemaakt en beheerd is door de applicatie DBMS
Er zijn ook verschillende merken van DBMS software: Microsoft (MS) access
Access kan je niet professioneel ver springen. We willen de data laten gebruiken door heel
veel mensen en we willen dat iedereen toegang krijgt tot data.
→ We willen dat DBMS in staat is om iedereen toegang te geven tot dit netwerk. Op een
betrouwbare wijze heel veel gebruikers gelijktijdig bedienen en tegelijkertijd deze data
aanvullen en wijzigen. MS access kan dit niet, kan ongeveer 7 gelijktijdige gebruikers
ondersteunen.
Grote broer van MS access: MS SQL server. Heel veel webshops draaien op sequel server.
My sequel of My SQL is een open source DMS, is voor niet commerciële toepassingen gratis
bruikbaar. Gemaakt omdat de DMSen zo duur zijn. Je betaalt per terrabyte aan info in de DB
en in functie van het aantal gelijktijdige gebruikers die je bedient. My SQL is in financiële
problemen geraakt, en Oracle heeft hen opgekocht. PostgreSQL is gelijkaardig aan My SQL.
MySQL is blijven verder groeien tot een steeds beter product.
1
,Bo Dedeurwaerder
Oracle DB, een ander commercieel product. Oracle is 1 van de allergrootste IT bedrijven ter
wereld dat oorspronkelijk zijn roots haalt in DBMS en is hierin ook nr. 1. Oracle DB overklast
Sequel server. Voor Oracle is geld geen probleem.
PostgreSQL is een open source voor niet commerciële diensten gratis te gebruiken.
• MS Access
• MS SQL server
• My SQL → Laatste 4 zijn
• Oracle DB meest relevante
• PostgreSQL
Databank
Doel: bijhouden van transactionele data
OLTP : online transaction processing
Database (document) <-> DBMS (tekstverwerker)
VB van tekstverwerker:
• Microsoft Access
o Beperkt
o 7tal gelijktijdige gebruikers
• Microsoft SQL-server
o ‘sequel’
o Grote broertje van Access
• My SQL-server
o Gemaakt door hobby programmeurs
o Hoge kwaliteit, minder duur
o Open source
• Oracle DB
o Groot softwarebedrijf
o Nr1 voor DBMS
o Duurder
o Heeft My SQL opgekocht
• PostgresQL
Datawarehouse
Een DWH is een bijzondere soort databank. Om transacties te registreren. Een normale
databank, DB is bedoeld voor als klant bestelling doet dan worden alle geg mbt bestelling
bewaard (bestelling, data prijs etc). Geef een stroom aan andere business transacties en
elke transactie genereert nieuwe business data en deze data wordt geregistreerd voor later.
Dit noemt transactionele data.
Het is van belang dat we de geg in onze DB van 2 jaar geleden kunnen raadplegen, analyses
van maken etc. Dus we willen uit de data van verleden iets kunnen voorspellen voor
toekomst. Men gaat vaak in transactionele data zitten zoeken naar geg die nuttig kunnen
zijn om bepaald business beslissingen. DBMS staat ctu onder stress, moeten transacties cte
2
,Bo Dedeurwaerder
verwerken, zware workload aan transacties. Maar als er dan iem tussenkomt dan wordt
DBMS verstoord dat de huidige verwerking in de weg staat, hij kan deze transacties niet
meer verwerken. Zoals hij heeft opeens 5 sec nodig, de operationele transacties vertragen.
Het analytisch verwerken van geg bots met transactioneel verwerken van gegevens. Dit is
een probleem, het botst, dus we maken als oplossing een DWH.
In een DWH gaan we gewoon op een rustig moment alle data uit de DB kopiëren, we nemen
alle data over. Als we analytic processing doen, doen we dit niet meer op de DB maar op de
DWH. Alle data zit dus in een afzonderlijke container, we gaan een optimale structuur
zoeken voor deze data, om deze te kunnen verwerken. Dus de structuur van de data is
anders dan die in een DB, we veranderen deze structuur om gemakkelijk analytisch te
verwerken in een DWH tov een DB.
→ OLTP: online transaction processing, het ondersteunen van de transactionele transactie
in de DB
→ OLAP: online analytical processing in DWH
Een DWH is een bijzondere vorm van een databank.
Data analysis <-> data analytics
In een bepaalde business omgeving kijken met welke gegevens met werkt. Welke geg
komen er aan bod in jullie operationele transacties en hoe zijn deze geg aan elkaar
gekoppeld? <-> Nieuwe dicipline waarbij je allerlei AI technieken gaan gebruiken in domme
data om patronen te vinden en zo kennis en inzichten te vinden. Bijvoorbeeld in het
aankoopgedrag van je klant. Uit gegevens kennis ontwikkelen.
Data modelling = vanuit die analyse een groot model opstellen van alle mogelijke
concepten/gegevens. Men kijk oke in dat proces, in die dienst, met welke geg werk je en
hoe structureer je deze geg. Dit is een eerst stap naar optimalisatie. Wie krijgt welke geg van
wie en hoe zijn deze aan elkaar gekoppeld.
Handboek DB en DWH nodig van les 2, ongeveer 1/2e gekend. 2e bron studiemateriaal is een
Oracle Academy course. De DBMSen worden in bedrijven gerund door gespecialiseerde
ITers: DBI. Database foundations. Account bij Oracle academy iLearning, online platform
met reeks lessen met oefeningen etc. Hebben ook een midterm exam en een final exam. En
deze punten die je hier scoort tellen mee voor 30% van eindtotaal. Je krijgt ook een Oracle
academy certificate voor op CV voor het maken en gebruiken van data.
Datawarehouse
Doel: Analytisch verwerken van gegevens (dit omdat het botst met de werking van DBMS)
Hoe: Alle data opeens overnemen uit databank en hierop gegevens halen en analyses op
uitvoeren. Hierbij wordt een andere structuur toegepast.
OLAP:
➔ OLAP kan ook bij databanken (niet strict)
3
, Bo Dedeurwaerder
Data-analysis (in business omgeving kijken : met welke gegevens wordt er gewerkt, data-
modelling (structuur van gegeven) optimaliseren)
<-> data-analytics (slimme dingen, patronen, inzichten ontdekken in data met AI etc.)
CRUD instructions (create, retrieve, update, delete) : kern DBMS
Schema cursus
Handboek Oracle Academy cursus Sequel practica
Data mining
DWH
Big Data
Databanken maken en gebruiken gaat over alle 3 delen heen.
Microsoft sequel server en Oracle sequel zijn niet hetzelfde platform, maar wij gaan leren om
er algemeen mee om te gaan, zodat we beiden in de hand hebben.
Je hebt elke les laptop nodig met MySQL Server en MySQL Workbench. Username en
passwords Oracle later.
Examen
Open boek examen, 30% Oracle academy certificate halen
Gesloten boek 70%, geen leerstof uit Oracle academy
Kern DBMS
CRUD
Create: creeëren nieuwe data
Retreive: vindt snel in die terrabytes aan geg dat 1e speldekopje dat je nodig hebt
Update: wijzig geg
Delete: verwijder geg
… tekening bord
Bepaalde SW A of client doet beroep op andere SW B en deze SW B noemen we een server.
DBMS stuurt een server aan via SQL
MySQL → we installeren 2 programma’s: My SQL server, dit is de DBMS. Je kan het niet zien,
de enige manier om hier iets mee te doen is er sequel instructies naar sturen. Je kan dit enkel
doen via een aparte interface, nl. My SQL Workbench. Applicatielaag en datalaag. Via
communicatie heen en terug. Wanneer e gaan oefenen met deze onzichtbare server, zien we
enkel de workbench waarin we instructies typen en dan zien we data verschijnen. Dit is
allemaal software. Als dit afzonderlijke programma’s zijn hoeft dit eigenlijk niet op dezelfde
pc te staan. Voordeel: pc in de les gebruiken voor BPMS heeft optimale hardware voor DBMS.
Geen sterke processor, deze moet niet veel rekenen, maar die heeft hele snelle toegang tot
geg opslag nodig, harddisks met sterke input - output reeksen. Hebben andere technische
4