Business Intelligence and Data Warehousing in SQL by cyz13121

VIEWS: 149 PAGES: 37

									Analyse décisionnelle et entrepôt de données dans SQL
Server 2005
Contenu
 Introduction

 Par où commencer avec SQL Server2005
 bêta 2 ?

 Entrepôt de données relationnel

 Extract, Transformation, and Loading (ETL)

 Services d’analyses

 Services de rapport

 Résumé

 Annexe A : Exemples de code


Introduction
Microsoft SQL Server 2005 est une plate-forme d’analyse décisionnelle (BI – Business Intelligence)
complète qui offre l'ensemble des fonctions, outils et fonctionnalités permettant de construire aussi bien
des applications analytiques classiques qu'innovantes. Le présent article présente les outils que vous
utiliserez pour construire une application analytique, et souligne les nouvelles fonctionnalités grâce
auxquelles la création et la gestion de systèmes BI complexes n'a jamais été aussi simple.
Le tableau suivant présente une vue d'ensemble des composants d'un système Business intelligence et
des composants Microsoft SQL Server 2000 et SQL Server 2005 correspondants.

Composant                            SQL Server 2000                      SQL Server 2005

Extract, transformation, and load    Data Transformation Services         Data Transformation Services
(ETL)                                (DTS)                                (DTS)

Entrepôt de données relationnel      Base de données relationnelle        Base de données relationnelle
                                     SQL Server 2000                      SQL Server 2005

Base de données                      SQL Server 2000 Analysis             SQL Server 2005 Analysis
multidimensionnelle                  Services                             Services

Exploration de données               SQL Server 2000 Analysis             SQL Server 2005 Analysis
                                     Services                             Services

Création de rapports gérée           SQL Server 2000 Reporting            SQL Server 2005 Reporting
                                     Services                             Services

Requête et analyse spécifiques       Produits Microsoft Office (Excel,    Produits Microsoft Office (Excel,
                                     composants Web Office, Data          composants Web Office, Data
                                     Analyzer, portail Sharepoint)        Analyzer, portail Sharepoint)

Outils de développement de base      SQL Server 2000 Enterprise           SQL Server 2005 Business
de données                           Manager, Analysis Manager,           Intelligence Development Studio
                                     Analyseur de requêtes, divers        (Nouveau !)
Composant                              SQL Server 2000                      SQL Server 2005

                                       autres

Outils de développement de base        Enterprise Manager, Analysis         SQL Server 2005 SQL Server
de données                             Manager                              Management Studio (Nouveau !)



Deux composants sont nouveaux dans SQL Server 2005 : SQL Server Management Studio et SQL Server
Business Intelligence Development Studio. Les autres composants BI principaux – DTS, Analysis Services
OLAP, Analysis Services Data Mining et Reporting Services – ont été considérablement améliorés dans
SQL Server 2005. La base de données relationnelle SQL Server 2005 contient plusieurs fonctionnalités
nouvelles qui sont significatives. Bien que les outils de requête et de portail Microsoft Office ne fassent
pas partie de SQL Server, les versions actuelles continueront de fonctionner sur SQL Server 2005. La
fonctionnalité BI des outils Office évoluera en même temps que les produits Office.
L'ensemble d'outils SQL Server 2005 Business Intelligence assure une intégration globale des outils de
Business Intelligence :


•   Conception : Business Intelligence Development Studio est le premier environnement de
    développement intégré conçu pour le développeur de systèmes Business Intelligence. Construit sur
    Visual Studio 2005, Business Intelligence Development Studio offre une plate-forme de
    développement professionnel intégrée et riche aux développeurs de systèmes BI. Le déboguage, le
    contrôle de source et le développement de script et de code sont disponibles pour tous les composants
    de l'application BI.

•   Synthèse : Les DTS (Data Transformation Services) ont été réécrits pour permettre d'effectuer une
    intégration, une transformation et une synthèse des données complexes à haute vitesse pour de très
    grandes quantités de données. Avec Business Intelligence Development Studio, la construction et le
    déboguage de logiciels deviennent presque un jeu. Les services DTS, Analysis Services (services
    d’analyses) et Reporting Services (services de rapport) collaborent pour présenter une vue
    transparente des données de sources hétérogènes.

•   Stockage : SQL Server 2005 tend à faire disparaître la limite entre les données relationnelles et
    multidimensionnelles. Vous pouvez stocker les données dans la base de données relationnelle, dans la
    base de données multidimensionnelle, ou utiliser la nouvelle fonctionnalité de mise en cache proactive
    pour tirer le meilleur parti des deux.

•   Analyse : L'exploration des données Microsoft a toujours été facile à utiliser. Elle l'est maintenant
    encore davantage avec l'adjonction de nouveaux algorithmes, tels que les règles d’association, les
    séries temporelles, les arbres de décision, les clusters de séquences, les réseaux neuronaux et Naïve
    Bayes. D'importantes nouvelles capacités analytiques ont également été ajoutées aux cubes des
    services d’analyses : indicateur de performance clé (PKI), scripts MDX et autres fonctions d'analyse
    avancées. L'infrastructure de remise et de gestion de rapports des Reporting Services permet de
    diffuser facilement des analyses complexes au public le plus étendu.

•   Remise : Reporting Services (services de rapports) étend la plate-forme Microsoft Business
    Intelligence pour toucher l'utilisateur d'entreprise qui a besoin d'utiliser l'analyse. Reporting Services
    est un environnement de création de rapports géré d'entreprise, intégré et administré via des services
    Web. Les rapports peuvent être personnalisés et remis sous divers formats, grâce à une gamme
    d'options d'interactivité et d'impression. Les analyses complexes peuvent parvenir à un large public
    grâce à la diffusion de rapports en tant que source de données pour le Business Intelligence effectué
    en aval. Les outils de requête et d'analyse spécifiques de Microsoft et ses partenaires resteront très
    intéressants pour accéder aux données Analysis Services et des bases de données relationnelles.
•   Gestion : SQL Server Management Studio intègre la gestion de tous les composants SQL Server
    2005. Les utilisateurs de solutions Business Intelligence bénéficieront de l'extension par Microsoft des
    capacités serveur propres au niveau du moteur relationnel – montée en charge, fiabilité, disponibilité,
    souplesse de programmation, etc. – à l'ensemble des composants de la plate-forme BI.
L'un des objectifs clés des composants de SQL Server 2005 Business Intelligence est de prendre en
charge le développement et l'utilisation de l’analyse décisionnelle dans des entreprises de toutes tailles et
pour tous les employés – non seulement les gestionnaires et les analystes, mais également les
participants opérationnels et externes. C'est à ce titre que SQL Server 2005 est si complet et intégré,
facile à utiliser, qu'il publie des données sous forme de services Web, délivre des performances élevées
sur du matériel non dédié, et contient une foule de nouvelles fonctionnalités que vous pouvez utiliser
pour développer des applications analytiques innovantes.
 Haut de page

Par où commencer avec SQL Server2005 bêta 2 ?
La première chose que vous remarquerez lorsque vous installerez SQL Server 2005 est que son
installation se déroule de manière intégrée. Vous n'avez plus besoin d'exécuter le programme
d'installation séparément pour des fonctionnalités comme Analysis Services. Si une fonctionnalité telle
que Reporting Services n'est pas disponible pour l'installation, c'est que votre ordinateur n'a pas la
configuration requise pour installer cette fonctionnalité. Lisez le fichier Lisezmoi pour une description
complète de la configuration nécessaire pour l'installation des fonctionnalités. Sur la plupart des
ordinateurs correctement configurés, vous devez accepter toutes les valeurs par défaut au cours de
l'installation, afin d'installer les principales fonctionnalités :

•   Moteur de base de données relationnelle SQL Server

•   DTS

•   Analysis Services

•   Reporting Services

•   SQL Server Management Studio (ensemble d'outils de gestion de bases de
    données)

•   Business Intelligence Development Studio (ensemble d'outils de
    développement d'applications BI)
Reporting Services nécessite qu'IIS soit installé et correctement configuré. Nous vous recommandons
fortement de prendre le temps d'effectuer ces étapes de configuration et d'installation, étant donné que
Reporting Services fait partie intégrante de l'ensemble de fonctionnalités 2005 de Business Intelligence.
Les clients qui connaissent Analysis Services peuvent être déroutés par l'absence de référentiel de base
de données Analysis Services. Dans SQL Server 2000, le référentiel Analysis Services était livré sous
forme de base de données Microsoft Access. Analysis Services 2005 ne contient pas de référentiel de
base de données. À la place, les informations de métadonnées de base de données Analysis Services
sont stockées sous forme de fichiers XML et gérées par Analysis Services. Ces fichiers XML peuvent être
placés sous contrôle de source, si vous le souhaitez.
Nous vous recommandons d'utiliser Business Intelligence Development Studio pour développer, et SQL
Server Management Studio pour utiliser et gérer les objets de base de données BI. Vous pourriez
concevoir des packages DTS et des cubes et modèles d'exploration Analysis Services dans SQL Server
Management Studio, mais Business Intelligence Development Studio est plus facile et efficace pour
concevoir et déboguer des applications BI.
Pour la version bêta 2, il sera certainement plus formateur de commencer par une nouvelle application
plutôt que de mettre à niveau des packages DTS ou des bases de données Analysis Services existants. Il
peut vous être utile de « recréer » un package ou une base de données existant, si vous en disposez.
Après vous être familiarisé avec les nouveaux outils, fonctionnalités et concepts, essayez de mettre à
niveau les objets existants.
Beaucoup de clients utiliseront les outils SQL Server pour développer un système avec la structure
d’analyse décisionnelle, désormais familière, comprenant un ou plusieurs systèmes source utilisant DTS
pour alimenter un entrepôt de données en données relationnelles dimensionnelles, lui aussi utilisé pour
remplir la base de données Analysis Services. Cependant, SQL Server 2005 fournit de nombreuses
options pour s'affranchir de cette conception générique, en éliminant ou en virtualisant différents
composants.

 Haut de page
Entrepôt de données relationnel
Le moteur de base de données relationnelle SQL Server 2005 offre plusieurs fonctionnalités extrêmement
intéressantes pour la conception et la maintenance d'applications de type entrepôt de données (data
warehouse), parmi lesquelles :

•   Partitions de table permettant un chargement rapide des données et la maintenance simplifiée
    des tables très volumineuses.

•   Création facile d'un serveur de rapports

•   Améliorations de Transact-SQL, avec notamment de nouveaux types de données et de nouvelles
    fonctions analytiques

•   Opérations d'index en ligne

•   Opérations de sauvegarde/restauration à granularité fine

•   Initialisation rapide des fichiers

Serveur de rapports
Une technique courante pour décharger la base de données transactionnelle de la gestion du rapport
consiste à utiliser un serveur de rapports. Le serveur de rapports tient à jour une image de la base de
données transactionnelle en observant un certain temps de latence, généralement de la veille. Le serveur
de rapports est utilisé pour la plupart des extractions de rapports et d’entrepôts de données.
Microsoft SQL Server 2005 ajoute deux nouvelles fonctionnalités qui permettent de créer et de maintenir
très facilement un serveur de rapports. Le temps de latence appliqué par le serveur de rapports SQL
Server peut être bien inférieur à un jour. De plus, le serveur est conçu pour servir de système de secours
pour le système transactionnel.
Pour créer un serveur de rapports, vous devez d'abord créer un miroir de la base de données, une
nouvelle fonctionnalité SQL Server 2005 qui fournit un système de secours instantané pour la haute
disponibilité. Pour plus d'informations, lisez la rubrique de la documentation en ligne « Database
Mirroring Concepts » (Mise en miroir de bases de données) (en anglais). Le miroir de base de données ne
pouvant pas être interrogé directement, c'est là que la deuxième nouvelle fonctionnalité entre en jeu.
Créez une vue de la base de données sur le miroir. Une vue de base de données est une copie en lecture
seule de la base de données à un instant donné. Elle est peu encombrante, puisqu'elle ne contient pas
une copie complète de la base de données. Il peut exister plusieurs vues de base de données, bien que le
maintien d'une vue de base de données ait un certain impact sur la base de données sur laquelle est
basée la vue. Pour plus d'informations, lisez la rubrique de la documentation en ligne « Understanding
Database Views » (Vues de base de données) (en anglais).
En créant une vue de base de données sur un miroir de base de données, vous pouvez facilement créer
un serveur de secours qui garantit la haute disponibilité du système et assure également la fonction de
serveur de rapports.

Partitions de table
Les données des tables et index partitionnés sont divisées en unités horizontales, pour que les groupes
de lignes soient mappés en partitions individuelles. Les opérations effectuées sur les données, comme les
requêtes, sont exécutées comme si l'intégralité de la table ou de l'index était une entité unique.
Le partitionnement peut :

•    Faciliter la gestion des tables et index.

•    Améliorer les performances de requête sur les machines multiprocesseur.


Dans un entrepôt de données relationnel, les tables de faits sont des candidates toutes désignées pour le
partitionnement de table, et le partitionnement par plage de dates est la stratégie de partitionnement la
plus commune.
Une table partitionnée se définit en trois étapes, comme indiqué dans la rubrique de la documentation en
ligne « Création de tables et index partitionnés »:
1.    Création d'une fonction de partition pour indiquer comment une table qui utilise la fonction peut être
      partitionnée.
