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

Plate-forme de gestion des données Evolutivité et le meilleur coût de possession (TCO) Disponibilité, montée en charge, service d’intégration Productivité.

Présentations similaires


Présentation au sujet: "Plate-forme de gestion des données Evolutivité et le meilleur coût de possession (TCO) Disponibilité, montée en charge, service d’intégration Productivité."— Transcription de la présentation:

1

2 Plate-forme de gestion des données Evolutivité et le meilleur coût de possession (TCO) Disponibilité, montée en charge, service d’intégration Productivité des développeurs et des administrateurs Intégration avec Visual Studio,.Net Technologie XML native Intéropérabilité avec les web services Chaine décisionnelle intégrée

3 Une nouvelle technologie faisant partie intégrante du moteur de base de données fournissant l’infrastructure et les services pour bâtir des applications asynchrones, à couplage lâche, disponibles, sûres et distribuées. Asynchrones: Plus grande montée en charge et performances par traitements différés Mise en queues: Persistance des messages Orienté Messages: Permettre de nouveaux types d’applications distribuées, asynchrones et disponibles par échanges de messages entre base SQl Server Couplage lâche: SOA; application constituée de services qui inter-agissent via des messages, les queues de messages sont à la base de ce couplage lâche Disponibilité: Once and Only Once in Order Sécurité: Intégrité des messages, authentification. Sécurité des dialogues et du transport Distribuées: Transparence de localisation

4 Nouveaux ordres DDL et DML pour créer les queues, créer un dialogue, envoyer des messages, recevoir des messages … Gestion, déploiement et opérations intégrés Déploiement, configuration et administration: 1 seul système pour les données et les messages Sécurité de SQL Server, outils communs (SSMS, Profiler, Catalog View, Perfmon) Modèle de programmation commun Accès aux données et messages en T-SQL Transactions distribuées sans commit à 2 phases Développeur et DBA peuvent utiliser les mêmes outils pour bâtir et gérer des applications distribuées performantes Les performances comme objectif

5 Application Initiatrice Application Cible Service Dialog Conversation Queue Transport Queue Niveau applicatif Niveau logique Niveau physique TCP/IP

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

7

8 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 Démo 2

9

10 Ce que vous permet Service Broker: Exécution asynchrone d’ordres DDL/DML Exécution en parallèle de procédures Stockées (performance) Scale up ou scale out avec un impact minimum sur le code, couplage lâche, applications distribuées Load balancing Implémentation rapide de traitements batchs DisponibilitéSOA Alimentation de DW « Bufferisation » des requêtes lors des pics de charges Simple, extensions au T-SQL

11 Message Information échangée entre des applications utilisant Service Broker SEND pour un message, RECEIVE pour recevoir un ou plusieurs messages Possibilité de séquencer les messages Varbinay(max)  limité à 2GB Messages d’erreurs, messages de fin de dialogues (end dialog messages), Timer (dialog timer messages) Message Type Définissent le contenu des messages Définition du format du message CREATE MESSAGE TYPE Doivent être identiques pour les 2 parties impliquées dans une conversation Well-formed XML, valid XML, Empty (message body NULL), Binary data Catalog view sys.transmission_queue

12 Queue “Database objects” utilisé pour stocké les messages CREATE QUEUE Activation: Associer une procédure stockée en utilisant la clause ACTIVATION Option MAX_QUEUE_READERS (entre 0 et 32767) SELECT * FROM queue ne supprime pas les messages de la queue, c’est RECEIVE qui le fait. Service Entité nommée Délivre des messages à une queue clairement identifiée Routages des messages Contrat associé à une conversation Détermine le mode de sécurité pour une nouvelle conversation Endpoint des conversations CREATE SERVICE

13 Contract Spécifie la direction et le type de message pour une conversation Accord sur le «message types » utilisé dans une conversation Définie quel “côté” de la conversation peut envoyer un message de ce type Chaque conversation Broker conversation respecte un “Contract” CREATE CONTRACT Dialog Conversation ou Dialog Flux de message garanti entre 2 services Initiateur: BEGIN DIALOG CONVERSATION, END CONVERSATION Les dialogues fournissent une transmission de messages full-duplex, reliable, durable et in-order

14 Conversation Group Service Broker crée de lui même un “conversation group” pour regrouper tous les dialogues pour une tâche donnée afin de permettre le “exactly once- in-order” Un identifiant de conversation group identifier est associé à tous les messages de tous les dialogues contenus dans un conversation group ID de conversation group est aussi comme clé primaire dans les tables Sys.conversation_groupsActivation Interne (procédure stockée) ou Externe (application), peut être une procédure stockée de la SQLCLR Activité sur une queue monitor pour chaque queue avec activation STATUS = ON (sys.dm_broker_queue_monitors) sys.dm_broker_activated_tasks contient des informations sur les procédures stockées démarrées par Service Broker

15 Conversation Timers (BEGIN CONVERSATION TIMER) Envoyer un message à vous même à une période donnée, il est persistant et transactionnel Un “conversation timer” dépose un message sur la queue du service qui a positionné le timer Exemple: SI après une période de temps si un Ack n’est pas reçu Alors … Route Associe un nom de service à une adresse réseau physique Spécifie la localisation d’un service Service Broker et la database qui contient ce service Constitué du nom d’un service, ID de l’instance du broker et d’une adresse réseau Abstraction des instances SQL Server utilisées dans une communication AutoCreatedLocal avec l’adresse “LOCAL” CREATE ROUTE, sys.routes Clause LIFETIME, suppression manuelle des routes qui ont expirées

