20810211 - Algoritmi per big data

In molti contesti applicativi sono in gioco enormi volumi di dati che
vengono utilizzati in ambito economico-finanziario, politico, sociale ed
anche istituzionale. Spesso i dati sono memorizzati in enormi cloud
distribuite e talvolta sono generati secondo un flusso continuo, così
consistente da renderne impossibile una memorizzazione completa. In
moltissimi casi i dati sono inerenti ad entità in fitta relazione tra
loro e danno luogo a immense reti di collegamenti. Esempi comuni di tali
reti sono le reti sociali e biologiche, le reti di distribuzione e il
grafo del Web. Inoltre il fatto che i dati siano memorizzati in sistemi
gestiti da terze parti pone problemi di integrità che non trovano
riscontro nella letteratura informatica classica sia per la tipologia
sia per la scala.

Questo scenario pone sfide algoritmiche inedite sulle quali è al lavoro
una vasta platea di ricercatori. Tale sforzo ha prodotto, nell’ultimo
decennio, molte novità sia sul piano metodologico sia sul piano
tecnologico. L’insegnamento ha lo scopo di trasferire agli studenti
alcuni tra i più importanti strumenti metodologici nati nell’ambito
della ricerca sugli algoritmi per Big Data. Tali strumenti metodologici
sono proposti assieme a contesti applicativi sfidanti.

Curriculum

scheda docente | materiale didattico

Programma

Programma Italiano
1) Algoritmi per data streams
- Approximate counting
- Majority problems
- Sampling e reservoir sampling
- Bloom filters
- Frequent itemsets
2) Algoritmi sublineari
- Diameter approximation
- Property testing
3) Clustering
4) Algoritmi e strutture dati per analisi di features quantitative
- 1d-,2d-,3d-range queries
- Skyline (pareto frontier), near-neighbor search, voronoi diagram
5) Dimensionality reduction
6) Algoritmi per la decomposizione di reti complesse
- Decomposizione di una rete in componenti k-connesse
- Decomposizione in k-cores, maximal cliques, maximal k-plexes
7) Distributed Hash Tables, Consistent Hashing
8) Integrità di grandi quantità di dati, consistenza nei sistemi distribuiti, CAP/PACELC theorems e impatto sui database NoSQL


Testi Adottati

Mining of Massive Datasets
Jure Leskovec, Anand Rajaraman, Jeff Ullman
Cambridge University Press
http://www.mmds.org/


Modalità Erogazione

Lezioni frontali

Modalità Valutazione

L'esame consiste di un progetto che verrà assegnato durante lo svolgimento del corso e di una prova orale.

scheda docente | materiale didattico

Programma

Programma Italiano
1) Algoritmi per data streams
- Approximate counting
- Majority problems
- Sampling e reservoir sampling
- Bloom filters
- Frequent itemsets
2) Algoritmi sublineari
- Diameter approximation
- Property testing
3) Clustering
4) Algoritmi e strutture dati per analisi di features quantitative
- 1d-,2d-,3d-range queries
- Skyline (pareto frontier), near-neighbor search, voronoi diagram
5) Dimensionality reduction
6) Algoritmi per la decomposizione di reti complesse
- Decomposizione di una rete in componenti k-connesse
- Decomposizione in k-cores, maximal cliques, maximal k-plexes
7) Distributed Hash Tables, Consistent Hashing
8) Integrità di grandi quantità di dati, consistenza nei sistemi distribuiti, CAP/PACELC theorems e impatto sui database NoSQL


Testi Adottati

Mining of Massive Datasets
Jure Leskovec, Anand Rajaraman, Jeff Ullman
Cambridge University Press
http://www.mmds.org/


Modalità Erogazione

Lezioni frontali

Modalità Valutazione

L'esame consiste di un progetto che verrà assegnato durante lo svolgimento del corso e di una prova orale. Attenzione: nei periodi di emergenza COVID-19 l’esame di profitto sarà svolto secondo quanto previsto all’art.1 del Decreto Rettorale n°. 703 del 5 maggio 2020. La prova orale sarà determinante per l’attribuzione della valutazione finale.

scheda docente | materiale didattico

Programma

