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

Les 24 heures du PASS (24HOP) – édition francophone

Mis en avant

24hour_pass

Cette année a eu lieu la première édition francophone des 24h du PASS (les 20 et 21 septembre 2016). L’idée était plutôt simple: proposer une série de 24 webinaires gratuits de 10h jusqu’à 22h (heure française) pendant 2 jours. C’était l’occasion de recevoir et d’échanger les dernières informations autour de l’administration et du développement des bases de données, des nouvelles tendances côté Business Intelligence et du Cloud.

Pour ma part, c’est avec plaisir que j’ai eu l’occasion d’échanger avec vous autour de 2 sujets: tempdb et bonnes pratiques ainsi que des columnstore et leur implication dans les nouvelles tendances d’architecture BI avec Thoi Dung TSP Microsoft Switzerland.

C’est encore l’occasion de remercier les sponsors et Isabelle sans qui ce type d’événement n’aurait certainement pas eu lieu.

Les slides et démos devraient arriver sous peu!

David Barbarin
MVP & MCM SQL Server

SQL Server 2016 : Les groupes de disponibilités basiques peuvent aussi correspondre à vos besoins HA

Mis en avant

Dans ce billet, attardons nous un moment sur les groupes disponibilités 2016 en édition standard. J’ai eu quelques questions clients sur l’existence de limitations concernant cette édition and c’est une bonne occasion de les revoir ici. Premièrement, ces limitations ont été documenté par Microsoft dans la BOL et de mon côté, j’avais déjà écrit un billet à ce sujet au moment des versions CTP. Entre temps, certains changements sont apparus et sont maintenant inclus dans la version finale RTM.

> Lire la suite (en anglais)

David Barbarin
MVP & MCM SQL Server

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 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