Vue d’ensemble des fonctionnalités d’administration de SQL Server 2005

Slides:



Advertisements
Présentations similaires
Active Directory Windows 2003 Server
Advertisements

Les technologies décisionnelles et le portail
Module 5 : Implémentation de l'impression
CLIENT/SERVEUR SQL SERVER 7
Le système de gestion et d’analyse des données de nouvelle génération
Découverte de SQL Server par la pratique pour les administrateurs expérimentés Module 2 : Bases de données partie 2 : Fichiers, Journalisation.
Découverte de SQL Server par la pratique pour les administrateurs expérimentés Module 3 : Le serveur Patrick Guimonet Architecte Infrastructure Division.
Découverte de SQL Server par la pratique pour les administrateurs expérimentés Module 6 : Protection des données Bertrand Audras Microsoft Technology Center.
« Les Mercredis du développement » Introduction Office « 12 » Présenté par Bernard Fedotoff Microsoft Regional Director Agilcom.
Comment Protéger les bases SQL avec System Center Data Protection Manager 2007.
Base de donn é es et D é cisionnel avec SQL Server 2005 Patrick Guimonet.
Nouveautés pour les développeurs Office System Scott Burmester Responsable des programmes PSPS.
19 septembre 2006 Tendances Logicielles IBM Rational Data Architect Un outil complet de modélisation et de conception pour SGBD Isabelle Claverie-Berge.
Personnalisation des sites SharePoint avec SharePoint Designer 2007
Directeur de Thèse : Pr. Witold Litwin
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
Active Directory Windows 2003 Server
Retour sur l'allocation d'espace Exemple sur une table facture (sans les tables associées) N° fact, N° Client, N° Cde, date Cde, date fact, date réglement,
Module 1 : Préparation de l'administration d'un serveur
Amélioration de la sécurité des données à l'aide de SQL Server 2005
Administration de SharePoint
Serveurs Partagés Oracle
Gérard Gasganias Ingénieur Avant-Vente Microsoft France
Initiation aux bases de données et à la programmation événementielle
sauvegarde de base de données
Configuration de Windows Server 2008 Active Directory
Gestion des bases de données
Services fournis par le SI et technologies associées
BitDefender Enterprise Manager. BitDefender Enterprise Manager – protection centralisée pour votre réseau Principales fonctions Fonctions spéciales (WMI)
F Copyright © Oracle Corporation, Tous droits réservés. Créer des programmes avec Procedure Builder.
EPID-CPI-ISAIP Philippe Bancquart - mise à jour 24/02/ page 1 Procédures stockées CPI-SQLServer.
Présentation 1. Consumer/Soho Small BusinessMidsize Business CorporateEnterprise Windows Home Server 1-4 employés 1-4 PCs 1-4 employés 1-4 PCs 5-49 employés.
Patrick Guimonet Architecte Infrastructure Microsoft France.
VI. Analyse des solutions techniques
Module 8 : Maintenance des logiciels à l'aide des services SUS
Module 3 : Création d'un domaine Windows 2000
22 Web Platform Installer pour faciliter la mise en œuvre de votre plateforme Web 9 Février 2010 Alban OlierLaurent Bonnet
Le moteur SQL Server 2008 R2 par l'exemple (DAT304)
SQL Server 2005 pour les développeurs Raphaël Bijiaoui Consultant Avanade
EPID-CPI-ISAIP Philippe Bancquart - mise à jour 24/02/ page 1 Gestion des transactions SQLServer.
Protéger Exchange avec System Center Data Protection Manager 2007
Gérer la sécurité des mots de passe et les ressources
Module 8 : Surveillance des performances de SQL Server
Cours n°4M2. ESCE (S. Sidhom) Séminaire ( 6-12 Février 2007 ) Promo. M2 ESCE-Tunis 2006/07 Conception d’un système d'information sur Internet Architecture.
Plan Définitions et exemples Composants de cluster
Objectifs A la fin de ce chapitre, vous pourrez : présenter l'utilisation d'opérations de chargement de données par chemin direct décrire l'utilisation.
Combien envisagent d’utiliser SSMA pour migrer : OracleSybaseAccess.
Yonel Grusson 1 SQL SERVER 2000 CLIENT/SERVEUR. Yonel Grusson 2 PLAN Présentation Installation Résultat de l'installation L'administration –Par le SQL.
Erreurs commises couramment dans le domaine de la sécurité 1.Sensibilisation aux questions de sécurité 2.Suivi des incidents 3.Gestion déficiente des.
La sécurité dans SQL Server 2005
Les utilisateurs potentiels : Les administrateurs de bases de données, Les développeurs, Le support et les opérations, Les architectes, Les analystes.
Module 9 : Transfert de données. Vue d'ensemble Présentation du transfert de données Outils d'importation et d'exportation de données disponibles dans.
Offre DataCenter & Virtualisation Laurent Bonnet, Architecte Systèmes Alain Le Hegarat, Responsable Marketing 24 Novembre 2009.
9h30 Bienvenue ! 9h45 Les bénéfices de SQL Server pour les Editeurs Philippe Rodriguez, Directeur Division Serveur - Microsoft France Franck Sidi, Architecte.
Ceci est une session expert Cette session est déconseillée aux novices des moteurs Analysis Services 2000 ou 2005 La session « Découverte de Analysis.
FTP : File Transfer Protocol (protocole de transfert de fichier ) est un protocole de communication destiné à l'échange informatique de fichiers sur.
Améliorer la performance des organisations en apportant à toutes les équipes la meilleure compréhension de leur activité pour des décisions plus rapides.
Module 3 : Création d'un domaine Windows 2000
XML fortement adopté en tant que format indépendant d’échange de données. Utilisation de XML pour la modélisation de données structurées et non structurées.
Le Langage SQL Introduction. 2 Historique du Langage SQL E. F. CODD : premiers articles dans les années 70 IBM crée le langage SEQUEL (Structured English.
Module 1 : Vue d'ensemble de Microsoft SQL Server
Initiation à Oracle Server
Cours n°4M1.ist-ie (S. Sidhom) UE 203 Promo. M1 IST-IE 2006/07 Conception d’un système d'information sur Internet Architecture trois-tiers : technologies.
Les vues Une vue: c’est une relation virtuelle. Définie par:
Les bases de données Séance 8 Jointures.
Module 3 : Gestion des fichiers de base de données
Gestion des documents internes avec SQL Server 2005 Date de publication : janvier 2006.
Analyse, élaboration et exploitation d’une Base de Données
Installation du PGI – CEGID
1 Les bases de données Séance 5 -- Le Langage de Définition de Données ou la manœuvre de la structure de la base -- Le Langage de Manœuvre de Données.
Transcription de la présentation:

Vue d’ensemble des fonctionnalités d’administration de SQL Server 2005 patricg@microsoft.com Architecte Infrastructure

Agenda Généralités La migration La sécurité L’administration au quotidien La gestion des données La haute disponibilité Les architectures distribuées Améliorations pour les développeurs Composants de la partie décisionnelle

Une version majeure SQL Server 7.0 SQL Server 2000 2ème Génération Performance, montée en charge Support du XML Intégration des services de Notification, de Reporting et de Data Mining Réécriture du moteur relationnel Gestion automatisée des ressources Intégration des services OLAP et ETL 2ème Génération SQL Server 2005 Haute disponibilité Sécurité Intégration CLR XML Natif Nouveau moteur ETL d’entreprise 64 bits IA-32 et x64 3ème Génération 1ere Génération SQL Server 6.0/6.5 Différentiation de Sybase SQL Server Intégration à Windows Intégration de la Réplication Une version majeure avec de très nombreuses nouveautés Valeur de l’offre Gestion automatique Performance et Sécurité Intégration du Décisionnel Objectifs long terme :

Une offre globale Derrière une boite et vendu comme un seul produit se cachent une offre globale, complète, cohérente

Une offre adaptée à vos besoins Nouveauté SQL Server 2005 Une offre adaptée à vos besoins Express Workgroup Standard Enterprise La base de données pour les petites entités et les activités en croissance La plate-forme complète pour la gestion et l’analyse des données destinée aux entités moyennes à grandes La plate-forme intégrée pour la gestion et l’analyse de données des applications critiques de l’entreprise Adaptée aux développeurs pour apprendre, construire et déployer 1 Proc 1 Go mémoire 4 Go base Outil d’administration simplifié Sécurité intégrée Support XML & Améliorations T-SQL Intégration .Net & CLR Serveur de rapports Import/Export Client Réplication 2 Proc 3 Go mémoire Outil d’administration Management Studio SQL Agent Assistant d’optimisation Recherche en texte intégral Serveur de Réplication limité Transfert journaux (Log shipping) 4 Proc versions 32 & 64-bit Miroir de BD limité Cluster 2 noeuds Integration Services (ETL) Analysis Services (Serveur OLAP) Data Mining Réplication complète Notification Services Pas de limitation + Partitionnement Miroir BD complet & Cluster 8 nœuds Opérations en ligne et redémarrage rapide Clichés BD Outils avancés (ETL, OLAP et Data Mining) Serveurs de rapports mutiples La licence par processeur inclut le support de l’HyperThreading et du Multi-core (jusqu’à 3 licences économisées par processeurs s’il est Dual-Core et HT !!!) Toutes les éditions supérieures incluent les fonctionnalités des éditions inférieures… http://www.microsoft.com/sql/2005/productinfo/sql2005features.mspx http://www.microsoft.com/france/sql/sql2005/achetez/versions.mspx Gratuit Prix croissant

Une offre crédible Références 2000 Transactionnel Enregistrement des données de marché Pic de 12 000 Transaction par Seconde Internet Auction Co., Ltd (Korea ) SGBDR et moteur OLAP Volumétrie : 2,7To Transaction par seconde : 3 600 CRM SGBDR pour Siebel Nb d’utilisateurs: 8 000 Siebel eService Volumétrie: 1 To SAN ERP Utilisation de SQL comme BDD pour SAP Volumétrie : 1 To+, 5 To Stockage Nb d’utilisateurs : 2000 concurrents Utilisation de SQL Server pour l’appli. de facturation Volumétrie: 5 To & 33 Milliards de lignes & 15 To total Services Web 5 Millions d’images, + 10 Millions de fichiers 99,99 % de disponibilité 20 Serveurs Décisionnel SQL Server 64 bits comme moteur OLAP Volumétrie: 2,5 To & Croissance de 30% / an Coût: réduct. 70% / Perf multipliées par 4 Des références significatives Attention : références SQL Server 2000 !!!

Le marché des SGBD en 2004 SQL Server domine sur Windows +18%* +18%* Non-mainframe DB ($5.4B) Growth & Shares 2004 Oracle 43% SQL Server 26% IBM 20% Other 11% Non-mainframe DB ($5.4B) Growth & Shares 2004 Oracle 43% SQL Server 26% IBM 20% Other 11% Oracle 42% 2003 SQL Server 24% Other 12% IBM 22% +18%* +15%* +2%* Non-mainframe DB ($6 Bil) By OS Platform SQL Server domine sur Windows +18%* +15%* +2%* Unix/Linux 49% Windows 51% Windows Database Market ($3.1 Bil) IBM a été dépassé en 2003 IBM a été dépassé en 2003 Oracle 42% 2003 SQL Server 24% Other 12% IBM 22% Other 8% Relational Database only, excluding all mainframe (also note that this excludes MS Access which Gartner does not consider to be a “relational” database) Database software new license revenues from Gartner Dataquest annual survey. Latest data available is for calendar year 2003. Data is collected and made public 4-5 months after close of calendar year. Survey measures revenues, because there is no agreement on what DB units Gartner should count (users, devices, servers, processors, megahertz, sites, companies, etc..). This cut of the data removes mainframe database revenues. Non-mainframe database market is commonly cited by IBM and Oracle and is agreed to be a more accurate component of “new license” part of database market. Very few new mainframes are being put in place today for new workloads although some mainframe workloads are still migrating from legacy DBMS to DB2 and DB2 revenues grow as mainframe hardware MHz (MIPS) grows. Windows est la plateforme leader pour les SGBD IBM 16% SQL Server 51% Oracle 25% *Les pourcentages reflètent des augmentations de parts de marché Source: Gartner

Benchmarks TPC-C TPC-H 64P 1P 16P 1 TB 16P 100 GB 3 TB 32P TPC-C results to the left: Dell PowerEdge 2800, 38,028 tpmC, 0.99 $/tpmC, available 11/8/05; IBM eServer xSeries 460 16P c/s, 492,307 tpmC, 6.37 $/tpmC, available 5/20/2006; Unisys ES7000/600 Enterprise Server (16P), 376,045 tpmC, 3.97 $/tpmC, available 1/3/2006; HP Integrity Superdome, 1,231,434 tpmC, 4.91 $/tpmC, available 5/5/06. Results as of 12/5/05. TPC-C 38K tpmC 0.99 $ / tpmC IBM: 492K tpmC Unisys: 3.97 $/tpmC 1.2M tpmC 64P 1P 16P TPC-H results above: HP ProLiant DL585-G1 12,600 QphH@100GB, 9.43 $/QphH@100GB, available 11/7/05; Bull NovaScale 5160, 17,059 QphH@1TB, 25.48 $/QphH@1TB, available 5/5/06; HP Integrity Superdome, 30,956 QphH@3TB, 76.82 $/QphH@3TB, available 5/5/06; NEC Express5800/1320Xe, 28,390 QphH@3TB, 66.52 $/QphH@3TB, available 5/5/06. Results as of 12/5/05. 12,600 QphH 9.43 $/QphH HP: 17,725 QphH Bull: 25.48 $/QphH TPC-H 1 TB 16P 100 GB 3 TB 32P 30,956 QphH Approximate length: 3 minutes Sound bite: Benchmark after benchmark, the Microsoft application platform delivers outstanding performance and value, on the hardware most customers use today, the x64 hardware many will use in the future, on through some of the largest scale-up systems available. Key Points: If you look at our many benchmark results, SQL Server and the Microsoft application platform have scored numerous wins against the competition in price and performance. Our platform has now set new records for value and performance on emerging hardware standards, such as the new generation of x64 4-proc and 16-proc machines For the world’s largest 64-proc scale-up systems our platform has been proven to handle more than a million transactions per minute, more than all the daily stock exchange, credit card and airline reservation transactions in the world added up; more performance and scalability than anyone needs Text: We are continuing our heritage of delivering the best performance and value on the systems the vast majority of you use in your data centers For transactional applications our platform has now also set new records for value and performance on emerging hardware standards, such as the new generation of x64 4-proc and 16-proc machines, and on some of the world’s largest 64-proc scale-up systems our platform has been proven to handle more than 1 million transactions per minute, more than all the daily stock exchange, credit card and airline reservation transactions in the world added up; more performance and scalability than anyone needs This is now also true for data warehousing applications, where our platform has now been proven to provide the best value and performance at the 100GB level, and scaling up to have the best value on 16-proc machines at the 1TB level, and finally best value and performance on 32-proc systems at the 3TB level. Specific TPC results: TPC-C results referenced above are: Dell PowerEdge 2800, 38,028 tpmC, 0.99 $/tpmC, available 11/8/05; IBM eServer xSeries 460 16P c/s, 492,307 tpmC, 6.37 $/tpmC, available 5/20/2006; Unisys ES7000/600 Enterprise Server (16P), 376,045 tpmC, 3.97 $/tpmC, available 1/3/2006; HP Integrity Superdome, 1,231,434 tpmC, 4.91 $/tpmC, available 5/5/06; TPC-H results referenced above are: HP ProLiant DL585-G1 12,600 QphH@100GB, 9.43 $/QphH@100GB, available 11/07/05; Bull NovaScale 5160, 17,059 QphH@1TB, 25.48 $/QphH@1TB, available 5/5/06; HP Integrity rx8640, 17,725 QphH@1TB, 29.63 $/QphH@1TB, available 5/5/06; HP Integrity Superdome, 30,956 QphH@3TB, 76.82 $/QphH@3TB, available 5/5/06; NEC Express5800/1320Xe, 28,390 QphH@3TB, 66.52 $/QphH@3TB, available 5/5/06. Source: Transaction Processing Performance Council – www.tpc.org Results as of 12/5/05.

Administration Développement Décisionnel

Administration La migration Les stratégies possibles : Montée de niveau Migration Les différentes étapes La préparation L’outil « Conseiller de mise à niveau » Migration Vers 2005

Montée de niveau d’une instance Upgrade SQL Server 7.0/2000 Instance: A SQL Server 2005 Instance: A Montée de niveau

Migration SQL Server 7.0/2000 SQL Server 2005 Instance: A Instance: B Compare& Vérifie Vérifiée!

La Planification : le secret de la réussite Une montée de version ou une migration réussie nécessite une planification rigoureuse 3 étapes : Tâches de préparation Montée de niveau ou migration proprement dite Tâches post-opératoires Tester le plan Exécuter le plan

Les différentes étapes de préparation 1°) Sauvegarde des données 2°) Vérification des pré-requis pour SQL Server 2005 3°) Lancer le « Conseiller de mise à niveau » 4°) Régler les problèmes bloquants 5°) Relancer le «  Conseiller de mise à niveau » pour vérifier que les problèmes ont été réglés 6°) Si possible, enregistrer des mesures de performances 7°) Lancer l’installation SQL Server 2005