Programma Italiano
1) Algoritmi per data streams
- Approximate counting
- Majority problems
- Sampling e reservoir sampling
- Bloom filters
- Frequent itemsets
2) Algoritmi sublineari
- Diameter approximation
- Property testing
3) Clustering
4) Algoritmi e strutture dati per analisi di features quantitative
- 1d-,2d-,3d-range queries
- Skyline (pareto frontier), near-neighbor search, voronoi diagram
5) Dimensionality reduction
6) Algoritmi per la decomposizione di reti complesse
- Decomposizione di una rete in componenti k-connesse
- Decomposizione in k-cores, maximal cliques, maximal k-plexes
7) Distributed Hash Tables, Consistent Hashing
8) Integrità di grandi quantità di dati, consistenza nei sistemi distribuiti, CAP/PACELC theorems e impatto sui database NoSQL


Testi Adottati

Mining of Massive Datasets
Jure Leskovec, Anand Rajaraman, Jeff Ullman
Cambridge University Press
http://www.mmds.org/


Modalità Erogazione

Lezioni frontali

Modalità Valutazione

L'esame consiste di un progetto che verrà assegnato durante lo svolgimento del corso e di una prova orale.

scheda docente | materiale didattico

Programma

1) Algoritmi per data streams
- Approximate counting
- Majority problems
- Sampling e reservoir sampling
- Bloom filters
- Frequent itemsets
2) Algoritmi sublineari
- Diameter approximation
- Property testing
3) Clustering
4) Algoritmi e strutture dati per analisi di features quantitative
- 1d-,2d-,3d-range queries
- Skyline (pareto frontier), near-neighbor search, voronoi diagram
5) Dimensionality reduction
6) Algoritmi per la decomposizione di reti complesse
- Decomposizione di una rete in componenti k-connesse
- Decomposizione in k-cores, maximal cliques, maximal k-plexes
7) Distributed Hash Tables, Consistent Hashing
8) Integrità di grandi quantità di dati, consistenza nei sistemi distribuiti, CAP/PACELC theorems e impatto sui database NoSQL


Testi Adottati

Mining of Massive Datasets
Jure Leskovec, Anand Rajaraman, Jeff Ullman
Cambridge University Press
http://www.mmds.org/

Modalità Erogazione

Lezioni frontali Nel caso di un prolungamento dell’emergenza sanitaria da COVID-19 saranno recepite tutte le disposizioni che regolino le modalità di svolgimento delle attività didattiche e della valutazione degli studenti. In particolare, si applicheranno le seguenti modalità di svolgimento: Lezioni in streaming su Microsoft Teams, registrate e messe a disposizione sulla piattaforma moodle1.ing.uniroma3.it.

Modalità Valutazione

L'esame consiste di un progetto che verrà assegnato durante lo svolgimento del corso e di una prova orale. Nel caso di un prolungamento dell’emergenza sanitaria da COVID-19 saranno recepite tutte le disposizioni che regolino le modalità di svolgimento delle attività didattiche e della valutazione degli studenti. In particolare, si applicheranno le seguenti modalità di valutazione: l’esame di profitto sarà svolto secondo quanto previsto all’art.1 del Decreto Rettorale n°. 703 del 5 maggio 2020. In particolare, l'esame consisterà di una prova scritta e di una prova orale, entrambe svolte per via telematica. La prova orale è determinante per l’attribuzione della valutazione finale.

scheda docente | materiale didattico

Programma

1) Algorithms for data streams
- Approximate counting
- Majority problems
- Sampling and reservoir sampling
- Bloom filters
- Frequent itemsets
- Number of distinct elements
2) Dimensionality reduction
-Johnson–Lindenstrauss lemma
Embedding metric spaces with low distortion
3) Algorithms and data structures for quantitative features analysis
- orthogonal range searching (kd-trees and range trees)
- nearest neighbour search, k-nearest neighbour search
- fractional cascading and simplex range search
4) Algorithms for the decomposition of complex networks
- Decomposition into k-connected components
- Decomposition into k-cores, maximal cliques, maximal k-plexes
5) NoSQL internals: Distributed Hash Tables, chord, consistent hashing
6) Scalable security: integrity of big data sets in the cloud, consistency and scalability issues with authenticated data structures, pipelining, blockchain scalability trilemma.


