SQL Server 2016 AlwaysOn: direct seeding et sauvegardes

Mis en avant

Comme promis dans mon blog précédent, nous allons parler maintenant de direct seeding et des sauvegardes. Nous avons trouvé une valeur intéressante d’état courant (LIMIT_CONCURRENT_BACKUPS) depuis un événement étendu nommé hadr_automatic_seeding_state_transition. Comme expliqué la dernière fois, cette valeur parle d’elle même et c’est pourquoi nous allons essayer d’effectuer une sauvegarde concurrente lorsque la base de données est concernée par une session de seeding active.

> 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

SQL Server 2016 AlwaysOn: groupes de disponibilités distribués

Mis en avant

Cette fois, nous allons parler des groupes de disponibilités distribués. Que sont ils exactement? Pour faire court, on pourrait le définir par un groupe de groupes de disponibilités. Ca sonne bien non? Mais dans quels contextes pourrions nous avoir besoin d’une telle architecture? Premièrement disons que les groupes de disponibilités distribués fonctionneront au dessus de 2 groupes de disponibilités distincts qui résident eux mêmes sur 2 cluster à basculements distincts avec le propre gestion du quorum et de votes …

> Lire la suite (en anglais)

David Barbarin
MVP & MCM SQL Server

SQL Server 2016 AlwaysOn: Ajout de bases de données avec direct seeding

Mis en avant

Dans ce billet, je voudrais vous parler de 2 nouvelles fonctionnalités arrivées avec SQL Server 2016 et les groupes de disponibilités. La première concerne direct seeding (honnêtement je n’ai pas trouvé de traduction pertinente ici) et la deuxième concerne les groupes de disponibilités distribués (DAG). Je parlerais de la deuxième dans un autre billet …

> Lire la suite (en anglais)

David Barbarin
MVP & MCM SQL Server

SQL Server AlwaysOn: Est-ce que ma base de données est prête à basculer?

Mis en avant

Dans ce billet, je voudrais juste clarifier certaines valeurs dans la colonne is_failover_ready de la DMV sys.dm_hadr_database_replica_cluster_states. Il y a quelques jours, j’ai eu une discussion intéressante avec un de mes clients qui m’expliquait qu’il n’était vraiment sûr de l’état d’un de ses groupes de disponibilités après avoir eu quelques soucis …

> Lire la suite (en anglais)

David Barbarin
MVP & MCM SQL Server

Windows Failover Cluster: Introduction à la notion de paxos tag

Mis en avant

Il y a quelques jours, mon collègue Nathan Courtine et moi étions en charge d’une nouvelle implémentation d’une infrastructure AlwaysOn à base de groupes de disponibilités. Une des étapes importantes dans notre approche consiste à éprouver l’architecture en place face à différents simulation de problème qui pourraient potentiellement survenir. Notre matrice de test inclus un scénario de récupération suite à un désastre avec redémarrage en mode quorum forcé.

Redémarrer un cluster à basculement dans un tel mode implique l’exécution de routines internes sur la base de données interne d’un cluster. Cette dernière utilise notamment un algorithme nommé Paxos pour garantir que les changements survenus sur un nÅ“ud soient répliqués de manière atomique sur le reste de membres de la topologie. Qu’est que Paxos exactement? Pour être honnête, j’avais déjà certains enregistrements dans le journal du cluster évoquant ce sujet et je n’avais jamais vraiment pris le temps de regarder plus précisément à quoi cela correspondait …

> Lire la suite (en anglais)

David Barbarin
MVP & MCM SQL Server

Exécution de procédures stockées peuvent échouer avec les index columnstore non cluster

Mis en avant

Dans ce billet, je voudrais parler d’une autre situation un peu étrange au premier coup d’Å“il avec les index columnstore non cluster. Précisions que je suis dans le même contexte que dans ce billet précédant. Pour rappel, il était question de profiter des index columnstore après avoir installé SQL Server 2012 chez un de mes clients. Comme démontré dans le précédant billet, ce type d’implémentation peut engendrer d’autres problématiques and c’est ce que je voudrais vous montrer ici …

> Lire la suite (en anglais)

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