SlideShare una empresa de Scribd logo
1 de 25
#JSS2014
Les journées
SQL Server 2014
Un événement organisé par GUSS
#JSS2014
Les journées
SQL Server 2014
Un événement organisé par GUSS
Performance: Les fausses bonnes idées
#JSS2014
Merci à nos sponsors
#JSS2014
Présentation
Leader SGBD reconnu en France
www.capdata.fr
 Conseil
 Service
 Formation
 DBA à distance
Management d’infrastructures IT hétérogènes
www.osmozium.com
 Support Management
 Technical Management
 Data Management
 Production Management
#sqlhelp
http://blog.capdata.fr
http://www.youtube.com/user/CapdataTV/
Benjamin Vesan
bvesan@capdata-osmozium.com
@captain_BV
#JSS2014
• Fausse bonne idée ?
• Démo Variables Tables
• Démo CXPACKET
• Démo Missing Indexes
• Démo ASYNC_NETWORK_IO
• Démo Requêtes Lentes
Agenda
#JSS2014
• Appliquer une résolution empirique
• Suivre les conseils d’une source externe (blog, forum).
Fausse bonne idée ?
#JSS2014
• SQL Server, c’est au moins 7 versions, sur plus de vingt ans.
• Le moteur a considérablement évolué, certaines faiblesses et lacunes
d’anciennes versions n’existent plus, et les solutions historiques de résolution
des problèmes de performance peuvent ne plus être pertinentes.
Mythes et idées ayant la vie dure 1/4
#JSS2014
Beaucoup d’informations incorrectes sont suivies
• Articles anciens devenus obsolètes
• Confusion lorsque des experts ont des avis opposés (et conflictuels)
• Règle du Net: « Nombre d’apparitions fait loi »
Mythes et idées ayant la vie dure 2/4
#JSS2014
Les nouvelles fonctionnalités d’une version de SQL Server ont donné lieu à des
fantasmes, potentiellement devenues solutions universelles aux problèmes de
performances.
Exemples:
• ColumnStore Index
• Snapshot Isolation
Mythes et idées ayant la vie dure 3/4
#JSS2014
SQL Server n’est pas implémenté comme d’autres moteurs. Les préconisations
concernant d’autres moteurs peuvent ne pas être pertinentes pour SQL Server.
Exemples:
• Concurrence d’accès
• Escalade de verrous
• Gestion du parallélisme
• Fragmentation
• …
Mythes et idées ayant la vie dure 4/4
#JSS2014
• Ne pas analyser la cause exacte d’un problème, c’est risquer de passer à côté
de la cause racine, et de ne pas résoudre le problème.
• Appliquer une solution empirique, c’est risquer d’aggraver le problème.
Empirique VS Analytique
#JSS2014
Effet Démo
Ordinateur portable
+
Machine Virtuelle
+
Disques SSD
+
Forte sollicitation
Des ressources
+
Scénarios particuliers
=
#JSS2014
Démo
Cas concret : Variables Tables
#JSS2014
• Ce ne sont pas des tables en mémoire
• Pas de Statistiques
• Pas adaptées à une grosse volumétrie
• Tables Hekaton à partir de 2014 (Enterprise Edition)
Cas concret : Variables Tables
#JSS2014
Démo
Cas concret : CXPACKET
#JSS2014
Fausse bonne idée:
• Max Degree Of Parallelism à 1
Attitude correcte:
• Comprendre les raisons du CXPACKET, et les requêtes en cause
• Utiliser les leviers Cost threshold for Parallelism et OPTION (MAXDOP)
• Regarder la contention CPU associée
Cas concret : CXPACKET
#JSS2014
Démo
Cas concret : ASYNC_NETWORK_IO
#JSS2014
Fausse bonne idée:
• Blâmer l’infrastructure réseau et ne rien faire en base !
Attitude correcte:
• Identifier le ou les traitements victimes de cette attente,
• Comprendre le fonctionnement du DataReader, et voir comment adapter le
traitement.
Cas concret : ASYNC_NETWORK_IO
#JSS2014
Démo
Cas concret : Missing Indexes
#JSS2014
Fausse bonne idée:
• Suivre sans recul les recommandations du Missing Indexes.
Pourquoi ?
• Le MI ne sait pas ordonner la liste des colonnes
• Il ne tient pas compte de l’impact sur l’activité transactionnelle sur la table
• Il n’ira jamais aussi loin que la (rapide) analyse fonctionnelle de la requête.
Cas concret : Missing Indexes
#JSS2014
Démo
Cas concret : Slow Queries
#JSS2014
Fausse bonne idée:
• Faire l’amalgame entre requêtes lourdes/lentes et requêtes qui contribuent à
la charge sur l’instance.
• Se limiter à Activity Monitor pour le suivi de performances
Attitude correcte:
• Revenir aux tâches en attente, et en cours d’exécution.
Cas concret : Slow Queries
#JSS2014
• Méfiez-vous des conseils empiriques
• Préférez les approches scientifiques: Théorie, Tests, Validation
• Restez conscient de la portée d’une modification
– Niveau instance: tous les traitements
– Niveau objet: tous les traitements liés
– Niveau requête: concurrence à l’exécution
• Utilisez les outils de diagnostic intégrés à SQL Server: DMVs et DMF
 Session de Christophe Laporte