Testi Adottati

Mining of Massive Datasets
Jure Leskovec, Anand Rajaraman, Jeff Ullman
Cambridge University Press
http://www.mmds.org/


Bibliografia Di Riferimento

Mining of Massive Datasets Jure Leskovec, Anand Rajaraman, Jeff Ullman Cambridge University Press http://www.mmds.org/

Modalità Erogazione

Tradizionale

Modalità Frequenza

Facoltativa

Modalità Valutazione

Prova scritta, valutazione progetto. La prova scritta puo' essere sostituita da prove in itinere parziali.

scheda docente | materiale didattico

Programma

Programma Italiano
1) Algoritmi per data streams
- Approximate counting
- Majority problems
- Sampling e reservoir sampling
- Bloom filters
- Frequent itemsets
2) Algoritmi sublineari
- Diameter approximation
- Property testing
3) Clustering
4) Algoritmi e strutture dati per analisi di features quantitative
- 1d-,2d-,3d-range queries
- Skyline (pareto frontier), near-neighbor search, voronoi diagram
5) Dimensionality reduction
6) Algoritmi per la decomposizione di reti complesse
- Decomposizione di una rete in componenti k-connesse
- Decomposizione in k-cores, maximal cliques, maximal k-plexes
7) Distributed Hash Tables, Consistent Hashing
8) Integrità di grandi quantità di dati, consistenza nei sistemi distribuiti, CAP/PACELC theorems e impatto sui database NoSQL


Testi Adottati

Mining of Massive Datasets
Jure Leskovec, Anand Rajaraman, Jeff Ullman
Cambridge University Press
http://www.mmds.org/


Modalità Erogazione

Lezioni frontali

Modalità Valutazione

L'esame consiste di un progetto che verrà assegnato durante lo svolgimento del corso e di una prova orale.

scheda docente | materiale didattico

Programma

Programma Italiano
1) Algoritmi per data streams
- Approximate counting
- Majority problems
- Sampling e reservoir sampling
- Bloom filters
- Frequent itemsets
2) Algoritmi sublineari
- Diameter approximation
- Property testing
3) Clustering
4) Algoritmi e strutture dati per analisi di features quantitative
- 1d-,2d-,3d-range queries
- Skyline (pareto frontier), near-neighbor search, voronoi diagram
5) Dimensionality reduction
6) Algoritmi per la decomposizione di reti complesse
- Decomposizione di una rete in componenti k-connesse
- Decomposizione in k-cores, maximal cliques, maximal k-plexes
7) Distributed Hash Tables, Consistent Hashing
8) Integrità di grandi quantità di dati, consistenza nei sistemi distribuiti, CAP/PACELC theorems e impatto sui database NoSQL


Testi Adottati

Mining of Massive Datasets
Jure Leskovec, Anand Rajaraman, Jeff Ullman
Cambridge University Press
http://www.mmds.org/


Modalità Erogazione

Lezioni frontali

Modalità Valutazione

L'esame consiste di un progetto che verrà assegnato durante lo svolgimento del corso e di una prova orale. Attenzione: nei periodi di emergenza COVID-19 l’esame di profitto sarà svolto secondo quanto previsto all’art.1 del Decreto Rettorale n°. 703 del 5 maggio 2020. La prova orale sarà determinante per l’attribuzione della valutazione finale.

scheda docente | materiale didattico

Programma

Programma Italiano
1) Algoritmi per data streams
- Approximate counting
- Majority problems
- Sampling e reservoir sampling
- Bloom filters
- Frequent itemsets
2) Algoritmi sublineari
- Diameter approximation
- Property testing
3) Clustering
4) Algoritmi e strutture dati per analisi di features quantitative
- 1d-,2d-,3d-range queries
- Skyline (pareto frontier), near-neighbor search, voronoi diagram
5) Dimensionality reduction
6) Algoritmi per la decomposizione di reti complesse
- Decomposizione di una rete in componenti k-connesse
- Decomposizione in k-cores, maximal cliques, maximal k-plexes
7) Distributed Hash Tables, Consistent Hashing
8) Integrità di grandi quantità di dati, consistenza nei sistemi distribuiti, CAP/PACELC theorems e impatto sui database NoSQL


