Algebra relazionale nei database: operazioni, esempi

Sommario:

Algebra relazionale nei database: operazioni, esempi
Algebra relazionale nei database: operazioni, esempi
Anonim

In genere, i sistemi di database sono dotati di un linguaggio di query che può aiutare gli utenti a interrogare le istanze. Ne esistono di due tipi: algebra relazionale e calcolo relazionale. Il primo è un linguaggio di query procedurale che prende le istanze di relazione come input e restituisce le relazioni di esempio come output. Usa il calcolo unario o binario per questo. L'algebra relazionale viene eseguita ricorsivamente ei risultati intermedi vengono trattati come relazioni.

Algebra relazionale
Algebra relazionale

Prodotto cartesiano (Χ)

Combina le informazioni di due relazioni diverse in una.

Notazione – r Χ s, dove r e s sono rapporti e il loro output sarà definito come

r Χ s={qt | q ∈ r e t ∈ s}.

Conclusione. Imposta una relazione che mostra tutti i libri e gli articoli scritti con il tutorial.

Operazione di ridenominazione (ρ).

La relazione dell'algebra relazionale è il risultato, ma senza alcun nome. L'operazione di ridenominazione consente di modificare il valore di output, indicato dalla minuscola lettera greca ρ.

Designazione – ρ x (MI), dove il risultato dell'espressione E viene memorizzato con il nomex.

Operazioni aggiuntive:

  • imposta incrocio;
  • assegnazione;
  • connessione naturale.

Calcolo relazionale

Questo è un linguaggio di query non procedurale, il che significa che ti dice cosa fare ma non spiega come implementarlo. Il calcolo relazionale esiste in due forme:

  • calcolo di correlazione di una tupla;
  • filtraggio di intervalli variabili.

Notazione - T/Stato: restituisce tutte le tuple T che soddisfano una condizione. Risultato. Restituisce tuple con un nome. TRC può essere quantificato. Puoi usare quantificatori esistenziali (∃) e universali (∀). Conclusione. La query precedente darà lo stesso risultato della precedente.

Calcolo relazionale del dominio DRC

La variabile filter usa il dominio dell'attributo invece dei valori interi della tupla (come fatto nel TRC menzionato sopra).

Notazione – {a 1, a 2, a 3, …, a | P (un 1, un 2, un 3, …, un)}, dove a1, a2 sono attributi e P indica formule costruite con valori interni.

Conclusione. Imposta l'articolo, la pagina e l'argomento dalla relazione TutorialsPoint, dove l'oggetto è il database.

Come TRC, anche DRC può essere scritto usando quantificatori esistenziali e universali. DRC include anche operatori di algebra relazionale. La forza dell'espressione di calcolo, calcolo e correlazione delle relazioni tra punti è equivalente.

relazionalemodello di dati di algebra relazionale
relazionalemodello di dati di algebra relazionale

Variazioni e schemi del calcolo relazionale e dell'algebra

Il modello ER, quando concettualizzato nei diagrammi, fornisce una buona panoramica delle relazioni essenziali che sono più facili da capire. Le rappresentazioni schematiche possono essere mappate su uno schema relazionale, ovvero possono essere create insieme tra loro. Non è possibile importare tutti i vincoli ER in un modello relazionale, ma è possibile generare una struttura approssimativa. Sono disponibili diversi processi e algoritmi per convertire i grafici in questo sistema. Alcuni di essi sono automatizzati, mentre altri vengono creati manualmente. I grafici ER consistono principalmente nei seguenti criteri:

  • entità e suoi attributi;
  • link, che è un'associazione tra i valori di cui sopra.

Il confronto di oggetti e relazioni avviene in modi e schemi differenti. Ad esempio, un'entità è un oggetto del mondo reale con alcuni attributi. Il processo di abbinamento, l'algoritmo è il seguente:

  • crea una tabella per ogni oggetto;
  • gli attributi dovrebbero diventare campi di tabella con i tipi di dati corrispondenti;
  • dichiara una chiave primaria.

