La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Le système de gestion et danalyse des données de nouvelle génération Architecte Infrastructure.

Présentations similaires


Présentation au sujet: "Le système de gestion et danalyse des données de nouvelle génération Architecte Infrastructure."— Transcription de la présentation:

1 Le système de gestion et danalyse des données de nouvelle génération Architecte Infrastructure

2 Agenda Généralités SQL Server 2005 pour les administrateurs SQL Server 2005 pour les développeurs SQL Server 2005 pour les analystes décisionnels Nota : Fonctionnalités et exemples basés sur la CTP dAvril 2005

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

4 Une offre globale

5 Enterprise La plate-forme intégrée pour la gestion et lanalyse de données des applications critiques de lentreprise 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 Nouveauté SQL Server 2005ExpressWorkgroupStandard Adaptée aux développeurs pour apprendre, construire et déployer 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 lanalyse des données destinée aux entités moyennes à grandes Gratuit 2 Proc 3 Go mémoire Outil dadministration Management Studio SQL Agent Assistant doptimisation 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 1 Proc 1 Go mémoire 4 Go base Outil dadministration simplifié Sécurité intégrée Support XML & Améliorations T-SQL Intégration.Net & CLR Serveur de rapports Import/Export Client Réplication Une offre adaptée à vos besoins Prix croissant

6 Transactionnel Enregistrement des données de marché Pic de Transaction par Seconde Transactionnel Internet Auction Co., Ltd (Korea ) Internet Auction Co., Ltd (Korea ) SGBDR et moteur OLAP Volumétrie : 2,7To Transaction par seconde : CRM SGBDR pour Siebel Nb dutilisateurs: Siebel eService Volumétrie: 1 To SAN ERP Utilisation de SQL comme BDD pour SAP Volumétrie : 1 To+, 5 To Stockage Nb dutilisateurs : 2000 concurrents ERP Utilisation de SQL Server pour lappli. de facturation Volumétrie: 5 To & 33 Milliards de lignes & 15 To total Services Web 5 Millions dimages, + 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 Une offre crédible Références 2000

7 IBM a été dépassé en 2003 Oracle 42% 2003 SQL Server 24% Other 12% IBM 22% Windows 51% Growth & Shares Non-mainframe DB ($5.4B) Growth & Shares 2004 Oracle 43% SQL Server 26% IBM 20% Other 11% +18% * +15% * +2% * Growth & Shares 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%* IBM a été dépassé en 2003 Le marché des SGBD en 2004 Source: Gartner Windows est la plateforme leader pour les SGBD By OS Platform Non-mainframe DB ($6 Bil) By OS Platform Unix/Linux 49% SQL Server domine sur Windows Windows Database Market ($3.1 Bil) Oracle 25% SQL Server 51% IBM 16% Other 8% *Percentages reflect revenue growth

8

9 Des outils optimisés Propriétés « Serveur »

10 Nouveautés pour la disponibilité Miroir de base de données Clichés de bases de données Maintenance des index en ligne Restauration de fichiers et de pages en ligne Nouveautés pour la gestion des données Tables partitionnées Vues dynamiques Réplication dégal à égal et avec des bases Oracle Nouveautés pour la sécurité Encryption dans la base SQL Server Surface Area Configuration Administration Nouveautés 2005

11 Nouveautés pour la disponibilité Redémarrage rapide Miroir de base de données Améliorations Clusters Clichés de bases de données Maintenance des index en ligne Restauration de fichiers et de pages en ligne Améliorations de la sauvegarde et de la restauration Administration Nouveautés 2005

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

13 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 Défaire Défaire (undo) Refaire Refaire (redo) Base Accessible Défaire Défaire (undo) Refaire Refaire (redo) Base Accessible temps Nouveau SS 2005

14 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 InstanceManuel Transactions depuis la dernière copie Réplication Copie de fichiers et chargement TableManuel Transactions depuis la dernière copie 2005 Améliorations 2005

15 Un espace disque partagé par plusieurs serveurs, mais un seul serveur y accède à un instant donné Détection derreurs & 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 lordre de la minute Jusquà 50 instances Jusquà 8 nœuds (Windows Server 2003 x86) ou 4 nœuds en (Win IA-64 ou x64) Tous les services sont compatibles–cluster: SQL Server Agent, Analysis Services, Full-Text Search Une seule installation globale Cluster de basculement (« Failover Cluster ») Stockage partagé Adresse Serveur Virtuel 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 daugmenter la puissance

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

