archeo foss 2012 slides 1

34
Architetture scalabili per la memorizzazione, analisi, condivisione e pubblicazione dei dati Roma, 13 giugno 2012 - ArcheoFOSS 2012 Rodolfo Boraso , Diego Guenzi

Upload: csp-scarl

Post on 13-Jun-2015

629 views

Category:

Education


0 download

DESCRIPTION

Presentazione CSP 13 giugno 2012 - ArcheoFOSS 2012Rodolfo Boraso, Diego Guenzi

TRANSCRIPT

Page 1: Archeo foss 2012 slides 1

Architetture scalabili per la memorizzazione, analisi, condivisione e

pubblicazione dei dati

Roma, 13 giugno 2012 - ArcheoFOSS 2012

Rodolfo Boraso , Diego Guenzi

Page 2: Archeo foss 2012 slides 1

CSP s.c.a r.l.

2

Organismo di ricerca, ex Centro di Supercalcolo del Piemonte– Senza scopo di lucro– Utili reinvestiti in ricerca– Sviluppo sperimentale e ricerca industriale in ICT– Progetti europei, nazionali e regionali– Laboratorio di ricerca iscritto all' “Albo dei laboratori MIUR”– Nessun accesso preferenziale ai soci

Page 3: Archeo foss 2012 slides 1

3

Topic

MEMORIZZAZIONE

Page 4: Archeo foss 2012 slides 1

4

Ampia scelta di database

RelationalNon-relational

Piccolo Mapr Hadoop

Oracle IBM DB2 SQLServer JustOneOperationalInterSystems Progress VersantObjectivity

Document Lotus Notes

MarkLogic McObject

Mysql Ingres PostgreSQL SAP Sybase ASE EnterpriseDB

NewSQL

Amazon RDS SQL AzureDatabase.comXeround FathomDB

Schooner MySQL CodeFutures Tokutek ScaleBase NimbusDBContinuent VoltDB

Translattice

HandlerSocket

Akiban MySQL Cluster

ClustrixDrizzle

GenieDBScalArc

NOSQLCouchDB

MongoDBRavenDB Cloudant

Hadapt

KeyValue

Riak Redis

Membrain

Cassandra VoldemortBerkeleyDB

HypertableHBase

GraphBig TablesInfiniteGraphNeo4JGraphDB

'as-a-Service'App Engine Datastore SimpleDB

DataCache

Cloud Enable-ment

Data Grid/CacheTerracotta GigaSpaces Oracle Coherence memcached

IBM eXtreme Scale GridGain Vmware GemFire InfiniSpan CloudTran

Analytic Brisk Dryad Infobright Netezza ParAccel SAP Sybase IQ Teradata EMC CalPont Infosphere AsterData Greeplum VectorWise Vertica

CouchBase

Page 5: Archeo foss 2012 slides 1

5

NOSQL

Movimento che promuove una classe non ben definita di strumenti di archiviazione di dati

“For some problems, other storage solutions are better suited”

Not Only SQL• Non è un movimento contro l’SQL• Esistono delle alternative ai RDBMS tradizionali• Un nuovo modo di vedere la persistenza• Strumenti nati per lavorare in ambienti distribuiti, adatti al cloud computing

Page 6: Archeo foss 2012 slides 1

6

NOSQL

Si differenziano dai RDBMS• Non utilizzano il tradizionale SQL• Non adottano schemi tabellari fissi (dati semi-strutturati)• Evitano join• Scalano facilmente su commodity hardware

Uso complementare ai RDBMS• The right tool for the job• Coprono aree dove i RDBMS sono “deboli”• Hanno come target settori specifici

Page 7: Archeo foss 2012 slides 1

7

Scalabilità

Verticale• Potenziamento dell'hardware

Orizzontale• Numero di macchine

Page 8: Archeo foss 2012 slides 1

8

Costo della scalabilità

Verticale• Esponenziale

Orizzontale• Lineare

Page 9: Archeo foss 2012 slides 1

9

Scalabilità RDBMS tradizionali

Verticale• In genere non ci sono grosse difficoltà

Orizzontale• Problematica: necessità di tecniche complesse con un forte degrado delle prestazioni offerte

Page 10: Archeo foss 2012 slides 1

10

Scalabilità DB NOSQL

Verticale• In genere non ci sono grosse difficoltà

Orizzontale• Nascono per essere inseriti in ambienti distribuiti: l'eccezione è il server stand-alone

Page 11: Archeo foss 2012 slides 1

11

Solo scalabilità?

Scalare orizzontalmente => avere più macchine

• Fault tolerance• Load balancing• High availability

Avere più macchine => poter distribuire e replicare i dati su più nodi