Rapport du Conseiller de mise à niveau SQL Server Avant la migration ou la mise à niveau Prêt Démo ! Mise à niveau ou Migration Rapport du Conseiller de mise à niveau SQL Server Après la mise à niveau ou la migration Conseiller de mise à niveau SQL Server

Nostalgie … http://www.sqldbatips.com/showarticle.asp?ID=46

Administration Nouveautés pour la sécurité SQL Server Surface Area Configuration / Configuration de la surface d’exposition Séparation utilisateur – schéma Encryption dans la base et gestion des clés Mêmes politiques de mots de passe que Windows Server 2003 Nouveautés 2005

SQL Server Surface Area Configuration Toutes les fonctionnalités présentant un risque potentiel pour la sécurité sont désactivées par défaut Démo !

Séparation Utilisateur-Schéma Chaque schéma est possédé par un rôle ou un utilisateur Chaque utilisateur possède un schéma par défaut pour la résolution des noms Les objets BD appartiennent à un schéma La création d’un objet dans un schéma nécessite les droits CREATE TABLE et La possession du schéma ou ALTER ou CONTROL Base Utilisateur 1 Rôle 2 Rôle1 A comme défaut possède possède possède Schéma1 Schéma2 Schéma3 SP1 F1 Tab1

Le problème… Résolution des noms Table Vue Procédure Fonction Utilisateur 2 Objet SGBD Possédé par Utilisateur 1 Résolution des noms Select * from Foo Utilisateur.foo Dbo.foo Supprimer un utilisateur pouvait nécessiter de modifier l’application !

