Groupes de disponibilités AlwaysOn and problème de statistique sur les secondaires

Mis en avant

Je voudrais partager avec vous un problème intéressant de statistiques que vous pouvez rencontrer avec les réplicas en lecture seule dans une infrastructure de groupe de disponibilités. Pour ceux qui les utilisent pour des besoins de Reporting, continuez la lecture de ce billet car il s’agit d’un problème de comportement de mise à jour de statistiques sur ceux-ci pouvant impliquer un problème d’estimation de cardinalités pouvant avoir de graves conséquences sur les performances de vos requêtes.

> Lire la suite (en anglais)

David Barbarin
MVP & MCM SQL Server

Partitionnement: Lorsqu’un mouvement de données n’est pas réalisée comme attendue

Mis en avant

Dans ce billet, il est question d’un cas de partitionnement intéressant avec un comportement curieux de mouvement de données (du moins à première vue). J’étais chez mon client qui utilise de manière intensive le partitionnement pour diverses raisons incluant l’archivage et la facilité de gestion. Il y a quelques jours, nous avons décidé de tester un script fraîchement développé qui prendra en charge l’archivage des partitions sur un environnement de qualité.

> Lire la suite (en anglais)

David Barbarin
MVP & MCM SQL Server

SQL Server 2016: TRUNCATE PARTITIONS et scénarios Sliding Window

Mis en avant

Il y a quelques temps, j’ai eu à gérer un scénario de partitionnement incluant une gestion sliding Window pour principalement des besoins d’archivage. Concernant le contexte client, j’ai utilisé des scripts de gestion automatique composée d’une étape de suppression de la partition la plus ancienne. Dans ce contexte précis, les données au delà de 2 ans peuvent être supprimées et généralement dans ce cas, j’utilise une méthode consistant à supprimer les données en les déplaçant depuis la partition la plus ancienne vers une table de staging. Ensuite je les supprime en utilisant la commande TRUNCATE. Finalement, nous pouvons à ce moment précis fusionner en tout sécurité les données de la partition la plus ancienne en évitant un quelconque mouvement de données. Au premier coup d’œil, le processus semble complexe mais jusqu’à la version 2014, il n’y avait pas de meilleur choix pour minimiser l’enregistrement des opérations dans le journal.

> Lire la suite (en anglais)

David Barbarin
MVP & MCM SQL Server

Lorsqu’une recherche d’index n’est pas forcément adéquate

Mis en avant

N’avez-vous jamais considéré une recherche d’index comme un problème? Laissez moi vous raconter une histoire avec un de mes clients avec un contexte simple: une requête spécifique qui n’était pas dans les valeurs acceptables de performance exigées (environ 200ms de temps d’exécution moyen). Le plan d’exécution associé de la requête était similaire à ce que vous pouvez voir ici

> Lire la suite (en anglais)

David Barbarin
MVP & MCM SQL Server

SQL Server AlwaysOn: amélioration de diagnostique avec les nouveaux services packs – Part II

Mis en avant

Dans mon précédent blog, j’ai abordé une première partie des améliorations livrés avec les SP2 (SQL2014) et SP3 (SQL2012). Dans ce billet, je parlais des améliorations concernant la détection et le diagnostique de latence de réplication de groupes de disponibilités. Pour rappel, la latence de réplication entre différents réplicas peut être surveiller de différentes manières jusqu’à présent.

> Lire la suite (en anglais)

David Barbarin
MVP & MCM SQL Server

SQL Server 2016 AlwaysOn: Direct seeding et performance

Mis en avant

Ce billet fait suite à celui-ci concernant l’introduction de direct seeding avec SQL Server 2016. Pour rappel, j’avais quelques doutes concernant l’utilisation de direct seeding avec les bases de données volumineuses parce que le flux de données n’était pas compressée par défaut mais c’était sans me rappeler des améliorations de performances décrites dans la BOL. Je me suis également rappelé d’en avoir parlé il y a quelques mois maintenant dans ce billet.

> Lire la suite (en anglais)

David Barbarin
MVP & MCM SQL Server

SQL Saturday 510 – Locks, latches et spinlocks – Les slides

Mis en avant

Cette année les gens ont encore répondu présent au SQLSaturday à Paris qui devenu incontournable pour ceux qui aiment échanger autour de la donnée avec les produits Microsoft. Par ailleurs, le temps a plutôt été au rendez-vous cette année et la vue depuis le 40ème étage de la tour Montparnasse est toujours aussi impressionnante.

Pour ma part, j’ai eu le plaisir d’animer une session en fin de journée sur la concurrence d’accès mais vu depuis SQL Server avec 3 principaux mécanismes utilisés comme les locks, latches et spinlocks.

> Lire la suite

David Barbarin
MVP & MCM SQL Server

Switch partition et inconsistance de métadonnées

Mis en avant

Dans ce billet, je voudrais partager un bien étrange problème auquel j’ai été confronté lors d’une implémentation de partition en mode sliding Windows avec SQL Server 2014 SP1.
Pour situer rapidement le contexte, l’idée était de pouvoir stocker pendant 2 ans les enregistrements d’audit de plusieurs instances SQL Server dans une table d’archive globale. Les données au delà de 2 ans devaient être supprimées. Sur la base d’une première implémentation, nous avons estimé une taille globale de 800GB par année …

> Lire la suite (en anglais)

David Barbarin
MVP & MCM SQL Server

Columnstore index rebuild cannot start

Mis en avant

Il y a quelques semaines,j’étais en charge de migrer une infrastructure Datawarehouse sur une version plus récente de SQL Server (passage de 2005 à 2012). Après discussion avec le client nous avons décidé de profiter des nouvelles fonctionnalités offertes par 2012 et en particulier des index columnstore qui pouvaient potentiellement améliorer les performances de Reporting dans le contexte présent …

> Lire la suite (en anglais)

David Barbarin
MVP & MCM SQL Server

Renouvellement MVP et prochain événement SQLSaturday à Paris

Mis en avant

1er avril 2016, renouvellement MVP Data Plateform effectué (et pas de poisson d’avril). Une bonne nouvelle pour moi et un grand merci à Microsoft et à la communauté SQL Server.

L’histoire continue donc et je voudrais partager avec vous les prochaines sessions que j’aurais l’occasion d’animer à ce prochain événement qui se déroulera les 25 et 26 avril 2016.

> Lire la suite (anglais)

David Barbarin
MVP & MCM SQL Server