Databas

En databas (tidigare databank) är en samling information som är organiserad på ett sådant sätt att det är lätt att söka efter och hämta enskilda bitar information, samt ofta även att ändra informationen. Ordet databas kan beteckna informationen som finns lagrad, eller den programvara (databashanterare) som förstår att tolka den ofta mycket komplexa datastrukturen som lagras på hårddisken. Databaser nås via ett s.k. gränssnitt.

Historia 
När datorer började användas inom affärsvärlden på 1960-talet blev det viktigt att kunna spara data på ett säkert sätt. De första databaserna var hierarkiska där data lagras i en struktur anpassad till dåtidens linjära lagringsmedia som magnetband.

Det är en vanlig missuppfattning att data och databaser inte fanns innan datorernas intåg. Databaser har funnits sedan mycket lång tid tillbaka. Ända sedan man började samla in data och ordna den systematiskt, exempelvis i form av arkiv och kartotek. I och med att datorerna kom fick man möjlighet att behandla data maskinellt automatisk databehandling (ADB), tidigare något missvisande kallat administrativ databehandling.

Databastyper

Hierarkisk databas 

I en hierarkisk databas lagras data i en trädstruktur som gör den snabb att bearbeta men svår att manipulera. En av de mest framgångsrika hierarkiska databaserna är IBM:s IMS som utvecklades för användning i Apolloprogrammet.

Relationsdatabas 

Den moderna relationsdatabasen uppfanns av Edgar Codd 1970. En relationsdatabas består vanligtvis av en databas med flera tabeller, även kallade relationer. Informationen sparas i rader i tabellerna. Idag kan data av en mängd olika typer sparas, inte bara text och numeriska data utan också bilder, ljud och video.

Idag är alla de stora DBMS/databaserna, IBM:s DB2, Oracles Oracle, Microsofts SQL Server och svenska MySQL relationsdatabaser som använder dataspråket SQL - Structured Query Language - för att definiera och söka data.

Internets och World Wide Webs starka frammarsch på 1990-talet gjorde det möjligt att komma åt data i relationsdatabaser på webben via s.k. dataspråk som PHP och Sun Microsystems JSP.

Objektorienterad databas 
På 1990-talet blev objektorienterade och XML-baserade databaser tillgängliga. En populär objektdatabas är Hibernate  som konverterar Java- och C-sharp-objekt så att de kan lagras i vanliga relationsdatabaser.

Faktabaserad databas 
En nygammal databastyp är den faktabaserade databasen. Idén är databasen fylls med sanna påståenden, och att man med ett frågespråk ställer frågor till dessa faktum. Arkitekturen är snarlik de tabellbaserade SQL-databaserna, men har fördelen att man enklare kan relatera många objekt till varandra utan att ha mellanliggande uppslagstabeller.

Fakta lagras i form av tuplar ofta med tre eller fyra positioner, ofta identifierare, attribut, data och transaktionstidpunkt . En lovande teknik för tre-tupler, tripplar, kallas Resource Description Framework, en standard framtagen av W3C där data beskrivs som länkade nätverk av tripplar och frågas med särskilda frågespråk, bland andra SPARQL.

Det amerikanska företaget Metadata Partners lanserade 2012 databasen Datomic, en distribuerad och faktabaserad transaktionsdatabas med tidsstämplar. Transaktionerna är förinställda att vara spårbara bakåt i tiden och frågor kan därigenom ställas på tidigare versioner av data i databasen. Det går även att ställa frågor datasetet med hypotetiskt införda ändringar i data. Frågespråket är en variant av Prolog kallad Datalog, som portats till lisp-dialekten Clojure.

Se även 
 4th Dimension
 NoSQL

Källor