SQL Saturday 510 Paris 2016 - Query Store session - final
-
Upload
philippe-geiger -
Category
Data & Analytics
-
view
290 -
download
1
Transcript of SQL Saturday 510 Paris 2016 - Query Store session - final
SQLSaturday Paris 2016
Query Store ou comment donner de la mémoire à sa base de données
Sarah BessardPhilippe Geiger
SQLSaturday Paris 2016
Query Store : son fonctionnement
Query Store
Exécution
Compilation Stockage des plans
Statistiques des
exécutions
Schéma Query Store
SQL
Écriture asynchrone
En mémoire
Messagesde compilation
Messages d’exécution
SQLSaturday Paris 2016
Query Store : comment ça marche ?
Activer Query Store
Query Store collecte les données
Focus sur les requêtes « problématiques » et
correction
SQLSaturday Paris 2016
Query Store : ses DMV
sys.query_store_query_textCapture des instructions SQL.
sys.query_context_settingsDifférentes combinaisons d’exécution avec les paramètres utilisés (options SET pouvant influencer les plans, etc.)
sys.query_store_queryCorrespondance entre les instructions SQL et le contexte d’exécution
sys.query_store_planInformations relatives aux plans SQL Server utilisées à l’exécution des requêtes.
sys.query_store_runtime_stats_intervalIntervalles de temps créées par le Query Store.
sys.query_store_runtime_statsStatistiques des plans d’exécution des requêtes pour intervalles de temps.
SQLSaturday Paris 2016
Query Store : ses procédures stockées
sys.fn_stmt_sql_handle_from_sql_stmt
sp_query_store_flush_db
sp_query_store_force_plan
sp_query_store_remove_plan
sp_query_store_remove_query
sp_query_store_reset_exec_stats
sp_query_store_unforce_plan
SQLSaturday Paris 2016
Les origines d’invalidation d’un plan :
- Changement structure (ex : suppression d’une colonne)
- Modification d’un index
- Statistiques obsolètes
- Changement du contexte d’exécution (SET)
- Recompile
- xxxxxxxxx
SQLSaturday Paris 2016
Query Store : en cas de la migration
Mettre à jour vers SQL Server 2016 (mode de compatibilité inchangé)
Activer Query Store et capturer les plans
Mettre le mode de compatibilité à 130
Utiliser Query Store pour forcer rapidement les anciens plans d’exécution pour toutes les
régressions
SQLSaturday Paris 2016
Query Store : contexte des démos à suivre
Base Test Test Test TestMode de compatibilité 100 100 100 130Optimisation Aucune Aucune Active Active
SQL Trace Profiler Replay
4SQL Trace
Profiler Replay
5SQL Trace Profiler Replay
3
Activation du Query Store
21
SQLSaturday Paris 2016
Query Store : intervenir en cas de régression
1. Identifier la requête problématique2. Forcer le plan3. Comparer les plans et analyser les différences4. Chercher et tester une solution pérenne5. L’appliquer6. Supprimer le plan forcé
SQLSaturday Paris 2016
Query Store : d’autres cas d’usage
Corriger des régressions de plans
Identifier les requêtes les plus consommatrices de ressources Tester A/B
Réduire le risque en cas de mise à jour ou de maintenance
Améliorer les cas de charge ad hoc
Correctif
Proactif
SQLSaturday Paris 2016
Sarah Bessard
http://www.dcube.frhttp://www.concatskills.com
SQLSaturday Paris 2016
Philippe GEIGER
Blogwww.pgeiger.net
Data PlatformSolution Consultant
Accompagnement technique• Exploitation et administration• Développement• Business Intelligence
Formateur
Certifications
Intégration SIBusiness Intelligence
CRMCollaboratif
SQLSaturday Paris 2016
Query Store : Quelques références
https://msdn.microsoft.com/en-us/library/cc645993.aspx
https://azure.microsoft.com/fr-fr/documentation/articles/sql-database-query-performance/
https://www.mssqltips.com/sqlservertip/4095/sql-server-2016-compare-showplan-option/
SQLSaturday Paris 2016
Et en plus vous pouvez gagner des cadeaux !
Donnez votre avis sur les sessions :
http://GUSS.pro/sqlsat