Unormalisert form
Unormalisert form (UNF eller 0NF) en database-datamodell (organisering av data i en database) som ikke tilfredsstiller noen av betingelsene til normalisering definert i relasjonsmodellen. Databasesystemer som støtter unormaliserte data kalles noen ganger "ikke-relasjonelle" eller NoSQL-databaser. I relasjonsmodellen kan unormaliserte relasjoner betraktes som utgangspunktet for en normaliseringsprosess.
"Unormalisert form" må ikke forveksles med denormalisering, hvor normalisering bevisst kompromitteres for utvalgte tabeller i en relasjonsdatabase.
Historie
[rediger | rediger kilde]I 1970 foreslo Edgar Frank Codd relasjonsmodellen som siden har blitt allment akseptert som standarden for datamodeller.[1] På den tiden var automatisering av kontorarbeid hovedbruken av datalagring, hvilket resulterte i at det ble foreslått mange UNF-datamodeller som Schek-modellen, Jaeschke-modellene (ikke-rekursiv og rekursiv algebra) og nøstet tabelldata-modellen (NTD).[2]
I 1987 i Darmstadt, Tyskland arrangerte IBM den første internasjonale plansmien eksklusivt om dette emnet.[2]
Det har skjedd mye forskning og publisering i tidsskrifter for å ta tak i manglene ved relasjonsmodellen. Siden årtusenskiftet har NoSQL-databaser blitt populære på grunn av kravene til Web 2.0 .
Relasjonell form
[rediger | rediger kilde]Normalisering til første normalform krever at de initielle dataene blir sett på som relasjoner.[3] I databasesystemer representeres relasjoner som tabeller. Relasjonsvisningen medfører noen begrensninger på tabellene:
- Ingen dupliserte rader: I praksis sikres dette ved å definere en eller flere kolonner som primærnøkler.
- Rader har ikke en iboende rekkefølge. Selv om tabeller må lagres og presenteres i en eller annen rekkefølge er dette ustabilt og implementeringsavhengig. Hvis en spesifikk rekkefølge behøver å presenteres må den være i form av data, for eksempel i form av en nummerkolonne.
- Kolonner har unike navn innenfor samme tabell.
- Hver kolonne har et domene (eller en datatype) som definerer de tillatte verdiene i kolonnen.
- Alle rader i en tabell har samme mengde kolonner.
Denne definisjonen utelukker ikke at kolonner har mengder eller relasjoner som verdier, for eksempel nøstede tabeller. Dette er den største forskjellen til første normalform.
NoSQL-databaser som dokumentorienterte databaser samsvarer vanligvis ikke med relasjonsvisningen. For eksempel kan en JSON- eller XML-database støtte dupliserte oppføringer og iboende rekkefølger. En slik database kan beskrives som "ikke-relasjonell". Men det finnes også databasemodeller som støtter relasjonsvisningen, men som ikke omfavner første normalform. [4] Slike modeller kalles "ikke-første normalforms relasjoner" (forkortet NFR, N1NF eller NF 2).
Eksempel med tabellvaluert kolonne
[rediger | rediger kilde]Kunde | Kunde_id | Transaksjoner | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Anne | 1 |
| ||||||||||||
Ida | 2 |
| ||||||||||||
Jan | 3 |
|
Denne tabellen representerer en relasjon hvor en av kolonnene (transaksjoner-kolonnen) i seg relasjons-valuert. Dette er en gyldig relasjon, men samsvarer ikke med første normalform som ikke tillater nøstede relasjoner. Tabellen er derfor unormalisert.
Moderne bruk
[rediger | rediger kilde]Per 2016 håndterer selskaper som Google, Amazon og Facebook store datamengder som er vanskelige å lagre effisient. For å håndtere lagringsproblemet bruker de NoSQL-databaser basert på prinsippene for den unormaliserte relasjonsmodellen.[5] Noen eksempler på NoSQL-databaser er MongoDB, Apache Cassandra og Redis. Disse databasene er mer skalerbare og enklere å spørre siden de ikke medfører beregningsmessig dyre operasjoner som skjøter (joins).
Se også
[rediger | rediger kilde]- Denormalisering
- Normalisering
- Første normalform
- Andre normalform
- Tredje normalform
- Boyce–Codd normalform
- NoSQL
Referanser
[rediger | rediger kilde]- ^ «IBM Archives: Edgar F. Codd».
- ^ a b Kitagawa, Hiroyuki; Kunii, Tosiyasu L. (6. februar 1990). The Unnormalized Relational Data Model. Springer. ISBN 978-4-431-70049-4.
- ^ Codd, E. F. (1970). A Relational Model of Data for. Large Shared Data Banks. IBM Research Laboratory, San Jose, California.
- ^ Operations and the Properties on Non-First-Normal-Form Relational Databases H. Arisawa, K. Moriya, T. Miura Published in VLDB 1983
- ^ . 2013.