Conclusion
#JSS2014#JSS2014
#JSS2014#JSS2014
Les évaluations des sessions, c’est important !!
…Et en plus on peut gagner des cadeaux
http://GUSS.Pro/jss

Más contenido relacionado

Similar a JSS2014 – Performances et fausses bonnes idées

Toutes les raisons d'adopter MongoDB
Toutes les raisons d'adopter MongoDBToutes les raisons d'adopter MongoDB
Toutes les raisons d'adopter MongoDBContent Square
 
Agile Data Warehousing - 7 pillars - Procima Experts
Agile Data Warehousing - 7 pillars - Procima ExpertsAgile Data Warehousing - 7 pillars - Procima Experts
Agile Data Warehousing - 7 pillars - Procima ExpertsMarc-Eric LaRocque
 
JSS2014 - Big Data et Real Time
JSS2014 - Big Data et Real TimeJSS2014 - Big Data et Real Time
JSS2014 - Big Data et Real TimeGUSS
 
Cloud et BI, quelle architecture pour 2014 ?
Cloud et BI, quelle architecture pour 2014 ?Cloud et BI, quelle architecture pour 2014 ?
Cloud et BI, quelle architecture pour 2014 ?Jean-Pierre Riehl
 
Cloud et BI, quelle architecture pour 2014 ?
Cloud et BI, quelle architecture pour 2014 ?Cloud et BI, quelle architecture pour 2014 ?
Cloud et BI, quelle architecture pour 2014 ?Jean-Pierre Riehl
 
JSS2014 – Cloud et BI, quelle architecture pour 2014 ?
JSS2014 – Cloud et BI, quelle architecture pour 2014 ?JSS2014 – Cloud et BI, quelle architecture pour 2014 ?
JSS2014 – Cloud et BI, quelle architecture pour 2014 ?GUSS
 
Haute disponibilité et Reprise sur Incident en SharePoint 2013 Journées SQL S...
Haute disponibilité et Reprise sur Incident en SharePoint 2013 Journées SQL S...Haute disponibilité et Reprise sur Incident en SharePoint 2013 Journées SQL S...
Haute disponibilité et Reprise sur Incident en SharePoint 2013 Journées SQL S...serge luca
 
[JSS2015] x events
[JSS2015] x events[JSS2015] x events
[JSS2015] x eventsGUSS
 
Big Data & Real Time #JSS2014
Big Data & Real Time #JSS2014Big Data & Real Time #JSS2014
Big Data & Real Time #JSS2014Romain Casteres
 
SPS Paris2015 SharePoint, Scrum, Agilité, Frugalité
SPS Paris2015   SharePoint, Scrum, Agilité, FrugalitéSPS Paris2015   SharePoint, Scrum, Agilité, Frugalité
SPS Paris2015 SharePoint, Scrum, Agilité, FrugalitéSébastien Paulet
 