2.    Création d'un schéma de partition pour spécifier l'emplacement des partitions d'une fonction de
      partition sur des groupes de fichiers.
3.    Création d'une table ou d'un index en utilisant le schéma de partition.
Plusieurs tables peuvent utiliser le même schéma de partition.
Ce document décrit uniquement le partitionnement Range des tables de faits. Il ne constitue pas une
description complète ou un didacticiel sur le partitionnement des tables. Les lecteurs qui s'intéressent à
ce sujet doivent consulter la documentation en ligne SQL Server.
Le schéma de partitionnement le plus courant partitionne la table de faits par plage de dates, par
exemple : année, trimestre, mois, ou même jour. Dans la plupart des scénarios, le partitionnement de
date de la ou des table(s) de faits volumineuse(s) facilitera la gestion. Afin d'obtenir de meilleures
performances de requête, la table de dimension Time doit être partitionnée en utilisant le même schéma
de partitionnement.

•    Une table partitionnée a le même comportement qu'une table non partitionnée.

•    Les requêtes effectuées dans la table sont résolues correctement.

•    Les insertions, mises à jour et suppressions directes dans la table sont résolues automatiquement sur
     la ou les partition(s) correcte(s).

Utilisation de partitions de table pour des chargements de données rapides
La plupart des applications d’entrepôt de données ont du mal a charger des volumes de plus en plus
importants de données dans une fenêtre de chargement étroite et qui se réduit toujours davantage. Le
processus type débute par des extractions de plusieurs systèmes sources, suivies des étapes de
nettoyage, transformation, synthèse et rationalisation des données à travers ces systèmes. L'application
de gestion des données est contrainte d'effectuer le processus complet d'extraction, transformation et
chargement dans la fenêtre de chargement. Les utilisateurs insistent en général pour que le système
minimise le temps d'indisponibilité de l’entrepôt de données pour leurs requêtes. L'étape « écriture » de
l'application de gestion des données, au cours de laquelle de nouvelles données sont insérées dans
l’entrepôt de données existant, doit être conçue pour s'effectuer rapidement et avec un impact minimum
sur l'utilisateur.
Afin de charger les données très rapidement, le modèle de récupération des données doit être journalisé
en bloc ou de façon simple, et la table doit être vide, ou contenir des données mais pas d'index. Si ces
conditions sont remplies, un chargement non journalisé est possible. Dans SQL Server 2000, avant qu'il
existe des tables partitionnées, ces conditions n'étaient généralement remplies que lors du chargement
de l’entrepôt de données historique initial. Certains clients utilisant des entrepôts de données volumineux
ont construit une structure quasi-partitionnée en construisant une vue UNION ALL sur des tables
physiques séparées ; ces tables étaient remplies à chaque cycle de chargement à l'aide d'une technique
non journalisée. Cette approche n'était pas entièrement satisfaisante, et les tables partitionnées de SQL
Server 2005 apportent un niveau de fonctionnalité supérieur.
Dans SQL Server 2005, vous ne pouvez pas effectuer un chargement non journalisé directement dans
une partition. Cependant, vous pouvez effectuer le chargement dans une table séparée que nous
appellerons la pseudo-partition. Dans certaines conditions, vous pouvez faire basculer la pseudo-partition
dans la table partitionnée au cours d'une opération de métadonnées extrêmement rapide. Cette
technique répond à nos deux conditions :

•   minimisation du délai global de chargement : le chargement de la pseudo-partition est effectué sans
    journalisation, et

•   minimisation de l'impact sur l'utilisateur final et garantie de l'intégrité de l’entrepôt de données : les
    pseudo-partitions peuvent être chargées pendant que les utilisateurs interrogent l’entrepôt de
    données. L'application de gestion des données peut attendre que les tables de faits soient chargées et
    prêtes avant d'effectuer le changement de partition. L'opération de changement de partition s'effectue
    très rapidement, avec un temps de réponse inférieur à la seconde.
En outre, la pseudo-partition peut être sauvegardée en tant que table séparée, ce qui améliore la
capacité de gestion du système.

Utilisation de partitions de table pour des suppressions de données rapides
De nombreux entrepôts de données maintiennent active une fenêtre glissante de données détaillées dans
l’entrepôt de données. Par exemple, la table de faits peut contenir des données sur trois, cinq ou dix
années. Régulièrement, les plus anciennes données sont supprimées de la table. Les données sont
nettoyées principalement pour améliorer la performance des requêtes et réduire les coûts du stockage.
Grâce aux partitions SQL Server 2005, il est très aisé de nettoyer les anciennes données d'une grande
table de faits partitionnée. Il suffit de créer une pseudo-partition comme indiqué ci-dessus, puis de la
basculer dans la table partitionnée. La table partitionnée possède une partition vide dans laquelle se
trouvait auparavant une partition remplie ; la pseudo-partition contient des données là où elle était vide.
La pseudo-partition peut être sauvegardée, tronquée ou abandonnée selon le choix.
De manière optionnelle, vous pouvez choisir de redéfinir la fonction de partition pour fusionner toutes les
partitions de gauche (vides) en une seule.

Améliorations de Transact-SQL
Nouveaux types de données
Certains nouveaux types de données seront utiles pour l’entreposage de données :

•   Varchar(max), nvarchar(max) et varbinary(max) contiennent jusqu'à 2 Go de données. Ils
    constituent des alternatives utiles aux types de données texte, ntext et image. Ces types de
    caractères étendus peuvent être utiles pour inclure des métadonnées étendues et d'autres
    informations descriptives dans un entrepôt de données.

Nouvelles fonctions analytiques
Plusieurs nouvelles fonctions analytiques fournissent des capacités analytiques de base dans Transact-
SQL. Ces fonctions peuvent être utiles dans des entrepôts de données dans lesquels il est possible
d'effectuer des requêtes utilisateur dans la base de données relationnelle plutôt qu'exclusivement dans
Analysis Services. De plus, ces calculs complexes sont utilisés de façon courante lors de la mise en
attente des données pour développer des attributs de données précieux.
ROW_NUMBER. Retourne le numéro de ligne séquentiel du jeu de résultats.
RANK. Retourne le rang de lignes dans un jeu de résultats. RANK serait identique à ROW_NUMBER sur
un jeu ordonné, mais pas pour le traitement des lignes qui sont liées. Toutes les lignes ayant la même
valeur ordonnée reçoivent le même rang. Le rang suivant correspond à nouveau au ROW_NUMBER. En
d'autres termes, s'il y a un lien bidirectionnel pour la 1ère place, les lignes un et deux reçoivent RANK=1,
et la ligne trois RANK=3. Aucune ligne ne reçoit RANK=2.
DENSE_RANK. Retourne le rang de lignes dans un jeu de résultats. La fonction DENSE_RANK est
similaire à RANK, mais remplit les vides laissés par la fonction RANK. Dans l'exemple ci-dessus, les lignes
un et deux reçoivent RANK=1, et la ligne trois RANK=2.
NTILE. Divise un jeu ordonné dans le nombre spécifié de groupes de tailles à peu près égales.
Ces fonctions analytiques ne sont pas disponibles pour SQL Server 2005 bêta 2.

Opérateurs PIVOT et UNPIVOT
L'opérateur PIVOT permet de générer un rapport de tableau croisé dynamique, en faisant pivoter un jeu
de résultats le long d'une valeur break dans une requête. Par exemple, si la table contient des données
pour « Réalisé » et « Budgets » sur des lignes séparées, l'opérateur PIVOT peut être utilisé pour générer
un rapport de tableau croisé dynamique avec des colonnes nommées [Réalisé] et [Budgets].
De la même façon, l'opérateur UNPIVOT permet de décomposer une ligne en plusieurs lignes. Dans cet
exemple, un ensemble de lignes contenant [Réalisé] et [Budgets] pourrait être transformé en plusieurs
lignes marquées de ces valeurs.
Dans les précédentes versions de SQL Server, il était possible d'écrire des instructions Transact-SQL
SELECT complexes pour faire pivoter les données. Les opérateurs PIVOT et UNPIVOT fournissent un
moyen direct de faire pivoter les données.

Requêtes récursives
Il existe de nombreux scénarios dans lesquels une « requête récursive » est extrêmement utile. Une
nouvelle fonctionnalité de SQL Server 2005 permet d'effectuer ce type de requête assez facilement.
Une requête récursive est une requête effectuée sur une table comportant une jointure sur elle-même
(self-join). Les deux exemples les plus communs sont des tables renfermant des informations sur des
employés et leurs responsables, et des tables de nomenclatures. Vous trouverez une illustration de table
avec self-join dans la base de données AdventureWorks, table Employee.
Il a toujours été facile d'interroger une table avec self-join pour des relations directes, par exemple, pour
le comptage d'employés travaillant directement sous un responsable. Cependant, il est plus difficile de
répondre à une question du type « Combien d'employés se trouvent dans le service d'un responsable ? ».
La fonction de base de données relationnelle SQL Server 2005 qui répond à ce problème à pour nom
« expressions de table commune récursive ». Vous trouverez en Annexe un exemple de requête
récursive qui répond à la question posée précédemment. Des informations supplémentaires sont
disponibles dans la rubrique de la documentation en ligne « WITH <common_table_expression> » (en
anglais).
Haut de page

Extraction, Transformation, and Loading (ETL)
DTS (Data Transformation Services) est un élément complètement nouveau pour SQL Server 2005. DTS
est une fonctionnalité bien connue de SQL Server 2000, mais DTS 2005 a été remodelé pour constituer
une plate-forme ETL d'entreprise. DTS offre une grande diversité de fonctionnalités et de très hautes
performances, nécessaires à la construction d'applications ETL pour l'entreprise. DTS est totalement
programmable, incorporable et extensible – des caractéristiques qui en font une plate-forme ETL idéale.
Les fonctionnalités de DTS 2005 sont résumées ci-dessous. Pour une description plus complète des
applications de DTS au développement de systèmes ETL, consultez la documentation en ligne de SQL
Server.

Développement de packages
Fonctionnalités DTS de SQL Server 2005                              Développement      Plate-forme ETL
                                                                    ETL d'entreprise

Utilisation de l'interface utilisateur graphique de Business               •
Intelligence Development Studio pour concevoir des
packages DTS pour les applications de gestion des données.
Les lots DTS sont conçus, développés et débogués dans
Business Intelligence Development Studio en faisant
glisser des tâches de la boîte à outils, en définissant leurs
propriétés et en connectant les tâches à des contraintes de
priorité.

Utilisation des assistants de SQL Server Management                        •
Studio pour développer des packages DTS simples qui
effectuent des tâches courantes comme la copie de base de
données.

Les éditeurs de logiciels incorporeront des fonctionnalités                                   •
DTS dans leurs produits, créant des assistants pour générer
des packages personnalisés selon le besoin.

Séparation du contrôle de flux du flux de données. La                      •
plupart des packages DTS contiennent plusieurs tâches de
contrôle de flux et des boucles ou séquences de tâches qui sont
disposées dans la fenêtre de contrôle de flux. Une tâche de
contrôle, la tâche Pipeline, est le moteur du package et a sa
propre surface de conception pour disposer les flux de
données. La séparation des flux de contrôle et de données rend
les packages plus lisibles.

Les variables de package sont définies et visibles. Les                    •
variables sont étendues par exemple à un package, une boucle
ou une tâche.

Des systèmes ETLM complexes peuvent être mis en œuvre                      •
en construisant des réseaux de packages, un package appelant
d'autres packages. Les sous-packages peuvent de manière
flexible, réutiliser la logique, les variables et le contexte. Il
n'est pas aussi nécessaire que dans DTS 2000 d'imbriquer des
packages de cette façon.

L'infrastructure de configuration de package est un                        •
système extensible pour personnaliser le mode d'exécution
d'un package selon les circonstances.

Les packages DTS sont stockés au format XML dans le                        •                  •
système de fichiers ou dans SQL Server. Les fichiers XML DTS
peuvent être gérés sous contrôle de source.

L'Assistant Migration de package DTS 2000 permettra de                     •
Fonctionnalités DTS de SQL Server 2005                           Développement      Plate-forme ETL
                                                                 ETL d'entreprise

migrer les packages vers DTS 2005 et générera des
avertissements en cas de problème de mise à niveau.

Le runtime DTS 2000 est inclus avec SQL Server 2005, pour               •
exécuter des packages DTS 2000 sans les mettre à niveau.

Les opérations et résultats des packages sont journalisés sous          •                  •
divers formats, chez un grand nombre de fournisseurs.

La logique du gestionnaire d'événements peut être définie               •                  •
une fois et utilisée plusieurs fois.

Grâce à l'intégration à WMI, les packages peuvent répondre              •                  •
à des événements externes (comme l'exécution d'une copie de
fichier), ou déclencher des événements WMI que d'autres
processus peuvent consommer.

Possibilité de redémarrage des packages avec contrôle                   •
transactionnel et points de contrôle de pannes. Aide les
administrateurs à gérer des packages complexes en déplaçant
de grandes quantités de données.