17 (« Database Mirroring ») 2/2 Base de Données Miroir (« Database Mirroring ») 2/2 Utilisation de cette architecture : Tous les environnements où une disponibilité maximale est requise sur des données critiques Témoin 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

18 Cliché BD (DB Snapshot) Comment ça marche ? MonSnap – Cliché en lecture simple USE MonSnap SELECT (pages 4, 6, 9, 10, 14) 1 Page CREATE DATABASE MonSnap AS SNAPSHOT OF MaBase MaBase USE MaBase UPDATE (pages 4, 9, 10) Nouveau SS 2005 Si nécessaire : RESTORE DATABASE MaBase FROM SNAPSHOT MonSnap

19 Votre solution est dans la combinaison de ces techniques… Miroir Principal Clients OLTP Cliché Témoin Client de Reporting Ex.: Miroir de base de données + Cliché Nouveau SS 2005

20 Opérations en ligne Opérations en ligne

21 Il nest plus nécessaire de sarrê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 »

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

23 Sauvegarde améliorée 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 BACKUP DATABASE adventureworks TO DISK=D:\backups\full.bak' MIRROR TO DISK=E:\backups\full.bak WITH FORMAT, CHECKSUM Nouveau SS 2005 BD Svg 1 Svg 2 Copy-Only Backups Permet de faire une sauvegarde complète sans perturber la chaîne des sauvegardes de production sans perturber lexploitation Idéal pour faire une copie de la base de production sans perturber lexploitation BACKUP DATABASE WITH COPY_ONLY

24 Améliorations des restaurations Amélioration dans la détection derreurs En 2000, En 2000, ALTER DATABASE SET PAGE_VERIFY TORN_PAGE_DETECTION ALTER DATABASE SET PAGE_VERIFY CHECKSUM RESTORE VERIFY_ONLY STOP_ON_ERROR et CONTINUE_AFTER_ERROR Restauration partielle (groupe de fichiers) Existe depuis SQL Serveur 2000, mais avec SQL Serveur 2005 la base reste accessible pendant la restauration tant que lon accède pas au fichier en question Restauration de pages Restaurer dun page unique depuis une sauvegarde A nutiliser quavec beaucoup de précaution et laval du support Microsoft! Nouveau SS 2005

25 Nouveautés pour la gestion des données Tables partitionnées Réplication dégal à égal Réplication avec des bases Oracle 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 lutilitaire bcp … Administration Nouveautés 2005

26 Partitionner ? Quoi? Partitionnement de tables, dindexes, 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 daccès (Lock Escalation) Comment? Partitionnement denregistrement (horizontal) A, B, C D, E, F G, H, I J, K, L A, B, C, D, E, F, G, H, I, J, K, L Données Non Partitionnées DonnéesPartitionnées Données Partitionnées

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

28 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 (au lieu des Filegroups) 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 des fonctions et de schémas de partitionnement Des tables et index différents peuvent partager des fonctions et de schémas de partitionnement Table ou IndexPartitionSchémaPartitionFonction 1 n n

29 Comment ajouter ou supprimer des partitions? Permet de traiter le cas typique dajout et/ou de suppression dune partition entière Réalisé à laide de 3 opérations simples sur les partitions : Splitsépare 1 partition en 2 Mergeréunit 2 partitions en 1 Switchéchange 1 table et une partition ALTER PARTITION FUNCTION annual_range() SPLIT RANGE ( ) ALTER TABLE B SWITCH TO A PARTITION 2

30 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) 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) Réplication s 2005

31 Solutions de réplication Quoi ? Quand ? Résolution des conflits Utilisations standards ClichéSnapshot Copie des objets à un instant t Périodique ment N/AInitialisation; Données faiblement modifiées Transactionn elle Les transactions Au fil de leau Par transaction Serveur à serveur Peu décarts entre les sites FusionMerge Les données modifiées entre deux instants Périodique ment Ligne par ligne Multiples receveurs Mise à jour asynchrones Dégal à égal Peer to peer Les transactions Au fil de leau Par transaction Serveur à serveur Peu décarts entre les sites 2005