SQL Server : Tuning et Troubleshooting
SQL Server : Tuning et TroubleshootingSQL Server : Tuning et Troubleshooting
SQL Server : Tuning et TroubleshootingMicrosoft
 
JSS2015 - Keynote jour 1
JSS2015 - Keynote jour 1JSS2015 - Keynote jour 1
JSS2015 - Keynote jour 1GUSS
 
SPS Dakar 2018 - Low code, lean et agilité - Sébastien Paulet
SPS Dakar 2018 - Low code, lean et agilité - Sébastien PauletSPS Dakar 2018 - Low code, lean et agilité - Sébastien Paulet
SPS Dakar 2018 - Low code, lean et agilité - Sébastien PauletaOS Community
 
Low code, lean et agilité sur les projets SHarePoint - SPS Dakar
Low code, lean et agilité sur les projets SHarePoint - SPS DakarLow code, lean et agilité sur les projets SHarePoint - SPS Dakar
Low code, lean et agilité sur les projets SHarePoint - SPS DakarSébastien Paulet
 
SQL Server et les développeurs
SQL Server et les développeurs SQL Server et les développeurs
SQL Server et les développeurs Microsoft
 
JSS2014 – Performances et DMV
JSS2014 – Performances et DMVJSS2014 – Performances et DMV
JSS2014 – Performances et DMVGUSS
 
Jss2014 performance counters and dmvs
Jss2014   performance counters and dmvsJss2014   performance counters and dmvs
Jss2014 performance counters and dmvsChristophe Laporte
 
[JSS2015] - Document db et nosql
[JSS2015] - Document db et nosql[JSS2015] - Document db et nosql
[JSS2015] - Document db et nosqlGUSS
 

Similar a JSS2014 – Performances et fausses bonnes idées (20)

Lunch learn 5 sep2013
Lunch learn 5 sep2013Lunch learn 5 sep2013
Lunch learn 5 sep2013
 
Toutes les raisons d'adopter MongoDB
Toutes les raisons d'adopter MongoDBToutes les raisons d'adopter MongoDB
Toutes les raisons d'adopter MongoDB
 
Agile Data Warehousing - 7 pillars - Procima Experts
Agile Data Warehousing - 7 pillars - Procima ExpertsAgile Data Warehousing - 7 pillars - Procima Experts
Agile Data Warehousing - 7 pillars - Procima Experts
 
JSS2014 - Big Data et Real Time
JSS2014 - Big Data et Real TimeJSS2014 - Big Data et Real Time
JSS2014 - Big Data et Real Time
 
Cloud et BI, quelle architecture pour 2014 ?
Cloud et BI, quelle architecture pour 2014 ?Cloud et BI, quelle architecture pour 2014 ?
Cloud et BI, quelle architecture pour 2014 ?
 
Cloud et BI, quelle architecture pour 2014 ?
Cloud et BI, quelle architecture pour 2014 ?Cloud et BI, quelle architecture pour 2014 ?
Cloud et BI, quelle architecture pour 2014 ?
 
JSS2014 – Cloud et BI, quelle architecture pour 2014 ?
JSS2014 – Cloud et BI, quelle architecture pour 2014 ?JSS2014 – Cloud et BI, quelle architecture pour 2014 ?
JSS2014 – Cloud et BI, quelle architecture pour 2014 ?
 
Haute disponibilité et Reprise sur Incident en SharePoint 2013 Journées SQL S...
Haute disponibilité et Reprise sur Incident en SharePoint 2013 Journées SQL S...Haute disponibilité et Reprise sur Incident en SharePoint 2013 Journées SQL S...
Haute disponibilité et Reprise sur Incident en SharePoint 2013 Journées SQL S...
 
[JSS2015] x events
[JSS2015] x events[JSS2015] x events
[JSS2015] x events
 
Big Data & Real Time #JSS2014
Big Data & Real Time #JSS2014Big Data & Real Time #JSS2014
Big Data & Real Time #JSS2014
 
SPS Paris2015 SharePoint, Scrum, Agilité, Frugalité
SPS Paris2015   SharePoint, Scrum, Agilité, FrugalitéSPS Paris2015   SharePoint, Scrum, Agilité, Frugalité
SPS Paris2015 SharePoint, Scrum, Agilité, Frugalité
 