16 Service Broker Endpoint Endpoint: Un point d’entrée sur une instance SQL Server Pour communiquer en dehors d’une instance SQL Server, Service Broker nécessite un endpoint (CREATE ENDPOINT…) Protocole supporté TCP, port par défaut 4022 Remote Service Binding Le contexte de sécurité sous lequel un service initiateur se connecte à un service distant Modèle de sécurité à base de certificats pour associer un utilisateur à un certificat et un service Le certificat est partagé entre les bases de données CREATE REMOTE SERVICE BINDING

17 Current release doesn’t include an external activator No direct way to specify “launch this EXE” or “call into this EXE” when message is posted into queue. QUEUE_ACTIVATION event CREATE EVENT NOTIFICATION... ON QUEUE... FOR QUEUE_ACTIVATION Start a SQL Server Agent job when the event is fired Use WMI to monitor for this event Write a Windows service or a startup application that connects to the database and retrieves messages from the Event Notification queue. You can’t use both internal and external activation on the same queue.

18 Valeur de l’information contenue dans les messages Dépendant de: même instance, intranet, WAN non sécurisé Service Broker garantit que la conversation est sécurisée et que des bases de données non autorisée ne pourront pas envoyer de messages Sécurité des dialogues (BEGIN DIALOG [ CONVERSATION ]) Encryptage du message Vérification de l’identité des participants Autorisation de validité de l’intégrité Sécurité du transport (CREATE/ALTER ENDPOINT) Prévenir l’envoie de messages par une base de données non autorisée Si mis en oeuvre “enabled”, une autorisation est requise pour se connecter au endpoint Permissions SQL Server sur les ordres SEND, RECEIVE, CONNECT,...

19 Installation Exécution de scripts (se baser sur des « templates » validés) Configuration des endpoints, certificats, remote service bindings et des routes Arrêter/Démarrer une application Changer le statut de la queue OFF/ON Sauvegarde/restauration Partie intégrante de la sauvegarde de la base de données Sauvegarde de tous les composants externes (external activation) msdb – informations de routage master – endpoints et informations de sécurité pour le transport Après le restore, s’assurer que le service_broker_guid dans sys.databases is inchangé Gestion des Queues # messages dans les queues in a queue SELECT COUNT(*) FROM dbo.ExpenseQueue WITH (NOLOCK) ; Arrêter/Démarrer une queue: ALTER QUEUE... WITH STATUS ON/OFF

20 ExposerConsommer.vsd

21

22 PRINT dans les Procédures stockées activées  écriture dans l’error log SQL Server Colonnes activation_procedure et is_activation_enabled dans la vue sys.service_queue pour déterminer le nom et le statut d’une procédure stockée associée à une queue de messages Colonne transmission_status dans sys.transmission_queue Pour forcer la suppression de tous les messages de la transmission queue: ALTER DATABASE db_name SET NEW_BROKER, à utiliser avec précaution (voir Scalability Experts book) Utiliser “Broker” event class dans le Profiler pour tracer l’activité Utiliser “ Broker Activation ” et “ Broker Statistics ” dans PerfMon pour monitorer Colonnes is_receive_enabled et is_enqueue_enabled dans sys.service_queues pour s’assurer que la queue est “enabled” Espace disque pour 100 messages/s en 2 heures ! Exemple: (100 x 3600 x 2) = 720 000 messages dans la queue si l’application de destination est indisponible

23 Communication.vsd

24 Microsoft IT Sales Analysis Support http://members.microsoft.com/CustomerEvidence/Search/EvidenceDetai ls.aspx?EvidenceID=4236&LanguageID=1 http://members.microsoft.com/CustomerEvidence/Search/EvidenceDetai ls.aspx?EvidenceID=4236&LanguageID=1 Application interne de reporting (SQL Server 2005 Service Broker et partitionnement de tables) Gain de 60% sur le développement avec Service Broker en comparaison de tâches SQL

25 The Rational Guide to SQL Server 2005 Service Broker Roger Wolter, ISBN: 1932577203 Télécharger le chapitre 15 SQL Server 2005: Changing the Paradigm Scalability Experts, ISBN: 0672327783 http://www.sqlservicebroker.com/http://www.sqlservicebroker.com/ (Forums) http://www.sqlservicebroker.com/ http://www.gotdotnet.com/codegallery/codegallery.aspx?id=9f7ae2af- 31aa-44dd-9ee8-6b6b6d3d6319http://www.gotdotnet.com/codegallery/codegallery.aspx?id=9f7ae2af- 31aa-44dd-9ee8-6b6b6d3d6319 (GotDotNet Service Broker code gallery) http://www.gotdotnet.com/codegallery/codegallery.aspx?id=9f7ae2af- 31aa-44dd-9ee8-6b6b6d3d6319 http://forums.microsoft.com/msdn/showforum.aspx?forumid=91&siteid=1 http://blogs.msdn.com/rushidesai/ http://www.sqlskills.com/blogs/bobb/http://www.sqlskills.com/blogs/bobb/ (Bob Beauchemin) http://www.sqlskills.com/blogs/bobb/ http://www.pluralsight.com/blogs/dan/default.aspxhttp://www.pluralsight.com/blogs/dan/default.aspx (Dan Sullivan) http://www.pluralsight.com/blogs/dan/default.aspx

26

27 S’informer - Un portail d’informations, des événements, une newsletter bimensuelle personnalisée Se former - Des webcasts, des articles techniques, des téléchargements, des forums pour échanger avec vos pairs Bénéficier de services - Des cursus de formations et de certifications, des offres de support technique Visual Studio 2005 + Abonnement MSDN Premium Abonnement TechNet Plus : Versions d’éval + 2 incidents support

28 © 2007 Microsoft France Votre potentiel, notre passion TM


Télécharger ppt "Plate-forme de gestion des données Evolutivité et le meilleur coût de possession (TCO) Disponibilité, montée en charge, service d’intégration Productivité."

Présentations similaires


Annonces Google