Flux de contrôle

Fonctionnalités DTS de SQL Server 2005                           Développement      Plate-forme ETL
                                                                 ETL d'entreprise

Contraintes de priorité : Vous pouvez concevoir un package              •
pour faire passer le contrôle sur différentes tâches en cas de
succès, d'échec ou de fin d'opération.

Les tâches itératives incluent les boucles For, ForEach et              •
Sequence. Les développeurs de package peuvent facilement
effectuer un ensemble d'actions sur tout ou partie des tables
de la base de données, des fichiers dans un répertoire ou des
partitions dans un cube Analysis Services.

L'intégration à Analysis Services est transparente, avec des            •
tâches de contrôle qui exécutent automatiquement les DDL
Analysis Services, traitent les objets Analysis Services, ou
exécutent une requête d'exploration des données. Comme
indiqué ci-dessus, le pipeline DTS s'intègre également à
Analysis Services.

Le script VB.NET est disponible avec la tâche Script. Une               •
deuxième tâche appelée tâche script ActiveX est utilisée
principalement pour la compatibilité ascendante avec DTS
2000.
Fonctionnalités DTS de SQL Server 2005                          Développement      Plate-forme ETL
                                                                ETL d'entreprise


 Les tâches de communication incluent :                                 •
 • File de messages

 • Envoi de message


 Les autres tâches de flux de contrôle incluent :                       •
 • Insertion en bloc

 • Exécution de package

 • Exécution de processus

 • Exécution SQL

 • Système de fichiers

 • FTP


Des tâches supplémentaires peuvent facilement être                                        •
développées à l'aide du modèle d'objet DTS.

Flux de données

Fonctionnalités DTS de SQL Server 2005                          Développement      Plate-forme ETL
                                                                ETL d'entreprise

Multiples sources, transformations et destinations dans                •
le pipeline de flux de données. Les données sont lues,
combinées et manipulées, puis écrites lorsque les
transformations sont terminées. La nécessité d'effectuer de
multiples écritures sur les tables de mise en attente est
réduite ou éliminée ; les performances de transformation sont
largement accrues.

La tâche de DTS Pipeline consomme les données de                       •                  •
multiples sources de données hétérogènes et paramètres
régionaux. L'architecture de Source de données extensible
prend déjà en charge les données des fichiers plats, des
sources OLEDB (y compris DB2 et Oracle), et des fichiers
bruts. D'autres sources, y compris celles qui consommeront
des données structurées de manière spécifique, sont prévues.

Des sources de données supplémentaires peuvent être                                       •
développées par Microsoft ou ses partenaires.

Des données de multiples sources peuvent être jointes avec             •
les opérateurs Join, Lookup et Union. Ces opérations sont
effectuées en mémoire, sans requérir d'opération d'écriture
sur une base de données ou un fichier.
Fonctionnalités DTS de SQL Server 2005                         Développement      Plate-forme ETL
                                                               ETL d'entreprise

Un flux de données peut être fractionné à l'aide des                  •
transformations Fractionnement conditionnel et
multidiffusion. Le moteur DTS de type compilateur
détermine quels flux de données peuvent être utilisés en
parallèle.

Avec les transformations Table des caractères, Mappage                •
de copie, Conversion de données et Colonne dérivée, il
est possible d'effectuer toutes sortes de transformations au
niveau de la ligne. Ces opérateurs sont plus proches des
assistants que des simples transformations. Ils assurent la
grande majorité des transformations de données requises.

Certaines tâches de transformation nécessitent de comparer            •
les données de plusieurs lignes. Les transformations Tri et
agrégation effectuent ces opérations de manière
extrêmement performante, dans le flux de données, à une
échelle allant bien au-delà de la portée des agrégations de
base de données.


Certaines tâches de transformation des données requièrent             •
une logique complexe, comme la correspondance
approchante, le regroupement approchant, la
génération de dimension temps, et les opérations de
Pivoting ou Unpivoting. D'autres tâches communes, comme
la gestion des clés de dimension, requièrent plusieurs
étapes. Des technologies et assistants spéciaux mettent ces
opérations complexes à la portée de tous les utilisateurs.

Les données transformées peuvent être écrites sur des cibles          •                  •
hétérogènes, comme des tables SQL Server, des tables de
base de données OLEDB, des fichiers plats et bruts.

Les données transformées peuvent être intégrées à d'autres            •
composants de la solution Microsoft BI, y compris les
bases de données et modèles d'exploration des données
Analysis Services.


Les flux d'erreur d'une étape de transformation peuvent               •                  •
être gérés de plusieurs manières :
• Les transformations en cours peuvent « réparer » les
données et les re-soumettre au flux principal.

• Les lignes erronées peuvent être journalisées dans des
tables ou fichiers pour une investigation et une re-
soumission hors connexion.
Fonctionnalités DTS de SQL Server 2005                              Développement      Plate-forme ETL
                                                                    ETL d'entreprise

Des transformations et destinations supplémentaires                                             •
peuvent être facilement développées par Microsoft ou ses
partenaires.




Développement et déboguage

Fonctionnalités DTS de SQL Server 2005                              Développement       Plate-forme ETL
                                                                    ETL d'entreprise

Le développeur de package peut définir des points d'arrêt au                •
niveau de la tâche de flux de contrôle. Le point d'arrêt peut
être défini avant, après ou à différents points de l'exécution de
la tâche dans le processus de déboguage.

Le développeur de package peut attacher une Visionneuse de                  •
données à chaque transformation dans le flux de données.
Lors du déboguage, la visionneuse de données affiche le
contenu du flux de données à ce stade.

Business Intelligence Development Studio est hébergé dans                   •                   •
Visual Studio. L'écriture de script et les autres tâches de
programmation tirent parti de cet environnement de
développement d'entreprise.

Le déploiement de package permet à l'utilisateur de                                             •
rassembler tous les composants de package, y compris les
scripts et exécutables personnalisés, pour une distribution vers
des systèmes de test, de production, ou d'autres systèmes
client.




DTS 2005 pour le développeur DTS 2000
Les développeurs de DTS 2000 ont mis au point une série d'astuces pour effectuer des opérations
complexes. Ces astuces – en particulier l'écriture de packages à modification automatique – ne sont pas
nécessaires avec DTS 2005. Vous devez utiliser les infrastructures de variables et configurations pour
écrire des packages dynamiques ; ne tentez pas d'écrire des packages à modification automatique.


Les infrastructures de configurations et de variables réduisent également la nécessité de créer des
systèmes complexes de sous-packages. S'il est bien conçu, un package unique peut être capable de
répondre à une grande variété de besoins ; par exemple, il pourra être réutilisé avec différentes
configurations pour charger de nombreuses tables de dimension dans un entrepôt de données
dimensionnel. Dans DTS 2000, un réseau complexe de packages DTS peut comporter de 50 à 100
packages ; dans DTS 2005, ce nombre peut se limiter à seulement dix packages.
 Haut de page

Analysis Services
SQL Server 2000 Analysis Services était constitué de deux fonctionnalités majeures complémentaires :
On-Line Analytical Processing (OLAP) et l'Exploration de données. Ces deux composants existent toujours
dans Analysis Services 2005 comme clés de voûte des applications analytiques.
Les améliorations des fonctionnalités OLAP Analysis Services 2005 peuvent être regroupées en deux
grandes catégories :
• Activation de deux types d'applications analytiques, soit en ajoutant des fonctionnalités complètement
nouvelles, soit en vous facilitant grandement la construction de fonctionnalités complexes.
• Renforcement de l'adaptation à l'entreprise des applications analytiques.


Fonctionnalité nouvelle ou améliorée                          Conception et       Administration
                                                              développement       et exploitation

Modèle dimensionnel unifié combinant les meilleures                   •
caractéristiques des modèles de données relationnels et
OLAP. Le modèle dimensionnel unifié est décrit de
manière plus détaillée plus loin dans ce document.

La mise en cache proactive vous permet de faire                       •                       •
fonctionner des applications à faible latence avec des
coûts de gestion quasiment nuls. La mise en cache
proactive est décrite de manière plus détaillée plus loin
dans ce document.

L’indicateur de performance clé (KPI) fournit un                      •
mécanisme simple, défini par serveur, pour définir des
mesures d'entreprise. Un KPI est composé d'expressions
correspondant à la valeur, l'objectif, l'état actuel et la
tendance, affichées au moyen de graphiques simples, tels
que de jauges et des feux rouges.

Les traductions offrent un mécanisme simple et géré de                •
manière centralisée pour stocker les données analytiques
et les présenter aux utilisateurs dans leur langue. Une
base de données analytique peut être présentée en
plusieurs langues.

Les scripts MDX constituent le nouveau mécanisme de                   •                       •
définition des membres calculés, jeux nommés et calculs
de cellule.
• La syntaxe de script MDX a été simplifiée et améliorée.
Les scripts MDX peuvent être débogués étape par étape.
• Les calculs de script MDX peuvent être mis en cache et
rendus permanents, ce qui garantit d'excellentes
performances de requête, même dans le cas de calculs
complexes.
• Les calculs de script MDX peuvent conserver des
comportements de calcul dynamique en temps réel.
Les scripts MDX sont décrits de manière plus détaillée plus
loin dans ce document.
Les procédures stockées d’Analysis Services                    •
permettent de créer des routines externes dans des
langages de programmation CLR comme C++, VB ou C.
Les procédures stockées étendent les capacités fournies
par les fonctions définies par l'utilisateur (UDF) des
Analysis Services 2000. Les procédures stockées Analysis
Services sont décrites de manière plus détaillée plus loin
dans ce document.

Les améliorations de l'écriture différée des données           •   •
procurent un décuplement des performances. L'application
analytique peut écrire des données en différé sur une
cellule agrégée et effectuer le cas échéant l'allocation des
données d'agrégation à ses données feuilles sous-
jacentes.

Des règles de gestion, des outils et des assistants            •
intégrés rendent accessibles les conceptions les plus
difficiles :
• Mesures semi-additives
• Analyse du temps
• Analyse comptable
• Agrégations financières
• Conversion monétaire
• Génération de dimension temps

Les vues de source de données offrent un moyen de              •
simplifier et étendre la base de données sous-jacente à
l'application analytique. Les vues de source de données
sont décrites de manière plus détaillée plus loin dans ce
document.

Le langage de définition de données DDL d'Analysis             •   •
Services est le XML. Le référentiel de métadonnées
Analysis Services n'existe plus, il a été remplacé par des
fichiers XML qui sont stockés et gérés par le serveur
Analysis Services.

Services Web : XML for Analysis (XML/A) est un                 •   •
protocole natif basé sur les normes pour communiquer
avec le serveur Analysis Services. De nouveaux types
d'applications sont activées et faciles à développer – des
applications qui intègrent l'analyse avec les opérations en
temps réel.
• Avec XML/A en tant que protocole natif, les clients
Analysis Services peuvent être configurés pour un
encombrement nul, et chaque serveur fournit
automatiquement un service Web.
• Une couche Win32 à faible encombrement est disponible
pour la compatibilité ascendante avec des outils
fonctionnant avec Analysis Services 2000 sur OLE DB for
OLAP, ADOMD et ADOMD.Net. De nombreux clients et
développeurs continueront d'utiliser le modèle d'objet
ADOMD.Net pour construire des applications
personnalisées sur Analysis Services.

Les calculs sont centralisés sur le serveur. Analysis           •   •
Services 2005, contrairement à Analysis Services 2000,
effectue tous les calculs sur le serveur. Les avantages
sont considérables :
 • Les clients ont un encombrement nul ; le cache côté
 client est éliminé.
 • La performance des requêtes pour les calculs
 complexes est considérablement améliorée.
Ces améliorations n'occasionnent qu'une dégradation
minime des performances pour les requêtes les plus
simples - un inconvénient qui, dans Analysis Services
2000, a été résolu à partir du cache client.

Les outils de développement et de gestion (Business             •   •
Intelligence Development Studio et SQL Server
Management Studio) constituent le premier
environnement de développement complet pour les
applications d’analyse décisionnelle. Les nouveaux outils
vous aident à capturer et modéliser toutes vos données et
permettent un développement rapide des applications.

Analysis Services 2005 a amélioré son modèle                        •
d'autorisations. Les rôles et autorisations sont
notamment :
 • Administrateur de serveur
 • Administrateur de base de données
 • Traiter les objets
 • Afficher la structure de l'objet (droit accordé par objet)
 • Modifier la structure de l'objet

Analysis Services 2005 comporte plus de 150                         •
modifications en matière de sécurité. Les
améliorations du modèle de sécurité sont notamment :
 • Analysis Services est « sécurisé par défaut » avec
 plusieurs lignes de défense.
 • Les autorisations administratives ont une granularité
 fine ; il y a des autorisations distinctes pour chaque objet
 de base de données, et il est possible d'effectuer des
 modifications de conception sans traitement.
 • Les cubes locaux peuvent être chiffrés.
 • Analysis Services s'exécute avec le niveau
 d'autorisation le plus faible possible.
 • Les communications client/serveur peuvent être
 chiffrées et signées pour contrer la surveillance de
 paquets, l'usurpation, l'altération et la répudiation
 • Le chiffrement est imposable sur le serveur, et le
 serveur peut rejeter les clients qui ne l'utilisent pas.