SQL Server : Tuning et Troubleshooting
SQL Server : Tuning et TroubleshootingSQL Server : Tuning et Troubleshooting
SQL Server : Tuning et Troubleshooting
 
JSS2015 - Keynote jour 1
JSS2015 - Keynote jour 1JSS2015 - Keynote jour 1
JSS2015 - Keynote jour 1
 
SPS Dakar 2018 - Low code, lean et agilité - Sébastien Paulet
SPS Dakar 2018 - Low code, lean et agilité - Sébastien PauletSPS Dakar 2018 - Low code, lean et agilité - Sébastien Paulet
SPS Dakar 2018 - Low code, lean et agilité - Sébastien Paulet
 
Low code, lean et agilité sur les projets SHarePoint - SPS Dakar
Low code, lean et agilité sur les projets SHarePoint - SPS DakarLow code, lean et agilité sur les projets SHarePoint - SPS Dakar
Low code, lean et agilité sur les projets SHarePoint - SPS Dakar
 
SQL Server et les développeurs
SQL Server et les développeurs SQL Server et les développeurs
SQL Server et les développeurs
 
JSS2014 – Performances et DMV
JSS2014 – Performances et DMVJSS2014 – Performances et DMV
JSS2014 – Performances et DMV
 
Jss2014 performance counters and dmvs
Jss2014   performance counters and dmvsJss2014   performance counters and dmvs
Jss2014 performance counters and dmvs
 
Formation kanban
Formation kanbanFormation kanban
Formation kanban
 
[JSS2015] - Document db et nosql
[JSS2015] - Document db et nosql[JSS2015] - Document db et nosql
[JSS2015] - Document db et nosql
 

Más de GUSS

GUSS - Les IO dans SQL Server (en partenariat avec DataCore)
GUSS - Les IO dans SQL Server (en partenariat avec DataCore)GUSS - Les IO dans SQL Server (en partenariat avec DataCore)
GUSS - Les IO dans SQL Server (en partenariat avec DataCore)GUSS
 
Bots & Cognitive Intelligence (Meetup GUSS & AZUG FR)
Bots & Cognitive Intelligence (Meetup GUSS & AZUG FR)Bots & Cognitive Intelligence (Meetup GUSS & AZUG FR)
Bots & Cognitive Intelligence (Meetup GUSS & AZUG FR)GUSS
 
JSS2015 - Machine Learning like a boss
JSS2015 - Machine Learning like a bossJSS2015 - Machine Learning like a boss
JSS2015 - Machine Learning like a bossGUSS
 
GUSS - CRITEO Meetup Scale SQL for the Web
GUSS - CRITEO Meetup Scale SQL for the WebGUSS - CRITEO Meetup Scale SQL for the Web
GUSS - CRITEO Meetup Scale SQL for the WebGUSS
 
JSS2015 - Keynote jour 2
JSS2015 - Keynote jour 2JSS2015 - Keynote jour 2
JSS2015 - Keynote jour 2GUSS
 
[JSS2015] Azure SQL Data Warehouse - Azure Data Lake
[JSS2015] Azure SQL Data Warehouse - Azure Data Lake[JSS2015] Azure SQL Data Warehouse - Azure Data Lake
[JSS2015] Azure SQL Data Warehouse - Azure Data LakeGUSS
 
[JSS2015] Power BI Dev
[JSS2015] Power BI Dev[JSS2015] Power BI Dev
[JSS2015] Power BI DevGUSS
 
[JSS2015] Nouveautés SQL Server 2016:Sécurité,Temporal & Stretch Tables
[JSS2015] Nouveautés SQL Server 2016:Sécurité,Temporal & Stretch Tables[JSS2015] Nouveautés SQL Server 2016:Sécurité,Temporal & Stretch Tables
[JSS2015] Nouveautés SQL Server 2016:Sécurité,Temporal & Stretch TablesGUSS
 
[JSS2015] Query Store
[JSS2015] Query Store[JSS2015] Query Store
[JSS2015] Query StoreGUSS
 
