Innhold: Relasjonsalgebra Vs Relasjonsberegning
- Sammenligningstabel
- Definisjon
- Viktige forskjeller
- Konklusjon
Sammenligningstabel
Grunnlag for sammenligning | Relasjonsalgebra | Relasjonsberegning |
---|---|---|
grunn~~POS=TRUNC | Relasjonsalgebra er et prosesspråk. | Relasjonelle Claculus er Deklarativ språk. |
States | Relasjonsalgebra angir hvordan man får resultatet. | Relasjonsberegning angir hvilket resultat vi må oppnå. |
Rekkefølge | Relasjonsalgebra beskriver rekkefølgen der operasjoner må utføres. | Relasjonsberegning angir ikke operasjons rekkefølge. |
Domene | Relasjonsalgebra er ikke domeneavhengig. | Forhold Claculus kan være domenavhengig. |
I slekt | Det er nær et programmeringsspråk. | Det er nær det naturlige språket. |
Definisjon av relasjonsalgebra
Relasjonsalgebra presenterer det grunnleggende settet av operasjoner for relasjonsmodell. Det er et prosesspråk, som beskriver prosedyren for å oppnå resultatet. Relasjonsalgebra er forskriftskritisk fordi den beskriver operasjonsordren i spørringen som angir hvordan man skal hente resultatet av en spørring.
Sekvensen av operasjoner i en relasjonsalgebra kalles relasjonsalgebrauttrykk. Relasjonsalgebraekspresjonen tar enten et forhold eller to relasjoner som en inngang til uttrykket og frembringer en ny relasjon som et resultat. Den resulterende relasjonen oppnådd fra relasjonsalgebrauttrykkene kan videre samles til det andre relasjonelle algebrauttrykket, hvis resultat igjen vil være et nytt forhold.
Relasjonsalgebra danner rammen for implementering og optimalisering av spørringer mens forespørselsbehandling. Relasjonsalgebra er en integrert del av relasjonelle DBMS. Den grunnleggende operasjonen som inngår i relasjonsalgebra er { Select (σ), Project (π), Union (∪), Set Difference (-), Cartesian produkt (×) og Rename (ρ) }.
Definisjon av relasjonsberegning
I motsetning til relasjonsalgebra er Relasjonsberegning et høyere nivå Deklarativt språk. I sammenheng med relasjonsalgebra definerer relasjons-kalkulator hvilket resultat som skal oppnås. Relational Calculus, som relasjonsalgebra, spesifiserer ikke sekvensen av operasjoner der spørringen vil bli evaluert.
Sekvensen av relasjonelle kalkulasjonsoperasjoner kalles relasjonelle kalkuluttrykk som også produserer et nytt forhold som resultat. Relasjonsberegningen har to variasjoner, nemlig Tuple Relational Calculus og Domain Relational Calculus .
The Tuple Relational Calculus liste tuplene til valgt fra en relasjon, basert på en bestemt tilstand som tilbys. Det er formelt betegnet som:
P (t)
Hvor t er settet med tuples fro som tilstanden P er sant.
Den neste varianten er Domain Relational Calculus, som i motsetning til Tuple Relational Calculus viser attributter som skal velges fra en relasjon, basert på bestemt tilstand . Den formelle definisjonen av Domain Relational Calculus er som følger:
Hvor X1, X2, X3, . . . Xn er attributter og P er den bestemte tilstanden.
Nøkkelforskjeller mellom relasjonsalgebra og relasjonsberegning
- Den grunnleggende forskjellen mellom relasjonsalgebra og relasjonsberegning er at relasjonsalgebra er et prosesspråk, mens relasjonsberegningen er en ikke-prosessuell, i stedet er det et deklarativt språk.
- Relasjonsalgebra definerer hvordan man får resultatet, mens relasjonsberegningen definerer hvilken informasjon resultatet må inneholde.
- Relasjonsalgebra angir sekvensen der operasjoner må utføres i spørringen. På de andre hendene spesifiserer ikke relasjonskalkulatoren sekvensen av operasjoner som skal utføres i spørringen.
- Relasjonsalgebraet er ikke domeneavhengig, men Relasjonsberegningen kan være domenavhengig, ettersom vi har Domain Relational Calculus.
- Forespørselsspråket for relasjonsalgebra er nært knyttet til programmeringsspråket mens relasjonsberegningen er nært knyttet til det naturlige språket.
Konklusjon:
Relasjonsalgebra og relasjonsberegning har begge tilsvarende ekspressiv kraft. Hovedforskjellen mellom dem er bare at relasjonsalgebra angir hvordan man henter data og relasjonsberegning definerer hvilke data som skal hentes.