32 Distribution Agent Dist DB Logreader Agent Distribution Agent Dist DB Logreader Agent Distribution Agent Dist DB Logreader Agent Ouest Nord Sud Réplication Transactionnelle: Replication Peer-to-Peer

33 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 Linverse est également possible (déjà disponible en 2000) SQL Server Distributeur Abonnés

34 Nouveautés pour la sécurité SQL Server Surface Area Configuration Séparation utilisateur - schéma Administration Nouveautés 2005

35 Désactivé par défaut SQL Server Surface Area Configuration

36 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 dun objet dans un schéma nécessite les droits CREATE TABLE et La possession du schéma ou ALTER ou CONTROL Utilisateur 1 possède A comme défaut possède Rôle 2 possède Schéma2 Schéma3 SP1 F1 Tab1 Base Rôle1 Schéma1

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

38 La solution… User ObjetSGBD Schéma Appartient à Possédé par Table Vue Procédure Fonction User 2 Possédé par Supprimer un utilisateur NE nécessite PLUS de modifier lapplication

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

40 SQL Server 2005 pour les développeurs

41 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 lutilisateur Snapshot Isolation Applications distribuées ou asynchrones Intégration de Web services Nouveau service distribuée : Service Broker Notification Services (requêtes asynchrones) La Productivité des Développeurs

42 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 lutilisateur Snapshot Isolation La Productivité des Développeurs Nouveautés 2005

43 Le choix dans le stockage des données T-SQL XML CLR Accès par calcul et par.Net Accès relationnel Accès semi- structuré

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

45 La CLR 2.0 est hébergée Windows SQL OS SQL Engine CLR 2.0

46 SQL Server et.NET Framework 2.0 Environnement de programmation pour Functions Stored Procedures Triggers User Defined Types AggregatesSécurité Intégration de la sécurité SQL Server et CLR Trois niveaux de sécurité Safe, External-Access (verifiable), Unsafe

47 Quelle technologie utiliser ? T-SQL Langages CLR User Defined Functions XX Stored Procedures XX TriggersXX User-Defined Types X AggregatesX

48 Sécurité CLR : Permission Sets SAFE Aucun accès aux ressources externes à SQL Server Aucun appel à du code non managé (Win32, COM…) Doit-être « verifiable » 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 dexécution du code Doit-être « verifiable » UNSAFE Peut appeler du code non managé, peut-être « un-verifiable » LE CODE PEUT TOUT FAIRE – DECONSEILLE !!!!

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

50 Définition des données (DDL) Nouveaux types de données Varchar(max), nvarchar(max), varbinary(max), xml Déclencheurs sur les instructions DDL (DDL Triggers) Gestion des contraintes dintégrité référentielles Gestion des identifiants/utilisateurs Create login Create user

51 Types de Données DML Types de données Déclencheurs sur les instructions DDL Gestion des contraintes dintégrité référentielle Type de Données Les Types Image et Text ont des limitations Peu de fonctions permettant de manipuler ces types de données Pas utilisables en tant que paramêtres dans une procédure ou batch Ne peut pas être mis à jour directement Nouveaux Types de données VARCHAR(MAX), NVARCHAR(MAX), VARBINARY(MAX) Taille : <= 2 Goctets CREATE FUNCTION varchar(max)) varchar(max) RETURNS varchar(max) AS BEGIN -- supporte la concatenation + '12345' END

52 D é clencheurs (Triggers) sur les instructions DDL DML Types de données Déclencheurs sur les instructions DDL Gestion des contraintes dintégrité référentielle Déclencheurs sur les instructions DDL SQL Server 2005 permet de définir des déclencheurs sur des instructions de type DDL. Les déclencheurs DDL sexécutent dans le contexte de la transaction qui les initie Une instruction ROLLBACK peut être exécutée pour défaire le travail du déclencheur. CREATE TRIGGER trgSchemaAuditing ON DATABASE FOR CREATE_TABLE, ALTER_TABLE, DROP_TABLE AS BEGIN INSERT INTO dbo.tblSchemaChangeLog EventData()) SELECT CONVERT(nvarchar(max), EventData()) END

