NoSQL
Last updated
Was this helpful?
Last updated
Was this helpful?
Soorten databanken
Hebben een boomstructuur
Dit geeft redelijk wat beperkingen.
Een parent kan meerdere children hebben
Maar een child slechts 1 parent.
Dit leidt tot kopieën en problemen in integriteit
Steeds minder gebruikt
Vb: windows registry
Bestaat uit tabellen die met elkaar gekoppeld worden dmv relaties
Relaties worden gemaakt door ‘sleutels’(keys) Primary Key(PK)
Elke tabel heeft 1 PK (deze identificeert een entry)
Foreign Key(FK) Elke tabel kan 0 of meerdere FK hebben
Deze legt een relatie naar een PK in een andere tabel
Niet bepaald overzichtelijker, maar wel veel flexibeler en efficiënter
Relationele databanken hebben enkele nadelen Schaalbaarheid voor heel grote databanken Opsplitsen van DB in verschillende DB’s werkt moeilijk Complexe SQL code omdat objecten in OO niet overeenkomen met tabellen in DB Bv. personeel(object) heeft adres en bedrijfswagen waarbij de data verspreid zijn over verschillende tabellen
Er zijn 4 soorten no-sql databanken:
Document databank Bv. MongoDB
Key Value databank Bv. Redis
Graph databank Bv. Neo4J
Column databank Bv. Google bigtable
Database bevat ‘documenten’ (json objecten) Bv.: { Id:1, Name: ‘Janssens’ FirstName:’Jan’}
We kunnen queries schrijven, maar niet in SQL Query taal afhankelijk van databank Bv.: db.Klant.Find(Name:’Janssens’)
Documenten zullen veel data bevatten Bv. in aankoop db zullen alle aankopen in klanten document zitten en niet in aparte tabellen
Als server maximale capaciteit bereikt gewoon een extra server Geen schaal problemen omdat er geen relaties zijn over databanken
Vergelijkbaar met document databank Maar geen queries mogelijk Enkel informatie opvragen via de sleutel(Key) Dit gaat bijzonder snel
Bv.: Twitter geschiedenis
Ontworpen om ‘sociale eigenschappen’ van personen op te slaan, bvb: persoon a is bevriend met persoon b Persoon a houd van product x
Zeer handig voor sociale media
Gebruikt tabellen, rijen en kolommen, maar anders dan een relationele databank.
De namen en formaat van de kolommen kan verschillen van rij tot rij in binnen dezelfde tabel.
Er wordt ook wel eens gesproken over een twee dimenionale key-value store.
NoSQL Vaak worden combinaties gebruikt van meerdere soorten DB’s en dit afhankelijk van het doel.
Ter info, hieronder een lijstje met ranking van de meest populaire databases met bijzondere aandacht voor het database model ().
Verschil tussen een no sql / document database en een relationele database wordt heel duidelijk uitgelegd in volgend filmpje.
Verdiepend Introduction to NoSQL (Martin Fowler)