SQL o NoSQL? Progettare applicazioni 'Big Data-ready' attraverso l'utilizzo della "Polyglot Persistence"

Mongo DB
18 aprile 2017
Sviluppo applicazioni Big Data con Scala e Spark
18 aprile 2017
Big Data

SQL o NoSQL?

Progettare applicazioni 'Big Data-ready' attraverso l'utilizzo della "Polyglot Persistence"

In ambito database, non esistono approcci in grado di garantire contemporaneamente prestazioni, disponibilità e congruenza. Iscriviti a questo corso se vuoi conoscere un approccio semplice per la progettazione di applicazioni che utilizzano una molteplicità di tecnologie per lo storage dei dati (RDBMS, NoSQL, DFS, etc.), realizzando un’unica interfaccia esterna per l’accesso agli stessi.

 

Prerequisiti

Questo corso è pensato sia per i software architect che per gli sviluppatori che vogliano approfondire le proprie conoscenze riguardo la progettazione e l’implementazione di architetture software scalabili in grado di gestire elevate quantità di dati.

Il partecipante dovrebbe avere una certa dimestichezza nella creazione e nel deploy di applicazioni distribuite, la connessione ad un database, l’interrogazione di basi di dati di tipo relazionale, l’utilizzo di strumenti di build automation, configuration management ed una buona conoscenza della linea di comando dei sistemi operativi Unix-like.

 

 

Obiettivi formativi

Al termine del corso il partecipante sarà in grado di:

  • Comprendere la differenza tra un RDBMS ed un database NoSQL
  • Conoscere le differenze tra le varie tipologie di database NoSQL
  • Utilizzare la tipologia di database NoSQL più appropriata in base ai requisiti del progetto
  • Comprendere i concetti di scalabilità orizzontale ed alta affidabilità di un sistema distribuito
  • Conoscere la definizione di Big Data comprese le tecniche e gli strumenti per poterli gestire
  • Conoscere, utilizzare e integrare i prodotti più diffusi sul mercato per la corretta gestione delle varie tipologie di dati

 

 

 

Programma

  • Introduzione e breve storia dei database
  • Il modello relazionale e l’approccio SQL
  • Oltre il modello relazionale: tipologie di database NoSQL
  • Key-value data store
  • Document-oriented database
  • L’approccio graph-oriented
  • Google Big Table e database di tipo colonnare
  • Definizione di Big Data
  • Introduzione al framework Hadoop ed agli strumenti del suo ecosistema
  • L’approccio ORM, OGM ed i suoi limiti
  • Martin Fowler’s Polyglot persistence
  • Casi di successo: analisi delle architetture dei “Big” come Google, Facebook, Twitter, Amazon
  • Esempi di utilizzo in contesti reali
  • Domande e risposte