> Data
Bibliothèque Patterns and Practices

Bibliothèque Patterns and Practices

par Michael Otey - Mis en ligne le 10/10/2005 - Publié en Octobre 2004

A mesure que les solutions Microsoft gagnent en richesse fonctionnelle, elles deviennent également plus complexes à  mettre en oeuvre. Mais une véritable mine d'informations en ligne peu connue, située sur le site de Microsoft et intitulée « Microsoft Patterns and Practices Library », peut vous aider. Cette collection d'ouvrages écrits par le personnel du Support technique de Microsoft, des consultants Microsoft et des membres des équipes produits contient les meilleures pratiques de Microsoft et des conseils qui ont fait leurs preuves dans la mise en oeuvre de technologies clé, allant de la planification d'Active Directory à  l'architecture des applications en passant par des exemples de code. Vous pouvez télécharger l'ensemble des ouvrages de la section « Patterns and Practices Library » gratuitement sous forme de fichiers PDF ou les acheter en versions CDROM ou imprimée à  l'adresse http://www.microsoft.com/patterns. Vous trouverez ci-après mes cinq guides favoris traitant des bases de données

Lire l'article
Commandes DBBC

Commandes DBBC

par Michael Otey - Mis en ligne le 14/09/2005 - Publié en Octobre 2004

Les commandes DBCC (Database Consistency Checker) peuvent fournir de précieuses informations sur le fonctionnement interne de votre système SQL Server. Elles comportent toute une série de fonctions documentées puissantes, mais aussi de nombreuses possibilités non documentées, dont vous n'avez peut-être pas connaissance. Pour en savoir plus sur ces dernières, utilisez la commande DBCC HELP avec l'indicateur de trace 2520 activé. Voici sept commandes DBCC non documentées qui vous donneront un aperçu de votre système SQL Server. Pour les employer, commencez par activer l'indicateur de trace 3604 à  l'aide de la commande DBCC TRACEON (3604).

Lire l'article
Comment renforcer la sécurité de SQL Server

Comment renforcer la sécurité de SQL Server

par Michael Otey - Mis en ligne le 14/09/2005 - Publié en Octobre 2004

La sécurité demeure un sujet brûlant dans le monde informatique. Internet et des protocoles tels que SOAP (Simple Object Access Protocol) et XML poussent encore plus les utilisateurs à  rester connectés en permanence. Par ailleurs à  mesure que les nouvelles technologies rendent vos systèmes plus accessibles, la menace des virus et des pirates n'a jamais été aussi grande. Les sept étapes suivantes vous aideront à  renforcer la sécurité de vos systèmes SQL Server.

Lire l'article
Pagination côté serveur avec SQL Server

Pagination côté serveur avec SQL Server

par Andrew Rosca - Mis en ligne le 6/07/2005 - Publié en Octobre 2004

Une procédure stockée simple vous permet de contrôler les flux de données et d'accéder à  des millions d'enregistrements