53 Gestion des Contraintes dintégrité référentielle DML Types de données Déclencheurs sur les instructions DDL Gestion des contraintes dintégrité référentielle Gestion des Contraintes RI CREATE TABLE Orders ( orderid INT NOT NULL, customerid CHAR(5) NULL DEFAULT('DUMMY'), orderdate DATETIME NOT NULL, CONSTRAINT PK_Orders PRIMARY KEY(orderid), CONSTRAINT FK_Orders_Customers FOREIGN KEY(customerid) REFERENCES Customers(customerid) ON DELETE SET NULL ON UPDATE SET DEFAULT ON DELETE SET NULL ON UPDATE SET DEFAULT )

54 Manipulation des données (DML) Gestion des exceptions Try/catch Common Tables Expression Récursivité Nouveaux Opérateurs Pivot, Unpivot, Apply Fonctions de classement Row_number, Rank, Dense_rank, Ntile, TOP Nouveau Mode de Verrouillage Snapshot Isolation Output Clause Fulltext Search Autres

55 Gestion des Exceptions DMLGestion des Exceptions Bloc Try/catch Nouvelles fonctions de gestion des erreurs ERROR_NUMBER() ERROR_SEVERITY() ERROR_STATE() ERROR_MESSAGE() XACT_STATE() -- Exemple BEGIN TRY SELECT * FROM authors END TRY BEGIN CATCH BEGIN CATCH -- Test tx state IF (XACT_STATE()) = -1 ROLLBACK TRANSACTION IF (XACT_STATE()) = 1 COMMIT TRANSACTION END CATCH GO Gestion des exceptions Common Table Expression Nouveaux Opérateurs Fonctions de classement Mode de Verrouillage Output Clause Fulltext Search Autres

56 Common Table Expression (CTE) DMLCommon Table Expression D é finition : Un jeu de r é sultats temporaire, qui d é rive d une requête simple de type : Select, Insert, Update ou Delete. Exemple : USE AdventureWorks ; GO WITH DirReps(ManagerID, DirectReports) AS ( SELECT ManagerID, COUNT(*) SELECT ManagerID, COUNT(*) FROM HumanResources.Employee AS e FROM HumanResources.Employee AS e WHERE ManagerID IS NOT NULL WHERE ManagerID IS NOT NULL GROUP BY ManagerID GROUP BY ManagerID) SELECT * FROM DirReps ORDER BY ManagerID GO Gestion des exceptions Common Table Expression Nouveaux Opérateurs Fonctions de classement Mode de Verrouillage Output Clause Fulltext Search Autres

57 Nouveaux Opérateurs DML Tableaux Dynamiques Nouveaux Opérateurs PIVOT UNPIVOT Apply IdPropNamePropVal 1Namexxx.doc 1CrDate12/3/2001 2Nameyyy.xls 2AuthorV.Hugo IdNameAuthor1xxx.docNULL 2yyy.xlsV.Hugo SELECT * FROM table PIVOT(MIN(PropVal) FOR PropName IN ([Name],[Author]) ) tBrandYearSalesMs Other Ms Other Brand Ms Other SELECT * FROM table PIVOT(SUM(Sales) FOR Year IN ([1990], [1991]) ) t Exemple: Gestion des exceptions Common Table Expression Nouveaux Opérateurs Fonctions de classement Mode de Verrouillage Output Clause Fulltext Search Autres

58 Fonctions de classement avec SQL Server 2005 DMLFonctions de classement Fonctions de classement: RANK() NTILE( ) OVER( [PARTITION BY ] ORDER BY ) SELECT Athlete, Time, RANK() OVER(ORDER BY Time) AS Rank, DENSE_RANK() OVER(ORDER BY Time) AS Dense_Rank, NTILE(3) OVER(ORDER BY Time) as NTILE_3, FROM RaceResults Exemple: DENSE_RANK() ROW_NUMBER() AthleteTimeRankDense_RankNTile_3 Joe10111 Bob Mark Will John Gestion des exceptions Common Table Expression Nouveaux Opérateurs Fonctions de classement Mode de Verrouillage Output Clause Fulltext Search Autres