Le serveur Analysis Services 2005 générera des                     •
événements de trace de serveur qui peuvent être
surveillés à l'aide du Générateur de profils SQL Server.
Cet outil est depuis longtemps disponible pour les bases
de données relationnelles SQL Server.
• Audit de l'accès et de l'utilisation de l'application.
• Audit des événements d'application et de serveur pour
faciliter la gestion du serveur.
• Audit des erreurs d'application et collaboration avec le
Support technique Microsoft pour résoudre plus facilement
les problèmes.

L'amélioration des performances de calcul est due à                •
plusieurs fonctionnalités :
 • Le cache de calcul serveur est partagé entre les
 utilisateurs
 • L'optimiseur de requête « réécrira » une requête en
 employant une instruction équivalente aux performances
 améliorées.
 • Amélioration des performances de la fonction
 NonEmpty
 • Amélioration des mesures de comptage distinctes

Analysis Services 2005 inclut une prise en charge étendue          •
des architectures de couche intermédiaire. Un modèle
d'objet compact garantit une couche intermédiaire
évolutive jusqu'à des milliers d'utilisateurs simultanés. Le
déploiement au sein d'un réseau étendu, bien que
déconseillé, est amélioré par rapport à SQL Server 2000.

Analysis Services 2005 prend en charge des tailles de          •   •
dimension illimitées. Il n'est plus nécessaire de mettre
les dimensions en cache dans la mémoire.

Analysis Services 2005 prend en charge le traitement               •
parallèle des partitions dans l'ensemble d'outils de
gestion standard.

SQL Server Management Studio sera utilisé pour gérer               •
toutes les bases de données SQL Server. Il offre la gestion
intégrée de la base de données relationnelle Analysis
Services, y compris des outils intégrés pour :
 • Server console management (en remplacement de
 Enterprise Manager et Analysis Manager),
 • Analyse de requête (SQL et MDX),
 • Profilage des événements du moteur relationnel et de
 Analysis Services,
 • Les fonctionnalités de « boîte noire » et de « capture et
 relecture » capturent automatiquement les événements
 du serveur, ce qui peut vous aider considérablement (ou
 Microsoft Services) à diagnostiquer un problème.

Un nouveau modèle d'objet, Analysis Management                         •                    •
Objects (AMO), remplace DSO. DSO est fourni pour la
compatibilité ascendante, mais AMO offre d'importantes
nouvelles fonctionnalités, en particulier la possibilité de
créer un script de création ou de modification d'un objet à
partir des outils de gestion et de développement.



Deux procédures principales permettent de construire une base de données analytique :
• Entièrement personnalisée : En partant d'une source, en général une source relationnelle, vous
définissez des dimensions, cube(s), KPI, calculs et modèles d'exploration des données. Cette procédure
convient pour les clients qui disposent déjà d'un entrepôt de données ou d'un magasin de données. Dans
le premier écran de l'Assistant Cube, vous devez choisir l'option Use existing DB/Data Warehouse
(Utiliser une base de données/un entrepôt de données existant).
• Modèle personnalisable : En partant d'un modèle, vous définissez et générez la totalité d'une
application, y compris une ou plusieurs bases de données, des packages DTS, et une base de données
OLAP Analysis Services. Ces composants sont conçus et générés pour travailler ensemble de manière
homogène sous forme d'application complète. Cette approche est appropriée pour les clients qui
installent une solution de Business Intelligence complète à partir d'un modèle. Dans le premier écran de
l'Assistant Cube, vous devez choisir l'option Design BI model without data source (Concevoir un modèle
d’analyse décisionnelle sans source de données).


Quelle que soit l'approche adoptée, la conception système de base repose sur la structure Business
Intelligence désormais familière constituée d'un ou plusieurs systèmes source alimentant un entrepôt de
données relationnel dimensionnel, lui-même utilisé pour alimenter la base de données Analysis Services.
SQL Server 2005 comporte toutefois un grand nombre d'options pour s'affranchir de cette conception
générique, en éliminant ou en virtualisant différents composants. Certains systèmes alternatifs sont
décrits dans la section ci-dessous consacrée au Modèle conventionnel unifié.

Créer une base de données personnalisée à partir d'une source existante
La première méthode de création d'une base de données Analysis Services est très connue des
utilisateurs SQL Server 2000. Partez d'une base de données source de n'importe quelle structure :
• Une base de données dimensionnelle structurée sous forme de tables de faits et de dimensions, ou
• N'importe quelle autre structure de base de données, y compris les systèmes transactionnels
normalisés.
La possibilité de puiser dans une base de données normalisée est une différence significative par rapport
à Analysis Services 2000, qui nécessitait une structure dimensionnelle, en étoile, en flocon ou aplatie.
Cette fonctionnalité vous permet de développer facilement des applications BI à très faible latence.
Il est possible de répondre à de nombreux besoins des utilisateurs de manière très simple et économique
en construisant la base de données Analysis Services directement sur la base de données
transactionnelle, sans créer d'abord d’entrepôt de données formel. Si vos données ont besoin d'un
minimum de transformations, de nettoyage et d'intégration pour être exploitables, utilisez la base de
données Analysis Services pour compléter ou remplacer les rapports relationnels. Vous pouvez ainsi
obtenir la performance et l'interactivité d'Analysis Services et mieux gérer la charge sur vos systèmes
transactionnels.
Bien qu'il soit possible de construire et d'actualiser une base de données Analysis Services directement à
partir de systèmes transactionnels, un grand nombre de besoins analytiques d'entreprise sont satisfaits
en construisant d'abord un entrepôt de données relationnel. Les problèmes complexes de gestion de
l'intégration et de modification des données sont résolus de la manière la plus efficace à travers
l'architecture d’entrepôt de données classique, la base de données Analysis Services jouant alors le rôle
de moteur de requête et d'analyse.

Sources de données et vues de source de données
La première étape de la construction d'une nouvelle application analytique consiste à créer un nouveau
projet Analysis Services dans Business Intelligence Development Studio. Une fois le projet vide créé,
vous devez créer une source de données à connecter à la base de données source, qui peut être
n'importe quel système de gestion de base de données relationnelle pris en charge. Pour la version
bêta 2, il est conseillé de prendre d'abord comme source les bases de données relationnelles SQL Server
2000 ou SQL Server 2005.
La source de données stocke les informations pour la connexion à la source de données. Les vues de
source de données contiennent des informations sur le sous-ensemble de tables appropriés dans la base
de données source. Ces informations ne se limitent pas à la structure physique des tables de la base de
données ; vous pouvez ajouter des informations telles que des relations, un nom convivial pour les tables
et les colonnes, des colonnes calculées et des requêtes nommées.
Les vues de source de données peuvent être partagées entre projets BI et projets DTS. Les vues de
source de données sont toujours utiles, mais elles sont indispensables lorsque :
•       La base de données source contient des milliers de tables, dont seules quelques-unes sont utiles
pour une application BI.
•       La base de données Analysis Services utilise les données de plusieurs sources, comme de
multiples bases de données, serveurs, fichiers plats ou SGBDR.
•       Le développeur de systèmes BI ne possède pas de privilèges d'administration système et n'est
pas autorisé à créer des vues physiques ou à modifier la base de données source.
•       Le développeur de système BI doit travailler en mode « hors connexion », déconnecté de la base
de données source. Les tâches de conception et de développement s'exécutent sur la vue de source de
données, qui est dissociée de la base de données source.
Le soin que vous apportez à la configuration des noms et relations dans la vue de source de données
portera ses fruits en termes de facilité lors du développement de l'application analytique.

Création de dimensions et de cubes
Après avoir créé la vue de source de données, vous pouvez créer un cube en cliquant avec le bouton
droit sur l'icône Cubes du volet Explorateur de solutions, et en choisissant Nouveau cube. Il vous est
proposé d'activer la détection et les suggestions IntelliCube. Si vous choisissez d'utiliser IntelliCube, vous
devez choisir de construire un cube qui est optimisé pour les tableaux croisés dynamiques ou pour les
rapports. La technologie IntelliCube examine les relations cardinales de la base de données et des
données dans la vue de source de données, et caractérise de manière intelligente les tables en tant que
tables de faits, tables de dimension ou tables ponts dimension-à-fait qui résolvent une relation plusieurs-
à-plusieurs. Pour la version bêta 2, il importe peu que vous choisissiez d'optimiser des cubes et des
dimensions pour les tableaux croisés dynamiques ou les rapports. Ce qui compte, c'est de déterminer si
IntelliCube tente de créer des relations hiérarchiques entre les attributs d'une dimension. Étant donné
que les hiérarchies sont très faciles à créer et à détruire, il est inutile de s'attarder trop longuement sur
ce choix.
Il est instructif d'appuyer sur le bouton Terminer, immédiatement après l'affichage du premier écran de
l'Assistant Cube. Vous constatez qu'une base de données Analysis Services, des dimensions, des
hiérarchies, des attributs et des cubes ont été définis. Vous pourriez modifier cette conception, mais il est
plus sage de suivre un peu plus lentement les étapes de l'assistant et de faire des choix intelligents au
fur et à mesure.
Après vous être exercé avec l'Assistant Cube un petit moment, vous préfèrerez probablement utiliser
l'Assistant Dimension – que vous lancez en cliquant avec le bouton droit sur Dimensions dans le volet
Explorateur de solutions – pour créer une par une des dimensions complexes. Une fois que les grandes
dimensions, comme Produit, Client et Temps ont été définies avec soin, lancez l'Assistant Cube et
n'oubliez pas d'inclure ces dimensions prédéfinies le cas échéant.

Construction et déploiement
Jusqu'ici, les étapes successives ont simplement créé des définitions et structures de dimension et de
cube sous forme de fichiers XML sur votre machine de développement. Business Intelligence
Development Studio et Configuration Manager vous permettent de gérer le processus de construction et
de déploiement de votre projet sur un serveur cible. Par défaut, le serveur cible de « développement »
est votre serveur local. Vous pouvez créer des configurations alternatives pour le déploiement sur
plusieurs environnements. Les propriétés clés du projet, comme le nom du serveur cible et les chaînes de
connexion de source de données, peuvent varier selon la configuration.
Pour prévisualiser et tester les cubes et les dimensions au cours du cycle de développement, construisez
et déployez le projet sur le serveur cible désigné en choisissant Deploy (Déployer) dans le menu principal
de Business Intelligence Development Studio. Vous pouvez également appuyer sur la touche F5, ou
choisir Debug (Sart) (Déboguer) (Démarrer) dans le menu principal de Business Intelligence
Development Studio. L'un des divers outils de déboguage et de navigation démarre, selon ce que vous
faites lorsque vous choisissez Deploy (Déployer). En fonction du contexte, le processus de déploiement
lancera l'explorateur de cube, le débogueur de scripts MDX ou encore le navigateur.
Vous pouvez, si vous le souhaitez, afficher un système prototype après avoir défini ses dimensions,
mesures et cubes. Appliquez le traitement à une base de données de développement contenant un
volume de données relativement faible, et vérifiez que les données et structures se comportent comme
prévu.
Toujours dans le prototype, vous pouvez concevoir certains des composants plus complexes de la base
de données Analysis Services, des indicateurs de performance clé, actions et calculs. Si votre base de
données est destinée à être utilisée par différentes communautés d'utilisateurs qui sont intéressés par
différentes vues des données, explorez les Perspectives et les plans de sécurité alternatifs.
Si vous prévoyez de déployer la base de données à l'international auprès d'utilisateurs utilisant
différentes langues, vous pouvez présenter des noms d'objets localisés à l'aide de la fonction
Traductions.
Enfin, un prototype devrait évaluer des configurations physiques alternatives, comme les partitions et
différentes options de mise en cache proactive.
Une fois la base de données Analysis Service développée, les objets de base de données sont déployés
sur un serveur de test, de mise en attente ou de production. La sortie du projet, produite au cours de la
phase de production, peut être utilisée comme entrée dans l'utilitaire de déploiement Analysis Services.
Cet utilitaire permet de déployer et de traiter la base de données.

Création d'une base de données personnalisable à partir d'un modèle
Nous venons de décrire les étapes de base de la création d'une base de données Analysis Services
personnalisable à partir d'une source connue. Cette procédure via l'Assistant Cube et l'Assistant
Dimension est analogue à la méthode standard de création d'une base de données Analysis Services
2000.
La méthode alternative de création d'une application analytique 2005 consiste à choisir, dans le
deuxième écran de l'Assistant Cube l'option Design BI model without data source (Concevoir un modèle
BI sans données sources). Cette procédure de conception au moyen d'un assistant est analogue à celle
de SQL Server 2000 Accelerator for Business Intelligence. Elle génère une application personnalisable
complète à partir d'un modèle : de riches structures dimensionnelles et fonctionnalités analytiques, y
compris le cas échéant un entrepôt relationnel et des packages DTS. Des modèles peuvent être fournis
par Microsoft, par des intégrateurs ou des éditeurs de logiciels indépendants.
Vous avez la possibilité de concevoir des bases de données Analysis Services identiques en choisissant
l'une des deux procédures proposées par les assistants – création à partir d'une base de données source
ou création à partir d'un modèle. La première option présuppose que vous allez créer un système
complètement personnalisé. Les noms et les structures d'objet sont complètement personnalisables, la
conception initiale étant orientée par les noms et les structures dans la base de données source. L'option
de modèle crée également une base de données personnalisable, mais la conception initiale est pilotée
par un modèle de domaine expert.
Beaucoup d'utilisateurs combineront les deux méthodes : ils créent la plus grande partie d'une base de
données Analysis Services à partir d'une source existante, mais génèrent la dimension Temps d'après un
modèle.