• Uso ideale in ambienti distribuiti• Affidabilità• Elevate prestazioni

Tutto in bundle, senza bisogno di software aggiuntivi

Page 12: Archeo foss 2012 slides 1

12

NewSQL

● Una via di mezzo fra il mondo NOSQL e quello relazionale● Uso di tabelle relazionali e di SQL● Stessa scalabilità dei DBMS NOSQL● Molti prodotti stanno nascendo: VoltDB, MySQL Cluster (NDB),

ScaleDB, Xeround…● Molti storage engine per MySQL

Page 13: Archeo foss 2012 slides 1

13

HBase

● Architettura orientata alle colonne / ibrida basata su HDFS● Si ispira a BigTable di Google● Software open source con licenza Apache● Utilizzato in produzione da molti enti fra i quali spicca Facebook● Salvataggio dati in RAM (con flush su disco)● Replica dei dati e sharding ottenuti grazie all’HDFS● Aggiunta di nodi a caldo● Self-healing

Page 14: Archeo foss 2012 slides 1

14

HDFS

● Filesystem distribuito, altamente scalabile● Basato sul framework Hadoop● Cluster di nodi formano uno storage HDFS● Fault-tolerant ● Lavora su commodity hardware (low-cost)

Page 15: Archeo foss 2012 slides 1

15

Hadoop

● Framework che supporta applicazioni distribuite con elevato accesso ai dati● Scritto interamente in Java● Permette alle applicazioni di lavorare con migliaia di nodi e petabyte di dati● Si ispira alla tecnologia Map/Reduce di Google e al Google File System● Progetto top-level di Apache Foundation● Usato da alcuni grossi player come AOL, eBay, Facebook, IBM, Imageshack, Joost, Linkedin, The New York Times, Twitter e Yahoo

Page 16: Archeo foss 2012 slides 1

16

Topic

ANALISI

Page 17: Archeo foss 2012 slides 1

17

R – Statistical computing

● Ambiente per l'analisi statistica con licenza GPL● Predisposto per l'interconnessione a diversi database e a sistemi GIS come GRASS (geostatistica)● Ampia disponibilità di moduli per la connessione ad altre applicazioni con driver specifici o tramite connessioni ODBC● Disponibile per moltissime piattaforme

Page 18: Archeo foss 2012 slides 1

R + Hadoop

● Connubio “best-of-breed” open source per l'analisi● Permette di analizzare grossi insiemi di dati distribuiti su HDFS / HBase anziché su storage e database locali ● Utilizza script in linguaggio R e sfrutta le potenzialità della metodologia di calcolo distribuito di Map / Reduce

18

Page 19: Archeo foss 2012 slides 1

19

Big Data Analytics

● Big Data = informazioni in enormi quantità, delle più svariate tipologie e formati e in costante crescita, che causano complessità nella gestione con strumenti tradizionali

● Complessità sì nella memorizzazione (i RDBMS tradizionali sono insufficienti) ma, specialmente, nell'analisi (tecniche di warehousing o di business intelligence risultano inadatte)

● Big Data Analytics = utilizzo di “nuovi” strumenti distribuiti per l'analisi

● HDFS + NOSQL + Map / Reduce + R = una possibile soluzione open source per la Big Data Analytics

Page 20: Archeo foss 2012 slides 1

20

Esempio: Oracle Big Data Appliance

● Un'appliance Oracle per l'analisi dei Big Data

● Oracle Enterprise Linux 5.6● CDH - Cloudera's Distribution

including Hadoop (Hadoop pacchettizzato da Cloudera)

● Oracle NOSQL Database (BerkleyDB)

● Open source R

Page 21: Archeo foss 2012 slides 1

21

Topic

CONDIVISIONE e PUBBLICAZIONE

Page 22: Archeo foss 2012 slides 1

22

Apache web server e WebDAV

● Progetto della Apache Foundation● Server web multipiattaforma open source attivo dal 1995● Architettura modulare● Grazie a mod_dav e dav_fs permette l'accesso tramite protocollo WebDAV alle risorse presenti sul file system● Web-based Distributed Authoring and Versioning (WebDAV)

● Protocollo basato su HTTP● Permette all'utente di gestire in modo collaborativo i file in un

server remoto● Scopo: rendere il web un mezzo di lettura e scrittura● Supportato da una miriade di dispositivi, dai computer agli

smartphone

Page 23: Archeo foss 2012 slides 1

23

Data feed via mobile

Cloud A

Cloud B

Cloud C

Cloud Computing

Internet

Mobile Users

Network Operators

Internet Service Providers

Application Service Providers

● Esempio: crowdsourcing● ...ma non solo: oltre al feed, anche la fruizione dei contenuti può avvenire tramite device mobili

