plate-forme de gestion des données evolutivité et le meilleur coût de possession (tco)...
Post on 04-Apr-2015
108 Views
Preview:
TRANSCRIPT
Régis MaugerArchitecte Infrastructure; regis.mauger@microsoft.comMicrosoft France
SQL Server Service BrokerUne solution d’échange de messages pour bâtir des applications asynchrones sur les principes du couplage lâche.
Patrick GuimonetArchitecte Infrastructure; patricg@microsoft.comMicrosoft France
Gestion des DonnéesPlate-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 administrateursIntégration avec Visual Studio, .NetTechnologie XML nativeIntéropérabilité avec les web services
Chaine décisionnelle intégrée
Service Broker : c’est quoi ?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ésMise en queues: Persistance des messagesOrienté Messages: Permettre de nouveaux types d’applications distribuées , asynchrones et disponibles par échanges de messages entre base SQl ServerCouplage 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âcheDisponibilité: Once and Only Once in OrderSécurité: Intégrité des messages, authentification. Sécurité des dialogues et du transportDistribuées: Transparence de localisation
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 messagesSécurité de SQL Server, outils communs (SSMS, Profiler, Catalog View, Perfmon)
Modèle de programmation communAccès aux données et messages en T-SQLTransactions 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
MOM totalement intégré au SGBD(Middleware Orienté Message)
Architecture Service Broker
ApplicationInitiatrice
ApplicationCible
Service ServiceDialog Conversation
QueueTransportTransport
Queue
Niveau applicatif
Niveau logique
Niveau physique
TCP/IP
Cinématique Service Broker
TCP/IP
Niveau logique
Niveau physique
ServiceDialog Conversation
TransportTransportQueue
ApplicationInitiatrice
ApplicationCible
Service
Queue
Niveau applicatif
On é
crit
On
litTransmission asynchrone
Démo
1
Service Broker « Hello World »
Démo 1
Architecture Service Broker
ApplicationInitiatrice
ApplicationCible
MessageType
MessageType
Service Service
Queue
Contract Contract
Queue
Niveau applicatif
Niveau logique
Niveau physique
TCP/IP
Endpoint
Transport Transport
Dialog Conversation
Endpoint
Démo
2
Service BrokerEchange de messages sécurisé entre 2 instances
Démo 2
Utilisations possibles
Ce que vous permet Service Broker:Exécution asynchrone d’ordres DDL/DMLExé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éesLoad balancingImplémentation rapide de traitements batchsDisponibilitéSOAAlimentation de DW« Bufferisation » des requêtes lors des pics de charges
Simple, extensions au T-SQL
Sécurité
Valeur de l’information contenue dans les messagesDé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 messagesSécurité des dialogues (BEGIN DIALOG [ CONVERSATION ])
Encryptage du messageVérification de l’identité des participantsAutorisation 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éeSi mis en oeuvre “enabled”, une autorisation est requise pour se connecter au endpoint
Permissions SQL Server sur les ordres SEND, RECEIVE, CONNECT, ...
Configuration & AdministrationInstallation
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 applicationChanger le statut de la queue OFF/ON
Sauvegarde/restaurationPartie intégrante de la sauvegarde de la base de donnéesSauvegarde de tous les composants externes (external activation)msdb – informations de routagemaster – endpoints et informations de sécurité pour le transportAprè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
Exposer/Consommer
ExposerConsommer.vsd
Service BrokerAdministration et Dépannage
Démo 3
Surveillance & Dépannage
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
Communication
Communication.vsd
Case Studies
Microsoft IT Sales Analysis Support
http://members.microsoft.com/CustomerEvidence/Search/Evide
nceDetails.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
Ressources
The Rational Guide to SQL Server 2005 Service BrokerRoger Wolter, ISBN: 1932577203Télécharger le chapitre 15
SQL Server 2005: Changing the ParadigmScalability Experts, ISBN: 0672327783
http://www.sqlservicebroker.com/ (Forums)http://www.gotdotnet.com/codegallery/codegallery.aspx?id=9f7ae2af-31aa-44dd-9ee8-6b6b6d3d6319 (GotDotNet Service Broker code gallery)
http://forums.microsoft.com/msdn/showforum.aspx?forumid=91&siteid=1http://blogs.msdn.com/rushidesai/http://www.sqlskills.com/blogs/bobb/ (Bob Beauchemin)http://www.pluralsight.com/blogs/dan/default.aspx (Dan Sullivan)
Q & A
La référence technique
pour les IT Pros :technet.microsoft.com
La référence technique
pour les développeurs :
msdn.microsoft.com
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
© 2007 Microsoft France
Votre potentiel, notre passion TM
top related