Le modèle dimensionnel unifié
Analysis Services 2005 fait disparaître les limites entre les bases de données relationnelles et OLAP
multidimensionnelles. Les bases de données OLAP offrent depuis toujours des avantages considérables
pour les applications analytiques, principalement :
• Performance de requête exceptionnelle
• Richesse analytique
• Facilité d'utilisation pour les analystes
Jusqu'à présent, ces avantages étaient coûteux. Les bases de données OLAP, y compris Analysis Services
2000, parvenaient difficilement à fournir :
• des schémas complexes incluant des relations plusieurs-à-plusieurs,
• des rapports détaillés sur un vaste ensemble d'attributs, et
• des données à faible latence.
En combinant les meilleurs aspects de l'analyse OLAP traditionnelle et des rapports relationnels, Analysis
Services 2005 offre un modèle dimensionnel unique et unifié qui couvre les deux ensembles de besoins.
Un ensemble de cubes et dimensions définis dans SQL Server 2005 est appelé modèle dimensionnel
unifié ou UDM. Les avantages et la flexibilité de l'UDM entraînent une révolution de la conception.
Autrefois, l'architecte devait choisir entre le relationnel et l'OLAP, en pesant les avantages et les coûts
des infrastructures alternatives. Désormais, il conçoit un modèle dimensionnel unifié, puis détermine où,
entre ces extrêmes traditionnels, placer la conception logique et la configuration physique du système
Analysis Services.

Dimensions basée sur des attributs
Analysis Services 2005 structure un cube autour d'attributs dimensionnels plutôt que de hiérarchies
dimensionnelles. Dans Analysis Services 2000, les conceptions dimensionnelles sont dominées par des
hiérarchies telles que {Année, Mois, Jour} ou {Pays, Région, Ville}. Ces hiérarchies exigeaient des
relations fortes des données entre les différents niveaux. Les attributs, qui étaient exposés comme
propriétés de membre et dimensions virtuelles, passaient au second plan. Alors qu'il était possible
d'inclure des attributs dans les dimensions physiques, les considérations de performance ont dissuadé les
développeurs d'adopter cette technique. Les utilisateurs familiarisés avec les structures relationnelles ont
été déroutés par la forte focalisation sur les hiérarchies dans les bases de données OLAP .
La structure Analysis Services 2005 est plus proche d'une structure dimensionnelle relationnelle. Une
dimension contient de nombreux attributs. Chaque attribut peut être utilisé pour découper et filtrer des
requêtes et être combiné en hiérarchies quelles que soient les relations entre les données.
Les utilisateurs qui viennent de l'environnement OLAP connaissent bien la valeur des hiérarchies fortes,
dans lesquelles vous pouvez être tout à fait certain que les Villes sont bien sous Régions et Pays. Ces
hiérarchies naturelles existent toujours, et doivent être définies selon le cas : avantages de performances
de requêtes obtenues de leur utilisation.
À titre d'exemple, prenons une dimension Client. La table source relationnelle comporte huit colonnes :
• CustomerKey
• CustomerName
• Âge
• Genre
• Adresse e-mail
• Ville
• Région
• Pays
La dimension Analysis Services correspondante doit posséder sept attributs :
• Client (clé nombre entier, CustomerName en tant que nom)
• Âge, Genre, Adresse e-mail, Ville, Région, Pays
Il existe une hiérarchie naturelle au sein des données entre {Pays, Région, Ville, Client}. À des fins de
navigation, le développeur peut choisir de créer une deuxième hiérarchie sur {Âge, Genre}. Les
utilisateurs ne voient aucune différence de comportement entre les deux hiérarchies, mais la hiérarchie
naturelle bénéficie des structures d'indexation – cachées à l'utilisateur – qui comprennent les relations
hiérarchiques.
Les avantages les plus importants de la nouvelle structure dimensionnelle sont les suivants :
• Il n'est pas nécessaire de charger les dimensions dans la mémoire. De ce fait, les dimensions peuvent
être extrêmement étendues (des centaines de millions of membres ont été testés pour la version
bêta 2).
• Des hiérarchies d'attributs peuvent être ajoutées et supprimées sans qu'il soit nécessaire de traiter à
nouveau la dimension. La structure d'index de hiérarchie d'attribut est légère ; elle est calculée en
arrière-plan tandis que le cube reste disponible pour l'interrogation.
• Les informations dimensionnelles en double sont éliminées ; les dimensions sont plus petites.
• La performance du traitement des dimensions est augmentée étant donné que le moteur exploite les
opportunités de traitement en parallèle.

Types de dimensions
Analysis Services 2000 possède deux types de dimensions : hiérarchique Régulière et Parent-enfant.
Analysis Services 2005 ajoute de nouvelles structures dimensionnelles importantes. Si certaines de ces
structures ont des noms étranges, ceux-ci sont assez courants dans le domaine de la Business
Intelligence.
• Rôle actif : La dimension joue divers rôles en fonction du contexte. Par exemple, la dimension [Temps]
peut être réutilisée pour [Date de commande] et [Date de livraison]. Dans 2005, la dimension de rôle
actif est stockée une fois et utilisée plusieurs fois. L'espace disque et les délais de traitement sont
réduits.
• Fait : Une dimension de fait ou « dégénérée » a une relation un-à-un avec les faits, comme un numéro
de transaction. La dimension dégénérée n'est pas utilisée pour l'analyse proprement dite, mais plutôt
pour l'identification – pour situer une transaction spécifique ou pour identifier les transactions qui
composent une cellule d'agrégation.
• Référence : La dimension n'est pas liée directement à la table de faits, mais indirectement à travers
une autre dimension. L'exemple type est une dimension de référence [Géographie] qui est liée à la fois à
une dimension [Client] et à une dimension [Force de vente]. Une dimension de référence peut être
obtenue d'un fournisseur de données, et incluse dans des cubes sans modification des données de faits.
• Exploration de données : La dimension d'exploration de données fournit la prise en charge de
dimensions résultant de modèles d'exploration de données, comme les clusters, les arbres de décision et
les règles d'association.
• Plusieurs-à-plusieurs : Ces dimensions sont souvent appelées dimensions multivaleur. Dans la
plupart des dimensions, un fait établit la jointure avec un - et seulement un - membre de dimension. Les
dimensions plusieurs-à-plusieurs ne peuvent se résoudre dans des membres de dimension multiple. Par
exemple, le client d'une banque a plusieurs comptes (compte chèques, compte épargne) ; un compte a
plusieurs clients (Marie Sagnier ; Jean Sagnier). La dimension [Client] a plusieurs membres liés à une
transaction de compte unique. Les dimensions plusieurs-à-plusieurs de la version 2005 prennent en
charge des analyses complexes lorsque les dimensions ne sont pas directement liées à la table de faits,
et étendent le modèle dimensionnel au-delà du classique modèle en étoile.

Groupes de mesures et perspectives
Analysis Services 2005 introduit les groupes de mesures et perspectives pour simplifier la conception et
le déploiement des bases de données. Dans Analysis Services 2000, les utilisateurs étaient encouragés à
construire plusieurs cubes physiques. Chaque cube correspondait à une dimensionnalité spécifique, et en
général aussi à une table de faits relationnelle précis. Les cubes virtuels combinaient des tables de faits
multiples qui avaient l'avantage d'être transparentes pour l'utilisateur, mais inutilement difficiles à définir
pour le développeur.
Dans la version 2005, il sera courant de rencontrer un cube physique unique contenant un ou plusieurs
groupes de mesures. Les données de fait d'un groupe de mesures ont une granularité spécifique, définie
par l'intersection des hiérarchies de dimension. Les requêtes sont dirigées automatiquement vers
différents groupes de mesures selon les besoins. À un niveau physique, les partitions – analogues à
celles de Analysis Services 2000 – sont définies sur les groupes de mesures.
Une application de grande taille peut présenter à l'utilisateur un grand nombre de dimensions, groupes
de mesures et mesures, et s'avérer ainsi difficile à explorer. Une perspective, définie dans l'onglet
Perspectives de l'Éditeur de cube, crée une « vue » de sous-ensemble d'un cube. Pour offrir un certain
degré de personnalisation, un rôle de sécurité peut être associé à un ensemble de perspectives
applicable à ce rôle.
La plupart des bases de données Analysis Services 2005 devraient contenir un cube unique avec
plusieurs groupes de mesures et plusieurs perspectives.
Les autres améliorations importantes apportées aux structures de faits de cubes et aux performances de
requête sont notamment :
• Les mesures peuvent avoir la valeur Null ; dans SQL SERVER 2000, les mesures possédant la valeur
« null » étaient considérées comme des zéros.
• La performance de requête pour les mesures de compte distinct est améliorée d'un facteur sept, pour
les cubes partitionnés de manière appropriée.
• L'accès à des systèmes de gestion de base de données alternatifs est fourni par une infrastructure de
cartouche extensible. Une cartouche pour un SGBDR spécifique indique comment optimiser les
instructions SQL pour les requêtes et l'écriture relationnelle. Il est facile d'ajouter des cartouches pour
des systèmes relationnels supplémentaires ; une cartouche est implémentée en tant que fichier XSL.

Calculs et analyses
L'un des meilleurs arguments en faveur de l'utilisation d'un serveur analytique tel qu'Analysis Service est
sa capacité à définir des calculs complexes de manière centralisée. Analysis Services a toujours fourni
des analyses performantes, mais certains concepts complexes étaient difficiles à mettre en œuvre.
L'un de ces concepts est celui des mesures semi-additives. Les mesures les plus communes, comme
[Ventes], se cumulent correctement sur toutes les dimensions : [Total des ventes] pour tout le temps
correspond à la vente pour tous les produits, tous les clients et tout le temps. Une mesure semi-additive,
à l'inverse, peut être additive dans certaines dimensions mais pas dans d'autres. Le scénario le plus
courant est un solde, tel que le nombre d'articles en magasin. Le solde cumulé d'hier plus aujourd'hui ne
correspond pas, bien entendu, à la somme du solde d'hier augmenté de celui d'aujourd'hui. Il s'agit
plutôt du solde de fin, bien que dans certains scénarios ce puisse être le solde de début. Dans Analysis
Services 2000, il vous aurait fallu définir un calcul MDX complexe pour donner la mesure correcte. Avec
Analysis Services 2005, les soldes de début et de fin sont des types d'agrégation natifs.
Les mesures de compte distinct sont également grandement améliorées dans la version 2005. Une
mesure de compte distinct peut désormais être définie sur des données de chaîne, et des requêtes
peuvent être définies pour effectuer un compte distinct sur un jeu arbitraire. Analysis Services 2000
n'effectuait de comptes distincts que sur la structure hiérarchique prédéfinie.
L'Assistant Time Intelligence créera une dimension de calculs de temps pour cette période par rapport à
la dernière, en déplaçant les moyennes et d'autres constructions de calcul de temps communes.

Scripts MDX
MultiDimensional Expressions (MDX) est un langage extrêmement puissant qui a été utilisé pour définir
des calculs et des règles de sécurité Analysis Services 2000. Mais MDX est hélas aussi complexe que
puissant. Analysis Services 2005 définit un nouveau modèle de calcul avec des scripts MDX qui font appel
à des constructions et à une syntaxe simplifiées.
MDX est également le langage de requête dans les systèmes Analysis Services. Les outils de requête tels
que les tableaux croisés dynamiques Excel génèrent des requêtes MDX en fonction des comportements
de glisser-déplacer des clients. Cette utilisation du MDX n'est pas liée aux scripts MDX ; ces derniers sont
utilisés pour les objets définis par le serveur tels que les membres calculés et les calculs de cellule, et
non pour les requêtes utilisateur.
Lorsqu'un cube Analysis Services 2005 est défini, il est constitué seulement d'une structure sans
données. Le script MDX fait partie de la structure du cube. Une commande de script MDX par défaut est
toujours définie pour calculer les agrégations par défaut. La commande de script MDX comprend une
seule instruction :
Calculate;