59 Nouveau Mode de Verrouillage avec SQL Server 2005 DMLMode de Verrouillage Transaction 2 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 1 BEGIN TRAN UPDATE t1 SET c2 = 9 WHERE c1 =1 COMMIT TRAN Transaction level Snapshot Isolation Garanti lintégrité Transactionnelle (ACID) Les Lecteurs ne posent pas de verrou Déclaration Set Transaction Isolation level Snapshot Alter database mydatabase set allow_snapshot_isolation on Gestion des exceptions Common Table Expression Nouveaux Opérateurs Fonctions de classement Mode de Verrouillage Output Clause Fulltext Search Autres

60 Snapshot Isolation Example CREATE TABLE t1 (c1 int unique, c2 int) INSERT INTO t1 VALUES (1, 5) Transaction 2 (Snapshot Isolation) SET TRANSACTION ISOLATION LEVEL SNAPSHOT BEGIN TRAN 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 1 BEGIN TRAN UPDATE t1 SET c2 = 9 WHERE c1 =1 COMMIT TRAN Time 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

61 DML Avec des R é sultats (OUTPUT Clause) DMLOutput Clause OUTPUT clause pour les instructions DML : Utilisez inserted or deleted pour récupérer limage Avant ou Après modification. Option pour stocker les enregistrements : OUTPUT …INTO UPDATE Orders SET status=processed OUTPUT DELETED.*, INSERTED.* WHERE status=unprocessed DELETE Sales.ShoppingCartItem OUTPUT DELETED.* Gestion des exceptions Common Table Expression Nouveaux Opérateurs Fonctions de classement Mode de Verrouillage Output Clause Fulltext Search Autres

62 Fulltext Search DMLFulltext Search Programmation Create Fulltext Catalog/Index Alter fulltext Catalog/Index Drop fulltext catalog/Index Nouvelles Fonctionnalités Support des Thésaurus Support Multi-colonnes : CONTAINS((col1, col2), yukon) Peut fonctionner avec des serveurs liés Administration et Exploitation Intégré dans les fonctions backup/restore Transport Fulltext avec les fonctions attach / detach Optimisation 30 à 50% damélioration en lecture Jusquà 700% damélioration en temps dindexation Gestion des exceptions Common Table Expression Nouveaux Opérateurs Fonctions de classement Mode de Verrouillage Output Clause Fulltext Search Autres

63 Autres DMLAutres Bulk Operations on Openrowset SELECT a.* FROM OPENROWSET( BULK 'c:\test\values.txt', FORMATFILE = 'c:\test\values.fmt') AS a INSERT INTO myTable(FileName, FileType, Document) SELECT 'Text1.txt' AS FileName, '.txt' AS FileType, * FROM OPENROWSET(BULK N'C:\Text1.txt', SINGLE_BLOB) AS Document Améliorations sur linstruction TOP Instruction TOP accessible depuis les ordres Insert/Update/Delete Utilisation dune variable dans linstruction TOP Exemple as int = 10 Select * from HumanResources.Employee Requêtes Distribuées EXECUTE ('CREATE TABLE SalesTbl (SalesID int, SalesName varchar(10));', 'SalesData') AT ServeurParis; Tablesample Gestion des exceptions Common Table Expression Nouveaux Opérateurs Fonctions de classement Mode de Verrouillage Output Clause Fulltext Search Autres

64 Nouveaut é s XML SQL Server 2005 Nouveau type de donn é e natif XML Gestion des sch é mas optionnelle Indexation des colonnes de type XML Manipulation du XML Support de Xquery 1.0 Am é liorations For XML OpenXML CREATE TABLE Invoices (InvoiceID int, SalesDate datetime, CustomerID int, ItemList xml) INSERT INTO Invoices VALUES (1, GetDate(), 2, ' ') CREATE XML SCHEMA COLLECTION ResumeSchemaCollection as N... SELECT ItemList.query(' { for $i in /Items/Item return } ') from Invoices

65 Nouveautés 2005 Applications distribuées ou asynchrones Intégration de Web services Nouveau service distribuée : Service Broker Notification Services (requêtes asynchrones) La Productivité des Développeurs

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

67 SQL Service Broker 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 lordre des messages, même dans des tx séparées Messages volumineux jusquà 2 GB – fragmentés Pas de dépendance sur MSMQ APP 1 SQL Engine APP 2

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

69 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 lorsquils arrivent au service destinataire Le service destinataire reçoit ces gros messages comme sil était dun seul tenant Cette caractéristique permet de faire passer dautres messages sans les bloquer La taille maximale est varbinary(MAX) – 2 GB