[JSS2015] 3 DMV's pour evaluer les indexs
[JSS2015] 3 DMV's pour evaluer les indexs[JSS2015] 3 DMV's pour evaluer les indexs
[JSS2015] 3 DMV's pour evaluer les indexsGUSS
 
[JSS2015] Power BI: Nouveautés archi et hybrides
[JSS2015] Power BI: Nouveautés archi et hybrides[JSS2015] Power BI: Nouveautés archi et hybrides
[JSS2015] Power BI: Nouveautés archi et hybridesGUSS
 
[JSS2015] Infra bi#4 - le scale out
[JSS2015] Infra bi#4 - le scale out[JSS2015] Infra bi#4 - le scale out
[JSS2015] Infra bi#4 - le scale outGUSS
 
[JSS2015] In memory and operational analytics
[JSS2015] In memory and operational analytics[JSS2015] In memory and operational analytics
[JSS2015] In memory and operational analyticsGUSS
 
[JSS2015] Eradiction des deadlocks
[JSS2015] Eradiction des deadlocks[JSS2015] Eradiction des deadlocks
[JSS2015] Eradiction des deadlocksGUSS
 
[JSS2015] Architectures Lambda avec Azure Stream Analytics
[JSS2015] Architectures Lambda avec Azure Stream Analytics [JSS2015] Architectures Lambda avec Azure Stream Analytics
[JSS2015] Architectures Lambda avec Azure Stream Analytics GUSS
 
[JSS2015] - Azure automation
[JSS2015] - Azure automation[JSS2015] - Azure automation
[JSS2015] - Azure automationGUSS
 
[JSS2015] AlwaysOn 2016
[JSS2015] AlwaysOn 2016[JSS2015] AlwaysOn 2016
[JSS2015] AlwaysOn 2016GUSS
 
[JSS2015] Nouveautés SSIS SSRS 2016
[JSS2015] Nouveautés SSIS SSRS 2016[JSS2015] Nouveautés SSIS SSRS 2016
[JSS2015] Nouveautés SSIS SSRS 2016GUSS
 
JSS2014 – Hive ou la convergence entre datawarehouse et Big Data
JSS2014 – Hive ou la convergence entre datawarehouse et Big DataJSS2014 – Hive ou la convergence entre datawarehouse et Big Data
JSS2014 – Hive ou la convergence entre datawarehouse et Big DataGUSS
 
JSS2014 – Infrastructure et Always-On
JSS2014 – Infrastructure et Always-OnJSS2014 – Infrastructure et Always-On
JSS2014 – Infrastructure et Always-OnGUSS
 

Más de GUSS (20)

GUSS - Les IO dans SQL Server (en partenariat avec DataCore)
GUSS - Les IO dans SQL Server (en partenariat avec DataCore)GUSS - Les IO dans SQL Server (en partenariat avec DataCore)
GUSS - Les IO dans SQL Server (en partenariat avec DataCore)
 
Bots & Cognitive Intelligence (Meetup GUSS & AZUG FR)
Bots & Cognitive Intelligence (Meetup GUSS & AZUG FR)Bots & Cognitive Intelligence (Meetup GUSS & AZUG FR)
Bots & Cognitive Intelligence (Meetup GUSS & AZUG FR)
 
JSS2015 - Machine Learning like a boss
JSS2015 - Machine Learning like a bossJSS2015 - Machine Learning like a boss
JSS2015 - Machine Learning like a boss
 
GUSS - CRITEO Meetup Scale SQL for the Web
GUSS - CRITEO Meetup Scale SQL for the WebGUSS - CRITEO Meetup Scale SQL for the Web
GUSS - CRITEO Meetup Scale SQL for the Web
 
JSS2015 - Keynote jour 2
JSS2015 - Keynote jour 2JSS2015 - Keynote jour 2
JSS2015 - Keynote jour 2
 
[JSS2015] Azure SQL Data Warehouse - Azure Data Lake
[JSS2015] Azure SQL Data Warehouse - Azure Data Lake[JSS2015] Azure SQL Data Warehouse - Azure Data Lake
[JSS2015] Azure SQL Data Warehouse - Azure Data Lake
 