La solution… Table Vue Procédure Fonction User 2 Possédé par Objet SGBD Possédé par Appartient à Possédé par Schéma User Supprimer un utilisateur NE nécessite PLUS de modifier l’application

Résolution de nom Résolution du nom Schéma par défaut S1. foo Dbo.foo Table Vue Procédure Fonction User 2 Possédé par Appartient à Schéma Résolution du nom Select * from foo S1. foo Dbo.foo Schéma par défaut Utilisateur 1 Utilisateur 2 Schéma par défaut S1 Utilisateur 3

Encryption des données et gestion des clés Possibilité d’encrypter et de décrypter les données via les mécanismes suivants : Certificats Clés symétriques Clés asymétriques Fonctions T-SQL encrypt et decrypt

L’administration au quotidien Des outils optimisés SQL Server Management Studio Plan de maintenance graphiques (utilisation du moteur SSIS) Améliorations au niveau de la sauvegarde / restauration Restauration de fichiers et de pages en ligne Opérations en ligne Protection contre les erreurs (Cliché de BD ou « Snapshot ») clause ATTACH_REBUILD_LOG permet de rattacher une base sans avoir tous les fichiers journaux procédure sp_create_plan_guide permet d’optimiser des requêtes sans modifier le texte de la requête directement (cas d’une application dont on ne peut/veut modifier le source) Paramètre AUTO_UPDATE_STATISTICS_ASYNC permet de recalculer les statistiques de manière asynchrone, sans pénaliser les requêtes Mais aussi : Vues dynamiques (sys.dm_*) clause ATTACH_REBUILD_LOG procédure sp_create_plan_guide paramètre AUTO_UPDATE_STATISTICS_ASYNC fichiers de paramétrage XML pour l’utilitaire bcp Nouveautés 2005

