SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Downloaden Sie, um offline zu lesen
Valutazione sperimentale
      di un database relazionale
          in ambiente cloud




Università di Cagliari         a.a. 2010/2011
Facoltà di Scienze MM.FF.NN.   Matteo Pani
++cloud;                          Introduzione

Il mercato dei servizi cloud è in continua
espansione, perché?


●   infrastruttura hardware e software esterna
●   abbattimento costi relativi ad esse
●   dati ed applicazioni sempre accessibili
●   più facile creare servizi




                                               1/18
L'ambiente GAE                            In breve

Semplifica lo sviluppo di applicazioni web

Le applicazioni "girano" nell'infrastruttura di
  Google

Le applicazioni sono sandboxate

Pagamenti in base a ciò che si usa

Console d'amministrazione
                                                  2/18
L'ambiente GAE                 Servizi e storage

Fornisce svariati servizi ed in particolare offre
  diverse opzioni per lo storage, quali:

●   App Engine Datastore
●   Google Storage
●   Google Cloud SQL




                                                 3/20
Google Cloud SQL                  Panoramica

Servizio web grazie a cui è possibile avere
  istanze cloud di database relazionali MySQL

●   semplicità di utilizzo
●   non richiede manutenzione da parte dello
    sviluppatore
●   replicazione dei dati a livello geografico
●   integrazione con GAE ed altri servizi di
    Google.


                                                4/20
Google Cloud SQL                          Features

Offre alcune funzionalità, tra le quali:

●   istanze grandi fino a 10GB
●   replicazione geografica sincrona
●   prompt SQL nella Google APIs Console
●   interfaccia testuale di interazione col
    database
●   Compatibilità Python e Java
●   supporto a mysqldump


                                                   5/18
Google Cloud SQL                  Limitazioni

C’è però anche qualche limitazione, come ad
  esempio:

●   dimensione istanze pari a massimo 10GB
●   funzioni definite dallo sviluppatore non
    supportate
●   MySQL replication non supportata;
●   alcune istruzioni MySQL non sono
    supportate


                                              6/18
Google Cloud SQL   Dashboard




                         7/18
Google Cloud SQL         Interagire col db

                   Prompt web


                          Script desktop




                   SQuirrel SQL
                                       8/18
Google Cloud SQL             Sviluppo applicazioni

Linguaggi supportati: Java e Python

Basta indicare nel codice nome istanza e nome
  database

Modulo o driver si occupano della connessione
alla base di dati

Java → Plugin per Eclipse
Python → Django
                                                9/18
Il caso di studio                 Introduzione

Per una generica banca, la decisione in merito
all'apertura di una nuova filiale è un
problema:
●   è necessaria?
●   eventualmente, dove farla sorgere?

Un possibile criterio di valutazione:
disposizione geografica filiali rispetto a
  clienti


                                              10/18
Il caso di studio             Database
                    Clienti




                    Filiali




                                  11/18
Il caso di studio   Approccio classico




                                  12/18
Il caso di studio   DeSEB




                     13/18
Il caso di studio   Approccio classico vs DeSEB




                                           14/18
Il caso di studio   Approccio classico vs DeSEB




                                           15/18
Il caso di studio          Cenni sull'implementazione


Georefere   Javascript     HTML      CSS   Client
nziazione



Query al                 JSP               Server
database



Eclipse 3.7 + Google Plugin
Firefox 10/11 + GWT Plugin + Firebug
OpenJDK 1.6
Google Maps API 3.8
Fedora Linux 16
                                                    16/18
Conclusioni                          Riassumendo

È stato testato il servizio Google Cloud SQL

interfacciamento diretto e creazione di
  applicazioni

  È sviluppata un'applicazione per il supporto
  alle decisioni in ambito bancario usando GAE
  + GMaps + Google Cloud SQL

Si è dimostrato semplice da usare, efficiente
  ed affidabile
                                             17/18
Conclusioni                      Sviluppi futuri


DeSEB è uno strumento integrativo, non
sostitutivo
 
Privatezza dei dati

DeSEB è solo un protipo!

●   ulteriori funzionalità
●   aggiunta di altre informazioni
●   integrazione di altri servizi web, sempre in
    ottica cloud
                                               18/18