Una relazione è un'associazione tra entità. Il processo di compilazione è il seguente:

  • crea una tabella per le relazioni;
  • aggiungi chiavi primarie di tutte le entità partecipanti come campi tabella con tipi di dati appropriati;
  • se la relazione ha qualche attributo, imposta ogni attributo come campo della tabella;
  • combina la chiave primaria che compone tuttoil resto per gli oggetti partecipanti;
  • specifica tutti i vincoli di chiave esterna.

La visualizzazione degli insiemi deboli e degli oggetti gerarchici avviene secondo un certo sistema. In primo luogo, è necessario comprendere i fondamenti e le definizioni essenziali di questi valori. Un set di funzionalità debole è quello a cui non è associata alcuna chiave primaria. Il processo di visualizzazione è il seguente:

  • crea una tabella per un insieme debole di oggetti;
  • aggiungi tutti gli attributi allo schema come campo;
  • specifica la chiave primaria per l'identificazione;
  • imposta tutti i vincoli di chiave esterna.

La visualizzazione di oggetti gerarchici in base alla specializzazione o alla generalizzazione del linguaggio dell'algebra relazionale avviene sotto forma di entità sequenziali. L'algoritmo è il seguente:

  • crea tabelle per tutti gli oggetti di livello inferiore più alto;
  • aggiungi chiavi primarie;
  • a un livello basso implementa tutti gli altri attributi degli oggetti di livello inferiore;
  • dichiara le chiavi primarie della tabella;
  • imposta i vincoli di chiave esterna.
Operazioni di Algebra Relazionale
Operazioni di Algebra Relazionale

Opzioni esistenti per descrivere, memorizzare e modificare le informazioni

SQL è un linguaggio di programmazione per database relazionali. È sviluppato sull'algebra e sul calcolo delle correlazioni delle tuple. SQL viene fornito come un pacchetto con tutte le principali distribuzioni DBMS. Contiene sia i dati che le lingue per manipolarli. Utilizzando le proprietà di definizione dei dati SQL dell'algebra relazionale, è possibile progettare e modificare lo schema del database,mentre le proprietà di gestione e regolazione, nonché le modifiche ai dati, consentono di memorizzare e recuperare le informazioni installate nel sistema. Utilizza il seguente insieme di comandi per definire la struttura e il sistema:

  • crea nuovi database, tabelle e viste da un DBMS.
  • emette comandi.
  • cambia lo schema del database.
  • questo comando aggiunge un attributo a un oggetto stringa.

SQL è dotato di un linguaggio di manipolazione dei dati (DML). Modifica l'istanza del database inserendo, aggiornando ed eliminando le informazioni. DML è responsabile della modifica di tutti i dati. SQL contiene il seguente insieme di comandi nella sezione DML:

  1. SELECT è uno dei comandi di query di base. È analogo all'operazione di proiezione dell'algebra relazionale. Seleziona gli attributi in base alla condizione descritta nella clausola WHERE.
  2. DA - Questa sezione prende un nome come argomento da cui selezionare/proiettare gli attributi. Nel caso in cui venga indicato più di un nome, questo articolo corrisponde al prodotto cartesiano.
  3. WHERE - Questa sezione specifica il predicato o le condizioni che devono essere soddisfatte per qualificare l'attributo proiettato.

Ci sono anche dei comandi:

  • inserire;
  • cambiare i valori;
  • elimina.
Algebra relazionale nei database
Algebra relazionale nei database

Creazione di query di algebra relazionale

Quando si costruisce una ricerca, il compito è trovare una struttura di operazioni che porti all'output corretto. Le operazioni di base dell'algebra relazionale sono semplicioperazioni con una o due relazioni come operandi. Gli effetti combinati della sequenza determinano il risultato finale. Poiché il sistema dell'algebra relazionale nei database è abbastanza semplice, molti risultati intermedi possono essere ottenuti prima di raggiungere l'output finale, vengono utilizzati anche come operandi che producono nuovi dati ricevuti.

Per la maggior parte degli operatori, l'ordine delle query e la loro esecuzione non ha importanza, il che significa che lo stesso output può essere ottenuto modellando e combinando i dati intermedi in modi diversi. In pratica, le ricerche nei database sono abbastanza facili. Il sistema per l'esecuzione delle operazioni e dei risultati intermedi è determinato da Query Optimizer. Quando si formano domande, requisiti, è necessario

