Continuos Query Processing in Data Streams Using Duality of Data and Queries Hyo-Sang Lim, Jae-Gil Lee, Min-Jae Lee,Kyu-Young Whang, Il-Yeol Song GRUPPO.

Slides:



Advertisements
Presentazioni simili
Metodi e Applicazioni numeriche nell’Ingegneria Chimica
Advertisements

CONTINUITÀ DELLE FUNZIONI
Appunti di analisi matematica: Integrale Definito
Introduzione ai circuiti elettronici digitali
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità C1 Il linguaggio SQL.
QUANTILI.
Structured Query Language (SQL) Presentazione 13.1 Informatica Generale (Prof. Luca A. Ludovico)
Operazioni Relazionali
Gli Integrali.
Metodi Quantitativi per Economia, Finanza e Management Lezione n°5
CONTINUITA’ Una funzione continua e’ una funzione il cui grafico non presenta interruzioni CONTINUA DISCONTINUA.
Cercare informazioni sul Web. 5-2 Organizzazione dellinformazione tramite gerarchie Classificazione gerarchica Linformazione è raggruppata in un piccolo.
Sistemi Operativi SCHEDULING DELLA CPU.
Lezione 8 Numerosità del campione
Num / 36 Lezione 9 Numerosità del campione.
Nomogrammi Interpretazione.
Daniel Stoilov Tesi di Laurea
Tecniche per lesecuzione efficiente di interrogazioni sul contenuto in collezioni MPEG-7 Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria.
Lezione VIII Laboratorio di Programmazione. Streams formattati In C è sfruttata linformazione riguardo al tipo di un certo dato per impostare la formattazione.
Viste. Cosè una vista? è possibile creare un subset logico di dati o una combinazione di dati una vista è una tabella logica basata su una tabella o su.
Basi di dati Claudia Raibulet
Modellazione di terreni a risoluzione adattiva
DISEQUAZIONI Disequazioni di primo e secondo grado.
Esercitazione di Basi di Dati
Metodi Quantitativi per Economia, Finanza e Management Lezione n°3 Le distribuzioni di frequenza e le misure di sintesi univariate.
Esercizio 10.* Un cassiere vuole dare un resto di n centesimi di euro usando il minimo numero di monete. a) Descrivere un algoritmo goloso per fare ciò.
Programma Impostazione di un nuovo Progetto
Towards Robust Indexing for Ranked Queries aa 09/10 Candeloro D. Orlando M. Pedone A. Gruppo 5.
1- Orientamento testo 2- Calcolo dell iva 3- Nascondi e scopri 1- Orientamento testo 2- Calcolo dell iva 3- Nascondi e scopri 4- Prezzo+iva, guadagno.
Gerarchie Ricorsive Una gerarchia ricorsiva deriva dalla presenza di una ricorsione o ciclo (un anello nel caso più semplice) nello schema operazionale.
Elenchi in Excel E’ possibile inserire le voci del nuovo elenco oppure
David Novak and Pavel Zezula GRUPPO 13 Decorte Andrea Giammarino Giuseppe.
Riepilogo Foglio elettronico Excel - Base
Index Land Surface for Efficient kNN Query Gruppo 2 Riccardo Mascia Roberto Saluto Relatore Roberto Saluto Cyrus Shahabi Lu-An TangSonghua Xing.
Intervalli limitati... Esempi [a ; b= xR a  x  b
Microsoft Access (parte 5) Introduzione alle basi di dati Scienze e tecniche psicologiche dello sviluppo e dell'educazione, laurea magistrale Anno accademico:
Studio degli indici per query di similarità basati su matrici di distanze Esame di Sistemi Informativi per le Decisioni L-S Presentato da: Ing. Marco Patella.
Microsoft Access Query (II), filtri.
Sistemi e Tecnologie Informatiche Ricorsione Umberto Ferraro Petrillo.
Metodi Quantitativi per Economia, Finanza e Management Lezione n°4
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.
Algoritmi e Strutture Dati
Database Elaborato da: Claudio Ciavarella & Marco Salvati.
Progettazione di dati e applicazioni per il Web S. Ceri, P. Fraternali, A. Bongio, M. Brambilla, S. Comai, M. Matera Copyright © The McGraw-Hill.
Basi di dati distribuite Prof. M.T. PAZIENZA a.a
Esercizio ODBC Roberto Pecchioli, Nicola Salotti, Massimiliano Sergenti - Gruppo Admin.
Sistemi di elaborazione dell’informazione Modulo 3 - Protocolli applicativi Unità didattica 1 - Domain Name System Ernesto Damiani Lezione 2 – Caratteristiche.
Voronoi-Based K Nearest Neighbor Search for Spatial Network Databases1 GRUPPO 13: Relatore: Mengoli Dario Mengoli Dario Rovatti Fabrizio Tassoni Davide.
APPLICAZIONI DI LOCALIZZAZIONE SATELLITARE
Metodi Quantitativi per Economia, Finanza e Management Lezione n°5.
Raggruppamenti e target list scorretta select padre, avg(f.reddito), p.reddito from persone f join paternita on figlio = nome join persone p on padre =
Lezione 6 - SQL. Linguaggi per DB Per interagire con le basi di dati occorre un linguaggio Linguaggio SQL (Structured Query Language), linguaggio standardizzato.
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
INTERVALLI E INTORNI INTERVALLI INTORNI PUNTI PER UN INSIEME
Corso di laurea in Ingegneria Energetica
Approfondimenti SQL.
6. LIMITI Definizione - Funzioni continue - Calcolo dei limiti
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.
Excel Funzioni di ricerca.
STUDIO DI UNA DISEQUAZIONE DI SECONDO GRADO
1 Statistica descrittiva 2. Sintetizzare i dati con degli indici Come descrivere una variabile in un insieme di osservazioni 1. Utilizzare rappresentazioni.
Concetto di funzione Funzione y = ax² + bx + c Equazione ax² + bx + c = 0 Disequazioni 2° grado Chiudi.
La funzione CASUALE. Gli istogrammi.
Statistica con Excel Corso di Fisica ed Elementi di Laboratorio ed Informatica CdL Scienze Biologiche AA 2015/2016.
INDICATORI DI TENDENZA CENTRALE. Consentono di sintetizzare un insieme di misure tramite un unico valore “rappresentativo”  indice che riassume o descrive.
Metodi di ricerca approssimata dello zero di una funzione F(z) = 0.
Laboratorio II, modulo Conversione Analogico/Digitale ( cfr.
Intervalli di numeri reali
Transcript della presentazione:

Continuos Query Processing in Data Streams Using Duality of Data and Queries Hyo-Sang Lim, Jae-Gil Lee, Min-Jae Lee,Kyu-Young Whang, Il-Yeol Song GRUPPO 27 Marco Lombardo (relatore) Mattia Petrosino Mattia Piraccini

Approccio classico Metodo query-initiative Dati già memorizzati e indicizzati Ad-hoc queries Eseguite una sola volta su dati precaricati Si restituiscono tutti i dati che soddisfano una certa query data index data set data query GRUPPO 27

Velocità Quantità Ordine Elaborazione in tempo reale È impossibile memorizzare tutti i dati Moltissime interrogazioni complesse da effettuare su ogni singolo dato in arrivo Data stream GRUPPO 27

Metodo data-initiative Query già memorizzate e indicizzate Continuous queries Precaricate ed eseguite su ogni dato in arrivo Si restituiscono tutte le query che sono soddisfatte da un certo dato query set query index query data query Una prima idea GRUPPO 27

Immediate processing Si processano tutte le continuous queries su ogni dato in arrivo Inadatto per stream veloci Elaborazione in real time Batch processing Le continuous queries sono eseguite su di un set di dati bufferizzati Migliori prestazioni Elaborazione differita Strategie GRUPPO 27

Si restituiscono tutte le coppie dato-query in cui il dato soddisfa la query query set data set query index data data index data-query Nuovo Metodo GRUPPO 27

Data: d 1 = (1,2) d 2 = (2,3) d 3 = (3,1) d 2 (2,3) d 1 (1,2) d 3 (3,1) R.x R.y Data in duality model GRUPPO 27

q 2 [0,2] x [0,1] Query : q 1 = (2 R.x 4) and (1 R.y 4) q 2 = (0 R.x 2) and (0 R.y 1) R.x R.y q 1 [2,4] x [1,4] Query in duality model GRUPPO 27

Index buildingMulti-dimensional spatial joinRefinement Spatial Join CQ GRUPPO 27

Index building Multi-dimensional spatial join Refinement Obiettivo : creare indici per le query Spatial Join CQ GRUPPO 27

SELECT * FROM R WHERE 0.2 < X < 0.5 AND 0.2 < Y < 0.5 AND X > Y X Y MBR Query index building 1.Si rappresenta la query come una regione 2. La regione è approssimata al corrispettivo MBR GRUPPO

Si passa da oggetti con dimensione in uno spazio n-dimensionale a punti in uno spazio 2n- dimensionale. Il punto rappresentante lintervallo è dato dagli estremi dellintervallo stesso su ogni dimensione. Un range n-dimensionale viene mappato in un punto 2n-dimensionale sopra la diagonale, mentre un punto viene mappato sulla diagonale. lx rx 01 lx rx q p p Sotto la diagonale non ci sono dati (perché ovviamente lestremo sinistro è sempre minore o al più uguale a quello destro) Corner transformation GRUPPO 27 RX LX

lx rx 0 1 lx rx q Il range lx-rx trasformato nel punto divide lo spazio in 6 parti distinte: –A: tutti i range contenuti nel range [lx,rx] –B: tutti i range contenenti lintervallo [lx,rx] –C,D: tutti gli intervalli con un estremo allinterno di [lx,rx] e laltro allesterno, rispettivamente a sinistra e a destra, di [lx,rx]. –E,F: tutti gli intervalli esterni, rispettivamente a sinistra e a destra, di [lx,rx] A B C D rxlx E F A B DC EF Partizionamento dello spazio GRUPPO 27

1.Si rappresenta la query come una regione Lindice è multidimensionale, quindi si possono sfruttare strutture tipo R-Tree SELECT * FROM R WHERE 0.2 < X < 0.5 AND 0.2 < Y < 0.5 AND X > Y X Y MBR 2. La regione è approssimata dal MBR 3. Corner transformation per rappresentare la regione come un punto 2n-dimensionale Corner transformation ( 0.2,0.2,0.5,0.5 ) 4. Inserisco il punto nellindice Query index building GRUPPO 27

0 1 1 LX RX Popoliamo lo spazio 2n-dimensionale di punti rappresentanti tutte le query precaricate Preliminaries GRUPPO 27

Facciamo arrivare i dati…

Obiettivo : creare indici per i dati Spatial Join CQ Index building Multi-dimensional spatial joinRefinement GRUPPO 27

Elaborazione in batch LX RX Hilbert ordering Data index Dati multidimensionali Ordine di prossimità Indice monodimensionale Data cluster (MBR) GRUPPO 27

Refinement Index building Multi-Dimensional Spatial join Obiettivo : trovare coppie di dati e query che si sovrappongono nello spazio ( sono possibili falsi positivi ) Spatial join CQ GRUPPO 27

0 1 1 La SJW(P) per la regione P è la minima regione nello spazio S trasformato in TS(S) dove possono risiedere tutti gli oggetti che si sovrappongono con P. Data cluster Spatial Join Window (SJW) LX RX BC D SJW GRUPPO 27

0 1 1 Per ogni cluster di dati si recuperano tutte le query contenute nella relativa spatial join window Multi-Dimensional spatial join LX RX LX GRUPPO 27

Index building Obiettivo : controllare se i dati soddisfano effettivamente la query relativa Ricordiamo che le query sono approssimate ad un MBR Multi-dimensional spatial join Refinement Spatial Join CQ: refinement GRUPPO 27

Un sistema di controllo della temperatura di una cella di raffreddamento vuole eseguire query su dati in arrivo dal sensore Si vuole monitorare quando la temperatura è compresa tra i 3°-5° e i 7°-9° (su un intervallo totale da 0 a 10 gradi centigradi) Query1 ( q1 ): R.Temp >= 3 and R.Temp <= 5 Query2 ( q2 ): R.Temp >= 7 and R.Temp <= 9 Esempio di processing (1) GRUPPO 27

Corner transformation delle query e loro indicizzazione. Ricordiamo passo fatto, in generale, precedentemente Query1 (q1): R.Temp >= 3 and R.Temp <= 5 Query2 (q2): R.Temp >= 7 and R.Temp <= Esempio di processing (2) GRUPPO 27

Dati in arrivo (elaborazione in batch con buffer da 15 elementi): Normalizzazione dei dati (per trattamento a livello teorico): Indicizzazione (ordinamento) dei dati Esempio di processing (3) GRUPPO 27

Esempio di processing (4) dc = Data cluster dc2dc3dc4dc5dc1 fase di refinement tra dc2 e q1 RISULTATO(coppie ): (0.32,q1),(0.35,q1),(0.41,q1) (0.45,q1),(0.49,q1) (0.71,q2) (0.77,q2),(0.79,q2),(0.86,q2) fase di refinement tra dc3 e q1 fase di refinement tra dc4 e q2 fase di refinement tra dc5 e q2 q1 q2 GRUPPO 27

Scenario: 2 server web A e B con un log file che registra gli IP dei client. I dati dei log vengono inviati in streaming allalgoritmo che è in grado di verificare la correlazione che può esistere tra laccesso al server A e laccesso al server B. Stream A Stream B D7 D6 D5D4D3D2D1 D5D4D3D2D1 Operazioni da eseguire: 1)Verificare la join condition tra il dato in arrivo e la sliding window dellaltro stream 2)Inserire il dato nella propria sliding window 3)Eliminare i dati obsoleti dalla propria sliding window Sliding Window GRUPPO 27 Spatial Join CQ JOIN

Incremento rispetto agli algoritmi esistenti 3 volte nel caso immediate processing 36 volte nel caso batch processing !!!!! Le prestazioni aumentano con laumentare delle query registrate, della frequenza dei dati, del numero degli attributi !!! I risultati sperimentali servono anche a trovare il valore ottimo del numero di elementi contenuti nel data cluster. Esempio: se il valore ottimo dei dati nel data cluster è circa 400. Risultato interessante: le performance diminuiscono solo di un 10% se si varia il data cluster da 200 a 1200 !!! Non è necessario conoscere il valore ottimo del data cluster !!! Dati con 4 attributi Dati con 8 attributi Risultati sperimentali GRUPPO 27

Nessuna domanda, vero….?! GRUPPO 27

Continuos Query Processing in Data Streams Using Duality of Data and Queries Hyo-Sang Lim, Jae-Gil Lee, Min-Jae Lee,Kyu-Young Whang, Il-Yeol Song GRUPPO 27 Marco Lombardo (relatore) Mattia Petrosino Mattia Piraccini