Slide dall'Università degli Studi Firenze su Tecniche per la Progettazione e la Gestione di Database. La Pdf esplora i Big Data e il framework Hadoop, inclusa l'architettura, HDFS, MapReduce e l'interfaccia web di NameNode, utile per studenti universitari di Informatica.
Mostra di più61 pagine


Visualizza gratis il Pdf completo
Registrati per accedere all’intero documento e trasformarlo con l’AI.
Fondo Sociale Europeo- Programma Operativo Regione Toscana UNIONE EUROPEA Fondo sociale europeo REPVERKA ITALINIA REGIONE TOSCANA n
"TECNICHE PER LA PROGETTAZIONE E LA GESTIONE DI DATABASE "
USE SOFTWARE USING THE - GARTNER MASSIVELY SAN - BIOLOGICAL TOLERABLE HUNDREDS SIZE NEEDED DISK PETABYTES TOOLS ER TIME INTERNET LOSS WETHEN INCLUDE SYSTEMS DEFINITION NETWORKS SEARCH INFORMATION MAY MANAGEMENT MANAGE OM ** RECORDS SOCIAL LARGE GROW COST CONTINUES TERABYTES RESEARCH STORAGE EVERY CASE CITATION COMPLEX DATABASES DIFFICULTY EXAMPLES ELAPSED CURRENT SENSOR ARCHIVES APPLIED
Ing. Mariano Di Claudio Lezione del 15/10/2014
PIN TULLIO BUZZI UNIVERSITÀ DEGLI STUDI FIRENZE sophia UNIONE INDUSTRIALE FRATESE CONTINOUSTRAPRATO saperi Confartigianato IMPRESE PRATO a CNA 1912-200
DATA. PROCESSING - GENOMICS SHARED PROCESS TECHNOLOGIES DISTRIBUTED CAPTURE STORE LARGER SETS MOVING PERFORMANCE WORKINGIndice
Corso PRO. GE. D. 2 Big DataProcesso di elaborazione dei Big Data
" Uno dei contesti in cui i Big Data trovano una forte applicazione è quello della Business Intelligence, in cui contribuiscono a creare dei sistemi di supporto alle decisioni. Analista Acquisizione Immagazzinamento Organizzazione Integrazione/Arricchimento Analisi Inserimento DataWarehouse i Big Data Processo Iterativo Per estrapolare informazioni utili Molte delle tecnologie utilizzate nelle 4 fasi di elaborazione sono legate all'ecosistema Hadoop (che insieme alle sue componenti è sviluppato in Java). Corso PRO. GE. D. 3 Big DataAcquisizione dei Big Data
· L'acquisizione delle diverse tipologie di dati può essere realizzate con mezzi differenti, le principali categorie sono: " API di chi fornisce i dati. Si parla principalmente di dati provenienti da Social Network o app di condivisione. · Importazione dei dati mediante strumenti ETL (Sqoop o PDI). · Utilizzo di software di web scraping. Raccolta automatica di dati dal web, ad esempio mediante parser HTML. · Lettura di stream di dati. Tecnologie per acquisire flussi di dati, come ad esempio le piattaforme CEP (dati provenienti dal web o da sensori). Corso PRO. GE. D. 4 Big DataImmagazzinamento e Organizzazione
· In questa fase bisogna considerare due aspetti: 1. La gestione di grandi moli di dati. 2. Dati non strutturati o semi-strutturati. " La principale tecnologia software adatta a questo scopo è Hadoop, piattaforma di calcolo distribuito che presenta o supporta diverse componenti: " Hadoop common: strato sw che fornisce funzioni di supporto ad altri moduli. " HDFS: file system distribuito che offre una elevata capacità di accesso ai dati. YARN: sistema di scheduling e gestione delle risorse condivise. · MapReduce: sistema di parallel processing per grandi moli di dati. Hbase: Database NoSQL di tipo Column Family. Corso PRO. GE. D. 5 Big DataIntegrazione
Prima di passare alla fase di analisi è spesso necessario eseguire delle integrazioni/elaborazioni sui dati immagazzinati. - Sqoop permette di realizzare l'integrazione con DB esterni, spostando dati da e verso Hadoop. Apache Tika Sw che permette di trattare formati differenti (PDF, HTML, XML, Word, Excel) nello stesso modo. Specie per dati provenienti dal Web o da repository di documenti. · Hive Sistema di datawarehousing costruito su Hadoop, che permette l'aggregazione di dati, l'esecuzione di query e l'analisi di grandi dataset mediante HiveQL (simile ad SQL). Così si nasconde la complessità di scrivere funzioni MapReduce. Corso PRO. GE. D. 6 Big DataAnalisi
L'analisi dei Big Data nel mondo Hadoop può essere fatta con diversi strumenti che sfruttano MapReduce e HDFS. Tra i diversi tool a disposizione, importanti sono Pig (ecosistema Hadoop), R (no Hadoop) e Mahout (ecosistema Hadoop - non integrera i nuovi algoritmi di MapReduce). " Pig con il suo linguaggio Pig Latin semplifica la scrittura di sequenze di operazioni rispetto a MapReduce; infatti ci colloca tra MapReduce e Hive, come dimostra il codice necessario per contare le occorrenze di ciascuna parola in un file testuale. hadoop Map Reduce PIG HIVE > 30 righe di codice ~ 15 righe di codice ~ 5 righe di codice Corso PRO. GE. D. 7 Big DataHadoop
hadoop " Hadoop è un framework open source per l'elaborazione, la memorizzazione e l'analisi di grandi quantità di dati distribuiti e non strutturati. " E' stato progettato con l'obiettivo di poter scalare da un singolo server a migliaia di macchine con un alto livello di tolleranza ai guasti. Corso PRO. GE. D. 8 Big DataHadoop
" Hadoop è stato ispirato da MapReduce, una funzione "user-defined" sviluppata da Google nei primi anni del 2000 per l'indicizzazione del web. " Hadoop è ora un progetto della Apache Software Foundation, dove centinaia di collaboratori lavorano per migliorare continuamente la tecnologia di base. Idea chiave Invece di processare un enorme blocco di dati con una singola macchina, Hadoop rompe i Big Data in più parti in modo che ogni parte possa essere elaborata e analizzata allo stesso tempo, con un approccio di calcolo parallelo e distribuito. Corso PRO. GE. D. 9 Big DataHadoop - Caratteristiche chiave
Hadoop cambia l'economia e le dinamiche del calcolo computazionale su larga scala, definendo una soluzione di elaborazione che è: Scalabile Nuovi nodi possono essere aggiunti, se necessario, senza dover modificare i formati di dati, le modalità di caricamento dei dati, come vengono scritti i job, o le applicazioni ad un livello superiore. Performante " Hadoop porta un calcolo parallelo e massivo su dei commodity server. Il risultato è una riduzione consistente del costo per terabyte dello spazio di archiviazione. La ripartizione dei dati sui nodi di calcolo permette di minimizzare i tempi di accesso, eliminando onerosi trasferimenti di rete. Corso PRO. GE. D. 10 Big DataHadoop - Caratteristiche chiave
Hadoop cambia l'economia e le dinamiche del calcolo computazionale su larga scala, definendo una soluzione di elaborazione che è: Flessibile " Hadoop è schema-less, e in grado di gestire dati strutturati e non, provenienti da più fonti. I dati provenienti da sorgenti multiple possono essere uniti ed aggregati in modi arbitrari che permettono un'analisi più approfondita di rispetto ai sistemi tradizionali. Fault Tolerant " Quando si perde un nodo, il sistema reindirizza il lavoro su un'altra macchina che possiede i dati (copia), garantendo una elaborazione continua senza tempi di attesa. Corso PRO. GE. D. 11 Big DataHadoop - Componenti chiave
Le componenti chiave che costituiscono il nucleo della piattaforma Hadoop sono: Hadoop common " Strato di sw comune che fornisce funzioni di supporto agli altri moduli. HDFS · E' il filesystem distribuito in grado di gestire dati in diversi formati e di regolarne l'accesso in modo efficace. Garantisce che i dati siano ridondanti sui nodi realizzando così la tolleranza ai guasti Corso PRO. GE. D. 12 Big DataHadoop - Componenti chiave
Le componenti chiave che costituiscono il nucleo della piattaforma Hadoop sono: YARN · Framework di supporto alla creazione di applicazioni o infrastrutture per il calcolo distribuito (presente nelle versioni 0.23.X e 2.X.X). MapReduce · E' il sistema di parallel processing di grandi quantità di dati. Lavora secondo il principio dividi et impera, in cui un problema complesso viene suddiviso in sottoproblemi insieme ai dati, elaborati in modo separato. Corso PRO. GE. D. 13 Big DataHadoop - Architettura (componenti aggiuntivi)
MAHOUT R (RHIVE - RHADOOP) FLUME PIG HIVE SQOOP AMBARI MAPREDUCE YARN CASSANDRA MONGODB HBASE HCATALOG ZOOKEEPER e OZIE HDFS Corso PRO. GE. D. 14 Big DataHadoop - Architettura (componenti aggiuntivi)
PIG E' una libreria che semplifica la creazione di job per l'elaborazione dei dati. Fornisce il linguaggio Pig Latin, e poi Pig stesso opera la conversione in comandi MapReduce. Hive E' un sistema di data warehousing su Hadoop. Permette l'aggregazione e l'analisi di grandi dataset offrendo il linguaggio HiveQL (SQL-like). Hcatalog · Sistema di gestione di metadati che facilita la lettura/scrittura dei dati. HBase " Database Column oriented basato su HDFS Corso PRO. GE. D. 15 Big DataHadoop - Architettura (componenti aggiuntivi)
Cassandra-MongoDB ... " Database NoSQL che comunicano o utilizzano Hadoop. Zookeeper Strumento di coordinamento e sincronizzazione delle risorse. Ozie " Strumento di gestione del workflow delle operazioni. Zookeeper " Strumento di monitoraggio e amministrazione del cluster Hadoop. Corso PRO. GE. D. 16 Big DataHadoop - Architettura (componenti aggiuntivi)
Flume · Sistema per muovere grandi quantità di dati (come flussi), provenienti da fonti diverse verso HDFS o altre destinazioni. Sqoop " Libreria per trasferire dati tra database relazionali e Hadoop. Mahout · Libreria di machine learning. R (con Rhive e RHadoop) " Software statistico in grado di utilizzare Hadoop attraverso i plug-in Rhive e RHadoop. Corso PRO. GE. D. 17 Big DataHadoop
Uno dei principali obiettivi di Hadoop è quello di consentire la scansione di grandi dataset e produrre dei risultati attraverso un sistema di "batch-processing" distribuito e altamente scalabile. · Apache Hadoop è caratterizzato da due componenti chiave: · HDFS (Hadoop Distributed FileSystem) hadoop HOFS - MapReduce hadoop Map Reduce Corso PRO. GE. D. 18 Big DataHadoop - HDFS
hadoop HOFS HDFS è un filesystem distribuito, eseguito sul filesystem nativo. · Nasce con l'obiettivo di soddisfare requisiti di affidabilità e scalabilità. " Può gestire un numero elevato di file, anche di notevoli dimensioni (nell'ordine di GB e TB), tramite cluster che possono contenere anche migliaia di nodi. Può utilizzare commodity hardware. Ciò comporta la possibilità di guasti frequenti e/o nodi non disponibili. Capacità di effettuare operazioni di recovery automatiche. Corso PRO. GE. D. 19 Big Data