
NoSQL och alternativa databaser
En översikt av icke-relationella databaser och när de är lämpliga att använda. Eleverna jämför dokumentdatabaser med traditionella SQL-databaser.
Kort sammanfattning:I en värld av Big Data och realtidsapplikationer räcker inte alltid traditionella relationsdatabaser till. NoSQL (Not Only SQL) erbjuder alternativ som dokumentdatabaser, grafdatabaser och nyckel-värde-lager. Här utforskar vi när dessa är mer lämpliga, till exempel vid hantering av ostrukturerad data eller när extrem skalbarhet krävs.
Om detta ämne
I en värld av Big Data och realtidsapplikationer räcker inte alltid traditionella relationsdatabaser till. NoSQL (Not Only SQL) erbjuder alternativ som dokumentdatabaser, grafdatabaser och nyckel-värde-lager. Här utforskar vi när dessa är mer lämpliga, till exempel vid hantering av ostrukturerad data eller när extrem skalbarhet krävs.
Eleverna får lära sig om skillnaden mellan strikta scheman och schemalösa databaser. Vi diskuterar begrepp som horisontell skalbarhet och varför stora företag som Google och Amazon använder NoSQL för sina mest krävande tjänster. Det ger en modern utblick på systemarkitektur som kompletterar den klassiska databasteorin.
Genom att jämföra olika databastyper i praktiska scenarier utvecklar eleverna en kritisk förmåga att välja rätt verktyg för rätt uppgift, vilket är en viktig del av kursens mål om systemarkitektur.
Nyckelfrågor
- Vad skiljer NoSQL från SQL?
- När bör man välja en dokumentdatabas?
- Hur hanteras skalbarhet i NoSQL?
Se upp för dessa missuppfattningar
Vanlig missuppfattningAtt NoSQL kommer att ersätta SQL helt.
Vad man ska lära ut istället
Förklara att de tjänar olika syften. SQL är oslagbart för komplexa frågor och dataintegritet, medan NoSQL glänser vid stora volymer och flexibla dataformat. Diskussioner om 'rätt verktyg för jobbet' är centrala.
Vanlig missuppfattningAtt NoSQL betyder att man inte behöver strukturera sin data alls.
Vad man ska lära ut istället
Även om databasen är 'schemalös' måste applikationen veta vad den förväntar sig. Genom att titta på JSON-strukturer ser eleverna att ordning fortfarande krävs för att koden ska fungera.
Idéer för aktivt lärande
Se alla aktiviteter→Formell debatt
SQL mot NoSQL
Klassen delas i två lag som representerar varsin teknik. De får olika scenarier (t.ex. ett bank-system vs en social media-feed) och ska argumentera för varför deras teknik är bäst lämpad för just det fallet.
Utforskande cirkel
JSON-pusslet
Eleverna får i uppgift att modellera en produktkatalog för en e-handel med mycket varierande produkter (t.ex. kläder och elektronik). De ska jämföra hur det ser ut i en SQL-tabell kontra ett JSON-dokument i en NoSQL-databas.
EPA (Enskilt-Par-Alla)
Skalbarhets-utmaningen
Eleverna diskuterar vad som händer när en app går från 100 till 100 miljoner användare över en natt. De brainstormar i par hur man kan fördela data över många servrar och varför NoSQL ofta underlättar detta.
Vanliga frågor
När ska man välja en dokumentdatabas som MongoDB?
Hur kan aktiva lärandestrategier hjälpa elever att förstå NoSQL?
Vad betyder 'horisontell skalbarhet'?
Är NoSQL svårare att lära sig än SQL?
Mer i Databaser och informationshantering
Relationsdatabaser och SQL
Grunderna i relationsdatabaser och hur man ställer frågor med SQL. Eleverna lär sig skapa, läsa, uppdatera och radera data (CRUD).
8 methodologies
Datamodellering
Hur man designar en databas från grunden med hjälp av ER-diagram och normalisering. Målet är att undvika redundans och bevara dataintegritet.
8 methodologies