Page 24: Archeo foss 2012 slides 1

24

Topic

ARCHITETTURA

Page 25: Archeo foss 2012 slides 1

25

Load balancing

● Metodologia per la distribuzione del carico su più macchine all'interno di un cluster

● Moltissime soluzioni open source, ad esempio HAProxy+Keepalived, ma anche Nginx + Keepalived

Page 26: Archeo foss 2012 slides 1

26

Schema architetturale

Cluster Web

Internet

…...HAProxy

….... …....

…....

HTTP/WebDAV

HAProxy

Apache+

Fuse

Apache+

Fuse

Apache+

Fuse

Cluster Web

RApacheSolr

Pentaho

Piattaformedi analisi

NodoHadoop

NodoHadoop

NodoHadoop

HDFS

Hadoop HBase

Keepalived

HTTP/WebDAV

Hive

Page 27: Archeo foss 2012 slides 1

27

Topic

CONTESTI D'USO

Page 28: Archeo foss 2012 slides 1

28

Pubblica amministrazione

● Le PA possono disporre di grosse moli di dati di interesse per i cittadini, tra i quali si identificano spesso gli open data● Quale modo migliore per utilizzarli se non dal proprio smartphone?● Come evidenziato su dati.gov.it esistono app per:

● amministrazioni centrali (trovare e lasciare opinioni sugli uffici pubblici, gestione INPS e INAIL, motorizzazione civile...)

● regioni (informazioni turistiche e culturali, analisi statistiche...)● province (infomobilità, gastronomie tipiche...)● comuni (mezzi pubblici, news...)

Page 29: Archeo foss 2012 slides 1

29

Mobile data analytics

● Connubio fra data analytics e ambienti di nuova generazione ● Se si parla di Big Data è necessario elaborare i dati per renderli anonimi e aggregarli, in modo che il cittadino li riceva in forma semplificata● Serve potenza di calcolo nell'infrastruttura di back-end: i dispositivi mobili fungono solo da thin client● Necessità di ambienti scalabili (cloud)

Riga 1 Riga 2 Riga 3 Riga 40

2

4

6

8

10

12

Colonna 1

Colonna 2

Colonna 3

Page 30: Archeo foss 2012 slides 1

30

Cloud storage e personal cloud

● Necessità di avere un contesto comune fra più dispositivi, al fine di condividere i dati fra i propri device

● PC● Notebook● Tablet● Smartphone

● Necessità di condividere i propri dati con altri● Necessità di capacità di storage addizionale

Page 31: Archeo foss 2012 slides 1

31

Hadoop nell'archeologia

● Uso di LIDAR per la rilevazione della mappatura di siti relativi alle civiltà pre-colombiane in America centrale (mole enorme di campionamenti)● Elaborazione dei dati grazie a Map / Reduce e Hadoop con performance migliori rispetto ad architetture HPC, ben più costose (San Diego Supercomputing Centre)● http://silvertonconsulting.com/blog/2012/03/14/archeology-meets-big-data/

Page 32: Archeo foss 2012 slides 1

32

R nell'archeologia● Numerosi esempi di utilizzo:

● analisi di statistica circolare per lo studio dell'esposizione solare

● analisi dell'assetto spaziale di un deposito archeologico (Fabric Analysis)

● analisi di comparazione di reperti utilizzando indici di somiglianza tra oggetti o siti

● “Un'anfora frammentaria della laguna di Venezia” di I. Modrzewska, G. Taroni, F. Pianetti, 2010

● “Correspondence analysis in R for archaeologists: an educational account” di M.J. Baxter, H.E.M. Cool, 2010

● ...

Page 33: Archeo foss 2012 slides 1

33

Conclusioni

● La soluzione stato dell'arte è la soluzione FOSS (e.g. Oracle Big Data Appliance adotta prevalentemente software open source)● Architettura fortemente scalabile● Modello “modulare” con componenti intercambiabili e interoperabili● Infrastruttura general purpose, adatta alla memorizzazione e all'analisi di diverse tipologie di dati (strutturati o meno)● Componenti dell'architettura ampiamente adottate e fortemente supportate dalla community● Capacità di esecuzione su commodity hardware anziché su soluzioni specifiche offerte da vari vendor (rischio di vendor lock-in)

Page 34: Archeo foss 2012 slides 1

CSP innovazione nelle ICT s.c. a r.l. Via Nizza n. 150 – 10126 Torino – Italy(ingresso da via Alassio, 11/c)

Tel: +39 011 4815111Fax: +39 011 4815001E-mail: [email protected]

www.csp.it

34

Direzione Progettazione e Gestione Risorse

[email protected] [email protected]