Week 6 Flashcards
Wat is hashing?
Letterlijk: fijnhakken / “kapot meppen”
ICT: gegeven wordt omgezet in een getal, de hash of hash-waarde (= een soort handtekening van het gegeven).
Wordt gebruikt als soort geheugenadres van de plaats waar het gegeven wordt opgeslagen.
Wat is NoSQL?
= Not Only SQL
- Hoeveelheid data
- Performance
- Snelle verandering van datastructuur/gegevens
- Piek belasting met name op write/modificatie
Wat doet een hash-functie?
Zet een waarde om in een (unieke) code die als index wordt gebruikt om de waarde terug te vinden.
Wat zijn de 2 oplossingsrichtingen van het feit dat er niet altijd een perfecte hash-functie beschikbaar is?
- Gesloten hashing
2. Open hashing
Wat is gesloten hashing?
= Zet het eerste getal dat uit een hash-functie komt op de berekende index, zet het volgende op de eerstvolgende lege plek.
(De index wordt “gesloten” nadat deze gevuld is.)
Wat is open hashing?
= Bij elke index hoort een (linked) list waarin beide getallen kunnen worden opgeslagen.
(De index is “open” nadat deze “gevuld” is)
Benoem een of meerdere nadelen van open hashing.
Als toevallig alle elementen dezelfde index krijgen, heb je alsnog O(N) i.p.v. O(1). ==> Nieuwe hash-functie bedenken.
Wat is de laadfactor?
= De verhouding tussen het aantal gegevens en de arraygrootte.
6 getallen, 10 plekken = 0,6 laadfactor
Wat is ACID?
De voordelen van een RDBMS.
Atomic => Transactie slaagt of wordt teruggedraaid
Consistent => Als transactie slaagt dan is de DB consistent
Isolated => Transacties worden sequentieel uitgevoerd > geen interactie
Durable => Resultaat is permanent opgeslagen
Wat zijn enkele beperkingen van een RDBMS?
- Complexiteit
- Normaliseren - Performance
- Aantal records/joins (cartesisch product!) - Flexibiliteit
- Vaste structuur
- Veranderingen aan structuur zijn ingrijpend - Schaalbaarheid
- Verticale opschaling: zwaardere hardware
Wat is BASE?
= Basically Available
- Soft State => niet (write) consistent
- Eventual Consistency => op een later tijdstip wel consistent
Benoem enkele beperkingen van NoSQL.
BASE => Basically Available: data is beschikbaar
- Niet (write) consistent
- Eventual Consistency: op een later tijdstip wel consistent
- Geen standaard access interface
- Ontbreken van toolsl b.v. analytics
- NoSQL distributies zijn gefocust op een specifiek soort data
Wat zijn enkele beperkingen van NoSQL?
- Niet te allen tijde consistente data
- Geen vaste structuur => Welke data is beschikbaar?
- Gefocust op een specifiek soort data
- Geen standaard access interface
- Ontbreken van tools b.v. analytics
Welke 2 manieren ken je om data op te slaan (week 6)?
- Key-value
2. Document store
Benoem enkele voordelen van Key-value datastructuren.
- Hashing
2. Standaard ADT in veel programmeertalen