[JSS2015] Power BI Dev
[JSS2015] Power BI Dev[JSS2015] Power BI Dev
[JSS2015] Power BI Dev
 
[JSS2015] Nouveautés SQL Server 2016:Sécurité,Temporal & Stretch Tables
[JSS2015] Nouveautés SQL Server 2016:Sécurité,Temporal & Stretch Tables[JSS2015] Nouveautés SQL Server 2016:Sécurité,Temporal & Stretch Tables
[JSS2015] Nouveautés SQL Server 2016:Sécurité,Temporal & Stretch Tables
 
[JSS2015] Query Store
[JSS2015] Query Store[JSS2015] Query Store
[JSS2015] Query Store
 
[JSS2015] 3 DMV's pour evaluer les indexs
[JSS2015] 3 DMV's pour evaluer les indexs[JSS2015] 3 DMV's pour evaluer les indexs
[JSS2015] 3 DMV's pour evaluer les indexs
 
[JSS2015] Power BI: Nouveautés archi et hybrides
[JSS2015] Power BI: Nouveautés archi et hybrides[JSS2015] Power BI: Nouveautés archi et hybrides
[JSS2015] Power BI: Nouveautés archi et hybrides
 
[JSS2015] Infra bi#4 - le scale out
[JSS2015] Infra bi#4 - le scale out[JSS2015] Infra bi#4 - le scale out
[JSS2015] Infra bi#4 - le scale out
 
[JSS2015] In memory and operational analytics
[JSS2015] In memory and operational analytics[JSS2015] In memory and operational analytics
[JSS2015] In memory and operational analytics
 
[JSS2015] Eradiction des deadlocks
[JSS2015] Eradiction des deadlocks[JSS2015] Eradiction des deadlocks
[JSS2015] Eradiction des deadlocks
 
[JSS2015] Architectures Lambda avec Azure Stream Analytics
[JSS2015] Architectures Lambda avec Azure Stream Analytics [JSS2015] Architectures Lambda avec Azure Stream Analytics
[JSS2015] Architectures Lambda avec Azure Stream Analytics
 
[JSS2015] - Azure automation
[JSS2015] - Azure automation[JSS2015] - Azure automation
[JSS2015] - Azure automation
 
[JSS2015] AlwaysOn 2016
[JSS2015] AlwaysOn 2016[JSS2015] AlwaysOn 2016
[JSS2015] AlwaysOn 2016
 
[JSS2015] Nouveautés SSIS SSRS 2016
[JSS2015] Nouveautés SSIS SSRS 2016[JSS2015] Nouveautés SSIS SSRS 2016
[JSS2015] Nouveautés SSIS SSRS 2016
 
JSS2014 – Hive ou la convergence entre datawarehouse et Big Data
JSS2014 – Hive ou la convergence entre datawarehouse et Big DataJSS2014 – Hive ou la convergence entre datawarehouse et Big Data
JSS2014 – Hive ou la convergence entre datawarehouse et Big Data
 
JSS2014 – Infrastructure et Always-On
JSS2014 – Infrastructure et Always-OnJSS2014 – Infrastructure et Always-On
JSS2014 – Infrastructure et Always-On
 

Último

Le contrôle de la recherche d'emploi en 2023
Le contrôle de la recherche d'emploi en 2023Le contrôle de la recherche d'emploi en 2023
Le contrôle de la recherche d'emploi en 2023France Travail
 
Bidirectional Encoder Representations from Transformers
Bidirectional Encoder Representations from TransformersBidirectional Encoder Representations from Transformers
Bidirectional Encoder Representations from Transformersbahija babzine
 
analyse husseindey AMIROUCHE Abdeslem.pptx
analyse husseindey AMIROUCHE Abdeslem.pptxanalyse husseindey AMIROUCHE Abdeslem.pptx
analyse husseindey AMIROUCHE Abdeslem.pptxHadJer61
 
ELABE BFMTV L'Opinion en direct - Les Français et les 100 jours de Gabriel Attal
ELABE BFMTV L'Opinion en direct - Les Français et les 100 jours de Gabriel AttalELABE BFMTV L'Opinion en direct - Les Français et les 100 jours de Gabriel Attal
ELABE BFMTV L'Opinion en direct - Les Français et les 100 jours de Gabriel Attalcontact Elabe
 