70 Exemple dutilisation de DML pour SSB Begin Transaction; BEGIN hConversation FROM SERVICE [CustomerSvc] FROM SERVICE [CustomerSvc] TO SERVICE TravelSvc TO SERVICE TravelSvc ON CONTRACT [BookTravel]; ON CONTRACT [BookTravel]; SEND ON MESSAGE TYPE [ReservationRequest] MESSAGE TYPE [ReservationRequest] Commit Transaction; Begin Transaction; WAITFOR (RECEIVE * from [CustomerSvcQueue]), TIMEOUT 5000 ; TIMEOUT 5000 ; END Commit Transaction; Begin Transaction; LOOP UNTIL EMPTY QUEUE WAITFOR ( WAITFOR ( FROM [TravelServiceQueue]), FROM [TravelServiceQueue]), TIMEOUT 5000; TIMEOUT 5000; SEND ON SEND ON MESSAGE TYPE [ReservationResponse] MESSAGE TYPE [ReservationResponse] END END Commit Transaction;

71 Nouveaux ordres CREATE MESSAGE TYPE CREATE CONTRACT CREATE QUEUE CREATE SERVICE ALTER SERVICE ALTER MESSAGE TYPE ALTER QUEUE ALTER CONTRACT DROP MESSAGE TYPE DROP CONTRACT DROP QUEUE DROP SERVICE CREATE ROUTE ALTER ROUTE DROP ROUTE Nouveautés DDL BEGIN DIALOG CONVERSATION END CONVERSATION MOVE CONVERSATION GET SERVICE INSTANCE RECEIVESEND BEGIN DIALOG TIMER NouveautésDML Nouveautés DML

72 Notifications Services : Evènements, abonnements et notifications Les abonnements sont aussi des enregistrements dans une table. Les évènements sont 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 Subscriptions StockSymbol MSFT Trigger 40 SubscriberId

73 Fonctionnement dune application de SQL NS Source s dInfor- mation Abonnés: ordinateurs, navigateurs, téléphones, messagers … Souscriptions (millions) Notifications (millions) Générateur Abonnés Evène- ments

74 En pratique: fichiers XML et code à écrire Les fichiers XML suivants définissent ce quest une application et une instance SQL NS Instance Configuration File Application Definition File XML Event Files Application Definition File XSLT Content Formatter XSDXML Event Files // Managed Code Content Providers using System; using System.Configuration; Code.Net à écrire // Test de SQL NS: création de linstance, des abonnés et des abonnements using Microsoft.SqlServer.NotificationServices; // Création de lobjet NSInstance string instanceName = Localisation; NSInstance myInstance = new NSInstance(instanceName); // Création de lobjet Subscriber Subscriber mySubscriber = new Subscriber(myInstance); // Ajout dun abonné mySubscriber.SubscriberId = mySubscriber.Add(); XSLT Content Formatter XSD

75 SQL Server 2005 pour les analystes décisionnels

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

77 Acquisition et intégration de données de système sources Acquisition et intégration de données de système sources Transformation et agrégation de données Transformation et agrégation de données Intégrer Business Intelligence

78 ETL dentreprise 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 Business Intelligence : Integration Services

79 Nouvelles contraintes techniques adressées Disparition de la fenêtre batch Capture des données en amont des application traditionnelles (RFID, ClickWeb, RSS…) De plus en plus de sources SGBD, fichiers plats XML, SAP, Web Services, RSS, … Et autant de cibles Structurée, semi structurée, non structurée Des volumes toujours plus grands Au-delà de lalimentation dun entrepôt: prise en compte de nouvelles destinations. prise en compte de nouvelles destinations.

80 Exemple: SANS Integration Services Centre dappel : données semi structurées Gros systèmes : fichiers binaires Base de donées : données relationnelles ETL Warehouse Rapports Mobile Data mining Alertes & escalades Chaque étape nécessite des opérations séparées La préparation des données nécessite des outils différents et parfois incompatibles Lensemble introduit des délais dans les réponses Les gros volumes de données posent des problèmes Codage spécifique Stockage intermédiaire Text Mining ETL Stockage intermédiaire Nettoyage & ETL Stockage intermédiaire ETL