Des outils optimisés Propriétés « Serveur » Démo !

Plans de maintenance graphiques

Opérations en ligne 

Il n’est plus nécessaire de s’arrêter pour… La maintenance des indexes « Online » Create, Rebuild, Reorganize, Drop, Add et drop constraint Opérations complètement parallèles La restauration de pages et de fichiers La base reste accessible Seule les données en cours de restauration sont inaccessibles. On peut toujours les faire « Offline »

Exemple de création d’index en ligne Nouveau SS 2005 Exemple de création d’index en ligne Création d’index CREATE CLUSTERED INDEX myidx ON mytab (a, b, c) WITH ( PAD_INDEX = ON, FILLFACTOR = 75, ONLINE = ON, MAXDOP = 6) ON filegroup1 Reconstruction d’index (était DBCC DBREINDEX) ALTER INDEX myidx ON mytab REBUILD WITH ( ONLINE = ON, MAXDOP = 4 )

Sauvegardes & Restaurations améliorées Nouveau SS 2005 Sauvegardes & Restaurations améliorées Possibilité de faire des sauvegardes sur 2 à 4 périphériques (identiques) en parallèle Possibilité de calculer une somme de contrôle (« checksum ») pour garantir la fiabilité de la sauvegarde RESTORE VERIFY_ONLY, STOP_ON_ERROR et CONTINUE_AFTER_ERROR Restaurations partielles : groupe de fichiers, fichiers, ou page la base reste accessible pendant la restauration tant que l’on accède pas au fichier en question BD Une sauvegarde différentielle faite après un « copy-only backup » ne l’utilisera pas comme référence Svg 1 Svg 2 Copy-Only Backups Permet de faire une sauvegarde complète sans perturber la chaîne des sauvegardes Idéal pour faire une copie de la base de production sans perturber l’exploitation BACKUP DATABASE <dbname> WITH COPY_ONLY

