Equivalenza di Espressioni Algebriche
|
|
|
- Valeria Valsecchi
- 9 anni fa
- Visualizzazioni
Transcript
1 Equivalenza di Espressioni Algebriche Basi di dati e sistemi informativi 1 Equivalenza di Espressioni Algebriche Angelo Montanari Dipartimento di Matematica e Informatica Università di Udine
2 Equivalenza di Espressioni Algebriche Basi di dati e sistemi informativi 2 Introduzione L equivalenza di espressioni dell algebra relazionale viene sfruttata nella fase di ottimizzazione algebrica delle interrogazioni: le interrogazioni formulate nel linguaggio SQL vengono tradotte in espressioni (equivalenti) dell algebra relazionale il costo dell esecuzione di un interrogazione viene valutato in termini delle dimensioni dei risultati intermedi (della valutazione dell espressione dell algebra relazionale); in presenza di varie espressioni alternative equivalenti, viene scelta quella con costo minore Vengono utilizzate delle trasformazioni di equivalenza: operazioni che sostituiscono un espressione con un altra a essa equivalente
3 Equivalenza di Espressioni Algebriche Basi di dati e sistemi informativi 3 Equivalenze assolute e dipendenti dallo schema Diversi tipi di equivalenza: (1) Equivalenza dipendente dallo schema. E 1 R E 2 se E 1 (r) = E 2 (r) per ogni r R (2) Equivalenza assoluta (non dipendente dallo schema). E 1 E 2 se E 1 R E 2 per ogni schema R Un esempio di equivalenza assoluta: Π AB (σ A>0 (R 1 )) σ A>0 (Π AB (R 1 )) Un esempio di equivalenza dipendente dallo schema: Π AB (R 1 ) Π AC (R 2 ) R Π ABC (R 1 R 2 ) che vale se e solo se in R l intersezione tra gli insiemi di attributi di R 1 e di R 2 è pari ad A.
4 Equivalenza di Espressioni Algebriche Basi di dati e sistemi informativi 4 Un primo insieme di trasformazioni - 1 Atomizzazione delle selezioni: una congiunzione di selezioni può essere sostituita da una sequenza di selezioni atomiche con E espressione qualsiasi. σ F1 F 2 (E) σ F2 (σ F1 (E)) Idempotenza delle proiezioni: una proiezione può essere trasformata in una sequenza di proiezioni che eliminano i vari attributi in varie fasi π X (E) π X (π XY (E)) con E espressione definita su un insieme di attributi che contiene X e Y.
5 Equivalenza di Espressioni Algebriche Basi di dati e sistemi informativi 5 Un primo insieme di trasformazioni - 2 Anticipazione della selezione rispetto al join (pushing selections down): σ F (E 1 E 2 ) E 1 σ F (E 2 ) se la condizione F coinvolge solo attributi della sottoespressione E 2. Anticipazione della proiezione rispetto al join (pushing projections down): π X1 Y 2 (E 1 E 2 ) E 1 π Y2 (E 2 ) con E 1 definita su X 1, E 2 definita su X 2, Y 2 X 2 e (X 1 X 2 ) Y 2 (gli attributi di X 2 \ Y 2 non sono coinvolti nel join).
6 Equivalenza di Espressioni Algebriche Basi di dati e sistemi informativi 6 Una trasformazione derivata Combinando la regola di anticipazione della proiezione rispetto al join con la regola di idempotenza delle proiezioni, si ottiene la seguente regola derivata (che elimina da subito gli attributi che non sono coinvolti nel join e non compaiono nel risultato finale): π Y (E 1 F E 2 ) π Y (π Y1 (E 1 ) F π Y2 (E 2 )) dove, assumendo che E 1 sia definita su X 1, E 2 sia definita su X 2 e J 1 (rispettivamente J 2 ) sia il sottoinsieme di X 1 (rispettivamente X 2 ) coinvolto nell operazione di join, si ha che: Y 1 = (X 1 Y ) J 1 Y 2 = (X 2 Y ) J 2
7 Equivalenza di Espressioni Algebriche Basi di dati e sistemi informativi 7 Un esempio - 1 Interrogazione: trovare i nomi dei dipartimenti il cui manager guadagna più di euro. Soluzione non ottimizzata: π DNOME (σ CF =MANAGER ST IP ENDIO>80000 (IMP IEGAT O DIP ART IMENT O)) che si può riscrivere come: π DNOME (σ CF =MANAGER (σ ST IP ENDIO>80000 (IMP IEGAT O DIP ART IMENT O)))
8 Equivalenza di Espressioni Algebriche Basi di dati e sistemi informativi 8 Un esempio - 2 La precedente espressione può a sua volta essere riscritta nel modo seguente: π DNOME (σ ST IP ENDIO>80000 (IMP IEGAT O) CF =MANAGER DIP ART IMENT O) che può a sua volta essere riscritta come: π DNOME (π CF (σ ST IP ENDIO>80000 (IMP IEGAT O)) CF =MANAGER DIP ART IMENT O) P.S. La regola derivata descritta in precedenza potrebbe essere utilizzata per ridurre da subito le dimensioni delle due relazioni..
9 Equivalenza di Espressioni Algebriche Basi di dati e sistemi informativi 9 Un secondo insieme di trasformazioni - 1 Distributività della selezione rispetto all unione: σ F (E 1 E 2 ) σ F (E 1 ) σ F (E 2 ) Distributività della selezione rispetto alla differenza: σ F (E 1 \ E 2 ) σ F (E 1 ) \ σ F (E 2 ) Distributività della proiezione rispetto all unione: π X (E 1 E 2 ) π X (E 1 ) π X (E 2 ) Non vale la distributività della proiezione rispetto alla differenza. Ad esempio, date R 1 (A, B) e R 2 (A, B) π A (R 1 \ R 2 ) π A (R 1 ) \ π A (R 2 ) non vale se R 1 e R 2 contengono tuple uguali su A e diverse su B
10 Equivalenza di Espressioni Algebriche Basi di dati e sistemi informativi 10 Un secondo insieme di trasformazioni - 2 Trasformazioni basate sulla corrispondenza tra operatori insiemistici e selezioni complesse: σ F1 F 2 (R) σ F1 (R) σ F2 (R) σ F1 F 2 (R) σ F1 (R) σ F2 (R) σ F1 (R) σ F2 (R) σ F1 (F 2 )(R) σ F1 (R) \ σ F2 (R) Proprietà distributiva del join rispetto all unione: E 1 (E 2 E 3 ) (E 1 E 2 ) (E 1 E 3 ) N.B. Risultati intermedi vuoti (relazioni prive di tuple) permettono di semplificare le espressioni (join/prodotto cartesiano con la relazione vuota come uno degli operandi producono quale risultato la relazione vuota).
Tipi di operatori. Gli operatori dell algebra relazionale sono classificabili nelle seguenti categorie:
lgebra relazionale Il linguaggio per interrogare ed aggiornare la base di dati fa parte del modello di questi ultimi. Un operazione di aggiornamento può essere vista come una funzione che, data un istanza
Algebra relazionale: operazioni
Dipartimento di Elettronica ed ormazione Politecnico di Milano ormatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2011/2012 Algebra relazionale: operazioni Le presenti slide sono tratte dalle slide
Lezione 6. Algebra e Calcolo Relazionale
Lezione 6 Algebra e Calcolo Relazionale 1 Sommario Esempio di Applicazione con Database (AZIENDA) Algebra Relazionale Operazioni Relazionali Unarie Operazioni dell Algebra Relazionale dalla teoria degli
Algebra Relazionale. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma
Algebra Relazionale 1 Linguaggi di interrogazione relazionale Linguaggi di interrogazione: permettono la manipolazione e il reperimento di dati da una base di dati Il modello relazionale supporta LI semplici
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, ALGEBRA E CALCOLO RELAZIONALE
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1996-2002 : ALGEBRA E CALCOLO RELAZIONALE Esempi Impiegati Matricola Nome Età Stipendio 7309 Rossi 34 45 5998 Bianchi 37 38 9553 Neri 42 35 5698
BASI DATI: algebra relazionale
BASI DATI: algebra relazionale BIOINGEGNERIA ED INFORMATICA MEDICA 1 Algebra relazionale Definizione L'algebra relazionale è un insieme di operazioni (query) che servono per manipolare relazioni (tabelle).
Calcolo Relazionale Basi di dati e sistemi informativi 1. Calcolo Relazionale. Angelo Montanari
Calcolo Relazionale Basi di dati e sistemi informativi 1 Calcolo Relazionale Angelo Montanari Dipartimento di Matematica e Informatica Università di Udine Calcolo Relazionale Basi di dati e sistemi informativi
Interrogare una base di dati: algebra relazionale e SQL. Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor
Interrogare una base di dati: algebra relazionale e SQL Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor Contesto didattico Il seguente materiale didattico è
Minimizzazione a più livelli di reti combinatorie Cristina Silvano
Minimizzazione a più livelli di reti combinatorie Cristina Silvano Università degli Studi di Milano Dipartimento di Scienze dell Informazione Milano (Italy) Sommario Modello booleano e modello algebrico
3 Algebra Relazionale
Corso di Laurea in Ingegneria Gestionale Sapienza Università di Roma Corso di Basi di Dati A.A. 2016/2017 Tiziana Catarci Ultimo aggiornamento : 22/02/2017 I linguaggi di interrogazione e aggiornamento
Università degli Studi di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica ALGEBRA BOOLEANA
Università degli Studi di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica ALGEBRA BOOLEANA Introduzione George Boole (1815-1864) nel 1854 elaborò una algebra basata su predicati logici. Valori
Structured Query Language
IL LINGUAGGIO SQL Structured Query Language Contiene sia il DDL sia il DML, quindi consente di: Definire e creare il database Effettuare l inserimento, la cancellazione, l aggiornamento dei record di un
L algebra relazionale
L algebra relazionale Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: Algebra.pdf Sistemi Informativi L-A Linguaggi di manipolazione (DML)
Esercitazione 1 Algebra relazionale
Esercitazione 1 Algebra relazionale Basi di dati - prof. Silvio Salza - a.a. 2014-2015 E1-1 Base di dati Fornitori Fornitori (CodFornitore, Nome, Indirizzo, Città) Prodotti (CodProdotto, Nome, Marca, Modello)
SQL - Sottointerrogazioni correlate
SQL - Sottointerrogazioni correlate negli esempi visti ogni subquery viene eseguita una volta per tutte ed il valore (o insieme di valori) è usato nella clausola WHERE della query esterna è possibile definire
Algebra di Boole X Y Z V. Algebra di Boole
L algebra dei calcolatori L algebra booleana è un particolare tipo di algebra in cui le variabili e le funzioni possono solo avere valori 0 e 1. Deriva il suo nome dal matematico inglese George Boole che
Operatori aggregati. Operatori aggregati. Interrogazioni con raggruppamento. Interrogazioni con raggruppamento
Operatori aggregati In algebra relazionale le espressioni vengono valutate sulle singole tuple in successione. Talvolta però possono essere necessarie informazioni derivabili dall esame di tutte le tuple