81 Exemple: AVEC Integration Services Centre dappel : données semi structurées Gros systèmes : fichiers binaires Base de donées : données relationnelles Alertes & escalades Intégration et création dentrepôt se font dans une seule opération Récuparation, préparation et chargement des données dans un seul processus auditable Possibilité de gérer des très gros volumes de données SQL Server Integration Services Traitement Du texte Source spécifique Sources standards Nettoyage des données Fusions Data mining Warehouse Rapports Mobile

82 Les données peuvent ensuite être partitionnées et séparées… Control Flow Loop Les composants de SSIS FTP Execute SQL Data Flow Send Mail Data Flow Flat File Source Oracle ADO.NET Source Merge De-duplicate Split SQL ServerFlat File Le Control flow permet de définir un enchainement de taches complexe.Le Control flow peut comprendre différents types de tâchesGroupes en boucles, séquences… et reliées par des contraintes.Le Data Flow est une tâche spéciale …Qui a son propre modèle dédié au déplacement et à la transformation de données.Les données peuvent provenir de sources multiples et hétérogènes …Les données, provenant de sources variées, peuvent être fusionnées dans un flot uniqueElles peuvent alors être nettoyées …Et chargées dans des destinations multiples et hétérogènes.

83 Les données peuvent ensuite être partitionnées et séparées… Les composants de SSIS Le Control flow permet de définir un enchainement de taches complexe. Le Control flow peut comprendre différents types de tâches Groupées en boucles, séquences… et reliées par des contraintes. Le Data Flow est une tâche spéciale … Qui a son propre modèle dédié au déplacement et à la transformation de données. Les données peuvent provenir de sources multiples et hétérogènes … Les donnée, provenant de sources variées, peuvent être fusionnées dans un flot unique Elles peuvent alors être nettoyées … Et chargées dans des destinations multiples et hétérogènes.

84 Performances 3 fois plus rapide en 64 bits qu en 32 Note: Fréquence 3 GHz et fréquence 1.5 GHz 64-bit vs. 32-bit parallel Lookups Performance (Six lookups with 100M Dim rows with fast parse enabled) Platform Type Execution Times (minutes) 64-bit 16 CPU, 32-bit 16 CPU

85 Enrichissement des données avec la logique dentreprise Enrichissement des données avec la logique dentreprise Exploration de linformation avec les outils de data mining Exploration de linformation avec les outils de data mining Analyser Business Intelligence Acquisition et intégration de données de système sources Acquisition et intégration de données de système sources Transformation et agrégation de données Transformation et agrégation de données Intégrer

86 Business Intelligence : Analysis Services Unified Dimensional Model Réunion du monde relationnel et décisionnel Pro-active caching Business Intelligence Avancée Indicateurs Clés de Performances Scripts Multi langue

87 Analyses Services Composant OLAP de SQL Server 2005 Propose une vue multidimensionnelle et intuitive des donnéesPropose une vue multidimensionnelle et intuitive des données Permet dassocier une vue métier aux donnéesPermet dassocier une vue métier aux données Calcul dagrégations permettant une récupération rapide des donnéesCalcul dagrégations permettant une récupération rapide des données

88 Analyses Services A u niveau du serveur : Gestion, administration des cubes multidimensionnels Optimise le stockage des cubes (cellules vides, agrégations) Optimise les agrégations pour fournir une réponse rapide Nouveau modèle UDM (Unified Dimensionnal Model) Intègre un module de création dindicateurs clés et de data mining Intègre les PivotTable services pour les applications de création de tableaux et graphiques croisés dynamiques Nombreux assistants

89 Analyses Services Au niveau du client :Au niveau du client : Supporte les connexions des différents clients aux données multidimensionnelles Génération de rapports à partir de données multidimensionnelles Support natif des clients XML/A

90 Améliorations depuis Analysis Services 2000 DSV, Data Source Views Intellicube pour la construction des cubes Évolutions dans les dimensions Notion de perspective pour les cubes Gestion dindicateurs clés Data mining amélioré Intégration de SQL Profiler Possibilité de multi instances avec SSAS SSAS est « clusterisable » Scripts MDX…

91 Unified Dimensional Model Data Warehouse UDM Clients Accès OLAP Reporting Cache XML/A ou ODBO Analysis Services Source de données KPI Data mining

