
Reporting Services : Qu’en est-il des services Web ?
Vous vous interrogez peut-être sur les alternatives permettant de proposer l’authentification Windows.Une approche fiable consiste à employer le service Web Report Server.
Lire l'article
Optimisation des bases de données MS SQL Server : les requêtes
En théorie, quelle que soit la façon d'écrire une requête, le SGBDR doit être capable de trouver le moyen le plus efficace de traiter la demande, grâce à l'optimiseur. Mais parce qu'il y a loin de la théorie à la pratique, différentes écritures et différents styles de résolution, alliés à la qualité de l'indexation peuvent donner des temps d'exécution très variés.
C'est pourquoi la maîtrise de la conception de requêtes est un des points clefs de la performance d'une base de données bien conçue. Voyons quels en sont les principes basiques.
Dans un cours que je donne aux Arts & Métiers, je montre comment une bonne indexation alliée à la qualité de l'écriture des requêtes, peut faire varier dans une proportion de plus de 300 le temps d'exécution d'une requête. Je commence l'exercice par une demande simple : écrire une requête SQL permettant de répondre à une question basique, mais en prenant soin d'exprimer différentes solutions, même les plus bizarres.
Outre la solution simpliste, certains y arrivent par une union, d'autres avec des sous requêtes, d'autres encore avec des jeux de CASE... L'exécution brute de toutes ces solutions, donne un coût d'exécution allant du simple au triple. La pose d'un premier index trivial ne donne rien, par manque de sélectivité. Après élimination de cette première tentative, la pose d'un nouvel index montre que les requêtes les plus coûteuses au départ deviennent les plus rapides, alors que celles qui étaient les moins coûteuses à l'origine n'ont rien gagné. Un nouvel essai d'indexation remet toutes les requêtes au même rang qu'au départ, chacune gagnant dans la même proportion et plus que l'indexation précédente.
Enfin, la dernière tentative d'indexation étant la bonne, toutes les requêtes bénéficient d'un gain important, mais certaines bien plus que d'autres. Le clou est enfoncé lorsque l'on choisit de dénormaliser avec une vue. Là, le gain devient gigantesque. Il est voisin de 13 000. Mais il ne prend pas en compte l'effort supplémentaire à faire pour les mises à jour (INSERT, UPDATE, DELETE...).
Cet exercice nous apprend trois choses :
• différentes écritures d'une même requête ne donneront pas forcément les mêmes performances, bien que dans l’absolu, ce devrait être le cas [1]
• rien ne sert de poser un index s'il ne sert pas la requête
• une même requête écrite de différentes manières ne bénéficiera pas des mêmes gains lorsque l’on pose un index J’ajouterai que tout ceci évolue en fonction de la volumétrie des données et des données mêmes !
Tant est si bien qu’il est difficile de trouver de prime abord ce qu’est l’écriture d’une bonne requête. Affirmons cependant qu’une bonne requête est une requête qui sait tirer partie du moteur de requête pour le forcer à calculer un plan de requête dont les étapes sont les plus courtes à traiter.
[1] En fait, nous croyons souvent et naïvement que certaines écritures de requêtes sont identiques. Mais nous oublions souvent l’influence du marqueur NULL, dont le comportement particulier dans différents prédicats oblige le moteur SQL à des constructions parfois fort différentes.

Utilisation de Reporting Services dans un environnement Internet / Extranet
Il y a quelques mois, j’ai travaillé avec un client qui déployait une nouvelle version d’un portail Web de commerce électronique. L’application, utilisée principalement par les partenaires du client, expose les données de ventes et d’autres informations confidentielles. Le client souhaitait employer des applications sur Internet ou des extranet, cet article explique comment déployer d’abord un modèle d’authentification personnalisé pour Reporting Services, puis comment développer des rapports capables, au moment de l’exécution, de filtrer les données selon l’utilisateur qui consulte les rapports. Vous pouvez également vous servir de cette technique de filtrage avec le modèle de sécurité par défaut de Reporting Services.
Lire l'article

Actu SQL 24
ApexSQL vient de rendre disponible ApexSQL Enforce, son nouvel outil de standardisation pour les bases de données. Cette solution permet d’utiliser C# et Visual Basic .NET pour créer des règles de bases de données personnalisables. ApexSQL Enforce doit permettre aux DBA et développeurs de renforcer les standards de nommage et de codes, afin que les […]
Lire l'article
XML et SQL SERVER
Les informations échangées entre les différents systèmes, les différentes applications le sont de plus en plus auSQL Server, se sont adaptées. En effet, SQL Server à, entre autre, pour objectif de faciliter le travail avec les données. Pour cela, SQL Server dispose d'un ensemble d'instructions pour extraire des informations relationnelles au format XML ou bien l'opération inverse qui consiste à lire des données au format XML afin de stocker les informations dans une structure relationnelle classique.
Ces 2 étapes sont nécessaires et permettent de confier au moteur de base de données la plupart des transformations depuis ou vers le format XML à SQL Server. Mais SQL Server propose plus en offrant la possibilité de créer des colonnes de type XML. En intégrant directement les informations XML dans la structure relationnelle classique, SQL Server offre plus de souplesse en terme de stockage. Ce type XML est bien plus qu'un simple champ texte car SQL Server rend possible l'indexation des colonnes de type XML mais également la mise à jour, l'ajout et la suppression de données dans le document XML lui-même.
Ce sont ces trois fonctionnalités (extraire les informations au format XML, importer des données XML, stocker des données au format XML) de SQL Server qui sont exposées ci-dessous.

