19 resultados para big-box retailing
Resumo:
L’avanzamento tecnologico degli ultimi anni ha portato ad un aumento sostanziale dei dati generati giornalmente. L’analisi di queste ingenti quantità di dati si è rivelata essere troppo complessa per i sistemi tradizionali ed è stato pertanto necessario sviluppare nuovi approcci basati sul calcolo distribuito. I nuovi strumenti sviluppati in seguito a queste nuove necessità sono framework di calcolo parallelo basati sul paradigma del MapReduce, un modello di programmazione sviluppato da Google, e sistemi di gestione di basi di dati fluidi, in grado di trattare rapidamente grandi quantità di dati non strutturati. Lo scopo alla base di entrambi è quello di costruire sistemi scalabili orizzontalmente e utilizzabili su hardware di largo consumo. L’utilizzo di questi nuovi strumenti può comunque portare alla creazione di sistemi poco ottimizzati e di difficile gestione. Nathan Marz propone un’architettura a livelli che utilizza i nuovi strumenti in maniera congiunta per creare sistemi semplici e robusti: questa prende il nome di Lambda-Architecture. In questa tesi viene introdotto brevemente il concetto di Big Data e delle nuove problematiche ad esso associate, si procede poi ad illustrare i principi su cui si basano i nuovi strumenti di calcolo distribuito sviluppati per affrontarle. Viene poi definita l’Architettura Lambda di Nathan Marz, ponendo particolare attenzione su uno dei livelli che la compone, chiamato Batch Layer. I principi della Lambda Architecture sono infine applicati nella costruzione di un Batch Layer, utilizzato per l’analisi e la gestione di dati climatici con fini statistici.
Resumo:
I Big Data hanno forgiato nuove tecnologie che migliorano la qualità della vita utilizzando la combinazione di rappresentazioni eterogenee di dati in varie discipline. Occorre, quindi, un sistema realtime in grado di computare i dati in tempo reale. Tale sistema viene denominato speed layer, come si evince dal nome si è pensato a garantire che i nuovi dati siano restituiti dalle query funcions con la rapidità in cui essi arrivano. Il lavoro di tesi verte sulla realizzazione di un’architettura che si rifaccia allo Speed Layer della Lambda Architecture e che sia in grado di ricevere dati metereologici pubblicati su una coda MQTT, elaborarli in tempo reale e memorizzarli in un database per renderli disponibili ai Data Scientist. L’ambiente di programmazione utilizzato è JAVA, il progetto è stato installato sulla piattaforma Hortonworks che si basa sul framework Hadoop e sul sistema di computazione Storm, che permette di lavorare con flussi di dati illimitati, effettuando l’elaborazione in tempo reale. A differenza dei tradizionali approcci di stream-processing con reti di code e workers, Storm è fault-tolerance e scalabile. Gli sforzi dedicati al suo sviluppo da parte della Apache Software Foundation, il crescente utilizzo in ambito di produzione di importanti aziende, il supporto da parte delle compagnie di cloud hosting sono segnali che questa tecnologia prenderà sempre più piede come soluzione per la gestione di computazioni distribuite orientate agli eventi. Per poter memorizzare e analizzare queste moli di dati, che da sempre hanno costituito una problematica non superabile con i database tradizionali, è stato utilizzato un database non relazionale: HBase.
Resumo:
Lo scopo di questo l'elaborato è l'analisi,lo studio e il confronto delle tecnologie per l'analisi in tempo reale di Big Data: Apache Spark Streaming, Apache Storm e Apache Flink. Per eseguire un adeguato confronto si è deciso di realizzare un sistema di rilevamento e riconoscimento facciale all’interno di un video, in maniera da poter parallelizzare le elaborazioni necessarie sfruttando le potenzialità di ogni architettura. Dopo aver realizzato dei prototipi realistici, uno per ogni architettura, si è passati alla fase di testing per misurarne le prestazioni. Attraverso l’impiego di cluster appositamente realizzati in ambiente locale e cloud, sono state misurare le caratteristiche che rappresentavano, meglio di altre, le differenze tra le architetture, cercando di dimostrarne quantitativamente l’efficacia degli algoritmi utilizzati e l’efficienza delle stesse. Si è scelto quindi il massimo input rate sostenibile e la latenza misurate al variare del numero di nodi. In questo modo era possibile osservare la scalabilità di architettura, per analizzarne l’andamento e verificare fino a che limite si potesse giungere per mantenere un compromesso accettabile tra il numero di nodi e l’input rate sostenibile. Gli esperimenti effettuati hanno mostrato che, all’aumentare del numero di worker le prestazioni del sistema migliorano, rendendo i sistemi studiati adatti all’utilizzo su larga scala. Inoltre sono state rilevate sostanziali differenze tra i vari framework, riportando pro e contro di ognuno, cercando di evidenziarne i più idonei al caso di studio.
Resumo:
Il lavoro svolto si concentra sullo studio e lo sviluppo dei sistemi software per la gestione dei big data. Inizialmente sono stati analizzati i settori nei quali i big data si stanno diffondendo maggiormente per poi studiare l'ingegnerizzazione e lo sviluppo dei sistemi in grado di gestire questo tipo di dati. Sono state studiate tutte le fasi del processo di realizzazione del software e i rischi e i problemi che si possono incontrare. Infine è stato presentato un software di analisi di big data: Google BigQuery.