[PASS SUMMIT 2013] Best Practices of Optimizing SQL Server with Solid State Disk

Speaker : Patrick O’keeffe – Software Architect, Dell Software & Richard Douglas – Sytems Consultant, Dell Software

Niveau de la session : 300

Agenda :

  • Brief History of Magnetic Disk
  • Solid State Disk Technology
  • SSD Internals
  • SQL server buffer pool  flash cache architecture
  • Performance comparisons
  • Recommendations & Suggestions

Historique :

  • Evolution du matériel et des performances (avec du recul l’évolution est impressionnante)
  • Loi de Moore (encore lui !) mais pas dans les composants mécaniques (limites physiques)
  • Evolution des tendances en I/O des disques de 2001 à 2009 (graphique)
  • SSD to the rescue (seek time comparison graphique)
  • Consommation électrique en watt (graphique)
  • Coût SSD (graphique coût par IOP et GB) et historique des coûts (graphique de 2000 à aujourd’hui : le coût décroit par GB)

Recommendation : Consider a tiered storage approach

SSD technlology et SSD internals :

  • Présentation des différents types de SSD (en terme de hiérarchie de stockage, écriture, endurance du support et performance)
  • Flash SSD : le moins cher
  • Comparaison PCIe vs SATA
  • Il y a une dégradation des performances d’écriture qui est fonction du taux de remplissage du support : recommandation = être au plus à 25% du taux de remplissage sur les supports SSD pour conserver les performances correctes : pas économique L
  • La session poursuit en décrivant le processus d’un data update sur SSD et du garbage collector

Présentation de l’architecture des buffer de cache spécifique à SQL 2014 :

  • Extension de buffer : c’est na nouveauté propre aux support SSD
  • On la configure dans SQL server 2014 via la clause ALTER SERVER CONFIGURATION (SET BUFFER POOL EXTENSION ONFILE NAME = …) : retour d’expérience : warm up lent (penser en heures !) sur la CTP1 de SQL 2014
  • Pour le monitoring il existe une DMV et des compteurs de performance spécifiques (select * from sys.dm_os_buffer_pool_extension_configuration et select * from sys.dm_os_performance_counters where object_name like ‘%Buffer Manager%’ and counter_name like ‘%extension%’

(pour d’autres DMV c.f. le site de Microsoft et http://www.brentozar.com/archive/2013/06/new-dmvs-in-sql-server-2014-ctp1/)

Performance :

  • Présentation des scénarios de test sur du SQL 2012… et des graphiques de résultats
  • On reparle de la dégradation de la performance en écriture liée au garbage collector : moins le cas pour sql server et sur les disques SSD récents
  • La session aborde aussi la présence de tri dans la temp_db sur du support ssd puis des logs (red/write) sur du flash SSD (attention : tester avec des workload différents)
  • Présentation des scénarios de test sur du SQL 2014… et des graphiques de résultats
  • Conclusion des tests sur 2014 : un peu tôt notamment pas vu d’amélioration sur l’écriture = ils testeront sur la CTP2 (par contre mettrez au moins les données les plus utilisées dans cette extension de buffer flash de  2014), risque de plomber le system disque d’I/O si on desactive l’extension de buffer ( ?!)

Recommandations :

  • N’attendez pas (speaker de DELL ?) que les prix des supports SSD baissent : les disques ssd sont moins cher si on raisonne en IO et plus si on raisonne en GB
  • Considérer une stratégie matérielle mixte (HD classique et SSD) : SSD là où il y a la plus forte contention sur les données
  • Les SSD Flash fonctionnent bien : les utiliser en cas de lecture instance pour les données et pour la tempdb
  • Les drive SAS sont 66 fois plus lents que les SSD pour du seek
  • LES SSD (en PCIe) font 280 fois plus de IOPs
  • Si vous voulez avoir les mêmes IOP sur du SAS que sur 1 SSD en PCIe

Conclusion :

Session abordable (pour les DBA et les préconisations de matériel) , c’est toujours bien d’apprendre qu’il faudra utiliser des clauses supplémentaire liées au support physique de stockage (c’est pas automatique).

Pour les best practices SQL sur du SSD (à priori) : peu d’infos en fin de compte.

Pascal Rouzé

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s