Un outil de reporting fort à propos
Depuis le lancement initial de .NET Framework 2.0.
Lire l'article
La sécurité de SQL Server 2005 en 10 étapes
Le produit SQL Server 2005 de Microsoft est un sécuriser les composants de l’infrastructure, notamment les serveurs de base de données. Cette stratégie met l’accent sur la protection de la périphérie, du réseau, des hôtes, des applications, des données et sur les défenses physiques. Le présent article expose 10 étapes à respecter avant, pendant et après l’installation de SQL Server 2005, afin de blinder votre infrastructure avec une défense en profondeur.

Prenez le contrôle de vos rapports avec ReportViewer
Visual Studio 2005 constitue la clé de voûte de toutes ces fonctionnalités. Il s’agit d’un outil souple, utilisable dans les Windows Forms et formulaires Web pour afficher deux types de rapports. Le premier type est un rapport côté serveur, qui nécessite un serveur de rapports SSRS.
Ce dernier fournit les valeurs des paramètres du rapport, crée les datasets et assure le rendu. Le contrôle ReportViewer affiche ensuite le rapport rendu dans une fenêtre d’application. Lorsque vous créez des rapports côté serveur, vous utilisez le mode de traitement distant. Le deuxième type est un rapport local. Ces rapports sont distribués en tant que partie intégrante d’une application et ne requièrent pas de serveur SSRS. Toutefois, le fait de s’affranchir du lien à un serveur de rapports a un coût. L’application doit fournir les valeurs pour les paramètres du rapport et créer tous les datasets. Le contrôle ReportViewer assure le rendu du rapport. Lorsque vous optez pour cette approche, vous utilisez le mode de traitement local.

La chute des cookies ?
La gestion des sessions utilisateur sur plusieurs fermes Web et plateformes demeure l’un des défis suprêmes du développement de sites Web à haute disponibilité. Comme l’explique l’article « Une recette pour remplacer les variables de session » (Club Abonnés, SQL Server Magazine décembre 2006), l’utilisation conjointe des cookies, des procédures stockées SQL Server, d’un générateur de GUID et de paramètres d’URL. Certains développeurs évitent les paramètres d’URL car ils sont transmis de manière visible d’une page à l’autre. Ils leur préfèrent le passage de valeurs au moyen de champs masqués. Dans les deux cas, les résultats ne sont pas sécurisés. Par conséquent, les valeurs passées d’une page à l’autre doivent être les plus obscures possibles.
Le passage de toute information présente un risque potentiel pour la sécurité. J’aime utiliser les GUID car ils ne révèlent pas réellement d’informations utiles pour les pirates potentiels et permettent malgré toute la persistance de la session pendant tout le temps nécessaire. Le présent article va aborder les techniques que j’emploie pour créer un gestionnaire de sessions sans cookies basé sur SQL Server. Il présente également le fonctionnement du gestionnaire de sessions et différentes manières de l’employer.

Construisez un système ETL simple avec SSIS
Vous savez probablement que vous pouvez utiliserun entrepôt de données (data warehouse).Mais comment allez-vous procéder ? À quoi ressemble une application ETL ?SSIS se targue de proposer tellement de nouveautés que les nouveaux venus ont l’impression d’avoir déballé un puzzle sur leur bureau. Il est difficile d’assembler les pièces sans avoir sous les yeux une vue d’ensemble du résultat final, notamment lorsque les pièces d’autres puzzles viennent jouer les trouble-fêtes ou lorsque certains éléments manquent !
L’objectif de cet article est justement de fournir la vue d’ensemble nécessaire : nous allons aborder les opérations élémentaires de conception et de construction de packages SSIS, et ainsi fournir les bases pour l’étude ultérieure des techniques de chargement incrémentiel concernant les dimensions et faits, ainsi que les variables, les scripts et l’audit de base des processus.


Actu SQL 28
La bataille fait rage sur le marché des serveurs, faisant perdre son latin au Gartner Group. Le cabinet d’analyse a ré-estimé la progression du marché à la baisse plaçant IBM devant HP. En mai dernier, le cabinet d’analyse avait indiqué l’inverse. A présent, IBM fait 29.4 % des revenus totaux du premier trimestre 2008 contre […]
Lire l'article
Placez les données de vos cubes sur le devant de la scène
une autre perspective de leurs données. Cette capacité peut s’avérer importante lorsque les rapports doivent afficher un grand nombre de mesures et se servent des dimensions en tant que tranches de données.
Par exemple, un rapport qui présente plusieurs mesures pour un seul employé ou produit n’a pas besoin de reprendre cette même information sur les lignes ou dans les colonnes. Par conséquent, nous allons voir comment placer les mesures sur les lignes et une autre dimension, Time, dans les colonnes, tout en réalisant les tranches à partir d’une autre dimension. Nous allons également expliquer comment paramétrer une requête MDX et appliquer un formatage aux valeurs.