prima scegliere quali relazioni sono necessarie per ottenere una risposta, quindi specificare le operazioni e i risultati intermedi. La struttura di una query di algebra relazionale in un database dei risultati può essere rappresentata come un diagramma. Gli ottimizzatori dei requisiti cercano di organizzare l'esecuzione nel modo più efficiente possibile. In pratica, questo di solito significa che cercano di ridurre al minimo i risultati intermedi il più rapidamente possibile. Esempi comuni di algebra relazionale aiuteranno in questo.

Esempio 1.

Necessità di informazioni: informazioni sui veicoli dell'anno modello 1996 in cui sono state rilevate carenze durante l'ispezione per il 1999.

In primo luogo, vengono visualizzate le informazioni sulle auto per comprendere i valori di tutti gli attributi della relazione. Le informazioni sulle ispezioni sono memorizzate nella tabella "Ispezione" e se rilevateguasti, vengono registrati nella tabella "Problema". Pertanto, queste tre tabelle sono necessarie per ottenere le informazioni richieste.

Solo le auto del 1996 sono interessanti. La gamma di modelli del veicolo è rappresentata come il valore dell'attributo set nella riga della tabella delle informazioni sul veicolo. Il primo risultato intermedio consiste in tuple che rappresentano le varianti del 1996.

Quindi sono necessarie solo le righe che coprono questo periodo. È necessario utilizzare una selezione per estrarli. Ora ci sono auto e revisioni che erano necessarie. Le stringhe vengono quindi concatenate utilizzando l'operazione di concatenazione. Devono essere uniti da un numero di registro comune, poiché è l'unica colonna comune, viene utilizzato un join naturale.

Per scoprire se ci sono stati problemi durante i controlli, è necessario associare le righe dei problemi al controllo. Dopo aver collegato le righe di controllo alle auto, è possibile collegare questo risultato alla tabella degli errori. L'affiliazione deve basarsi sul numero di registrazione comune e sulla data verificata. Queste sono le uniche colonne comuni nelle tabelle, quindi viene utilizzato un join naturale.

L'algebra relazionale è un linguaggio
L'algebra relazionale è un linguaggio

Opzioni di calcolo senza risultati intermedi

Esempio 2.

Informazioni richieste: nome del conducente per veicoli dell'anno modello 1995 o precedenti che non sono stati testati per il 2000. Il nome è nella tabella "Driver". Le forze dell'ordine sono descritte nella tabella "Ispezione e auto in un'auto mensa". CosìPertanto, queste tre tabelle sono necessarie. Innanzitutto, è necessario scoprire le auto che non sono state controllate per l'anno 2000. Non è possibile risolvere questo problema utilizzando solo le ispezioni elencate nella tabella, poiché contiene i dati relativi alle ispezioni che sono state effettuate e non quelle che non sono state implementate. Questo problema viene risolto cercando auto complementari che vengono controllate prima dell'anno 2000. In effetti, sono necessari solo i loro numeri di registrazione.

Ci sono altri esempi oltre a quelli sopra che mostrano come modificare o trovare informazioni. Le varianti di query possono essere ottimizzate utilizzando operazioni speciali. Infatti, per rendere la ricerca e la ricerca dei dati il più semplice possibile, esiste un modello di calcolo relazionale.

Dove le informazioni sono protette e protette

Il modello di dati relazionali dell'algebra relazionale è archiviato in formati di file contenenti record. A livello fisico, le informazioni effettive sono fissate in un formato elettromagnetico su alcuni dispositivi. Questi dispositivi di archiviazione possono essere suddivisi in tre categorie:

  1. Principale. Questa categoria include la memoria direttamente accessibile alla CPU. Registri, memoria veloce (cache) e memoria principale (RAM) sono direttamente accessibili alla centrale, poiché si trovano tutti sulla scheda madre o sul chipset. Questo spazio di archiviazione è in genere molto piccolo, ultraveloce e instabile. Per mantenere lo stato è necessaria un'alimentazione costante. Se fallisce, tutti i suoi dati andranno persi.
  2. Secondario. Utilizzato per memorizzare informazioni per il futuroutilizzare o eseguire il backup. Include dispositivi di memoria che non fanno parte del chipset del processore o della scheda madre, come dischi magnetici, dischi ottici (DVD, CD, ecc.), dischi rigidi, unità flash e nastri magnetici.
  3. Terziario. Utilizzato per memorizzare enormi quantità di dati. Poiché tali dispositivi di archiviazione sono esterni al sistema informatico, sono i più lenti in termini di velocità. Questi gadget di archiviazione vengono utilizzati principalmente per eseguire il backup dell'intero sistema. I dischi ottici e i nastri magnetici sono ampiamente utilizzati come memoria terziaria.

