Unormalisert form

enkel database-datamodell som mangler lagringseffisiensen ved databasenormalisering

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

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

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

Kunde Kunde_id Transaksjoner
Anne 1
Tr_id Dato Beløp
12890 2003-10-14 87
12904 2003-10-15 50
Ida 2
Tr_id Dato Beløp
12898 2003-10-14 21
Jan 3
Tr_id Dato Beløp
12907 2003-10-15 18
14920 2003-11-20 70
15003 2003-11-27 60

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

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

Referanser rediger

  1. ^ «IBM Archives: Edgar F. Codd». 
  2. ^ a b Kitagawa, Hiroyuki; Kunii, Tosiyasu L. (6. februar 1990). The Unnormalized Relational Data Model. Springer. ISBN 978-4-431-70049-4. 
  3. ^ Codd, E. F. (1970). A Relational Model of Data for. Large Shared Data Banks. IBM Research Laboratory, San Jose, California.
  4. ^ Operations and the Properties on Non-First-Normal-Form Relational Databases H. Arisawa, K. Moriya, T. Miura Published in VLDB 1983
  5. ^ . 2013.