92 AnalysisServices Proactive Caching – Basic Operation Update Update Notification MDX UDM Cache XML/A or ODBO SQL Query NewVersion

93 AnalysisServices Proactive Caching – Basic Operation MDX UDM Cache XML/A or ODBO SQL Query NewVersion

94 Indicateurs clés (KPI) Caractéristiques des cubes, calculés coté serveur et gérés par SSAS Définition de valeurs clés Les composants dun KPI : Valeur, but, état, tendanceValeur, but, état, tendance Création des KPI depuis BI Development Studio API daccès aux KPI Étapes pour la création de KPI : Choix de la valeur à mesurerChoix de la valeur à mesurer Cible/objectif pour cette valeurCible/objectif pour cette valeur Statut de la valeur par rapport à lobjectifStatut de la valeur par rapport à lobjectif Évaluation de la tendanceÉvaluation de la tendance

95 Data Mining – Points clés 7 algorithmes proposés :7 algorithmes proposés : Decision trees, Navie Bayes, Neural network, Clustering, Time Series, Sequence Clustering, AssociationDecision trees, Navie Bayes, Neural network, Clustering, Time Series, Sequence Clustering, Association Développement dun projet de Data mining :Développement dun projet de Data mining : Au travers de BI Development StudioAu travers de BI Development Studio Assistant pour la définition dun modèle de miningAssistant pour la définition dun modèle de mining Editeur de modèle de miningEditeur de modèle de mining Intégration avec SSISIntégration avec SSIS

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

97 Introduit avec SQL Server 2000 Solution de Rapports dentreprise Création, Gestion, Diffusion de rapports Intégration à Office Nouveautés SQL Server 2005 Intégration avec Analysis Services Nouvelles interactions utilisateur Créateur de rapports pour utilisateurs finaux Business Intelligence : Reporting Services

98 Évolutions avec SQL Server 2005 Report Builder, outil utilisateur final Évolution des Contrôles Tri interactif Paramètres multi valués Sélecteur de date Intégration à Management Studio Générateur de requêtes MDX Custom Report Item Floating headers Impression depuis IE (SP2) Web Parts (SP2) Support du 64 bit Support de Multi-instance Évolution de léditeur dexpression

99 SQL Server Catalog Report Server Architecture Exportation Cibles (Courrier, Fichier, Autre) Services Sécurité (NT, Passeport, Autre) Securité Data Sources (SQL, OLE DB, ODBC, Oracle, Custom) Formats (HTML, Excel, PDF, Autre) Report Processing NavigateurAdministrationApplication URLWMIWeb Service Interrogation des données Formatage Report Builder

100 Scénarios dutilisation Rapports Internes Rapports Maison (Vente, Finance, DRH) Administrable, portail et intégration aux solutions dentreprise Administrable, portail et intégration aux solutions dentreprise Rapports embarqués Afficher des rapports dans nimporte quelle application dentreprise (ERP, CRM) ou analytique Architecture extensible et flexible Rapports Collaboratif B2B, B2C, Echanges inter ou intra entreprise … Rapports Externes Publier des rapports via extranets, Internet Isolation de données, sécurité extensible

101 Migration

102 Avant de migrer… Upgrade Advisor Report Mise à niveau Après la mise à niveau Prêt Upgrade Advisor

103 Migration ou Mise à niveau AvantAprès Mise à niveau Migration SQL Server 7.0/2000 SQL Server 2005 Mise à niveau Migration

104 Migration Avantages Fournit un contrôle plus fin sur les opérations Permet davoir lancienne et la nouvelle version côte à côte pour des tests et des vérifications Linstance de production reste disponible pendant la migration Possible avec des technologies de basculement Inconvénients Peut nécessiter des ressources matérielles supplémentaires Les applications doivent être redirigées vers une nouvelle instance

105 Mise à niveau Avantages Plus simple et rapide pour les petits systèmes Ne nécessite pas de matériel supplémentaire Les applications pointent sur la même instance Inconvénients Moins de possibilité de contrôle Linstance reste inacessible pendant la mise à niveau Ce nest pas la recommandation pour tous les composents : Il est recommandé de migrer les cubes Analysis Services


Télécharger ppt "Le système de gestion et danalyse des données de nouvelle génération Architecte Infrastructure."

Présentations similaires


Annonces Google