Operazioni speciali di algebra relazionale sono importanti per l'efficienza delle query.

Struttura di archiviazione

Il sistema informatico ha una gerarchia di memoria ben definita. La CPU ha accesso diretto al sistema principale e ai registri integrati. Il tempo di accesso alla memoria principale è ovviamente inferiore alla velocità del processore. Per ridurre al minimo questa discrepanza, viene introdotta una cache. La cache fornisce i tempi di accesso più rapidi e contiene i dati a cui la CPU accede più frequentemente.

La memoria con l'accesso più veloce è la più costosa. I dispositivi di archiviazione di grandi dimensioni forniscono poca velocità e sono più economici, ma possono archiviare enormi quantità di dati rispetto a un registro o una cache del processore.

I dischi rigidi e magnetici sono i dispositivi di archiviazione secondari più comuni nei sistemi informatici di oggi. Si chiamano magneticibase in metallo. Questi dischi sono posizionati verticalmente sul mandrino. La testina di lettura/scrittura si sposta tra di loro e viene utilizzata per magnetizzare o rimuovere tale punto sottostante. Può essere riconosciuto come 0 (zero) o 1 (uno).

I dischi rigidi sono formattati in un ordine ben definito per un'efficiente archiviazione dei dati. Ha molti cerchi concentrici chiamati percorsi. Ogni traccia è ulteriormente suddivisa in settori, che in genere memorizzano 512 byte di dati.

Algebra relazionale SQL
Algebra relazionale SQL

Operazioni sui file

Le operazioni sul sistema linguistico dell'algebra relazionale e il suo database possono essere classificati in due categorie:

  • aggiornamento;
  • cerca.

La prima categoria cambia i valori dei dati inserendo, eliminando o aggiornando. D' altra parte, le operazioni di ricerca non modificano le informazioni, ma le estraggono dopo un filtro condizionale facoltativo. In entrambi i tipi di operazioni, la selezione gioca un ruolo significativo. Oltre alla creazione e all'eliminazione di un file, possono essere eseguite diverse operazioni su di esso:

  1. Open - esiste in una delle due modalità di lettura o scrittura. Nel primo caso, il sistema operativo non consente a nessuno di modificare i dati. In altre parole, i dati vengono solo letti. I file aperti in modalità lettura possono essere condivisi tra più oggetti. La modalità di scrittura consente di modificare i dati. I file possono essere letti ma non condivisi.
  2. Chiudi è l'operazione più importante dal punto di vista del sistema operativo in quanto rimuove tutti i blocchi(se in modalità condivisa), salva i dati (se modificati) sul supporto secondario e rilascia tutti i buffer e i gestori associati al file.
  3. L'indicizzazione è un metodo di struttura delle informazioni per estrarre in modo efficiente i record dai file di un sistema in base ad alcuni attributi in cui il sistema è stato implementato. Definito in base agli attributi.

L'indicizzazione può essere del seguente tipo:

  1. Primary è definito nel file di dati ordinato. Il file di informazioni è organizzato nel campo chiave.
  2. Indice secondario generato da un campo che è una chiave candidata e ha un valore univoco in ogni record o non una chiave con valori duplicati.
  3. Il clustering è definito in un file di dati ordinato, in un campo non chiave.
algebra relazionale calcolo relazionale
algebra relazionale calcolo relazionale

Un sistema di gestione di database o DBMS si riferisce a una tecnologia per archiviare e recuperare le informazioni degli utenti con la massima efficienza insieme a misure di sicurezza appropriate. Un esame più approfondito di questo problema porta alla conclusione che l'algebra relazionale è un linguaggio di operatori che prendono le relazioni come argomenti e le restituiscono come risultato.

Consigliato: