Objektorienteret database
En objektorienteret database (OODB) er en database , hvor data er modelleret som objekter [1] , deres attributter, metoder og klasser [2] .
Historie
De første publikationer om objektorienterede databaser udkom i midten af 80'erne. [3]
Karakteristika
Objektorienterede databaser anbefales normalt til de tilfælde, hvor højtydende behandling af data med en kompleks struktur er påkrævet.
OODB-manifestet [4] foreslår obligatoriske karakteristika, som enhver OODB skal opfylde. Deres valg er baseret på 2 kriterier: Systemet skal være objektorienteret og være en database.
Obligatoriske egenskaber
- Understøttelse af komplekse objekter. Systemet skal give mulighed for at skabe sammensatte objekter ved at bruge konstruktører af sammensatte objekter. Det er nødvendigt, at objektkonstruktører er ortogonale, det vil sige, at enhver konstruktør kan anvendes på ethvert objekt.
- Støtte til genstandes individualitet. Alle objekter skal have en unik identifikator, der er uafhængig af deres attributværdier.
- Indkapslingsstøtte. Korrekt indkapsling opnås på grund af det faktum, at programmører kun har ret til at få adgang til specifikationen af metodegrænsefladen, og dataene og implementeringen af metoderne er skjult inde i objekterne.
- Support til typer og klasser. Det kræves, at OODB understøtter mindst ét koncept for skelnen mellem typer og klasser. (Udtrykket "type" er mere i overensstemmelse med konceptet om en abstrakt datatype. I programmeringssprog er en variabel erklæret med sin type. Compileren kan bruge denne information til at verificere, at operationer udført på variablen er kompatible med dens type , som er med til at sikre softwarens korrekthed. På den anden side er klassen en skabelon til at skabe objekter og giver metoder, der kan anvendes på disse objekter.Således handler begrebet "klasse" mere om kørselstid end kompilering -tid.)
- Støtte til at arve typer og klasser fra deres forfædre. En undertype eller underklasse skal arve attributter og metoder fra henholdsvis sin supertype eller superklasse.
- Overbelastning kombineret med fuld binding. Metoder skal anvendes på objekter af forskellige typer. Implementeringen af metoden skal afhænge af typen af objekter, som metoden anvendes på. For at give denne funktionalitet bør binding af metodenavne i systemet ikke finde sted, før programmet kører.
- Beregningsmæssig fuldstændighed. Datamanipulationssproget bør være et alment programmeringssprog.
- Sættet af datatyper skal kunne udvides. Brugeren skal have midlerne til at oprette nye datatyper baseret på et sæt foruddefinerede systemtyper. Desuden bør der ikke være nogen forskel mellem den måde, system- og brugerdefinerede datatyper bruges på.
Valgfri egenskaber:
- Multipel arv
- Typekontrol
- Fordeling
- Projekttransaktioner
Åbne funktioner:
- Programmeringsparadigmer (proceduremæssige, deklarative)
- Præsentationssystem
- Type system
- Ensartethed. Implementering - programmeringssprog - interface.
OODB og dets DBMS
Resultatet af at kombinere funktionerne (funktionerne) i databaser og mulighederne for objektorienterede programmeringssprog er objektorienterede databasestyringssystemer (OODBMS). OODBMS giver dig mulighed for at arbejde med databaseobjekter på samme måde som med objekter i programmering i OOLP. En OODBMS udvider programmeringssprog ved gennemsigtigt at introducere vedvarende data, samtidighedskontrol, datagendannelse, tilknyttede forespørgsler og andre funktioner.
Nogle objektorienterede databaser er designet til at interagere tæt med objektorienterede programmeringssprog som Python , Java , C# , Visual Basic .NET , C++ , Objective-C og Smalltalk ; andre har deres egne programmeringssprog. OODBMS bruger nøjagtig samme model som objektorienterede programmeringssprog.
DBMS skal give:
- Langtidsopbevaring
- Brug af ekstern hukommelse
- Parallelisme
- Genopretning
- Ad hoc-anmodninger
Noter
- ↑ Naturvidenskabernes ordbog. Ordliste.ru
- ↑ OLAP.RU: Objektorienterede databaser - grundlæggende begreber, organisation og ledelse: en kort oversigt . Hentet 13. juni 2011. Arkiveret fra originalen 13. marts 2012. (ubestemt)
- ↑ IEEE Database Engineering, specialnummer om objektorienterede databaser, F. Lochovski, red., dec. 1985
- ↑ Atkinson et al., 1989
Litteratur
- Dato KJ Introduktion til databasesystemer. - M. : Williams, 2005. - ISBN 5-8459-0788-8 . (Kapitel 25, Objektdatabaser og Kapitel 26, Objektrelationelle databaser.)
- Chertovskoy V.D. Databaser og databanker. Tutorial (utilgængeligt link) . Moscow State University of Printing Arts. Hentet 7. maj 2011. Arkiveret fra originalen 26. januar 2012. (ubestemt)
Links
Ordbøger og encyklopædier |
|
---|
I bibliografiske kataloger |
|
---|