En relationsdatabas organiserar data i tabeller med rader och kolumner. Varje tabell representerar en entitet: kunder, order, produkter. Varje rad är en post. Varje kolumn är ett fält. Relationer mellan tabeller definieras av nycklar. En främmande nyckel i en tabell pekar på en primärnyckel i en annan. Strukturen definieras av ett schema. Databasen tillämpar schemat och avvisar data som inte passar. Den tillämpningen håller data konsekventa.
Relationsmodellen föreslogs av Edgar Codd år 1970. Den ersatte tidigare hierarkiska och nätverksmodeller eftersom den var enklare och mer flexibel. SQL blev standardfrågespråket. Decennier senare kör relationsdatabaser fortfarande de flesta av världens transaktionssystem. De är tillförlitliga, välförstådda och ACID-kompatibla. Atomicitet, konsistens, isolering och hållbarhet garanterar att transaktioner antingen slutförs helt eller inte alls. Den garantin är viktig för bank, lager och alla system där partiella uppdateringar orsakar problem. Relationsdatabaser skalas vertikalt genom att lägga till mer kraft till en enda server. De skalas horisontellt med sharding, men det ökar komplexiteten. NoSQL-databaser hanterar horisontell skalning mer naturligt, vilket är anledningen till att de vunnit popularitet för webbapplikationer. Relationsdatabaser är fortfarande standarden för applikationer som behöver stark konsistens och komplexa frågor. Tekniken är mogen. Avvägningarna är välförstådda.
Relationsdatabasegenskaper
- Tabeller — data organiserade efter enhet
- Rader och kolumner — poster och fält
- Nycklar — primära och främmande nycklar definierar relationer
- SQL — standardfrågespråk
- ACID — transaktionsgarantier
En relationsdatabas är en uppsättning tabeller med regler. Reglerna håller data konsekventa. Tabellerna håller dem organiserade.
Comments
No comments yet. Be the first to share a thought.
Leave a comment