Grazie per l'attenzione

Weitere ähnliche Inhalte

Ähnlich wie Valutazione sperimentale di un database relazionale in ambiente cloud

SOGEI - Graph DB per un moderno Identity & Access Management
SOGEI - Graph DB per un moderno Identity & Access ManagementSOGEI - Graph DB per un moderno Identity & Access Management
SOGEI - Graph DB per un moderno Identity & Access ManagementNeo4j
 
Benchmarking Cloud Native PostgreSQL
Benchmarking Cloud Native PostgreSQLBenchmarking Cloud Native PostgreSQL
Benchmarking Cloud Native PostgreSQLEDB
 
Laboratorio Di Basi Di Dati 06 Programmazione Web Lato Client
Laboratorio Di  Basi Di  Dati 06  Programmazione  Web Lato ClientLaboratorio Di  Basi Di  Dati 06  Programmazione  Web Lato Client
Laboratorio Di Basi Di Dati 06 Programmazione Web Lato Clientguestbe916c
 
MEAN: il nuovo stack di sviluppo per il futuro del web
MEAN: il nuovo stack di sviluppo per il futuro del webMEAN: il nuovo stack di sviluppo per il futuro del web
MEAN: il nuovo stack di sviluppo per il futuro del webEugenio Minardi
 
Come sviluppare applicazioni cross device con HTML
Come sviluppare applicazioni cross device con HTMLCome sviluppare applicazioni cross device con HTML
Come sviluppare applicazioni cross device con HTMLSinergia Totale
 
Presentazione tesi magistrale
Presentazione tesi magistralePresentazione tesi magistrale
Presentazione tesi magistraleFederico Cacco
 
Tesi Discussione
Tesi DiscussioneTesi Discussione
Tesi DiscussioneYeser Rema
 
kube-green | Davide Bianchi
kube-green | Davide Bianchikube-green | Davide Bianchi
kube-green | Davide BianchiKCDItaly
 
Cos’è la Virtualizzazione dei dati?
Cos’è la Virtualizzazione dei dati?Cos’è la Virtualizzazione dei dati?
Cos’è la Virtualizzazione dei dati?Denodo
 
I linguaggi del web - seconda edizione (3° giornata)
I linguaggi del web - seconda edizione (3° giornata)I linguaggi del web - seconda edizione (3° giornata)
I linguaggi del web - seconda edizione (3° giornata)Diego La Monica
 
Il Web orientato al futuro: Express, Angular e nodeJS
Il Web orientato al futuro: Express, Angular e nodeJS Il Web orientato al futuro: Express, Angular e nodeJS
Il Web orientato al futuro: Express, Angular e nodeJS Eugenio Minardi
 
SMAU Milano 2014 GAE 24/10/2014 - IWA Italy
SMAU Milano 2014 GAE 24/10/2014 - IWA ItalySMAU Milano 2014 GAE 24/10/2014 - IWA Italy
SMAU Milano 2014 GAE 24/10/2014 - IWA ItalyPaolo Dadda
 
Migrazione di un sito web mediante tecnica di estrazione dati automatizzata
Migrazione di un sito web mediante tecnica di estrazione dati automatizzataMigrazione di un sito web mediante tecnica di estrazione dati automatizzata
Migrazione di un sito web mediante tecnica di estrazione dati automatizzataGiulioZorzoli
 
Un'Infrastruttura di Sviluppo Web Enterprise Distribuita Basata su Modelli Pa...
Un'Infrastruttura di Sviluppo Web Enterprise Distribuita Basata su Modelli Pa...Un'Infrastruttura di Sviluppo Web Enterprise Distribuita Basata su Modelli Pa...
Un'Infrastruttura di Sviluppo Web Enterprise Distribuita Basata su Modelli Pa...Natale Vinto
 
Google app engine_gae_intro
Google app engine_gae_introGoogle app engine_gae_intro
Google app engine_gae_introfirenze-gtug
 
Laboratorio Di Basi Di Dati 07 Programmazione Web Lato Server
Laboratorio Di  Basi Di  Dati 07  Programmazione  Web Lato ServerLaboratorio Di  Basi Di  Dati 07  Programmazione  Web Lato Server
Laboratorio Di Basi Di Dati 07 Programmazione Web Lato Serverguestbe916c
 