Testi Adottati

Mining of Massive Datasets
Jure Leskovec, Anand Rajaraman, Jeff Ullman
Cambridge University Press
http://www.mmds.org/


Modalità Erogazione

Lezioni frontali

Modalità Valutazione

L'esame consiste di un progetto che verrà assegnato durante lo svolgimento del corso e di una prova orale.

scheda docente | materiale didattico

Programma

1) Algoritmi per data streams
- Approximate counting
- Majority problems
- Sampling e reservoir sampling
- Bloom filters
- Frequent itemsets
2) Algoritmi sublineari
- Diameter approximation
- Property testing
3) Clustering
4) Algoritmi e strutture dati per analisi di features quantitative
- 1d-,2d-,3d-range queries
- Skyline (pareto frontier), near-neighbor search, voronoi diagram
5) Dimensionality reduction
6) Algoritmi per la decomposizione di reti complesse
- Decomposizione di una rete in componenti k-connesse
- Decomposizione in k-cores, maximal cliques, maximal k-plexes
7) Distributed Hash Tables, Consistent Hashing
8) Integrità di grandi quantità di dati, consistenza nei sistemi distribuiti, CAP/PACELC theorems e impatto sui database NoSQL


Testi Adottati

Mining of Massive Datasets
Jure Leskovec, Anand Rajaraman, Jeff Ullman
Cambridge University Press
http://www.mmds.org/

Modalità Erogazione

Lezioni frontali Nel caso di un prolungamento dell’emergenza sanitaria da COVID-19 saranno recepite tutte le disposizioni che regolino le modalità di svolgimento delle attività didattiche e della valutazione degli studenti. In particolare, si applicheranno le seguenti modalità di svolgimento: Lezioni in streaming su Microsoft Teams, registrate e messe a disposizione sulla piattaforma moodle1.ing.uniroma3.it.

Modalità Valutazione

L'esame consiste di un progetto che verrà assegnato durante lo svolgimento del corso e di una prova orale. Nel caso di un prolungamento dell’emergenza sanitaria da COVID-19 saranno recepite tutte le disposizioni che regolino le modalità di svolgimento delle attività didattiche e della valutazione degli studenti. In particolare, si applicheranno le seguenti modalità di valutazione: l’esame di profitto sarà svolto secondo quanto previsto all’art.1 del Decreto Rettorale n°. 703 del 5 maggio 2020. In particolare, l'esame consisterà di una prova scritta e di una prova orale, entrambe svolte per via telematica. La prova orale è determinante per l’attribuzione della valutazione finale.

scheda docente | materiale didattico

Programma

1) Algorithms for data streams
- Approximate counting
- Majority problems
- Sampling and reservoir sampling
- Bloom filters
- Frequent itemsets
- Number of distinct elements
2) Dimensionality reduction
-Johnson–Lindenstrauss lemma
Embedding metric spaces with low distortion
3) Algorithms and data structures for quantitative features analysis
- orthogonal range searching (kd-trees and range trees)
- nearest neighbour search, k-nearest neighbour search
- fractional cascading and simplex range search
4) Algorithms for the decomposition of complex networks
- Decomposition into k-connected components
- Decomposition into k-cores, maximal cliques, maximal k-plexes
5) NoSQL internals: Distributed Hash Tables, chord, consistent hashing
6) Scalable security: integrity of big data sets in the cloud, consistency and scalability issues with authenticated data structures, pipelining, blockchain scalability trilemma.


Testi Adottati

Mining of Massive Datasets
Jure Leskovec, Anand Rajaraman, Jeff Ullman
Cambridge University Press
http://www.mmds.org/


Bibliografia Di Riferimento

Mining of Massive Datasets Jure Leskovec, Anand Rajaraman, Jeff Ullman Cambridge University Press http://www.mmds.org/

Modalità Erogazione

Tradizionale

Modalità Frequenza

Facoltativa

Modalità Valutazione

Prova scritta, valutazione progetto. La prova scritta puo' essere sostituita da prove in itinere parziali.