Algoritmo di Query Optimization. Espressione Algebrica di Query LAlgebra Relazionale può essere utilizzata come linguaggio per interrogare una base di.

Slides:



Advertisements
Presentazioni simili
Sistemi informativi - Es.2 Gestione Vendite
Advertisements

DB -Algebra Relazionale
Calcolo Relazionale.
Structured Query Language (SQL) Presentazione 13.1 Informatica Generale (Prof. Luca A. Ludovico)
Algebra relazionale Presentazione 12.1
Interrogazione di una base di dati relazionale Algebra relazionale.
1 Stampa dei dati - 1 I dati visualizzati, provenienti sia da tabelle che da query, possono essere stampati selezionando lopzione Stampa dalla voce di.
SQL Dati i seguenti schemi relazionali:
Operazioni Relazionali
1 Microsoft Access 1. 2 Contenuto Dovete progettare e realizzare, usando Access, una base di dati che riguarda gli esami sostenuti dagli studenti iscritti.
Basi di Dati - 3 Dati su più tabelle. Informatica 1 SCICOM - a.a. 2010/11 2 Separare i dati su più tabelle Quando è necessario? – Empiricamente, quando.
1 Corso di Laurea in Biotecnologie Informatica (Basi di Dati) SQL: Data Manipulation Language (DML) Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi,
Laboratorio di Basi di Dati Introduzione ad Access 2ª Parte.
Access: Query semplici
DB -Algebra Relazionale
SQL Per la definizione di basi di dati SQL per definire ed amministrare Ogni utente puo definire una base di dati di cui diventa lamministratore potendo.
Algoritmo di Query Optimization
Equivalenza di espressioni
Duplicati Lalgebra relazionale non ammette duplicati, SQL li ammette. Quindi select Città from Persona where Cognome= Rossi estrae una lista di città in.
Join e proiezioni: problemi ImpiegatoReparto RossiA NeriB BianchiB RepartoCapo BMori CBruni NeriBMori ImpiegatoRepartoCapo BianchiBMori ImpiegatoReparto.
Daniel Stoilov Tesi di Laurea
SQL basato su ANSI (American National Standards Institute) – standard SQL SQL – Structured Query Language è un linguaggio dichiarativo e permette di comunicare.
In questa lezione Introduzione La query di selezione
DBMS ( Database Management System)
Elementi di Informatica
Basi di dati Claudia Raibulet
Introduzione alle Basi di Dati. Overview Informazione = contenuto + struttura Informazione non strutturata Molto contenuto, poca struttura Un romanzo.
Il Modello Relazionale
SQL: Structured Query Language
Corso di INFORMATICA anno scolastico 2009/10 Linguaggio SQL OPERATORI INSIEMISTICI IN SQL Siano due tabelle: GiochiSolitari(CodiceGioco, NomeGioco, PrezzoGioco)
Manipolazione dei dati
Basi di Dati - 3 Dati su più tabelle Informatica 1 (SAM) - a.a. 2010/11.
SEZIONE STUDENTE HOMEPAGE STUDENTE Lo studente ha la sola facoltà di registrarsi e fare il test. Inizierà il suo lavoro cliccando su REGISTRATI (figura.
Le basi di dati per Economia
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
Informatica Parte applicativa Basi di dati - report Psicologia dello sviluppo e dell'educazione (laurea magistrale) Anno accademico:
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
Esercitazione Esame È dato un foglio elettronico in Excel con un elenco di esami sostenuti da studenti Per ciascuna riga dell’elenco sono riportati: matricola.
Corso di Laurea in Conservazione e Restauro dei Beni Culturali
Microsoft Access (parte 5) Introduzione alle basi di dati Scienze e tecniche psicologiche dello sviluppo e dell'educazione, laurea magistrale Anno accademico:
Interrogare il database
Microsoft Access Query (II), filtri.
Le query in SQL Unità didattica sviluppata per l’ITIS “A. Volta” – Classe 5 sez. I Ing Domenico Liguori - Università degli studi di Napoli “Federico.
1 Microsoft Access Gruppo di lavoro Alberti, Boldi, Gaito, Grossi, Malchiodi, Mereghetti, Morpurgo, Rosti, Palano, Zanaboni Informatica per laurea triennale.
Microsoft Access Maschere (II).
Il Linguaggio SQL. Le interrogazioni in SQL (continua…) La parte di SQL dedicata alla formulazione di interrogazioni fa parte del DML. SQL esprime le.
SQL, esempi 30/10/2014Basi di dati SQL1. 30/10/2014Basi di dati SQL2 CREATE TABLE, esempi CREATE TABLE corsi( codice numeric NOT NULL PRIMARY KEY, titolo.
Microsoft Access Query (III).
Corso di laurea triennale in Chimica - Laboratorio di Informatica 1 ESERCITAZIONE 8 – BASI DI DATI - II ©2003/04 – Gruppo di lavoro Alberti, Boldi, Gaito,
Query languages per Basi di Dati Relazionali  Algebra Relazionale:  basato sulla teoria degli insiemi  procedurale  usato per l’implementazione di.
Join Proprietà Il join di r 1 e r 2 contiene un numero di tuple compreso fra zero e il prodotto di |r 1 | e |r 2 | se il join di r 1 e r 2 è completo allora.
Vincoli Interrelazionali Per i vincoli visti l’inserimento di un valore che li viola viene semplicemente impedito. In caso di vincoli di integrità referenziale,
Join Se ciascuna tupla di ciascun operando contribuisce ad almeno una tupla del risultato il join si dice completo. Se per alcune tuple non è verificata.
Lezione 6 - SQL. Linguaggi per DB Per interagire con le basi di dati occorre un linguaggio Linguaggio SQL (Structured Query Language), linguaggio standardizzato.
Algebra relazionale (II). Join esterni Per combinare sempre le tuple di due relazioni, anche quando non ci sono corrispondenze tra i valori degli attributi.
Corso integrato di Matematica, Informatica e Statistica Informatica di base Linea 1 Daniela Besozzi Dipartimento di Informatica e Comunicazione Università.
Microsoft Access (parte 3) Introduzione alle basi di dati Scienze e tecniche psicologiche dello sviluppo e dell'educazione, laurea magistrale Anno accademico:
Funzionalità del DBMS relazionale l Funzioni per –definizione della base di dati –inserimento / rimozione /aggiornamento di informazioni deve soddisfare.
L’Algebra Relazionale
Operazioni Relazionali
Microsoft Access Filtri, query. Filtri Un filtro è una funzione che provoca la visualizzazione dei soli record contenenti dati che rispondono a un certo.
Basi di Dati Esercitazione Modello Relazionale 19 ottobre 2015 Luigi Bellomarini
SQL Linguaggio per l’interrogazione di una base dati.
Modulo 5 – Database ACCESS LICEO SCIENTIFICO “ B. RESCIGNO COMPUTER SCUOLA PIANO INTEGRATO 2008/09 ESPERTO prof.ssa Rita Montella.
Esempi di interrogazioni in SQL DB di partenza Base di dati di partenza –STUDENTI (Matricola, Nome, cognome, , PIN) –CORSI (Codice, Nome) –CARRIERE.
Il linguaggio SQL (Structured Query Language) è il linguaggio standard per creare, manipolare e interrogare database relazionali. SQL non è case-sensitive:
I DONEITÀ DI C ONOSCENZE E C OMPETENZE I NFORMATICHE ( A – D ) Un database è un insieme di record (registrazioni) e di file (archivi) organizzati per uno.
Laurea Magistrale in Informatica Architetture basi di dati A.A Docente: Prof. Carlo Batini Query Optimization nei DDBMS.
Transcript della presentazione:

Algoritmo di Query Optimization

Espressione Algebrica di Query LAlgebra Relazionale può essere utilizzata come linguaggio per interrogare una base di dati. Infatti consideriamo lesempio del database degli studenti costituito dalle tre tabelle Studenti, Esami, Corsi.

Esempio di Query Supponiamo che vogliamo trovare tutti i professori che hanno dato a Mario Rossi piu di 27. (1 e natural join) Professore Nome=Mario Rossi& Voto>27 (Studenti 1 Esami 1 Corsi)

Query Optimization La stessa query P Nome=Mario Rossi& Voto>27 (Studenti 1 Esami 1 Corsi) può essere espressa come P ( Nome=Mario Rossi Studenti 1 ( Voto>27 Esami 1 Corsi)) Che risulta essere molto più efficiente!

Regole per la query optimization Anticipare lapplicazione delle proiezioni e delle restrizioni rispetto al prodotto (e quindi alle giunzioni), in modo da ridurre la dimensione delle tabelle a cui applicare il prodotto (e le giunzioni). Le seguenti regole possono essere utilmente utilizzate per lottimizzazione di espressioni:

Regole sulla restrizione 1. Raggruppamento di restrizioni a. C(X) ( C(Y) (E))= C(X)&C(Y) (E) 2. Commutativita di e a. C(X) ( Y (E))= Y ( C(X) (E)),se X Y; b. Y ( C(X) ( XY (E)))= Y ( C(X) (E))se X Y.

Restrizione e Prodotto 3. Anticipazione di rispetto a. a. C(X) (E F)= C(X) (E) F, se X attr(E). b. C(X)&C(Y) (E F)= C(X) (E) C(Y) (F), se X attr(E), Y attr(F). c. C(X)&C(Y)&C(Z) (E F)= C(Z) ( C(X) (E) C(Y) (F)), se X attr(E), Y attr(F), Z attr(E), Z attr(F)

Regole per la proiezione 4. Raggruppamento di proiezioni. a. X ( Y (E))= X (E), se X Y. 5. Eliminazione di proiezioni superflue. a. X (E)=E, se X = attr.(E). 6. Anticipazione della rispetto a. a. XY (E F)= X (E) Y (F), se X attr(E), Y attr.(F).

LALGORITMO Si applicano le seguenti tre regole (per anticipare la selezione) finché è possibile A. Si anticipa rispetto a usando la 2.a. B. Si raggruppano le restrizioni usando la 1. C. Si anticipa lesecuzione di su usando la 3.

Anticipazione delle proiezioni D. Si eliminano le proiezioni superflue usando la 5. E. Si raggruppano le proiezioni mediante la regola 4. F. Si anticipa lesecuzione delle proiezioni rispetto al prodotto usando ripetutamente la 2 (quando E è un prodotto, da destra verso sinistra) e la 6.

Esercitazioni?