Ähnlich wie Valutazione sperimentale di un database relazionale in ambiente cloud (20)

SOGEI - Graph DB per un moderno Identity & Access Management
SOGEI - Graph DB per un moderno Identity & Access ManagementSOGEI - Graph DB per un moderno Identity & Access Management
SOGEI - Graph DB per un moderno Identity & Access Management
 
Benchmarking Cloud Native PostgreSQL
Benchmarking Cloud Native PostgreSQLBenchmarking Cloud Native PostgreSQL
Benchmarking Cloud Native PostgreSQL
 
Laboratorio Di Basi Di Dati 06 Programmazione Web Lato Client
Laboratorio Di  Basi Di  Dati 06  Programmazione  Web Lato ClientLaboratorio Di  Basi Di  Dati 06  Programmazione  Web Lato Client
Laboratorio Di Basi Di Dati 06 Programmazione Web Lato Client
 
Spring e Flex
Spring e FlexSpring e Flex
Spring e Flex
 
Devops, Cloud e Container
Devops, Cloud e ContainerDevops, Cloud e Container
Devops, Cloud e Container
 
MEAN: il nuovo stack di sviluppo per il futuro del web
MEAN: il nuovo stack di sviluppo per il futuro del webMEAN: il nuovo stack di sviluppo per il futuro del web
MEAN: il nuovo stack di sviluppo per il futuro del web
 
Come sviluppare applicazioni cross device con HTML
Come sviluppare applicazioni cross device con HTMLCome sviluppare applicazioni cross device con HTML
Come sviluppare applicazioni cross device con HTML
 
Presentazione tesi magistrale
Presentazione tesi magistralePresentazione tesi magistrale
Presentazione tesi magistrale
 
Tesi Discussione
Tesi DiscussioneTesi Discussione
Tesi Discussione
 
kube-green | Davide Bianchi
kube-green | Davide Bianchikube-green | Davide Bianchi
kube-green | Davide Bianchi
 
Cos’è la Virtualizzazione dei dati?
Cos’è la Virtualizzazione dei dati?Cos’è la Virtualizzazione dei dati?
Cos’è la Virtualizzazione dei dati?
 
I linguaggi del web - seconda edizione (3° giornata)
I linguaggi del web - seconda edizione (3° giornata)I linguaggi del web - seconda edizione (3° giornata)
I linguaggi del web - seconda edizione (3° giornata)
 
Il Web orientato al futuro: Express, Angular e nodeJS
Il Web orientato al futuro: Express, Angular e nodeJS Il Web orientato al futuro: Express, Angular e nodeJS
Il Web orientato al futuro: Express, Angular e nodeJS
 
Database Data Aggregator
Database Data AggregatorDatabase Data Aggregator
Database Data Aggregator
 
SMAU Milano 2014 GAE 24/10/2014 - IWA Italy
SMAU Milano 2014 GAE 24/10/2014 - IWA ItalySMAU Milano 2014 GAE 24/10/2014 - IWA Italy
SMAU Milano 2014 GAE 24/10/2014 - IWA Italy
 
Migrazione di un sito web mediante tecnica di estrazione dati automatizzata
Migrazione di un sito web mediante tecnica di estrazione dati automatizzataMigrazione di un sito web mediante tecnica di estrazione dati automatizzata
Migrazione di un sito web mediante tecnica di estrazione dati automatizzata
 
Un'Infrastruttura di Sviluppo Web Enterprise Distribuita Basata su Modelli Pa...
Un'Infrastruttura di Sviluppo Web Enterprise Distribuita Basata su Modelli Pa...Un'Infrastruttura di Sviluppo Web Enterprise Distribuita Basata su Modelli Pa...
Un'Infrastruttura di Sviluppo Web Enterprise Distribuita Basata su Modelli Pa...
 
Google app engine_gae_intro
Google app engine_gae_introGoogle app engine_gae_intro
Google app engine_gae_intro
 
Google App Engine
Google App EngineGoogle App Engine
Google App Engine
 
