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 consulente IT eccezionale! Nicola è stato per me una guida eccezionale. Fin da subito è riuscito a spiegarmi concetti e ad introdurmi nozioni di basi di dati in modo fluido, chiaro, lineare e diretto. Sono contenta di essermi rivolta ad un professionista come Nicola che, non solo è oltremodo preparato nelle materie che insegna, ma che soprattutto mette passione e trasporto nel suo lavoro. Tutto ciò è risultato molto positivo, perchè grazie a lui ho acquisito in pochissimo tempo la capacità per poter proseguire nelle mie pratiche autonomamente e con successo. Ho avuto piena fiducia in Nicola fin dal primo minuto, e questo per me è rassicurante perchè, ogni qualvolta avrò la necessità di ricevere consulenze informatiche, so che posso contare su Nicola. Lo raccomando pienamente al 100%! Non esitate a contattarlo!!

Roberta Diamanti
17/01/21

Ho trovato davvero un professionista… Ho trovato davvero un professionista che si è dedicato a me ed al mio obiettivo. Nicola, oltre ad essere molto competente in materia, si è dedicato molto a capire e poi applicare il metodo giusto per trasmettere i concetti nel modo migliore (quando ero in difficoltà si fermava sempre, più tempo del dovuto, a spiegare in maniera diversa pur di farmi capire veramente).Pochissimi adattano il loro metodo di insegnamento allo studente, Nicola è uno di questi.Mi sono trovata benissimo ed ho consigliato la scuola a diversi miei amici e colleghi.Continuate così!Grazie ancora Nicola.

Jessica
22/11/20

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