Cliché BD (“DB Snapshot”) Comment ça marche ? Nouveau SS 2005 Cliché BD (“DB Snapshot”) Comment ça marche ? CREATE DATABASE MonSnap AS SNAPSHOT OF MaBase USE MaBase UPDATE (pages 4, 9, 10) MaBase Page 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 2 3 4 4’ 5 6 7 8 9’ 9 10’ 10 11 12 13 14 15 16 USE MonSnap SELECT (pages 4, 6, 9, 10, 14) MonSnap – Cliché en lecture simple Si nécessaire : RESTORE DATABASE MaBase FROM SNAPSHOT MonSnap

Administration La gestion des données Partitionnement

Partitionner ? Données Non Partitionnées Données Partitionnées Quoi? A, B, C, D, E, F, G, H, I, J, K, L Données Non Partitionnées A, B, C D, E, F G, H, I J, K, L Données Partitionnées Quoi? Partitionnement de tables, d’indexes, vues indexées Pourquoi? Grosses tables Ajout/suppression facile de grandes quantités de données (Archivage) Backup/Restore par groupe de fichiers Mieux utiliser des opérateurs parallèles sur des machines avec beaucoup de CPU (16, 32, …) Concurrence d’accès (Lock Escalation) Comment? Partitionnement d’enregistrement (horizontal)

3 étapes A chaque ligne correspond une partition grâce à la « partition function » CREATE PARTITION FUNCTION Part_Fon (int) as RANGE RIGHT FOR VALUES (10, 20, 30) A chaque partition correspond un emplacement physique (Filegroup) grâce au « partition scheme » CREATE PARTITION SCHEME Part_Sche AS PARTITION Part_Fon TO ([Filegroup1], [Filegroup2], [Filegroup3], [Filegroup4]) CREATE TABLE Employees (EmpId int, EmpName varchar(50)) ON Part_Sche (EmpId); Un index utilisant une fonction et une clef de partitionnement similaire à la table est dit « aligné » best practice

Tables & Index partitionnés La clé de partitionnement doit correspondre à une seule colonne Les tables et les index sont créés sur le schéma de partition (au lieu des Filegroups) Le partitionnement est transparent pour les requêtes Des tables et index différents peuvent partager des fonctions et de schémas de partitionnement La création de tables et d’index directement sur les filegroups est bien sûr toujours possible Table ou Index Partition Schéma Fonction 1 n

Comment ajouter ou supprimer des partitions? Permet de traiter le cas typique d’ajout et/ou de suppression d’une partition entière Réalisé à l’aide de 3 opérations simples sur les partitions : Split sépare 1 partition en 2 Merge réunit 2 partitions en 1 Switch échange 1 table et une partition Démo ALTER PARTITION FUNCTION annual_range() SPLIT RANGE (‘2006-01-01’) ALTER TABLE B SWITCH TO A PARTITION 2

Administration La haute disponibilité Miroir de base de données Clustering Log Shipping Réplication Nouveautés 2005

La problématique de la disponibilité… Arrêt du Système Cluster de basculement Base de Données Miroir 2005 Interruptions Non-Planifiées Corruption des Données Transfert de journaux Réplication Base de Données Miroir 2005 Svg/Restauration rapide Restauration jusqu’à un instant donné Cliché Base de données 2005 Erreurs Humaines 2005 Opérations de maintenance des index en ligne Tables partitionnées 2005 Réorganisation des données Opérations de Maintenance 2005 Cluster de basculement Base de Données Miroir Changements liés au système 2005

