corso database avanzato

Corso avanzato su SQL Server: progettazione e performance

Il corso “Funzionalità avanzate e progettazione su SQL Server” a Torino e Online ti assicurerà di fare un importante salto in avanti in termini di competenze, di acquisire quelle nozioni avanzate che ti faranno emergere nel tuo team di lavoro e di proiettarti nel mondo di progettazione, modellizzazione e architettura di un Database non limitandoti quindi alla sola programmazione SQL.

Durante il corso parleremo di tecniche di progettazione, normalizzazione, indicizzazione, trigger, livelli di isolamento, studio di deadlock, tecniche di query tuning e molto altro.

Particolare attenzione sarà poi rivolta allo studio e alla comprensione dei QEP (Query Execution Plan): strumento di analisi fondamentale per studiare e migliorare le performance di un database.

Per raggiungere questi scopi e presentare i vari argomenti in modo organico, il programma del corso è stato strutturato sui temi dell’esame Microsoft “70-762: Sviluppo di Database SQL”.

 

Il programma del corso “Funzionalità avanzate e progettazione su SQL Server”

In accordo con il programma ufficiale Microsoft, nello specifico nel corso saranno trattati i seguenti argomenti:

Progettazione e implementazione di un database relazionale

  • Progettare tabelle e schemi in base ai requisiti funzionali
  • Tecniche di normalizzazione
  • Analisi dei tipi dato con relativi impatti sulle performance e sulla memoria
  • Progettazione di indici di riga
  • Creazione di indici clustered e non clustered
  • Studio della composizione di un indice cluster
  • Introduzione allo studio dei QEP (Query Execution Plan)
  • Indici covered e filtered
  • Implementazione di indici columnstore
  • Distinzione tra indici columnstore clustered e non clustered
  • Manutenzione di indici rowstore e columnstore
  • Creazione di viste indicizzate e partizionate.

Gestione dei vincoli di integrità dei dati

  • Definizione e comprensione del concetto di Foreign Key
  • Vincoli di tipo check
  • Sintassi SQL per aggiungere vincoli alle tabelle
  • Progettazione di stored procedure in base con relativi parametri di input e output
  • Implementazione di parametri di tipo tabella
  • Gestione degli errori e delle transizione all’interno di una stored procedure
  • Progettazione di trigger
  • Comprensione e sintassi di trigger di tipo Data Manipulation Language (DML), Data Definition Language (DDL) e login
  • Distinzione tra le clausole AFTER o INSTEAD OF relative ai trigger
  • Progettare funzioni con output scalari o tabellari
  • Distinzione tra funzioni deterministiche e non deterministiche.

Gestione della concorrenza

  • Introduzione ai concetti di concorrenza e di transazioni implicite ed esplicite
  • Sintassi Commit/Tran
  • Implementazione di savepoint
  • Tipologie di lock
  • Studio, comprensione e casi di esempio dei diversi livelli di isolamento: Read Uncommitted, Read Committed, Repeatable Read, Serializable e Snapshot
  • Definire i risultati delle query simultanee in base al livello di isolamento
  • Impatto sulle performance dei livelli di isolamento
  • Definizione e studio di deadlock
  • Identificazione di tecniche per superare i deadlock
  • Progettazione di Memory-Optimized Tables e relativi impatti sulle performance e scenari d’uso
  • Creazione di Natively Compiled Stored Procedures.

Statistiche e indici

  • Accuratezza delle statistiche
  • Manutenzione delle statistiche
  • Impatto di statistiche obsolete sui piani di esecuzione
  • Interrogazione delle DMV per reperire informazioni sui piani di esecuzioni, gli indici inutilizzati e i missed indexes
  • Analisi del QEP
  • Studio degli operatori di un QEP
  • Extended events associati ai QEP
  • Abilitazione di SQL Server Query Store
  • Comprendere la differenza tra il QEP stimato e quello effettivo
  • Valutazione del carico di lavoro di SQL Server
  • Ottimizzazione di file group, file name e del Temp Db
  • Interrogazione di DMV per reperire informazioni sull’utilizzo di CPU, memoria e disco

 

Informazioni generale sul corso

Il corso si compone di 16 ore, il costo è di 720€.

Il corso si tiene presso la nostra sede a Torino in Via Moretta 28/a oppure è attivabile in modalità Online con lezioni in diretta, one-to-one tra docente e studente, per garantirti la massima attenzione e personalizzazione dei contenuti.

Il docente del corso è Nicola Iantomasi, qui trovi la pagina del sito con la sua biografia.

Prerequisito del corso è una solida conoscenza delle basi del linguaggio SQL. Se le tematiche del corso ti sembrano troppo avanzate, guarda la scheda del nostro corso introduttivo all’sql e ai database relazionali o del corso intermedio sviluppo e programmazione sul Database Sql Server.

 

Materiale didattico

Il database d’esempio, gli script, gli esercizi con le soluzioni e tutto il materiale didattico saranno consegnati puntualmente alla fine di ogni lezione. Al termine del corso verrà rilasciato un certificato di frequenza con profitto.

 

Un esempio di cosa imparerai: studio delle performance di una query

 

Testimonials

Nicola è un gran formatore, metta la sua competenza al servizio delle persone cercando sempre la migliore soluzione e scalando il lavoro sulle esigenze formative. È attento e aiuta a comprendere e a crescere. Lavorare con lui è sempre un piacere ed uno stimolo a migliorarsi.

Enzo La Rosa
01/09/20

Nicola è stato un insegnate fantastico Nicola è stato un insegnate fantastico, mi ha aiutato a finire la tesi spiegandomi degli argomenti fondamentali e fornendomi tutti gli strumenti per ultimarla nel migliore dei modi. Lo consiglio al 100%.

Giulia C
21/06/20

Nicola è una persona preparatissima e professionale. Spiega in modo semplice ed efficace. Ho terminato un corso SQL ed ora ne sto facendo uno di Excel avanzato. Lo consiglio, promosso a pieni voti!!

Marco Osella
01/12/19

Umanamente e professionalmente uno dei migliori insegnanti che abbia mai incontrato nella mia carriera da studente universitario. Con questo ti voglio ringraziare per il tuo prezioso aiuto.

Salvatore Maltisotto
01/11/19
Torna su