Laboratorio Di Basi Di Dati 07 Programmazione Web Lato Server
Laboratorio Di  Basi Di  Dati 07  Programmazione  Web Lato ServerLaboratorio Di  Basi Di  Dati 07  Programmazione  Web Lato Server
Laboratorio Di Basi Di Dati 07 Programmazione Web Lato Server
 

Valutazione sperimentale di un database relazionale in ambiente cloud

  • 1. Valutazione sperimentale di un database relazionale in ambiente cloud Università di Cagliari a.a. 2010/2011 Facoltà di Scienze MM.FF.NN. Matteo Pani
  • 2. ++cloud; Introduzione Il mercato dei servizi cloud è in continua espansione, perché? ● infrastruttura hardware e software esterna ● abbattimento costi relativi ad esse ● dati ed applicazioni sempre accessibili ● più facile creare servizi 1/18
  • 3. L'ambiente GAE In breve Semplifica lo sviluppo di applicazioni web Le applicazioni "girano" nell'infrastruttura di Google Le applicazioni sono sandboxate Pagamenti in base a ciò che si usa Console d'amministrazione 2/18
  • 4. L'ambiente GAE Servizi e storage Fornisce svariati servizi ed in particolare offre diverse opzioni per lo storage, quali: ● App Engine Datastore ● Google Storage ● Google Cloud SQL 3/20
  • 5. Google Cloud SQL Panoramica Servizio web grazie a cui è possibile avere istanze cloud di database relazionali MySQL ● semplicità di utilizzo ● non richiede manutenzione da parte dello sviluppatore ● replicazione dei dati a livello geografico ● integrazione con GAE ed altri servizi di Google. 4/20
  • 6. Google Cloud SQL Features Offre alcune funzionalità, tra le quali: ● istanze grandi fino a 10GB ● replicazione geografica sincrona ● prompt SQL nella Google APIs Console ● interfaccia testuale di interazione col database ● Compatibilità Python e Java ● supporto a mysqldump 5/18
  • 7. Google Cloud SQL Limitazioni C’è però anche qualche limitazione, come ad esempio: ● dimensione istanze pari a massimo 10GB ● funzioni definite dallo sviluppatore non supportate ● MySQL replication non supportata; ● alcune istruzioni MySQL non sono supportate 6/18
  • 8. Google Cloud SQL Dashboard 7/18
  • 9. Google Cloud SQL Interagire col db Prompt web Script desktop SQuirrel SQL 8/18
  • 10. Google Cloud SQL Sviluppo applicazioni Linguaggi supportati: Java e Python Basta indicare nel codice nome istanza e nome database Modulo o driver si occupano della connessione alla base di dati Java → Plugin per Eclipse Python → Django 9/18
  • 11. Il caso di studio Introduzione Per una generica banca, la decisione in merito all'apertura di una nuova filiale è un problema: ● è necessaria? ● eventualmente, dove farla sorgere? Un possibile criterio di valutazione: disposizione geografica filiali rispetto a clienti 10/18
  • 12. Il caso di studio Database Clienti Filiali 11/18
  • 13. Il caso di studio Approccio classico 12/18
  • 14. Il caso di studio DeSEB 13/18
  • 15. Il caso di studio Approccio classico vs DeSEB 14/18
  • 16. Il caso di studio Approccio classico vs DeSEB 15/18
  • 17. Il caso di studio Cenni sull'implementazione Georefere Javascript HTML CSS Client nziazione Query al JSP Server database Eclipse 3.7 + Google Plugin Firefox 10/11 + GWT Plugin + Firebug OpenJDK 1.6 Google Maps API 3.8 Fedora Linux 16 16/18
  • 18. Conclusioni Riassumendo È stato testato il servizio Google Cloud SQL interfacciamento diretto e creazione di applicazioni È sviluppata un'applicazione per il supporto alle decisioni in ambito bancario usando GAE + GMaps + Google Cloud SQL Si è dimostrato semplice da usare, efficiente ed affidabile 17/18
  • 19. Conclusioni Sviluppi futuri DeSEB è uno strumento integrativo, non sostitutivo   Privatezza dei dati DeSEB è solo un protipo! ● ulteriori funzionalità ● aggiunta di altre informazioni ● integrazione di altri servizi web, sempre in ottica cloud 18/18