Reporting Services : Conseils et astuces
Le choix et l’installation de SQL Server Reporting Services (SSRS) constituent uniquement la première étape visant à satisfaire la multitude des consommateurs de rapports présents dans votre entreprise. Il vous reste maintenant à produire des rapports éblouissants qui tirent parti des fonctionnalités avancées, afin d’afficher les données conformément à la myriade d’attentes des utilisateurs, sans pour autant délaisser vos autres tâches.
Cet article propose quelques conseils et astuces pour créer des rapports à la fois utiles et souples, qui s’exécutent de manière appropriée. Il indique également un échantillon d’outils tierce partie qui vous permettront d’étendre les fonctionnalités de SSRS.

Analyse décisionnelle : gagnez le gros lot
Depuis quelque temps, la majorité des grandes entreprises se tournent vers des plates-formes d’SQL Server 2005 pour essayer de gagner à la loterie puisse fort ressembler à une simple activité récréative, vous serez capable de transposer directement ces techniques à vos projets métier, comme je l’ai fait pour de nombreux scénarios de sécurité sociale. Bien souvent, les exercices amusants constituent la meilleure approche pour maîtriser des outils et technologies intimidants. En outre, autre avantage connexe, cet article pourrait tout simplement vous rendre terriblement riche.
Lire l'article
actu SQL sem 23
Fin mai, s’est tenue la dernière réunion du GUSS (Groupe des utilisateurs de le décisionnel ! D’abord un petit retour sur le « pourquoi » du décisionnel, avant de s’engouffrer au fur et à mesure dans son évolution et l’offre de Microsoft. Cette session – panorama découverte de la Business Intelligence avec SQL Server – […]
Lire l'article

Prenez le contrôle de vos rapports avec ReportViewer, 2e partie
Comme vous avez pu le découvrir dans la 1ère partie de cet article, le contrôle ReportViewer dees paramètres du rapport. Dans la 1ère partie de cet article, j’expliquais comment créer et afficher un rapport local en utilisant principalement la programmation « drag-and-drop » (glisser-déplacer) pour créer le dataset.
Nous allons maintenant voir comment écrire du code servant à demander les paramètres du rapport et à fournir le dataset, ce qui vous ouvrira des possibilités infinies concernant les types de rapports que vous pouvez créer. Par exemple, il est possible de créer une application qui stocke les définitions de rapport local dans des fichiers externes, afin que vous puissiez ajouter de nouveaux rapports ou mettre à jour des rapports existants sans recompiler et redistribuer l’application.

Validation Intelligente des données
Lorsqu’une personne vous demande de décrire les données de votre entreprise, d’un système précis ou d’une base de données spécifique, combien de fois n’avez-vous pas répondu en mettant l’accent sur la taille du stockage, le taux de croissance, le nombre de tables ou le nombre de lignes ?Ces caractéristiques sont certes importantes pour la conception et la gestion d’une solution efficace et maintenable, mais je vous propose de ne pas limiter vos réponses à la quantité ou au volume, mais également d’inclure une caractérisation de la qualité des données. Après tout, ce n’est pas la quantité des données qui importe, mais leur qualité. Une entreprise peut avoir la plus grande base de données au monde, avec le taux de croissance le plus impressionnant, mais si elle ne peut quantifier la qualité de ses données, celles-ci n’ont aucune utilité.
Le terme « validation intelligente des données » décrit le concept consistant à configurer l’environnement de base de données et de traitement afin d’appliquer automatiquement la validation. Lorsque vous concevez, mettez en oeuvre et gérez vos propres bases de données, vous devez prendre en compte plusieurs aspects essentiels de leur conception : la propriété des données, leur intendance, leurs définitions, leur modélisation, leur normalisation, les valeurs NULL et les types de données, ou encore le nettoyage et l’intégrité des données.
À mesure que vous découvrirez ces aspects tout au long de l’article, rappelez- vous qu’il n’existe rien d’absolu en matière d’options de conception et d’implémentation. Au contraire, vous devez considérer systématiquement les fonctionnalités, avantages et compromis de chaque aspect par rapport à votre environnement spécifique. Si vous gardez cette règle à l’esprit tout au long de votre lecture, vous trouverez des tonnes d’idées pour accroître la qualité de vos données en mettant en oeuvre des stratégies intelligentes de validation de ces dernières.
Les plus consultés sur iTPro.fr
- L’IA dans l’entreprise : questions et pratiques contemporaines
- Être une femme dans la tech en 2025 : comment prendre sa place et évoluer ?
- Les différents types de cyberattaques les plus répandues
- Bilan 2024 de la start-up Nation
- DORA, vecteur d’accélération de la transformation numérique des assureurs