Les applications Web utilisent fréquemment la pagination d'enregistrements afin de présenter de très grandes quantités de données aux utilisateurs. Par exemple, il n'est pas rare qu'un moteur de recherche Internet retourne des dizaines de milliers de résultats en réponse à  une requête d'un utilisateur. Si le moteur renvoyait l'ensemble des résultats en une seule fois, le système destinataire serait complètement saturé. C'est pourquoi la pagination décompose les données en blocs de taille fixe rendant possible la gestion des résultats et réduisant la quantité d'informations transférées en une seule fois du serveur vers le client ...L'application ne propose que quelques enregistrements à  la fois aux utilisateurs, en commençant de préférence par les informations les plus pertinentes. Non seulement la pagination facilite la compréhension et la consultation des données, mais elle améliore également les performances de l'application, car la récupération et l'affichage de volumes élevés d'informations créent une charge inutile qui peut ralentir votre système. Si ce dernier pagine les enregistrements correctement, les utilisateurs d'un moteur de recherche n'auront vraisemblablement pas besoin de consulter plus d'une ou deux pages de résultats.
Malheureusement, de nombreux programmeurs n'ont pas conscience de certains aspects importants de la pagination sur le plan des performances. Dans un environnement IIS et SQL Server classique, la méthode la plus fréquente de mise en oeuvre de la pagination consiste à  utiliser les fonctionnalités de pagination de l'objet ADO Recordset standard, notamment les propriétés AbsolutePage, PageSize et PageCount. Pour les volumes de données relativement faibles (entre quelques dizaines et quelques centaines d'enregistrements), ces fonctionnalités sont parfaitement appropriées et la charge qu'elles génèrent n'affecte pas sensiblement les performances. Toutefois, à  mesure que le nombre d'enregistrements augmente, cette technique perd en efficacité et entraîne une baisse sensible des performances de l'application.
Dans les applications gérant des volumes importants de données, par exemple une application d'approvisionnement qui affiche des nombres élevés de commandes, un site de rencontres gérant des milliers d'utilisateurs ou un site de commerce électronique qui affiche des centaines de produits en réponse à  une recherche d'un utilisateur, vous avez besoin de techniques de pagination côté serveur sophistiquées. Cet article présente un exemple simple de technique de codage que j'utilise pour des tables contenant plusieurs millions d'enregistrements.

Lire l'article
SQL Server Actualités – Semaine 9 –  2005

SQL Server Actualités – Semaine 9 – 2005

Les actualités SQL Server pour le mois de Mars 2005

Lire l'article
Fonctionnalités de haute disponibilité

Fonctionnalités de haute disponibilité

La famille de produits SQL Server 2005 a été repensée afin de mieux répondre aux besoins de toutes les entreprises.

Cette ligne de produits apporte des fonctionnalités de haute disponibilité, de montée en charge, de sécurité, d'administration et d'analyse décisionnelle.

Lire l'article
Une division entièrement dédiée aux éditeurs de logiciels

Une division entièrement dédiée aux éditeurs de logiciels

par Michael Hotek - Mis en ligne le 3/03/2005 - Publié en Avril 2004

Daniel Cohen-Zardy, Responsable Relation Editeurs de logiciels, Microsoft France répond à  quelques questions.

Lire l'article
SQL Server Actualités – Semaine 21 –  2005

SQL Server Actualités – Semaine 21 – 2005

Les actualités SQL Server pour le mois de Mai 2005

Lire l'article
Solutions Haute Disponibilité

Solutions Haute Disponibilité

par Michael Hotek - Mis en ligne le 3/03/2005 - Publié en Avril 2004

Pour rendre un système vraiment disponible

La haute disponibilité est l'un des crédos de l'industrie informatique, mais savez- vous ce qu'elle signifie et comment l'obtenir ? Les spécialistes des technologies de l'information tentent chaque jour d'instaurer la haute disponibilité à  grand renfort de matériel et de logiciel coûteux, sans s'attaquer au vrai problème ...Techniciens et managers, ils sont nombreux à  croire que la haute disponibilité est une solution « en boîte » qu'on met en place puis qu'on oublie. Malheureusement, la technologie n'est qu'une pièce du puzzle haute disponibilité.

La véritable haute disponibilité est une combinaison de gens, de processus et de technologies. Bien que l'on puisse bâtir des solutions hautement disponibles sans l'un de ces composants, le fait de faire appel aux trois assure une disponibilité de niveau professionnel, même dans des environnements modestes. Sans les gens compétents capables de gérer les processus rendant les systèmes hautement disponibles, la seule technologie ne suffira pas. Comment mesure-t-on la disponibilité ? Les professionnels IT la définissent par cette équation :
A = (F - (D + R))/F
où A est la disponibilité, F est le temps moyen entre des défaillances, D est le temps moyen pour détecter la défaillance et adopter un remède, et R est le temps moyen de réparation. Les trois facteurs que vous maîtrisez le plus sont : le temps moyen de réparation, le temps moyen de détection d'une défaillance, et le temps moyen pour choisir un remède. Pour détecter une défaillance, il faut de la technologie et du personnel formé. Une personne compétente peut prévenir certaines défaillances et en détecter d'autres avant qu'elles ne sévissent, et appliquer des remèdes qui gardent le système online. Cette maintenance préventive englobe de puissants processus qui fournissent des chiffres de performances servant d'étalon de supervision et de comparaison à  l'équipe d'exploitation. Pour un administrateur de base de données (DBA, database administrator), il est très important de savoir quand le système fonctionne comme prévu et quand quelque chose d'anormal se produit. Si des processus de test de charge ne sont pas en place, on ne peut obtenir des chiffres de performances qu'en observant l'application après sa mise en production, au risque d'obtenir de faux résultats si elle déraille dès le départ. Les résultats de test de performances d'une application permettent aux DBA de diagnostiquer rapidement des problèmes en cours de production.
Le seul facteur que vous ne maîtrisez pas est le temps moyen entre défaillances : il est totalement imprévisible. Par conséquent, les investissements en haute disponibilité doivent être consacrés d'une part aux gens et aux processus pour réduire le temps de détection et de prise de décision, et d'autre part à  la technologie pour réduire le temps de détection et de réparation.
Retenez l'ensemble de règles suivant :

  • La bonne gestion impose la haute disponibilité.
  • Ce sont des personnes qui gèrent les solutions haute disponibilité.
  • Les processus assurent le bon fonctionnement de ces solutions.
  • La technologie apporte l'élément « physique » de la haute disponibilité.
Le diagramme de la figure 1 résume ces règles. Sans gens et sans processus, pas de haute disponibilité.

Lire l'article
Microsoft SQL Server 2000 Reporting Services

Microsoft SQL Server 2000 Reporting Services

Geac annonce l'intégration dans MPC, sa solution de gestion de la performance, d'un nouveau module de business intelligence, basé sur les outils de l'offre 'Microsoft SQL Server 2000 Reporting Services'.

Ce nouveau module permettra aux clients de Geac et de Microsoft, de disposer d'outils de reporting puissants, au travers de l'édition automatique de rapports adaptables et configurables en fonction de différents cibles d'entreprise : analystes, auditeurs, comités de direction, managers...

Lire l'article
SQL Server Actualités – Semaine 7 –  2005

SQL Server Actualités – Semaine 7 – 2005

Les actualités SQL Server pour le mois de Février 2005

Lire l'article
SQL Server Actualités – Semaine 19 –  2005

SQL Server Actualités – Semaine 19 – 2005

Les actualités SQL Server pour le mois de Mai 2005

Lire l'article
Network Automation annonce AutoMate 5.0

Network Automation annonce AutoMate 5.0

Network Automation annonce AutoMate 5.0, logiciel qui automatise les tâches IT « front-and-back-office ».

En utilisant l'interface « glisser-déposer » il est possible d'assembler rapidement des tâches sans écrire de code.

Lire l'article
Gestion de bases de données vers SQL Server

Gestion de bases de données vers SQL Server

Vous souhaitez migrer votre système actuel de gestion de bases de données vers SQL Server ? Consultez les ressources qui vous sont proposées et faites-vous votre propre idée du produit et des avantages dont vous pourrez bénéficier : performance, disponibilité, fiabilité ou encore optimisation des coûts.

Plus d'informations sur http://www.microsoft.com/france/sql/migration/default.asp

Lire l'article
ADO.Net 101 SqlCommand

ADO.Net 101 SqlCommand

par Rick Dobson - Mis en ligne le 16/02/2004 - Publié en Avril 2004

Un objet ADO.NET pour exécuter des commandes SQL Server

Les applications de base de données exécutent fréquemment des instructions SQL dynamiques et des procédures stockées ...Les premières sont utiles pour les opérations liées au langage de définition de données (DDL), par exemple la création de tables, ou pour les opérations d'accès aux données, telles que les requêtes ad hoc. Les secondes constituent l'ossature de la plupart des applications de base de données et elles exécutent généralement des requêtes prédéfinies, ainsi que des mises à  jour de la base de données. SqlCommand est l'objet ADO. NET chargé d'exécuter des instructions SQL dynamiques et des procédures stockées au niveau d'une base de données SQL Server. Il est essentiel de savoir l'utiliser pour commencer à  développer des applications ADO. NET. Par ailleurs, la connaissance du codage dans l'environnement Microsoft .NET et du langage ADO.NET représente une étape préparatoire indispensable pour Yukon, la prochaine version de SQL Server, car celleci fera appel aux langages .NET pour la création d'objets de base de données. Cet article constitue une introduction à  l'utilisation de l'objet SqlCommand. Il explique notamment comment l'employer pour exécuter des instructions DDL SQL dynamiques et passer des paramètres à  une procédure stockée, ou encore pour exécuter une procédure stockée et renvoyer des valeurs. Bien que Visual Studio .NET ne soit pas absolument indispensable pour les exemples présentés ici, son utilisation est nettement préférable à  l'écriture manuelle de ces programmes à  l'aide d'un éditeur de texte et du kit de développement logiciel (SDK) .NET Framework.
Avant de pouvoir utiliser la classe SqlCommand (le code source servant à  créer un objet SqlCommand), vous devez ajouter une directive d'importation pour l'espace de nom System. Data.SqlClient dans votre projet. La directive d'importation permet de faire référence de manière « abrégée » à  des classes dans l'espace de nom, de sorte qu'il n'est pas nécessaire d'ajouter systématiquement le préfixe System. Data.SqlClient à  chaque classe. Pour un projet Visual Basic .NET (VB.NET), ajoutez la ligne suivante en haut de votre fichier source :

Imports System.Data.SqlClient
Après avoir ajouté la directive d'importation, vous êtes prêt à  utiliser les objets ADO.NET SqlCommand dans vos projets.

Lire l'article
SQL Server Actualités – Semaine 15 –  2005

SQL Server Actualités – Semaine 15 – 2005

Les actualités SQL Server pour le mois d'Avril 2005

Lire l'article
SQL Server & .Net : un duo dynamique

SQL Server & .Net : un duo dynamique

par Rick Dobson - Mis en ligne le 16/02/2004 - Publié en Avril 2004

Pour créer de puissantes applications Web de gestion de membres

Les développeurs dans leur grande majorité savent que SQL Server et Microsoft .NET forment un duo dynamique. Microsoft .NET Framework s'intègre progressivement à  plusieurs produits serveur Microsoft de premier plan, parmi lesquels SQL Server, et les développeurs peuvent d'ores et déjà  créer des solutions pour leur serveur de base de données à  partir de l'environnement Microsoft Visual Studio .NET ...Jusqu'à  quel point ce duo performant facilite-t-il la création de petites applications courantes ? C'est ce que va démontrer cet article à  partir d'une application simple de gestion de membres basée sur ASP.NET et une base de données SQL Server. Cette dernière conserve les informations d'identification, de contact et d'expiration des membres dans plusieurs tables liées. La base de données inclut également différentes procédures stockées et une vue pour le traitement des informations d'adhésion. ASP.NET gère l'interface utilisateur et fournit les fonctionnalités de base, notamment la connectivité Web, en référençant les objets SQL Server. Son rôle consiste aussi à  suivre le statut d'authentification des visiteurs et à  octroyer des permissions d'accès aux pages ou d'exécution de tâches en fonction de ce statut. Cet article illustre les techniques ASP.NET à  partir de code écrit en Visual Basic .NET (VB.NET), mais cellesci peuvent être mises en oeuvre avec n'importe quel langage .NET.

Lire l'article
NetTracker eBusiness Edition

NetTracker eBusiness Edition

Sane Solutions annonce que son produit NetTracker eBusiness Edition a passé la certification SQL Server 2000.

Ce produit est une solution d'analyse Web. NetTracker eBusiness Edition utilise une base de données SQL Server, Oracle, IBM DB2 afin de fournir une méthode pour l'analyse business.

Lire l'article
Le gardien du .Net Connection pool

Le gardien du .Net Connection pool

par William Vaughn - Mis en ligne le 02/02/2004 - Publié en Février 2004

Prévenez les débordements de pool qui pourraient noyer vos applications

La plupart des fournisseurs de données ADO.NET utilisent le connection pool, pour améliorer la performance des applications construites autour de l'architecture .NET déconnectée de Microsoft ...Une application ouvre une connexion (ou obtient un traitement de connexion de la part du pool), exécute une ou plusieurs requêtes, traite l'ensemble des lignes et libère la connexion pour la rendre au pool. Sans ce pooling, ces applications passeraient beaucoup plus de temps à  ouvrir et à  fermer des connexions.
Quand vous utilisez le connection pooling ADO.NET pour gérer les connexions des applications basées sur le Web et des applications de service Web client/serveur, vos clients obtiennent généralement des connexions plus rapides et de meilleures performances. Mais que se passe-t-il quand votre application ou votre site Web est soudain submergé par des clients tous désireux de se connecter en même temps? Votre application vat- elle couler ou nager ? Comme un gardien, vous devez surveiller de près vos connection pools pour maintenir un bon niveau de performance et pour empêcher tout débordement des pools. Voyons les raisons pour lesquelles un connection pool pourrait déborder, puis voyons comment écrire du code ou utiliser Windows Performance Monitor pour surveiller les pools.
Comme je l'expliquais dans l'article « Nager dans le .NET Connection Pool », SQL Server Magazine octobre 2003, vous devez connaître beaucoup de détails d'évolutivité et de performance quand vous utilisez le connection pooling. Souvenez-vous que vous devez surveiller et gérer deux aspects essentiels : le nombre de connexions gérés par chaque pool et le nombre de connection pools. Dans un bon système de production, le nombre de pools est généralement bas (de 1 à  10) et le nombre total de connexions en service est lui aussi bas (moins de 12). Il faut à  une requête efficace moins d'une seconde pour s'effectuer et se déconnecter. Ainsi, même si des centaines de clients accèdent en même temps à  votre site Web, une poignée de connexions peut généralement traiter toute la charge. Pour que vos applications fonctionnent efficacement, vous devez contrôler les ressources de connexion et surveiller l'état de vos pools afin d'être averti avant qu'ils ne débordent et que vos clients commencent à  se plaindre … ou à  aller voir ailleurs.

Lire l'article
SQL Server Actualités – Semaine 13 –  2005

SQL Server Actualités – Semaine 13 – 2005

Les actualités SQL Server pour le mois d'Avril 2005

Lire l'article