Lorsque le cube est traité, mais avant que ce script MDX par défaut ne soit appliqué, ce cube contient
des données de niveau feuille mais pas d'agrégation. Lorsque le script MDX par défaut à instruction
unique est appliqué, les agrégations sont calculées et stockées.
L'instruction de script MDX contient les commandes suivantes, séparées par des points-virgules :
• Instructions d'étendue (Scope) pour limiter l'étendue de l'instruction
• Affectations de formule et de valeur
• Définitions de membre calculé
• Définitions d'ensemble nommé
Dans l'interface utilisateur de la conception de cube de Business Intelligence Development Studio, les
scripts MDX – y compris les membres calculés et les ensembles nommés – sont construits dans la vue
Calculs. Le script MDX peut être affiché dans le mode par défaut Calculations Forms (Formulaire de
calcul), qui donne des instructions sur la syntaxe, ou dans le mode Calculations Script (Script de calcul)
qui présente le script MDX comme un ensemble de commandes se terminant par des points-virgules.
Vous pouvez passer d'une vue à l'autre, bien que le mode Formulaire ne s'affiche que si la totalité du
script est exempte d'erreur de syntaxe.
Les scripts MDX ont plusieurs fonctionnalités clés :
• Les scripts suivent un modèle procédural : Les instructions sont appliquées dans l'ordre. Le développeur
de script MDX n'a plus besoin de se soucier des erreurs d'ordonnancement, et il est très bien protégé
contre l'écriture de script entraînant une récurrence infinie.
• Il est possible de définir l'étendue d'un calcul : L'instruction SCOPE permet de définir un ou plusieurs
calculs par rapport à une zone spécifique du cube. Par exemple :
SCOPE ([Customers].[Country].[Country].[USA]);

[Measures].[Sales] = 100;

END SCOPE;

• Les étendues peuvent être imbriquées.
• Il est possible de mettre un calcul en cache : Le mot clé CACHE indique que le résultat du calcul du
script doit être stocké sur disque, plutôt que calculé lors de l'exécution. La mise en cache des calculs
permet de très hautes performances lors des requêtes sur des cubes volumineux contenant une grande
quantité de calculs complexes. Lorsqu'une entrée d'un calcul mis en cache change, ce calcul est
abandonné et reconstruit.
• Les scripts MDX peuvent être débogués. Vous pouvez suivre ligne par ligne les étapes du script MDX, et
examiner les résultats du cube à chaque étape.

Procédures stockées
Analysis Services 2005 introduit les procédures stockées pour étendre les capacités fournies par les
fonctions définies par l'utilisateur (UDF). Une procédure stockée peut être écrite dans n'importe quel
langage de programmation CLR tel que C++, Visual Basic ou C. Les procédures stockées simplifient le
développement et la mise en œuvre de base de données en permettant d'écrire en une seule fois le code
commun, de le stocker dans un emplacement unique et de le réutiliser ensuite dans d'autres procédures
stockées, calculs et requêtes utilisateur.
Il existe deux types de procédures stockées :
• Les procédures stockées de fonction MDX sont semblables à n'importe quelle autre fonction MDX, et
permettent d'étendre facilement le langage MDX.
• Les procédures stockées personnalisées effectuent des tâches qui sont spécifiques à une
implémentation telle que le traitement de cube ou la mise à jour de cellules dans une partie du cube.
Une procédure stockée peut être utilisée pour effectuer n'importe quelle tâche qu'une application client
peut effectuer.

Indicateurs de performance clé
Analysis Services 2005 introduit une structure KPI (Key Performance Indicator), pour la définition, côté
serveur, des calculs pour mesurer votre entreprise. Ces KPI seront affichés dans des rapports, portails et
tableaux de bord, à travers des API d'accès aux données et des outils Microsoft et tiers. Pour la version
bêta 2, aucun outil client affichant les KPI n'est disponible.
Des commentateurs et fournisseurs utilisent l'expression « KPI » pour désigner des concepts différents.
Pour Microsoft SQL Server Analysis Services 2005, un KPI se définit précisément en quatre étapes :
• Valeur à mesurer : une mesure physique telle que Ventes, une mesure calculée telle que Profit, ou un
calcul qui est défini à l'intérieur du KPI,
• Objectif de la valeur : une valeur (ou expression MDX se résolvant en une valeur) qui définit la cible de
la mesure,
• État : une expression MDX pour évaluer l'état actuel de la valeur, comme une valeur normalisée dans la
plage de -1 (très mauvais) à +1 (très bon),
• Tendance : une expression MDX pour évaluer la tendance actuelle de la valeur . La valeur augmente-t-
elle ou baisse-t-elle par rapport à son objectif ?
Voici un exemple illustrant plusieurs KPI affichés sur une page Web :




Analyse décisionnelle en temps réel
Les entrepôts de données et les applications d’analyse décisionnelle ont toujours utilisé des données
anciennes ou de latence élevée – actualisées chaque mois, chaque semaine ou chaque jour. Les
traditionalistes affirmeront qu’analyse décisionnelle et temps réel ne vont pas ensemble – pour eux, les
décisions stratégiques ne devraient pas se fonder sur des données qui ne sont pas pertinentes plus d'une
journée. Ce que ces commentateurs ne réalisent pas, c'est que l’analyse décisionnelle devrait être
disponible partout dans l'entreprise, et pas seulement mise à la disposition de quelques analystes et
dirigeants pour une prise de décision purement stratégique et tactique. L’analyse décisionnelle
opérationnelle nécessite des données à faible latence.
Analysis Services 2005 offre de nouvelles options de traitement pour l’analyse décisionnelle
opérationnelle. Dans Analysis Services 2000, les cubes – quels que soient leur mode de stockage ou leur
stratégie de positionnement – ont été traités selon le modèle « Pull ». Un processus Analysis Services a
été lancé qui recherchait de nouvelles informations dans la base de données source, traitait et le cas
échéant stockait les données détaillées, puis calculait et stockait les agrégations.
Le modèle Pull est toujours pris en charge dans Analysis Services 2005, mais il s'accompagne d'options
supplémentaires qui sont particulièrement utiles pour le Business Intelligence à faible latence :
• Envoi des données du pipeline DTS ou d'une application personnalisée. Les données peuvent circuler
directement dans la partition Analysis Services à partir du pipeline du package DTS, sans stockage
intermédiaire. Ce scénario peut être utilisé pour réduire le temps de latence (et le coûts de stockage) des
données analytiques.
• Gestion du cube en tant que cache proactif, sans intervention administrative , pour maintenir un cache
avec les caractéristiques de latence et de performance prescrites.
Les caractéristiques de performance de requête d'une banque de données multidimensionnelle Analysis
Services dominent le stockage relationnel. En bref, les requêtes fonctionnent mieux sur un stockage
multidimensionnel (MOLAP). L'inconvénient est le temps de latence : une banque de données
multidimensionnelle se trouve en aval de sa source relationnelle. L'astuce, avec la technologie de mise
en cache proactive, consiste à maximiser la performance des requêtes tout en minimisant le temps de
latence des données et les coûts administratifs.
Les fonctionnalités de mise en cache proactive simplifient le processus de gestion de l'obsolescence des
données. Si une transaction se produit sur la base de données source, comme un nouveau membre de
dimension ou une nouvelle transaction de fait, le cache existant est obsolète. La mise en cache proactive
offre un mécanisme optimisable pour déterminer selon quelle fréquence le cache multidimensionnel est
construit ; pour spécifier quelle réponse est donnée aux requêtes pendant que le cache est reconstruit ;
et pour lancer le processus sans aucune intervention de l'administrateur.
La mise en cache proactive permet ainsi de configurer le cube pour rafraîchir automatiquement son
cache multidimensionnel lorsque des transactions se produisent. Bien qu'Analysis Services traite les
données extrêmement rapidement, l'opération prend du temps. Éventuellement, votre configuration de
cache proactif peut rediriger automatiquement les requêtes vers la banque de données relationnelle si le
retraitement du cache multidimensionnel n'est pas terminé.
Lorsque vous concevez votre configuration de mise en cache proactive, n'oubliez pas que la mise en
cache proactive est configurée pour chaque partition multidimensionnelle. Si une partition inclut des
données pour une courte durée de l'ordre de l'heure, le processus de rafraîchissement de cache peut
s'effectuer extrêmement rapidement. Les configurations de mise en cache les plus complexes dépendent
de l'envoi par la base de données relationnelle d'une notification à Analysis Services lui indiquant
l'exécution d'une mise à jour. La base de données relationnelle Microsoft SQL Server prend en charge ce
type de notifications. Pour les bases de données qui ne délivrent pas de notifications, Analysis Services
peut être configuré pour recenser les modifications en fonction d'une requête définie.
Les paramètres de cache proactif sont les suivants :
• Période silencieuse : Délai pendant lequel la source relationnelle doit être exempt de transactions
pour que le serveur commence à traiter les nouvelles informations. Le paramètre est habituellement
défini sur une valeur inférieure à dix secondes. L'observation d'une période silencieuse protège contre
l'abandon et la reconstruction répétés du cache si de nombreuses mises à jour séquentielles sont
effectuées sur la source relationnelle.
• Temps de latence : Durée pendant laquelle les utilisateurs sont autorisés à accéder à des données
périmées. Si la latence est définie sur zéro, les requêtes utilisateur sont redirigées vers la source
relationnelle dès la réception de la notification. Si la latence est définie sur 600 secondes, les utilisateurs
accèdent à des données qui n'ont pas plus de 10 minutes d'ancienneté. Un paramétrage de -1 signifie
que les utilisateurs continueront d'accéder à des données périmées jusqu'à ce que le traitement de cache
proactif soit terminé.
• Intervalle de latence : Durée maximale entre une notification de modification et le début du
traitement de cache proactif. Si la base de données source est mise à jour continuellement, ce paramètre
remplacera le paramètre pour Période silencieuse.
• Intervalle de reconstruction forcée : Ce paramètre est utilisé pour fournir une fonctionnalité de
mise en cache simple sur des systèmes dans lesquels le système de base de données source ne peut pas
fournir de notification de mise à jour. Si les données sources se trouvent dans le SGBDR SQL Server, ce
paramètre doit être défini sur zéro.

Exploration de données (data mining)
Vue d'ensemble
L'exploration de données Microsoft SQL Server 2005 est la technologie d’analyse décisionnelle qui vous
permet de construire des modèles analytiques complexes et d'intégrer ces modèles à vos opérations de
gestion. Les modèles d'exploration de données répondent à des questions telles que :
• Quel risque de crédit représente ce client ?
• Quelles sont les caractéristiques de mes clients ?
• Quels produits les consommateurs ont-il tendance à acheter ensemble ?
• Quelle quantité de ce produit puis-je m'attendre à vendre le mois prochain ?
Une application d'exploration de données intègre ce modèle dans les opérations quotidiennes de votre
société. L'objectif de nombreux projets d'exploration de données consiste à construire une application
analytique que vos utilisateurs professionnels, partenaires et clients peuvent utiliser chaque jour, sans
posséder aucune notion des calculs complexes sous-jacents à l'application. Deux grandes étapes
permettent d'atteindre cet objectif : La construction du modèle d'exploration de données et la
construction de l'application. L'exploration de données SQL Server 2005 facilite grandement la réalisation
de ces deux étapes.
L'objectif de Microsoft pour ce qui concerne la fonctionnalité d'exploration de données de la version 2005
consiste à construire des outils qui :
• sont faciles à utiliser,
• offrent un ensemble complet de caractéristiques,
• sont facilement incorporés dans les applications de production,
• s’intègrent étroitement aux autres technologies BI de SQL Server,et
• étendent le marché des applications d'exploration de données.
Il est pratiquement certain que chaque lecteur du présent livre blanc a déjà « utilisé » une application
d'exploration de données. Si vous avez acheté un livre ou de la musique en ligne et vu s'afficher un
message du type « comme vous, d'autres clients ont apprécié…», ou si votre organisme de carte de
crédit vous a demandé de vérifier une transaction douteuse, ou encore si votre supermarché imprime des
coupons personnalisés sur votre reçu, c'est que vous avez utilisé ou bénéficié d'une application
d'exploration de données. Jusqu'à présent, le développement de ce type d'applications se concentrait sur
les plus gros problèmes des plus grandes sociétés – celles qui pouvaient s'offrir les talents analytiques
rares et les coûts de développement élevés généralement nécessaires pour construire une application
d'exploration de données. Tout comme les technologies OLAP de Microsoft ont permis au marché OLAP
de se développer, nous essayons d'étendre l'exploration de données aux entreprises et aux
départements d'entreprise qui n'ont jusqu'à présent pas été en mesure de développer ce type
d'applications.
Vous utilisez les outils d'exploration de données SQL Server 2005 pour rechercher des modèles dans un
ensemble de données, puis, le cas échéant vous effectuez des prévisions sur la base de ces modèles.
L'exploration de données est aussi simple que cela : exploration, découverte de modèle et prévision de
modèles.

Algorithmes d'exploration de données
Tous les outils d'exploration de données, y compris Microsoft SQL Server 2005 Analysis Services, utilisent
plusieurs algorithmes. Analysis Services, bien sûr, est extensible ; les éditeurs de logiciels peuvent
développer des algorithmes qui s'intègrent de manière transparente dans la structure d'exploration de
données Analysis Services. En fonction des données et des objectifs, différents algorithmes prévalent, et
chaque algorithme peut être utilisé pour plusieurs problèmes.
Les outils d'exploration de données sont conçus pour résoudre de nombreux types de problèmes. Le
tableau ci-dessous présente une classification générale des principaux problèmes liés à l'entreprise :

Problème analytique                  Exemples                             Algorithmes Microsoft