Montant moyen du droit d'allocation chômage versé aux demandeurs d'emploi ind...
Montant moyen du droit d'allocation chômage versé aux demandeurs d'emploi ind...Montant moyen du droit d'allocation chômage versé aux demandeurs d'emploi ind...
Montant moyen du droit d'allocation chômage versé aux demandeurs d'emploi ind...France Travail
 
To_understand_transformers_together presentation
To_understand_transformers_together presentationTo_understand_transformers_together presentation
To_understand_transformers_together presentationbahija babzine
 

Último (6)

Le contrôle de la recherche d'emploi en 2023
Le contrôle de la recherche d'emploi en 2023Le contrôle de la recherche d'emploi en 2023
Le contrôle de la recherche d'emploi en 2023
 
Bidirectional Encoder Representations from Transformers
Bidirectional Encoder Representations from TransformersBidirectional Encoder Representations from Transformers
Bidirectional Encoder Representations from Transformers
 
analyse husseindey AMIROUCHE Abdeslem.pptx
analyse husseindey AMIROUCHE Abdeslem.pptxanalyse husseindey AMIROUCHE Abdeslem.pptx
analyse husseindey AMIROUCHE Abdeslem.pptx
 
ELABE BFMTV L'Opinion en direct - Les Français et les 100 jours de Gabriel Attal
ELABE BFMTV L'Opinion en direct - Les Français et les 100 jours de Gabriel AttalELABE BFMTV L'Opinion en direct - Les Français et les 100 jours de Gabriel Attal
ELABE BFMTV L'Opinion en direct - Les Français et les 100 jours de Gabriel Attal
 
Montant moyen du droit d'allocation chômage versé aux demandeurs d'emploi ind...
Montant moyen du droit d'allocation chômage versé aux demandeurs d'emploi ind...Montant moyen du droit d'allocation chômage versé aux demandeurs d'emploi ind...
Montant moyen du droit d'allocation chômage versé aux demandeurs d'emploi ind...
 
To_understand_transformers_together presentation
To_understand_transformers_together presentationTo_understand_transformers_together presentation
To_understand_transformers_together presentation
 