Redémarrage rapide (« fast recovery ») Nouveau SS 2005 Redémarrage rapide (« fast recovery ») SQL Server 2000 La base est accessible après avoir rejouée les transactions validées et défait les transactions non validées. SQL Server 2005 La base est accessible dès que les transactions validées ont été rejouées. Les pages correspondant à des transactions non validées restent verrouillées jusqu’à ce que les transactions soient défaites. Temps de redémarrage (et de basculement) réduit Refaire (redo) Défaire (undo) Base Accessible temps Défaire (undo) Refaire (redo) Base Accessible

Solutions pour la Haute Disponibilité Communication Granu-larité Basculement Pertes potentielles Miroir de BD TCP endpoints BD Automatique (qq sec) Aucune en synchrone Cluster Base unique Disques partagés Instance Automatique (qq dizaine de sec à qq min) Aucune Transfert des journaux Log Shipping Copie de fichiers et restauration Manuel Transactions depuis la dernière copie Réplication Copie de fichiers et chargement Table 2005 Améliorations 2005 Améliorations 2005

Cluster de basculement (« Failover Cluster ») Un espace disque partagé par plusieurs serveurs, mais un seul serveur y accède à un instant donné Détection d’erreurs & basculement automatique Plusieurs modes : Une SEULE base, une SEULE instance Actif / actif possible avec n instances travaillant sur n bases Fournit un redémarrage à chaud dans un délai de l’ordre de la minute Jusqu’à 50 instances Jusqu’à 8 nœuds (Windows Server 2003 x86) ou 4 nœuds en (Win2003 - IA-64 ou x64) Tous les services sont compatibles–cluster: SQL Server Agent, Analysis Services, Full-Text Search Une seule installation globale Adresse Serveur Virtuel Stockage partagé 2005 Attention Un cluster ne protège pas contre les corruptions, la perte de la baie RAID, les désastres sur un site. Un cluster ne permet d’augmenter la puissance

Cluster distant (ou « Geo Cluster ») Solution mixte : Haute Disponibilité + Protection contre les désastres Bénéfices : Pas de pertes de transactions Pas d’impact sur les performances Une extension naturelle du cluster Contraintes : Complexité (système + SGBD + réplication disques) Distance limitée (qq centaines de km) Adresse Serveur Virtuel Utilisation de cette architecture : Tous les environnements où une disponibilité maximale est requise sur des données critiques

Base de Données Miroir (« Database Mirroring ») 1/2 Nouveau SS 2005 Base de Données Miroir (« Database Mirroring ») 1/2 Témoin Application commit Miroir Principal SQL Server SQL Server Le miroir est toujours en train de rejouer les journaux Journaux Données Journaux Données

Base de Données Miroir (« Database Mirroring ») 2/2 Bénéfices : Pas de pertes de transactions Rapidité du basculement (qq sec) Pas de contraintes sur le matériel Pas de limite de distance Solution simple SGBD uniquement Contraintes : Impact à évaluer sur les performances en fonction du débit transactionnel sur le site primaire → Mode asynchrone possible Témoin Utilisation de cette architecture : Tous les environnements où une disponibilité maximale est requise sur des données critiques

Administration Applications distribuées Service Broker Réplication Web Services Nouveautés 2005

SQL Service Broker SQL Engine SQL Engine APP 1 APP 2 Services et environnement de programmation pour construire des applications réparties fiables asynchrones Apporte une nouvelle infrastructure de communications Dialogues (conversations) bidirectionnelles Livraison fiable vers des queues locales et distantes Exactement une livraison Pas besoin du commit à 2 phases du DTC Préserve l’ordre des messages, même dans des tx séparées Messages volumineux jusqu’à 2 GB – fragmentés Pas de dépendance sur MSMQ The key thing that differentiates the Service Broker from other queuing solutions is that it is built into the database. This has a number of implications: One programming model T-SQL like syntax Common Language Support The messaging part of an application and the data part of an application use the same language and tools in a Service Broker application. This leverages the developer’s familiarity with ADO and other database programming techniques for message-based programming. With the Common Language Runtime stored procedures available in Yukon, stored procedures that implement a Service Broker service can be written in a variety of languages and still take advantage of the common administration benefits of Service Broker. Queues are first class database objects so all the manipulation and management features that other database objects have – DDL, DML, views, extended properties, Meta Data, events, etc. are also available on queues. New DML and DDL statements have been added to TSQL to support messaging and queuing. These statements are parsed and optimize by the same logic as other TSQL statements. The same API’s and tools that you use for database programming (ADO, OLEDB, ADO.Net, etc) are used for messaging and queuing operations. A single connection to the database handles both database and messaging operations. Because messaging and other database operations share the same database connection, transactional messaging doesn’t require two-phase commit. This improves performance and reduces the complexity of transactional messaging. Activation One issue many messaging applications have is that it is difficult to keep the correct number of queue readers running to handle the current message load. The Service Broker has a hook in the transaction commit logic that detects a message being inserted into a queue and if activation is configured on the queue, it will ensure that a queue reader is running to receive the message that just was placed on the queue. Simple backup, recovery and admin Because your message store and you application data store is the same database, you can manage and maintain them together – one backup ensures that both are backed up and always in sync. Supports failover clustering and mirroring!!! service broker is part of the engine, not a separate install, and not a separate service to manage.

Fragmentation des messages SQL Service Broker est conçu pour des messages de très grande taille SSB assure la création de fragments et les réassemble lorsqu’ils arrivent au service destinataire Le service destinataire reçoit ces gros messages comme s’il était d’un seul tenant Cette caractéristique permet de faire passer d’autres messages sans les bloquer La taille maximale est varbinary(MAX) – 2 GB

