NoSQL: Tecnologie e Problematiche

Al giorno d’oggi sono generate enormi quantità di dati eterogenei aventi strutture non sempre riconducibili a formati “relazionali”. La moda è di memorizzare questi dati su Hadoop. Tale soluzione, però, non è sempre la più indicata per motivi di complessità dell’architettura, pesantezza delle componenti e difficoltà di scrittura delle analytics. I database NoSQL, non necessariamente legati al mondo dei BigData, se utilizzati per elaborare determinati tipi di informazioni consentono di implementare soluzioni più agili rispetto ad un file system distribuito e di implementare query molto performanti. Questo seminario, dopo aver descritto le principali tipologie di database NoSQL, vuole mostrare, mediante la descrizione di esempi pratici, le funzionalità dei principali prodotti, i campi di applicazione e i relativi vantaggi e svantaggi.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Introduzione:

  • principali tipologie di dati
  • Small Data e Big Data
  • classificazione dei DBMS (OldSQL, NewSQL, NoSQL) e principali differenze
  • cosa sono i database NoSQL
  • principali caratteristiche
  • il teorema CAP
  • classificazione dei database NoSQL

Database chiave-valore:

  • dizionari e hash table
  • principali funzionalità
  • data modelling
  • modelli e pattern architetturali
  • campi di applicazione
  • principali database chiave-valore (Redis, BigTable,…)
  • esempi pratici di utilizzo

Database documentali:

  • cosa si intende per “document”
  • struttura gerarchica
  • collezioni di document
  • principali funzionalità
  • data modelling
  • modelli e pattern architetturali
  • campi di applicazione
  • principali database documentali (MongoDB, CouchDB, CouchBase,…)
  • esempi pratici di utilizzo

Database colonnari o orientati alle tabelle:

  • tabelle estese (indice di riga, colonna e temporale)
  • column family e super column family
  • tabelle nidificate; principali funzionalità
  • data modelling
  • modelli e pattern architetturali
  • campi di applicazione
  • principali database colonnari (Cassandra, Hbase, ,…)
  • esempi pratici di utilizzo

Database a grafo: 

  • strutture reticolari, ad albero e a grafo
  • tipologie di elaborazione su modelli a grafo
  • principali funzionalità
  • data modelling
  • modelli e pattern architetturali
  • campi di applicazione
  • principali database a grafo (Neo4J, OrientDB…)
  • esempi pratici di utilizzo

Database ad Oggetti:

  • cosa si intende con oggetto
  • il paradigma object oriented
  • principali funzionalità
  • data modelling
  • modelli e pattern architetturali
  • campi di applicazione
  • principali database object-oriented (Redis, BigTable,…)
  • esempi pratici di utilizzo

Database Multivariate:

quando il DBMS implementa più modelli

Database NoSQL Specializzati:

  • suite di ricerca: SOLR e Elasticsearch
  • Blockchain

NoSQL e Hadoop:

  • database NoSQL nativi per Hadoop
  • integrazione fra Hadoop e NoSQL: trarre il meglio dai due mondi

Integrazione con i sistemi aziendali esistenti:

  • architetture di integrazione
  • forward e reverse engineering
  • conversione da e verso RDBMS
  • strumenti utilizzabili (Es. ErWin)

Problematiche di sicurezza e privacy:

  • principali problematiche di sicurezza e privacy dei database NoSQL
  • policy di accesso; cifratura delle informazioni
  • strumenti di sicurezza forniti

Governance:

  • principali problematiche relative alla governance
  • catalogo dei metadati
  • ruoli e figure professionali
  • lineage

Casi di studio ed esempi pratici.

Durata

3 giorni

 

Destinatari

  • capi progetto
  • analisti
  • progettisti
  • sviluppatori
  • chiunque voglia approfondire il funzionamento dei database NoSQL

 

Prerequisiti

Conoscenze base sul funzionamento di Internet e delle applicazioni distribuite.

 

Requisiti per l'aula

Il rispetto dei seguenti requisiti è indispensabile per la corretta erogazione del corso:

  • videoproiettore con risoluzione nativa minima di 1024x768 (meglio se superiore) funzionante
  • connessione ad internet non filtrata per il portatile del docente
  • lavagna a fogli mobili o a secco con pennarelli di diversi colori (o strumenti equivalenti)

NOTA: Il docente utilizzerà un suo portatile (Mac) sul quale sono stati preinstallati gli esempi da mostrare durante l'esposizione. Nel caso in cui non sia possibile l'utilizzo del portatile del docente (es. per problemi di sicurezza nella connessione alla rete aziendale) e sia necessario utilizzare un PC fornito dal cliente, questo deve essere concordato in precedenza e comporterà un addebito extra per l'installazione e la configurazione degli esempi.

Non è prevista un'edizione pubblica per questo corso

Perché un corso in house?

Il corso può essere tenuto "in house" presso il cliente con i seguenti vantaggi:

  • con un numero di 4-5 partecipanti, il corso "in house" è più conveniente rispetto al corso pubblico (maggiore è il numero dei partecipanti, maggiore è il risparmio)
  • il corso può essere personalizzato a seconda delle esigenze del cliente (da concordare prima dell'erogazione)
  • è possibile calare la discussione degli argomenti sulla realtà aziendale del cliente (da concordare prima dell'erogazione)
  • è possibile modificare la durata del corso rispetto a quella standard (meno giorni per avere solo una panoramica, più giorni per un maggiore approfondimento)
  • è possibile eseguire test di verifica sull'apprendimento ed esercitazioni pratiche costruite ad hoc

 

Come richiedere un corso in house

Un corso in house può essere richiesto direttamente a:

Tecnet Dati s.r.l.

Corso Svizzera 185 10149 - Torino

Tel. +39 011 7718090

Fax. +39 011 7718092

mail: info@tecnetdati.it

mail area formazione: formazione@tecnetdati.com

 

Ulteriori informazioni

Per ulteriori informazioni sull'erogazione di corsi in house vedi la pagina ufficiale di Tecnet Dati