IoT Prism Lab
Research Lab at University of Bologna
Research Lab at University of Bologna
Theses
2018 |
Righi, Massimo apache cassandra: studio ed analisi di prestazioni Masters Thesis 2018. Abstract | Links | BibTeX | Tags: benchmark, BigData, Cassandra, database, MongoDB, mysql, NoSQL @mastersthesis{amslaurea16713, title = {apache cassandra: studio ed analisi di prestazioni}, author = {Massimo Righi}, url = {https://amslaurea.unibo.it/id/eprint/16713}, year = {2018}, date = {2018-01-01}, abstract = {La tesi persegue due scopi: il primo è veri�care sperimentalmente l'incremento di performance che si può avere nell'utilizzare un database di tipo NoSql (MongoDB e Cassandra) rispetto a uno relazionale (MYSQL) lavorando con grandi quantità di dati. Il secondo, invece, si propone di confrontare (sempre sperimentalmente) l'utilizzo di due tipi di database della famiglia dei NoSql, ovvero MongoDB, basato su un architettura Document-oriented, e Cassandra (in forte sviluppo), della famiglia dei Column-oriented. Nella prima parte della tesi verranno esposte le caratteristiche tecniche delle due famiglie di database utilizzate: relazionale e NoSql. In particolare, per il gruppo NoSql, verrà fornita una descrizione più dettagliata, classi�ficando i sottogruppi che ne fanno parte in base al tipo di modello che utilizzano per la memorizzazione dei dati. Verrà posta molta attenzione sul database Cassandra. Nella seconda parte verranno effettuate le analisi tecniche di performance per ogni tipo di database basandosi sulle 4 operazioni CRUD, partendo da un caso d'uso da me scelto. Al termine delle analisi verranno stilate delle conclusioni relativamente a pregi e difetti di ognuna delle tre tecnologie.}, keywords = {benchmark, BigData, Cassandra, database, MongoDB, mysql, NoSQL}, pubstate = {published}, tppubtype = {mastersthesis} } La tesi persegue due scopi: il primo è veri�care sperimentalmente l'incremento di performance che si può avere nell'utilizzare un database di tipo NoSql (MongoDB e Cassandra) rispetto a uno relazionale (MYSQL) lavorando con grandi quantità di dati. Il secondo, invece, si propone di confrontare (sempre sperimentalmente) l'utilizzo di due tipi di database della famiglia dei NoSql, ovvero MongoDB, basato su un architettura Document-oriented, e Cassandra (in forte sviluppo), della famiglia dei Column-oriented. Nella prima parte della tesi verranno esposte le caratteristiche tecniche delle due famiglie di database utilizzate: relazionale e NoSql. In particolare, per il gruppo NoSql, verrà fornita una descrizione più dettagliata, classi�ficando i sottogruppi che ne fanno parte in base al tipo di modello che utilizzano per la memorizzazione dei dati. Verrà posta molta attenzione sul database Cassandra. Nella seconda parte verranno effettuate le analisi tecniche di performance per ogni tipo di database basandosi sulle 4 operazioni CRUD, partendo da un caso d'uso da me scelto. Al termine delle analisi verranno stilate delle conclusioni relativamente a pregi e difetti di ognuna delle tre tecnologie. |
Battaglia, Bruno Studio e valutazione di database management system per la gestione di serie temporali Masters Thesis 2018. Abstract | Links | BibTeX | Tags: data management, DBMS, InfluxDB, Modello relazionale, MongoDB, mysql, NoSQL, OpenTSDB, serie temporali, time series, time series database, TSDB @mastersthesis{amslaurea17270, title = {Studio e valutazione di database management system per la gestione di serie temporali}, author = {Bruno Battaglia}, url = {https://amslaurea.unibo.it/id/eprint/17270}, year = {2018}, date = {2018-01-01}, abstract = {La tesi è incentrata sulle time series e la loro gestione. Dopo aver esposto cosa fosse una serie temporale ed alcuni casi di utilizzo, la dissertazione prosegue elencando le famiglie di DBMS ed i criteri attraverso i quali valutarli. Successivamente si è descritto il modello che ogni DBMS implementava e, dopo aver dato un accenno di esso, si è passati alle tecniche usate per la gestione e l'analisi delle serie temporali. Ancora dopo, invece, si sono viste le tecniche di modellazione di un database in grado di gestire serie storiche e sono stati analizzati tutti i DBMS presi in esame attraverso i criteri sopracitati. Una comparazione, anche tramite forma tabellare, è stata accompagnata da una descrizione che potesse guidare il lettore ad una comprensione rapida delle differenze, dei punti di forza e delle debolezze di ogni TSDB. Infine sono state tratte le conclusioni che, in seguito al percorso svolto, sono sembrate più appropriate, sono stati individuati dei punti chiave su cui incentrare i lavori futuri e sono stati proposti altri spunti di lavoro ai quali non si è potuto lavorare per mancanza di ulteriore tempo e di disponibilità dei software completi di tutte le loro funzionalità.}, keywords = {data management, DBMS, InfluxDB, Modello relazionale, MongoDB, mysql, NoSQL, OpenTSDB, serie temporali, time series, time series database, TSDB}, pubstate = {published}, tppubtype = {mastersthesis} } La tesi è incentrata sulle time series e la loro gestione. Dopo aver esposto cosa fosse una serie temporale ed alcuni casi di utilizzo, la dissertazione prosegue elencando le famiglie di DBMS ed i criteri attraverso i quali valutarli. Successivamente si è descritto il modello che ogni DBMS implementava e, dopo aver dato un accenno di esso, si è passati alle tecniche usate per la gestione e l'analisi delle serie temporali. Ancora dopo, invece, si sono viste le tecniche di modellazione di un database in grado di gestire serie storiche e sono stati analizzati tutti i DBMS presi in esame attraverso i criteri sopracitati. Una comparazione, anche tramite forma tabellare, è stata accompagnata da una descrizione che potesse guidare il lettore ad una comprensione rapida delle differenze, dei punti di forza e delle debolezze di ogni TSDB. Infine sono state tratte le conclusioni che, in seguito al percorso svolto, sono sembrate più appropriate, sono stati individuati dei punti chiave su cui incentrare i lavori futuri e sono stati proposti altri spunti di lavoro ai quali non si è potuto lavorare per mancanza di ulteriore tempo e di disponibilità dei software completi di tutte le loro funzionalità. |
2017 |
Sorano, Danilo Studio e Progettazione di un Framework di Accesso a Database per Micro-servizi Jolie Masters Thesis 2017. Abstract | Links | BibTeX | Tags: Hibernate, JDBC, Jolie, Jolie Database Manager, MongoDB, MongoDB Java Driver, ORM, RDBMS @mastersthesis{amslaurea13754, title = {Studio e Progettazione di un Framework di Accesso a Database per Micro-servizi Jolie}, author = {Danilo Sorano}, url = {https://amslaurea.unibo.it/id/eprint/13754}, year = {2017}, date = {2017-01-01}, abstract = {La memorizzazione e gestione di dati è stato, sin dagli albori, un problema focale per l'informatica. La soluzione a questo problema si è presentata attraverso i database, che possono essere definiti come insieme di dati memorizzati all 'interno di un calcolatore elettronico a cui è possibile accedere allo scopo di effettuarne la lettura o la modifica. I database necessitano di interagire con le applicazioni per svolgere i loro processi di memorizzazione e gestione dei dati. Le soluzioni adottate per gestire il meccanismo di interazione applicazione-database sono diverse. La più comune, ad esempio per il linguaggio Java è quella di utilizzare delle API come JDBC per i database relazionali o MongoDB Java Driver per i database MongoDB. Soluzioni più complesse, ma che sicuramente semplificano il lavoro dello sviluppatore si basano sul sistema "Object/Relational Mapping", il quale realizza una mappatura tra un linguaggio orientato agli oggetti e un database relazionale. La tesi descrive design ed implementazione del tool Jolie Database Manager (JDM), pensato per semplificare l'interazione tra database SQL/no-SQL ed un micro-servizio Jolie. L'idea di base prende spunto dal sistema ORM: viene effettuata una mappatura tra i tipi Jolie ed i tipi del database, permettendo cosi di eseguire delle operazioni CRUD senza dover scrivere manualmente le query.}, keywords = {Hibernate, JDBC, Jolie, Jolie Database Manager, MongoDB, MongoDB Java Driver, ORM, RDBMS}, pubstate = {published}, tppubtype = {mastersthesis} } La memorizzazione e gestione di dati è stato, sin dagli albori, un problema focale per l'informatica. La soluzione a questo problema si è presentata attraverso i database, che possono essere definiti come insieme di dati memorizzati all 'interno di un calcolatore elettronico a cui è possibile accedere allo scopo di effettuarne la lettura o la modifica. I database necessitano di interagire con le applicazioni per svolgere i loro processi di memorizzazione e gestione dei dati. Le soluzioni adottate per gestire il meccanismo di interazione applicazione-database sono diverse. La più comune, ad esempio per il linguaggio Java è quella di utilizzare delle API come JDBC per i database relazionali o MongoDB Java Driver per i database MongoDB. Soluzioni più complesse, ma che sicuramente semplificano il lavoro dello sviluppatore si basano sul sistema "Object/Relational Mapping", il quale realizza una mappatura tra un linguaggio orientato agli oggetti e un database relazionale. La tesi descrive design ed implementazione del tool Jolie Database Manager (JDM), pensato per semplificare l'interazione tra database SQL/no-SQL ed un micro-servizio Jolie. L'idea di base prende spunto dal sistema ORM: viene effettuata una mappatura tra i tipi Jolie ed i tipi del database, permettendo cosi di eseguire delle operazioni CRUD senza dover scrivere manualmente le query. |
Rappini, Alessandro Studio ed analisi di soluzioni di localizzazione indoor multi sorgente basate su tecniche di fingerprint Masters Thesis 2017. Abstract | Links | BibTeX | Tags: Access Point, android, Beacon, BLE, INDOOR, localizzazione, MongoDB, multisorgente, NoSQL, Rete Cellulare @mastersthesis{amslaurea13302, title = {Studio ed analisi di soluzioni di localizzazione indoor multi sorgente basate su tecniche di fingerprint}, author = {Alessandro Rappini}, url = {https://amslaurea.unibo.it/id/eprint/13302}, year = {2017}, date = {2017-01-01}, abstract = {L'argomento principale di questa tesi è la localizzazione indoor, affrontata mediante la creazione di un'applicazione Android con il fine ultimo di localizzare un'utente all'interno di un ambiente chiuso. Le funzionalità principali che l'applicazione svolge sono due, analizzare un ambiente per raccogliervene i dati, ed riutilizzarli per fini localizzativi. Nella prima parte l'applicazione rileva i dati di un ambiente. I dati provengono da Access Point, Beacon Bluetooth e Rete Cellulare, tali dati sono salvati in un database in MongoDB. Le informazioni archiviate nella banca dati sono associate al nome dell'edificio e dell'ambiente nel quale i dati sono stati rilevati. Nella seconda parte dell'applicazione i dati archiviati nel database vengono confrontati con dei nuovi, rilevati nel momento in cui un'utente desidera localizzarsi. Il confronto dei dati avviene con l'ausilio di algoritmi di Pattern Matching. Gli algoritmi che analizzano i dati sono stati valutati sulla base del loro successo al fine di ottenere quale tra quelli usati detiene un risultato migliore.}, keywords = {Access Point, android, Beacon, BLE, INDOOR, localizzazione, MongoDB, multisorgente, NoSQL, Rete Cellulare}, pubstate = {published}, tppubtype = {mastersthesis} } L'argomento principale di questa tesi è la localizzazione indoor, affrontata mediante la creazione di un'applicazione Android con il fine ultimo di localizzare un'utente all'interno di un ambiente chiuso. Le funzionalità principali che l'applicazione svolge sono due, analizzare un ambiente per raccogliervene i dati, ed riutilizzarli per fini localizzativi. Nella prima parte l'applicazione rileva i dati di un ambiente. I dati provengono da Access Point, Beacon Bluetooth e Rete Cellulare, tali dati sono salvati in un database in MongoDB. Le informazioni archiviate nella banca dati sono associate al nome dell'edificio e dell'ambiente nel quale i dati sono stati rilevati. Nella seconda parte dell'applicazione i dati archiviati nel database vengono confrontati con dei nuovi, rilevati nel momento in cui un'utente desidera localizzarsi. Il confronto dei dati avviene con l'ausilio di algoritmi di Pattern Matching. Gli algoritmi che analizzano i dati sono stati valutati sulla base del loro successo al fine di ottenere quale tra quelli usati detiene un risultato migliore. |
2015 |
Ballo, Mattia Big data, nosql e machine learning: un'applicazione di prediction e recommendation basata sulle api di Amazon Masters Thesis 2015. Abstract | Links | BibTeX | Tags: amazon, aws, big data, Machine Learning, MongoDB, node-webkit, nodejs, NoSQL, predictionio @mastersthesis{amslaurea9693, title = {Big data, nosql e machine learning: un'applicazione di prediction e recommendation basata sulle api di Amazon}, author = {Mattia Ballo}, url = {https://amslaurea.unibo.it/id/eprint/9693}, year = {2015}, date = {2015-01-01}, abstract = {In questa tesi sono stati introdotti e studiati i Big Data, dando particolare importanza al mondo NoSQL, approfondendo MongoDB, e al mondo del Machine Learning, approfondendo PredictionIO. Successivamente è stata sviluppata un'applicazione attraverso l'utilizzo di tecnologie web, nodejs, node-webkit e le tecnologie approfondite prima. L'applicazione utilizza l'interpolazione polinomiale per predirre il prezzo di un bene salvato nello storico presente su MongoDB. Attraverso PredictionIO, essa analizza il comportamento degli altri utenti consigliando dei prodotti per l'acquisto. Infine è stata effetuata un'analisi dei risultati dell'errore prodotto dall'interpolazione.}, keywords = {amazon, aws, big data, Machine Learning, MongoDB, node-webkit, nodejs, NoSQL, predictionio}, pubstate = {published}, tppubtype = {mastersthesis} } In questa tesi sono stati introdotti e studiati i Big Data, dando particolare importanza al mondo NoSQL, approfondendo MongoDB, e al mondo del Machine Learning, approfondendo PredictionIO. Successivamente è stata sviluppata un'applicazione attraverso l'utilizzo di tecnologie web, nodejs, node-webkit e le tecnologie approfondite prima. L'applicazione utilizza l'interpolazione polinomiale per predirre il prezzo di un bene salvato nello storico presente su MongoDB. Attraverso PredictionIO, essa analizza il comportamento degli altri utenti consigliando dei prodotti per l'acquisto. Infine è stata effetuata un'analisi dei risultati dell'errore prodotto dall'interpolazione. |
Candini, Fabrizio Progettazione di database con Mysql e MongoDB: analisi di prestazioni su un caso di studio Masters Thesis 2015. Abstract | Links | BibTeX | Tags: Modello relazionale, MongoDB, mysql, NoSQL, performance @mastersthesis{amslaurea8939, title = {Progettazione di database con Mysql e MongoDB: analisi di prestazioni su un caso di studio}, author = {Fabrizio Candini}, url = {https://amslaurea.unibo.it/id/eprint/8939}, year = {2015}, date = {2015-01-01}, abstract = {Analisi di prestazioni di un database costruito con MongoDB e uno con Mysql residenti su due macchine virtuali uguali configurate appositamente per i test di inserimento, interrogazione e eliminazione.}, keywords = {Modello relazionale, MongoDB, mysql, NoSQL, performance}, pubstate = {published}, tppubtype = {mastersthesis} } Analisi di prestazioni di un database costruito con MongoDB e uno con Mysql residenti su due macchine virtuali uguali configurate appositamente per i test di inserimento, interrogazione e eliminazione. |