Architecture Service Broker Niveau applicatif Application Cible Application Initiatrice Niveau logique Dialog Conversation Service Service Niveau physique Queue Queue Transport Transport

Cinématique Service Broker Niveau applicatif Application Cible Application Initiatrice On lit Niveau logique On écrit Transmission asynchrone Dialog Conversation Service Service Démo Niveau physique Queue Queue Transport Transport

Architecture Service Broker Niveau applicatif Application Cible Application Initiatrice Message Type Niveau logique Message Type Contract Contract Dialog Conversation Service Service Niveau physique Queue Queue TCP/IP Transport Transport Endpoint Endpoint

Réplications Un schéma à 3 niveaux : 1 émetteur (publisher) 1 distributeur (distributor) N receveurs (subscribers) 1 distributeur peut gérer plusieurs émetteurs 1 receveur peut recevoir des données de plusieurs émetteurs et les republier à son tour Tous les types de réplications permettent les 2 modes : l’émetteur propage les modifications (push) Les receveurs demandent les modifications (pull)  Modifications possibles sur le receveur (« peer to peer ») Réplication des changements de schémas Nombreuses optimisations de performances Reprise des échanges arrêtés, sans réémission complète des données Réplication Fusion sur HTTPS (idéale pour la réplication vers les mobiles) Si la même instance est utilisée comme émetteur et distributeur, on parle de distributeur local. Sinon on parle de distributeur distant 2005 2005

Solutions de réplication Quoi ? Quand ? Résolution des conflits Utilisations standards Cliché Snapshot Copie des objets à un instant t Périodiquement N/A Initialisation; Données faiblement modifiées Transactionnelle Les transactions Au fil de l’eau Par transaction Serveur à serveur Peu d’écarts entre les sites Fusion Merge Les données modifiées entre deux instants Ligne par ligne Multiples receveurs Mise à jour asynchrones D’égal à égal Peer to peer 40% de pages en moins dans le Wizard de Publication 2005

Réplication Transactionnelle: Replication Peer-to-Peer “Ouest” “Nord” Logreader Agent Logreader Agent Dist DB Dist DB “Sud” Distribution Agent Distribution Agent Logreader Agent Standard transactional replication assumes read-only Subscribers and is hierarchical in structure: typically a single Publisher publishes data to one or more Subscribers. Standard transactional replication also supports a republishing hierarchy: updates are delivered from a Publisher to a set of republishing Subscribers, who in turn deliver updates to a final set of leaf-node Subscribers. Updating subscriptions offer the ability for Subscribers to push changes back to the Publisher, but the arrangement is still hierarchical because changes follow the hierarchical structure when moving between Subscribers and Publishers. In contrast to read-only transactional replication and transactional replication with updating subscriptions, the relationships between nodes in a peer-to-peer replication topology are peer relationships rather than hierarchical ones, with each node containing identical schema and data. 2005 Dist DB Distribution Agent

Réplication depuis Oracle Réplication Transactionnelle Une base Oracle en tant qu’émetteur v8+, Unix , Linux, Windows Administration depuis SQL Server Aucun logiciel ne doit être installé sur la base Oracle Utilise pleinement les fonctions de Réplication de SQL Server Réplication Transactionnelle et par Snapshot L’inverse est également possible (déjà disponible en 2000) Matt SQL Server Distributeur Abonnés

Gestion des Web Services Configuration Sécurité WSDL Accès depuis une application tierce WSDL HTTP.sys SQL Server HTTP Endpoint

Nouveautés SQL Server 2005 pour les développeurs ayant un impact sur l’administration

De nouvelles possibilités pour les Développeurs Intégration renforcée avec .Net Intégration avec Visual Studio Intégration de la CLR dans le moteur SGBD Nombreux langages : T-SQL amélioré, VB.NET, C#, J#... Extensibilité Type de données XML natif Type de données créé par l’utilisateur (en langage .Net) Nouveaux ordres T-SQL Déclencheurs sur DDL Notification Services (requêtes asynchrones) Interopérabilité Snapshot Isolation Nouveautés 2005

Le choix dans l’accès aux données Accès par calcul et par .Net T-SQL CLR XML Faire le bon choix dans le stockage et la méthode d’accès aux données. La seule règle d’or : le bon sens ! Critère : format des données en entrée et en sortie les opérations à effectuer dessus Accès semi-structuré Accès relationnel

Assembly: “TaxLib.dll” Intégration .NET construire Assembly: “TaxLib.dll” Microsoft® Visual Studio® .NET Project SQL Data Definition: create assembly … create function … create procedure … create trigger … create type … déployer CLR hébergée dans SQL Server SQL Queries: select sum(tax(sal,state) ) from Emp where county = ‘King’ Microsoft® SQL Server™

SQL Server et .NET Framework 2.0 Environnement de programmation pour Fonctions Procédures stockées Triggers Types définis par l’utilisateur Agrégats Sécurité Intégration de la sécurité SQL Server et CLR Trois niveaux de sécurité Safe, External-Access (verifiable), Unsafe SQL Engine CLR 2.0 SQL OS CLR 2.0 Windows