JSS2014 – Performances et fausses bonnes idées

  • 1. #JSS2014 Les journées SQL Server 2014 Un événement organisé par GUSS
  • 2. #JSS2014 Les journées SQL Server 2014 Un événement organisé par GUSS Performance: Les fausses bonnes idées
  • 4. #JSS2014 Présentation Leader SGBD reconnu en France www.capdata.fr  Conseil  Service  Formation  DBA à distance Management d’infrastructures IT hétérogènes www.osmozium.com  Support Management  Technical Management  Data Management  Production Management #sqlhelp http://blog.capdata.fr http://www.youtube.com/user/CapdataTV/ Benjamin Vesan bvesan@capdata-osmozium.com @captain_BV
  • 5. #JSS2014 • Fausse bonne idée ? • Démo Variables Tables • Démo CXPACKET • Démo Missing Indexes • Démo ASYNC_NETWORK_IO • Démo Requêtes Lentes Agenda
  • 6. #JSS2014 • Appliquer une résolution empirique • Suivre les conseils d’une source externe (blog, forum). Fausse bonne idée ?
  • 7. #JSS2014 • SQL Server, c’est au moins 7 versions, sur plus de vingt ans. • Le moteur a considérablement évolué, certaines faiblesses et lacunes d’anciennes versions n’existent plus, et les solutions historiques de résolution des problèmes de performance peuvent ne plus être pertinentes. Mythes et idées ayant la vie dure 1/4
  • 8. #JSS2014 Beaucoup d’informations incorrectes sont suivies • Articles anciens devenus obsolètes • Confusion lorsque des experts ont des avis opposés (et conflictuels) • Règle du Net: « Nombre d’apparitions fait loi » Mythes et idées ayant la vie dure 2/4
  • 9. #JSS2014 Les nouvelles fonctionnalités d’une version de SQL Server ont donné lieu à des fantasmes, potentiellement devenues solutions universelles aux problèmes de performances. Exemples: • ColumnStore Index • Snapshot Isolation Mythes et idées ayant la vie dure 3/4
  • 10. #JSS2014 SQL Server n’est pas implémenté comme d’autres moteurs. Les préconisations concernant d’autres moteurs peuvent ne pas être pertinentes pour SQL Server. Exemples: • Concurrence d’accès • Escalade de verrous • Gestion du parallélisme • Fragmentation • … Mythes et idées ayant la vie dure 4/4
  • 11. #JSS2014 • Ne pas analyser la cause exacte d’un problème, c’est risquer de passer à côté de la cause racine, et de ne pas résoudre le problème. • Appliquer une solution empirique, c’est risquer d’aggraver le problème. Empirique VS Analytique
  • 12. #JSS2014 Effet Démo Ordinateur portable + Machine Virtuelle + Disques SSD + Forte sollicitation Des ressources + Scénarios particuliers =
  • 13. #JSS2014 Démo Cas concret : Variables Tables
  • 14. #JSS2014 • Ce ne sont pas des tables en mémoire • Pas de Statistiques • Pas adaptées à une grosse volumétrie • Tables Hekaton à partir de 2014 (Enterprise Edition) Cas concret : Variables Tables
  • 16. #JSS2014 Fausse bonne idée: • Max Degree Of Parallelism à 1 Attitude correcte: • Comprendre les raisons du CXPACKET, et les requêtes en cause • Utiliser les leviers Cost threshold for Parallelism et OPTION (MAXDOP) • Regarder la contention CPU associée Cas concret : CXPACKET
  • 17. #JSS2014 Démo Cas concret : ASYNC_NETWORK_IO
  • 18. #JSS2014 Fausse bonne idée: • Blâmer l’infrastructure réseau et ne rien faire en base ! Attitude correcte: • Identifier le ou les traitements victimes de cette attente, • Comprendre le fonctionnement du DataReader, et voir comment adapter le traitement. Cas concret : ASYNC_NETWORK_IO
  • 19. #JSS2014 Démo Cas concret : Missing Indexes
  • 20. #JSS2014 Fausse bonne idée: • Suivre sans recul les recommandations du Missing Indexes. Pourquoi ? • Le MI ne sait pas ordonner la liste des colonnes • Il ne tient pas compte de l’impact sur l’activité transactionnelle sur la table • Il n’ira jamais aussi loin que la (rapide) analyse fonctionnelle de la requête. Cas concret : Missing Indexes
  • 22. #JSS2014 Fausse bonne idée: • Faire l’amalgame entre requêtes lourdes/lentes et requêtes qui contribuent à la charge sur l’instance. • Se limiter à Activity Monitor pour le suivi de performances Attitude correcte: • Revenir aux tâches en attente, et en cours d’exécution. Cas concret : Slow Queries
  • 23. #JSS2014 • Méfiez-vous des conseils empiriques • Préférez les approches scientifiques: Théorie, Tests, Validation • Restez conscient de la portée d’une modification – Niveau instance: tous les traitements – Niveau objet: tous les traitements liés – Niveau requête: concurrence à l’exécution • Utilisez les outils de diagnostic intégrés à SQL Server: DMVs et DMF  Session de Christophe Laporte Conclusion
  • 25. #JSS2014#JSS2014 Les évaluations des sessions, c’est important !! …Et en plus on peut gagner des cadeaux http://GUSS.Pro/jss

Notas del editor

  1. « Small queries on one core, Big queries on multiple cores ». IL NE FAUT PAS CHERCHER A FAIRE DISPARAITRE COMPLETEMENT CXPACKET !!!
  2. Exemple simple de RBAR avec un gros SELECT lancé depuis Management Studio en local. Observation des attentes liées: ASYNC_NETWORK_IO. Exemple avec un petit programme en C qui consomme les lignes les unes après les autres. Même programme lancé en consommant les lignes par lot, et l’attente disparaît.
  3. On parlait des speakers, il y a une chose qui leur tient à cœur !