Classification : Affecte les cas à
                                         •   Analyse de carte de crédit    •   MDT (Microsoft Decision
des classes prédéfinies comme
                                                                               Trees)
Bon et Mauvais                           •   Analyse de Churn
                                                                           •   MNB (Microsoft Naïve
                                         •   Fidélisation client
                                                                               Bayes)
Problème analytique                   Exemples                              Algorithmes Microsoft

                                                                             •   MNN (Microsoft Neural
                                                                                 Network)


Segmentation : Développer une              Analyse de profil client              Clusters Microsoft
                                       •                                     •
classification pour regrouper les
cas similaires                         •   Campagne par                      •   MSC (Microsoft Sequence
                                           courriers                             Clustering)
                                           électroniques




Association: Comptage avancé               Analyse du panier d'achat             MDT (Microsoft Decision
                                       •                                     •
pour les corrélations                                                            Trees)
                                       •   Exploration de données
                                           avancée                           •   MAR (Microsoft Association
                                                                                 Rules)


Prévision de série                         Prévisions de ventes                  MTS (Microsoft Time
                                       •                                     •
chronologique : Prédire l'avenir                                                 Series)
                                       •   Prévision du cours des
                                           actions


Prédiction : Prédire une valeur
                                       •   Évaluer les taux                  •   Tous
pour un nouveau cas (comme un
                                           d'assurance
nouveau client) en fonction des
valeurs de cas similaires (comme       •   Prédire les revenus du client
des clients existants)
                                       •   Prédire la température


Analyse d'écart : Découvrir
                                       •   Détection de fraude à la          •   Tous
comment un cas ou un segment
                                           carte de crédit
est différent des autres
                                       •   Analyse d'infusion réseau

SQL Server 2005 est livré avec les algorithmes d'exploration de données les plus connus.

•   L'algorithme des arbres de décision Microsoft (MDS – Microsoft Decision Trees) constitue souvent
    le point de départ de l'exploration de données. Il s'agit principalement d'un algorithme de classification
    qui fonctionne bien pour la modélisation prédictive des attributs discrets comme des attributs
    continus. À mesure que l'algorithme construit le modèle, il regarde comment chaque attribut d'entrée
    d'un jeu de données affecte le résultat de l'attribut prédit. L'objectif consiste à trouver une
    combinaison d'attributs d'entrée et de leurs états qui permette de prédire le résultat de l'attribut
    prédit.

•   L'algorithme MBN (Microsoft Naïve Bayes) construit rapidement des modèles d'exploration qui
    peuvent être utilisés à des fins de classification et de prédiction. Il calcule des probabilités pour chaque
    état possible de l'attribut d'entrée relativement à chaque état de l'attribut prévisible. L'algorithme
    prend uniquement en charge les attributs discrets (non continus) et considère tous les attributs
    d'entrée comme indépendants relativement à l'attribut prévisible. Étant donné que l'algorithme Naïve
    Bayes effectue les calculs très rapidement, c'est un choix répandu au cours de la phase d'exploration
    de données initiale, et pour des problèmes de classification et de prédiction.

•   L'algorithme Cluster Microsoft utilise des techniques itératives pour regrouper les enregistrements
    du jeu de données en clusters contenant des caractéristiques similaires. À l'aide de ces clusters, vous
    pouvez explorer les données pour trouver des relations. Vous pouvez également créer des prédictions
    à partir du modèle de cluster.

•   L'algorithme MAR (Microsoft Association Rules), basé sur l'algorithme a priori, offre une méthode
    efficace pour trouver des corrélations n-voies dans des grands jeux de données. Il parcourt les
    transactions de la base de données afin de déterminer les éléments le plus susceptibles d'apparaître
    ensemble dans les transactions d'un même utilisateur. Les articles associés sont regroupés en jeux
    d'éléments et des règles sont générées qui peuvent ensuite être utilisées pour la prédiction. Microsoft
    Association est très souvent utilisé pour l'analyse de panier d'achat. Toute analyse relationnelle ou
    OLAP qui effectue beaucoup de comptage distinct est une bonne candidate pour une analyse
    d'association. L'algorithme Microsoft Association étant sensible au choix des paramètres d'algorithme,
    il peut être préférable, pour des petits problèmes, d'utiliser les arbres de décision Microsoft pour
    l'analyse de panier d'achat.

•   L'algorithme MSC (Microsoft Sequence Clustering) combine l'analyse de séquence et de cluster
    pour l'exploration de données et la prédiction. Le modèle de cluster de séquence est sensible à l'ordre
    dans lequel les événements se produisent. De plus, l'algorithme de cluster prend en compte les autres
    attributs dans son cluster des enregistrements, ce qui permet de développer un modèle qui corrèle des
    informations séquentielles et non séquentielles. L'algorithme Sequence Clustering sera utilisé pour
    effectuer une analyse de flux de clics afin d'analyser le flux du trafic de site Web, d'identifier quelles
    pages sont le plus étroitement liées à la vente d'un produit particulier, et de prédire quelles pages
    vont être visitées par la suite.

•   L'algorithme Microsoft Time Series crée des modèles qui peuvent être utilisés pour prédire une ou
    plusieurs variables continues telles que les cours d'action. L'algorithme Time Series base ses
    prédictions uniquement sur les tendances dérivées des données de formation au cours de la création
    du modèle. Microsoft Time Series utilise une technique appelée AutoRegression Trees. Il est très facile
    à utiliser et génère des modèles de haute précision. Un pan entier de l'analyse statistique est dédié
    aux séries chronologiques. La plupart des autres produits d'exploration de données fournissent de
    nombreuses techniques telles qu'ARMA, ARIMA et Box-Jenkins, parmi lesquels le statisticien doit
    déterminer la meilleure adéquation du modèle. Microsoft a choisi une approche qui rend l'analyse des
    séries chronologiques accessible à un vaste public, avec des résultats aussi excellents que précis.

•   L'algorithme MNT (Microsoft Neural Network), comme les algorithmes MDS et Naïve Bayes, est
    principalement utilisé pour l'exploration, la classification et la prédiction de données. Neural Network
    est une technique d'intelligence artificielle qui explore toutes les relations possibles des données. Étant
    donné qu'il applique une technique très approfondie, c'est le plus lent des trois algorithmes de
    classification.

Construction du modèle d'exploration
Le processus de construction du modèle, de formation et de test est la partie la plus difficile de la
création de l'application. Le développement proprement dit de l'application requiert une simple
programmation, comme nous le décrirons plus loin. Avant d'entamer la construction d'un modèle
d'exploration de données, vous devez avoir collecté et nettoyé vos données, le plus vraisemblablement
dans un entrepôt de données. L'exploration de données SQL Server 2005 peut accéder aux données à
partir de la base de données relationnelle ou des cubes Analysis Services.
La personne la mieux qualifiée pour développer le modèle d'exploration de données aura des
compétences en gestion et en technologie. Le développeur de modèle aura acquis un bagage en
statistiques, connaîtra les problèmes métiers clés auxquels l'entreprise doit faire face, démontrera de
l'intérêt pour les données et les relations et sera également capable de travailler avec les outils SQL
Server 2005 pour manipuler et stocker les données. C'est sans doute un membre de l'équipe de
l’entrepôt de données qui correspondra le mieux à ces critères.
Si vous débutez dans l'exploration de données, prévoyez de passer plusieurs semaines à explorer les
données, outils et différents algorithmes lors de la construction d'un modèle prototype. Utilisez un
serveur de développement sur lequel vous possédez des privilèges d'administration de base de données.
Les étapes initiales de la construction du modèle sont exploratoires : vous chercherez à restructurer les
données et à expérimenter différentes approches. Pour commencer, vous travaillerez avec un petit sous-
ensemble de données, et étendrez le jeu de données lorsque vous aurez acquis une vision claire de la
conception du modèle. Dans la phase de prototype, ne cherchez pas à construire une application « prête
à la production ». Utilisez DTS ou l'outil le plus pratique pour effectuer toute manipulation des données
nécessaire. Notez précisément toutes transformations nécessaires, mais ne vous attendez pas à ce que
tout ce que vous faites fasse partie ensuite de l'application permanente.
Vous devez préparer deux jeux de données : un pour le développement des modèles et un pour tester la
précision du modèle afin de choisir le meilleur modèle pour votre problématique métier. Lors de l'examen
de la manière de subdiviser les données, veillez à être impartial. Par exemple, choisissez un client tous
les dix clients, ou effectuez la distinction par l'initiale du nom ou tout autre attribut arbitraire.
Pour développer un modèle d'exploration de données, vous devez opérer des choix sur :
• Jeu de données d'entrée,
• Champs d'entrée,
• Algorithmes d'exploration de données et
• Paramètre utilisés au cours du calcul de cet algorithme.
Si vous ne savez pas quel type d'algorithme utiliser pour votre problématique métier, il est préférable de
commencer avec Decision Trees ou Naïve Bayes pour explorer les données. Si vous ignorez quels
attributs inclure, choisissez-les tous. Utilisez la vue du réseau de dépendances qui vous aidera à
simplifier un modèle complexe.
Au cours de la phase de développement du prototype, il vous faudra construire des modèles liés afin
d'évaluer le meilleur algorithme et le meilleur modèle. Utilisez le Graphique d'analyse de précision de
l'exploration de données pour déterminer le modèle le plus indiqué pour la prédiction. Vous pouvez
également construire des modèles liés afin d'effectuer des types d'analyse séparés sur les mêmes
données. Ces modèles seront traités plus rapidement en tant que modèles liés qu'en tant que modèles
définis de manière indépendante.
Une fois que vous aurez construit et testé un prototype, vous pourrez construire et tester le modèle
d'exploration de données réel. S'il faut transformer les données avant de les introduire dans le moteur
d'explorateur de données, vous devrez développer un processus opérationnel prêt pour la production à
cette fin. Dans certains cas, il est possible que vous choisissiez de remplir un modèle d'exploration de
données directement à partir du pipeline DTS. Si le prototype a été développé sur un petit sous-
ensemble de données, il vous faudra réévaluer d'autres modèles sur le jeu complet de données de
formation.

Construction de l'application d'exploration de données
Il peut s'avérer extrêmement profitable pour une entreprise de développer et explorer un modèle
d'exploration de données dans Business Intelligence Development Studio. Vous pouvez parcourir le
modèle, étudier les relations dans les données et votre entreprise, et utiliser ces informations pour
prendre des décisions stratégiques. Cependant, le plus grand avantage provient des applications
d'exploration de données qui influencent les opérations quotidiennes de votre société : par exemple, une
application d'exploration de données qui recommande des produits aux clients, note le risque de crédit
des clients ou passe une commande en tenant compte d'une rupture de stock prévue. Pour développer
une application d'exploration de données opérationnelle, vous devez sortir de Business Intelligence
Development Studio et écrire du code – avec Microsoft Visual Studio ou l'environnement de
développement de votre choix.
La plupart des clients d'entreprise mettront en œuvre une application d'exploration de données destinée
à la clientèle au format Web ou Win32, par exemple, une page ASP. Le modèle d'exploration de données
a déjà été construit, et l'application effectue une prédiction pour un client en fonction d'un élément qu'il a
choisi ou entré dans une application de commerce électronique. Cette application pourrait être très
simple ; la seule partie inhabituelle est l'émission d'une requête de prédiction.
Le développeur d'application d'exploration de données ne doit pas nécessairement être la même
personne qui a développé le modèle d'exploration. Il doit posséder des compétences en développement
classiques, mais n'a besoin que de relativement peu de connaissances en gestion ou en statistiques.
Les technologies d'exploration de données de Microsoft facilitent grandement la construction de
l'application d'exploration de données automatisée. Ce processus implique deux étapes :


•   Développer la requête de prédiction d'exploration de données, dont la syntaxe DMX est définie dans la
    spécification OLE DB for Data Mining. Plutôt que d'écrire la DMX à la main, cliquez sur l'icône Prévision
    de modèle d'exploration de données sur la barre gauche de l'éditeur Business Intelligence
    Development Studio. L'outil graphique Générateur de requêtes vous aide à développer la requête de
    prédiction.

•   Utiliser la requête de prédiction dans votre application d'exploration de données. Si votre application
    utilise simplement DMX pour effectuer une prédiction, votre projet devra inclure la référence de classe
    ADO, ADO.Net ou ADOMD.Net (ADOMD.Net est recommandé pour le développement des versions
    ultérieures à bêta 1). Si vous construisez une application plus complexe – par exemple pour présenter
    à vos utilisateurs les visionneuses de modèle d'exploration telles que la visionneuse d'arbre de
    décision, vous devrez inclure les classes Microsoft.AnalysisServices et
    Microsoft.AnalysisServices.Viewers.
Certains clients, principalement des éditeurs de logiciels indépendants, souhaiteront créer une application
qui génère un modèle d'exploration de données. Ce type d'application se substituerait au développement
d'un modèle d'exploration dans Business Intelligence Development Studio, peut-être pour un domaine
spécifique comme l'analyse Web. Dans ce cas, votre projet de développement devra inclure
Microsoft.DataWarehouse.Interfaces pour obtenir l'accès à AMO (Analysis Management Objects).

Exemples de DMX
Les trois étapes d'une exploration de données – création d'un modèle d'exploration de données,
formation du modèle, et prédiction du comportement à partir du modèle – sont toutes disponibles avec
un langage de programmation simple, semblable au SQL, appelé DMX. Un exemple de syntaxe est
indiqué ci-dessous ; une description complète du DMX est disponible dans la documentation en ligne.
Création d'un modèle d'exploration de données :
CREATE MINING MODEL CreditRisk

(CustID       LONG KEY,

Gender       TEXT DISCRETE,

Income        LONG CONTINUOUS,

Profession    TEXT DISCRETE,

Risk      TEXT DISCRETE PREDICT)

USING Microsoft_Decision_Trees
Formation d'un modèle d'exploration de données :
INSERT INTO CreditRisk

(CustId, Gender, Income, Profession, Risk)

SELECT CustomerID, Gender, Income, Profession, Risk

From Customers

Prédiction du comportement d'un modèle d'exploration de données :
SELECT NewCustomers.CustomerID, CreditRisk.Risk,

  PredictProbability(CreditRisk)

FROM CreditRisk PREDICTION JOIN NewCustomers

ON CreditRisk.Gender=NewCustomer.Gender

AND CreditRisk.Income=NewCustomer.Income

AND CreditRisk.Profession=NewCustomer.Profession

 Haut de page

Reporting Services
Avec le lancement de Microsoft SQL Server 2005, Microsoft propose un nouveau composant majeur de sa
plate-forme d’analyse décisionnelle intégrée. SQL Server Reporting Services facilite la transmission des
bonnes informations aux bonnes personnes et ce, dans n'importe quel environnement d'entreprise.
Reporting Services est une plate-forme complète basée sur serveur conçue pour créer, gérer et diffuser
des rapports traditionnels et interactifs. Il inclut, prêts à l'emploi, tous les éléments nécessaires pour
créer, distribuer et gérer des rapports. En même temps, la conception modulaire et les API (Application
Programming Interface) étendues du produit permettent aux développeurs de logiciels, fournisseurs de
données et entreprises d'intégrer la fonction de rapport à des systèmes hérités ou à des applications
tierces.
Reporting Services est livré avec SQL Server 2005. Il comprend :
• Un ensemble complet d'outils pour créer, gérer et afficher des rapports.
• Un moteur pour héberger et traiter des rapports.
• Une architecture extensible et des interfaces ouvertes pour incorporer des rapports ou intégrer la
solution dans divers environnements informatiques.

Pourquoi utiliser Reporting Services ?
Personne ne met en doute la valeur qu'apporte la mise à disposition des bonnes informations au bonnes
personnes et au bon moment. Pour beaucoup d'entreprises cela représente un véritable problème – les
utilisateurs ayant besoin d'accéder aux informations peuvent se trouver à n'importe quel endroit, voir
même à l'extérieur de l'entreprise, et leurs compétences et domaines d'expertise sont par nature variés.
Reporting Services facilite la création de rapports traditionnels et interactifs et leur diffusion aux
personnes les plus diverses, à l'aide de mécanismes d'abonnement et de remise flexibles. Il fournit
également la sécurité et la facilité de gestion pour gérer des environnements d'entreprise complexes et
exigeants.
Reporting Services offre une combinaison d'attributs unique :
• Plate-forme complète basée sur serveur pour les rapports : Reporting Services prend en charge le cycle
de vie de génération de rapports complet, de la création à la remise en passant par la gestion
permanente des rapports.
• Rapports flexibles et extensibles : Reporting Services prend en charge les rapports traditionnels et
interactifs dans divers formats, avec des options de remise extensibles. Il peut être facilement intégré
dans n'importe quel environnement ou solution utilisant des API et des interfaces.
• Capacité à monter en charge : La conception modulaire basée sur le Web du produit évolue facilement
pour prendre en charge des environnements à haut volume. Il est possible de créer une batterie de
serveurs de rapports accédant aux mêmes serveurs centraux, et desservant ainsi des milliers de clients
basés sur le Web.
• Intégration aux produits et outils Microsoft : Reporting Services est livré avec SQL Server et s'intègre
facilement avec des outils Microsoft familiers, tels qu'Office et SharePoint Portal Server, sans nécessiter
de programmation et de personnalisation.

Manières d'utiliser Reporting Services
Étant donné que Reporting Services combine une plate-forme de rapports unique et complète à une
architecture évolutive et extensible, il répond à une grande variété de besoins en matière de rapports.
• Création de rapport d'entreprise : Les entreprises peuvent utiliser Reporting Services pour leurs
rapports internes et les applications BI. Certaines entreprises créent des magasins ou des entrepôts de
données pour agréger leurs données opérationnelles. Avec Reporting Services, les équipes informatiques
peuvent concevoir une variété de rapports et les diffuser à travers l'entreprise, à l'aide d'une
combinaison de distribution par messagerie électronique et de publication sur un portail d'entreprise.
Pour l'entreprise, Reporting Service fournit des avantages considérables en tant que solution de création
de rapports complète intégrée à la plate-forme Microsoft BI.
• Rapports incorporés : Les éditeurs de logiciels indépendants (ISV) peuvent utiliser Reporting Services
pour fournir des rapports prédéfinis dans le cadre d'une solution packagée qui fonctionne avec Microsoft
SQL Server. L'organisation informatique du client peut accéder à ces rapports tels quels, ou utiliser
Reporting Services pour personnaliser des rapports ou en créer de nouveaux pour des besoins métier
spécifiques. Pour l'ISV, Reporting Services offre un moyen simplifié d'incorporer des rapports flexibles et
interactifs dans une application.
• Rapports sur le Web pour les partenaires /clients : Les entreprises peuvent déployer des rapports
traditionnels ou interactifs basés sur le Web avec des clients ou partenaire sur des extranets. Reporting
Services isole le consommateur de rapports de la complexité des sources de données sous-jacentes, tout
en lui offrant personnalisation et interactivité.

Fonctionnalités de Reporting Services
Reporting Services combine les avantages d'un système de création de rapports géré de manière
centralisée, avec la flexibilité et la nature à la demande des applications de bureau et basées sur le Web.
Plate-forme de création de rapports complète, Reporting Services prend en charge la totalité du cycle de
vie des rapports, de la création au déploiement.

Création de rapports
Reporting Services inclut tout ce dont vous avez besoin pour créer des rapports traditionnels ou
interactifs, y compris un outil de conception de rapports graphique avec des assistants de conception de
rapports.

Fonctionnalité de création de rapports                 Détails

Vaste gamme de sources de données prise en             Microsoft SQL Server
charge                                                 Microsoft Analysis Services
                                                       Toute source de données conforme OLE DB
                                                       Toute source de données conforme ODBC
Fonctionnalité de création de rapports                 Détails

Outils de création de rapports flexibles               Générateur de rapports (utilise Visual Studio 2005)
                                                       Langage de définition de rapport (RDL) basé sur
                                                       XML
                                                       Outils tiers générant du RDL

Formats de rapport flexibles                           Format libre
                                                       Table
                                                       Matrice
                                                       Graphiques
                                                       Rapports paramétrés utilisant le filtrage
                                                       d'exécution
                                                       Tri et regroupement
                                                       Extraction
                                                       Rapports liés

Exécution de rapport modulaire                         Le rendu est un processus séparé de
                                                       l'interrogation ; un même rapport peut être rendu
                                                       dans différents formats.
                                                       L'exécution peut être planifiée ou à la demande.


Gestion des rapports
Reporting Services inclut un outil Web pour la gestion des rapports - Report Server Web Application. Les
administrateurs peuvent utiliser cette interface pour définir une sécurité à base de rôles pour les
rapports, planifier l'exécution et la remise et suivre l'historique des rapports. Une entreprise ou un ISV
peut aussi utiliser les API Reporting Services Web Services pour écrire des outils de gestion
personnalisée.
Étant donné que les définitions, dossiers et ressources des rapports sont stockés dans une base de
données SQL Server, d'autres outils tels que SQL Server Management Studio sont disponibles pour gérer
des métadonnées, ou des applications tierces qui tirent parti des API publiées.
Reporting Services implémente un modèle de sécurité flexible à base de rôles pour protéger les rapports
et les ressources de rapport. Il peut être adapté pour répondre à une grande variété de besoins de
sécurité. Le produit inclut des interfaces extensibles pour intégrer selon les besoins d'autres modèles de
sécurité.

Fonctionnalité de gestion de rapports                  Détails

Métadonnées de rapport
                                                        •   Nom


                                                        •   Description


Gestion de source de données
                                                        •   Connexions


                                                        •   Informations
                                                            d'authentification


Gestion des paramètres
                                                        •   Valeurs par
                                                            défaut
Fonctionnalité de gestion de rapports                   Détails


                                                         •      Invites


Planification de rapports                               Intégrée à SQL Server Agent

Propriétés d'exécution                                  En direct, mise en cache ou capture instantanée.
                                                        Une capture instantanée Reporting Services est
                                                        une copie stockée du jeu de données du rapport –
                                                        les résultats de la requête source du rapport
                                                        lorsque la capture instantanée du rapport a été
                                                        exécutée.

Historique des exécutions de rapport antérieures        Liste cataloguée des captures instantanées
                                                        conservée en vue d'être réutilisée selon les besoins

Sécurité de rapport                                      • Utilisateurs, groupes et rôles



Report Server Web Application                           Outil de gestion basé sur le Web pour :
                                                         • Définir la sécurité
                                                         • Planifier l'exécution et la remise de rapports
                                                         • Effectuer le suivi de l'historique des rapports



API de gestion flexibles                                API de service Web


Remise de rapports
Vous pouvez publier des rapports sur un portail, les envoyer par messagerie électronique aux
utilisateurs, ou permettre aux utilisateurs d'utiliser le serveur de rapports basé sur le Web pour accéder
aux rapports d'une hiérarchie de dossiers. Les fonctionnalités de navigation, recherche et abonnement
aident les utilisateurs à trouver et exécuter les rapports dont ils ont besoin. Les abonnements
personnalisés leur permettent de sélectionner leur format de rendu préféré.

Fonctionnalité de remise de rapports         Détails

Gamme d'options de rendu de rapport
                                              •    Formats Web (HTML)


                                              •    Formats d'impression (PDF, TIFF)


                                              •    Données (Excel, XML, CSV)


                                              •    Autres, via des API ouvertes


Options de remise flexibles
                                              •    Planifiées


                                              •    Pilotées par événement


                                              •    Abonnements personnalisés


                                              •    Rapport rendu ou remise de lien
Fonctionnalité de remise de rapports                Détails


                                                    •   Abonnements pilotés par les données


                                                    •   Autres applications par intégration

    Top of page

Résumé
Microsoft SQL Server 2005 est une plate-forme d’analyse décisionnelle complète qui fournit les
composants d'infrastructure et de serveur pour construire :
• des entrepôts de données volumineux et complexes qui sont faciles à interroger et économiques à
gérer ;
• des systèmes de rapport et d'analyse que les petites entreprises ou les départements des grandes
entreprises peuvent facilement construire et gérer ;
• des systèmes à faible latence qui délivrent des données analytiques aux utilisateurs opérationnels ;
• des systèmes d'analyse en boucle fermée et d'exploration de données, et
• des systèmes intégrés qui étendent la portée du Business Intelligence.
Les outils familiers – base de données relationnelle SQL Server, DTS, Reporting Services et Analysis
Services OLAP et Exploration de données – sont considérablement améliorés. De nouvelles
fonctionnalités, telles que Business Intelligence Development Studio et SQL Server Management Studio,
améliorent les performances de la plate-forme Microsoft BI. Chaque outil est innovant et conçu pour vous
aider à faire davantage avec moins : construire, déployer et gérer des applications de Business
Intelligence exceptionnelles avec moins de matériel, une équipe plus petite, plus rapidement et mieux
que jamais.
    Haut de page

Annexe A : Exemples de code
Exemple de requête récursive
USE AdventureWorks

GO

/*

This query brings back a list of managers, and the count of employees

      who report to them directly or indirectly).

*/

WITH reps_cte (emp, mgr, recursion_level)

AS

(

/*Get the initial list of employees.*/

SELECT EmployeeID, ManagerID, 0

FROM Employee AS E

/*Get a Union of the anchor and the recursive term.*/

UNION ALL
SELECT reps_cte.emp, E.ManagerID, recursion_level+1

FROM Employee E, reps_cte        -- Join with Employee

WHERE reps_cte.mgr=E.EmployeeID        -- This employee's manager

AND recursion_level<=20        -- up to 20 levels of mgmt

)       -- End of common table expression

/*Now query the recursive common table expression reps_cte*/

SELECT r.mgr, E.[LastName]+', ' + E.[FirstName]

    AS MgrName, count(*) CntEmployees

FROM reps_cte r INNER JOIN [Employee] E ON (r.mgr=E.EmployeeId)

GROUP BY mgr, E.[LastName]+', ' + E.[FirstName]

HAVING count(*) > 1           -- Means they manage at least one person

ORDER BY 3 DESC            -- Sort by count of employees

GO




    Haut de page

								
To top