Sécurité CLR : Permission Sets SAFE Aucun accès aux ressources externes à SQL Server Aucun appel à du code non managé (Win32, COM…) Doit-être « vérifiable » EXTERNAL_ACCESS SAFE + accès à certaines ressources externes (Fichier, Network…) Accès aux ressources externes uniquement via des classes .NET SQL Server 2005 change le contexte d’exécution du code Doit-être « vérifiable » UNSAFE Peut appeler du code non managé, peut-être « un-verifiable » LE CODE PEUT TOUT FAIRE – DECONSEILLE !!!!

Nouveautés Transact-SQL 2005 Instructions DDL (Data Définition Language) Varchar(max), nvarchar(max), varbinary(max), xml Déclencheurs sur les instructions DDL (DDL Triggers) Instructions DML (Data Manipulation Language) Gestion des Exceptions (Try/Catch) Instructions CTE (Common Table Expression) Opérateur Pivot Fonctions de Classement TOP La Clause Output Mode de Verrouillage (Snapshot Isolation)

Snapshot Isolation CREATE TABLE t1 (c1 int unique, c2 int) INSERT INTO t1 VALUES (1, 5) Transaction 1 BEGIN TRAN UPDATE t1 SET c2 = 9 WHERE c1 =1 COMMIT TRAN Transaction 2 (Snapshot Isolation) SET TRANSACTION ISOLATION LEVEL SNAPSHOT BEGIN TRAN SELECT c2 FROM t1 WHERE c1 = 1 -- SQL Server returns 5 SELECT c2 FROM t1 WHERE c1 = 1 -- SQL Server returns 5 COMMIT TRAN SELECT c2 FROM t1 WHERE c1 = 1 -- SQL Server returns 9 Transaction 3 (RCSI) BEGIN TRAN SELECT c2 FROM t1 WHERE c1 = 1 -- SQL Server returns 5 SELECT c2 FROM t1 WHERE c1 = 1 -- SQL Server returns 9 COMMIT TRAN SELECT c2 FROM t1 WHERE c1 = 1 -- SQL Server returns 9 Time

Notifications Services : Evènements, abonnements et notifications Les évènements sont des enregistrements dans une table. Subscriptions StockSymbol MSFT Trigger 40 SubscriberId billg@msn.com Les abonnements sont aussi des enregistrements dans une table. Effectuer une jointure permet de produire des résultats (notifications) - à intervalles réguliers - à des moments précis - de complexité arbitraire Sur 3 canaux : HTTP, SMTP et fichier

Fonctionnement d’une application de SQL NS Abonnés Souscriptions (millions) Sources d’Infor-mation Abonnés: ordinateurs, navigateurs, téléphones, messagers… Evène-ments Générateur Notifications (millions) Notification Applications work as follows: - The “subscriber” registers a “subscription” with the Notification Application. - The Notification Application monitors a flow of “events” that arise from some external activity. - The Notification Application “matches” the incoming events against the subscriptions and generates a “Notification” whenever a match occurs. - The notifications are formatted and sent to the user anywhere, anytime, on any device. - Notification applications may need to support millions of subscriptions, hundreds of thousands of events, and millions of notifications. Any push application has the following components: 1) Users record subscriptions – these are requests to be notified when certain events and situations occur (eg. Alert me if my wife calls, stock change)

En pratique: fichiers XML et code à écrire Les fichiers XML suivants définissent ce qu’est une application et une instance SQL NS XSLT Content Formatter XSD XML Event Files XSLT Content Formatter XSD XML Event Files Application Definition File Application Definition File Instance Configuration File // Test de SQL NS: création de l’instance, des abonnés et des abonnements using Microsoft.SqlServer.NotificationServices; // Création de l’objet NSInstance string instanceName = “Localisation”; NSInstance myInstance = new NSInstance(instanceName); // Création de l’objet Subscriber Subscriber mySubscriber = new Subscriber(myInstance); // Ajout d’un abonné mySubscriber.SubscriberId = “sqlnsuser@sqldays.com"; mySubscriber.Add(); Code .Net à écrire // Managed Code Content Providers using System; using System.Configuration;

Intégrer Analyser Restituer Business Intelligence Acquisition et intégration de données de système sources Transformation et agrégation de données Enrichissement des données avec la logique d’entreprise Exploration de l’information avec les outils de data mining Présentation et distribution des données Accès aux données pour tous

Business Intelligence : Integration Services ETL d’entreprise Module entièrement nouveau Haute performance et évolutivité Meilleur Design Environnement de développement Gestion des versions Analyse pas à pas visuelle du flux et des données Nombreuses transformations natives Extensible Tâches personnalisées Transformations personnalisées Sources de données personnalisées

Ressources SQL Server Le site français sur SQL Server 2005 (livres blancs, webcasts en français) http://www.microsoft.com/france/sql/sql2005 Le Blog de Patrick Guimonet (actualités, trucs & astuces en français) http://blogs.technet.com/patricg Le site Technet français (ressources techniques en français) http://www.microsoft.com/france/technet/produits/sql/2005 Le site du Support français (ressources techniques en français) http://support.microsoft.com/ph/1044 Le site global sur SQL Server 2005 http://www.microsoft.com/sql/2005 Le site français Microsoft SQL Server 2000 http://www.microsoft.com/france/sql Le site global Microsoft SQL Server 2000 http://www.microsoft.com/sql/ Le site Technet global (SQL Server TechCenter) http://www.microsoft.com/technet/prodtechnol/sql/