Concepts et modèle objet AMO

Cette rubrique fournit une définition d'AMO (Analysis Management Objects), décrit la relation entre un objet AMO et les autres outils et bibliothèques présents dans l'architecture de Microsoft SQL Server Analysis Services, puis elle explique de manière conceptuelle tous les principaux objets AMO.

AMO est une collection complète de classes de gestion pour Analysis Services, qui peut être utilisée par programme, dans le cadre de l'espace de noms Microsoft.AnalysisServices, dans un environnement managé. Les classes sont incluses dans le fichier AnalysisServices.dll, qui se trouve habituellement là où le programme d'installation SQL Server installe les fichiers, sous le dossier \100\SDK\Assemblies\. Pour utiliser les classes AMO, vous devez inclure une référence à cet assembly dans vos projets.

AMO vous permet de créer, modifier et supprimer des objets tels que les cubes, les dimensions, les structures d'exploration de données et les bases de données Analysis Services ; il est possible d'effectuer des actions sur tous ces objets à partir de votre application dans le .NET Framework. Vous pouvez également traiter et mettre à jour les informations stockées dans les bases de données Analysis Services.

Avec AMO, vous ne pouvez pas interroger vos données. Pour cela, vous devez utiliser ADOMD.NET.

Cette rubrique contient les sections suivantes :

AMO dans l'architecture Analysis Services

Architecture AMO

Utilisation d'AMO

Automatisation des tâches administratives avec AMO

AMO dans l'architecture Analysis Services

De par sa conception, AMO se prédestine uniquement à la gestion d'objets et non à l'interrogation de données. Si l'utilisateur a besoin d'interroger des données Analysis Services à partir d'une application cliente, celle-ci doit utiliser ADOMD.NET.

Architecture AMO

AMO est une bibliothèque complète de classes conçue pour gérer une instance de Analysis Services à partir d'une application cliente en code managé dans le cadre du .NET Framework version 2.0.

La bibliothèque de classes AMO est conçue comme une hiérarchie de classes dans laquelle certaines classes doivent être instanciées avant d'autres pour pouvoir être utilisées dans votre code. Il existe également des classes auxiliaires qui peuvent être instanciées à tout moment dans votre code, mais il est probable que vous aurez instancié une ou plusieurs classes de la hiérarchie avant d'utiliser une classe auxiliaire.

L'illustration suivante présente une vue détaillée de la hiérarchie AMO qui comprend les classes principales. L'illustration montre la position des classes par rapport à leurs conteneurs et à leurs homologues. Comme vous pouvez le constater, Dimension appartient à Database et à Server, et peut être créé en même temps que DataSource et que MiningStructure. Certaines classes homologues doivent être instanciées pour pouvoir en utiliser d'autres. Par exemple, vous devez créer une instance de DataSource pour pouvoir ajouter une nouvelle classe Dimension ou MiningStructure.

Vue d'ensemble des classes AMO

Un objet principal est une classe qui représente un objet complet, c'est-à-dire une entité entière et non une partie d'un autre objet. Les objets Server, Cube, Dimension et MiningStructure sont des objets principaux en ce sens qu'ils constituent des entités à eux seuls. Toutefois, un objet Level n'est pas un objet principal, car il est une partie constituante d'un objet Dimension. Les objets principaux peuvent être créés, supprimés, modifiés ou traités indépendamment des autres objets. Les objets secondaires sont des objets qui ne peuvent être créés que dans le cadre de la création de l'objet principal parent. Les objets secondaires sont généralement créés lors de la création d'un objet principal. Les valeurs des objets secondaires doivent être définies au moment de leur création, car aucune d'entre elles n'est créée par défaut.

L'illustration suivante montre les objets principaux contenus dans un objet Server.

Principaux objets AMOPrincipaux objets AMO (2)

Dans le cas de la programmation avec AMO, l'association entre les classes et les classes contenues utilise des attributs de type de collection tels que, par exemple, Server et Dimension. Pour utiliser une instance d'une classe contenue, vous devez d'abord acquérir une référence à un objet collection qui détient ou peut détenir la classe contenue. Vous devez ensuite trouver l'objet spécifique que vous recherchez dans la collection avant de pouvoir obtenir une référence à l'objet et commencer à l'utiliser.

Classes AMO

AMO est une bibliothèque de classes conçue pour gérer une instance d'Analysis Services à partir d'une application cliente. La bibliothèque AMO peut s'envisager comme des groupes d'objets liés par une relation logique qui sont utilisés pour accomplir une tâche spécifique. Les classes AMO peuvent être rangées dans les catégories suivantes :

Ensemble de classes

Fonction

Classes fondamentales AMO

Classes nécessaires à l'utilisation de tout autre ensemble de classes.

Classes OLAP AMO

Classes permettant de gérer les objets OLAP dans Analysis Services.

Classes d'exploration de données AMO

Classes permettant de gérer les objets d'exploration de données dans Analysis Services.

Classes de sécurité AMO

Classes permettant de contrôler l'accès aux autres objets et de maintenir la sécurité.

Autres classes et méthodes AMO

Classes et méthodes permettant aux administrateurs OLAP ou d'exploration de données de réaliser leurs tâches quotidiennes.

Utilisation d'AMO

AMO s'avère particulièrement utile pour automatiser les tâches répétitives, telles que la création de nouvelles partitions dans un groupe de mesures sur la base de nouvelles données dans la table de faits, ou le réapprentissage d'un modèle d'exploration de données sur la base de nouvelles données. Ces tâches qui créent de nouveaux objets sont généralement effectuées tous les mois, toutes les semaines ou tous les trimestres, et les nouveaux objets peuvent être facilement nommés par l'application sur la base des nouvelles données.

Administrateurs Analysis Services

Les administrateurs Analysis Services peuvent utiliser AMO pour automatiser le traitement de bases de données Analysis Services. Pour concevoir et déployer des bases de données Analysis Services, vous devez utiliser Business Intelligence Development Studio.

Développeurs

Les développeurs peuvent utiliser AMO afin de développer des interfaces d'administration pour des ensembles d'utilisateurs spécifiés. Ces interfaces peuvent limiter l'accès aux objets Analysis Services et cantonner les utilisateurs à certaines tâches. Par exemple, en utilisant AMO, vous pouvez créer une application de sauvegarde qui permette à un utilisateur d'afficher tous les objets de base de données, de sélectionner n'importe quelle base de données et de la sauvegarder sur un jeu de périphériques spécifié.

Les développeurs peuvent également incorporer la logique Analysis Services dans leurs applications. Pour cela, les développeurs peuvent créer des cubes, des dimensions, des structures d'exploration de données et des modèles d'exploration de données sur la base d'entrées utilisateur ou d'autres facteurs.

Utilisateurs expérimentés d'OLAP

Les utilisateurs expérimentés d'OLAP sont généralement des analystes de données ou d'autres utilisateurs de données expérimentés qui possèdent une grande expérience en matière de programmation et qui souhaitent améliorer leur analyse de données à travers une utilisation plus rapprochée des objets de données. Pour les utilisateurs contraints de travailler hors connexion, AMO peut s'avérer très utile pour automatiser la création de cubes locaux avant de se déconnecter.

Utilisateurs expérimentés de l'exploration de données

Pour les utilisateurs expérimentés de l'exploration de données, AMO est particulièrement utile lorsque des ensembles importants de modèles doivent faire l'objet d'un réapprentissage régulier.

Automatisation des tâches administratives avec AMO

La plupart des tâches répétitives sont conçues, déployées et gérées dans de meilleures conditions si elles sont développées à l'aide d'Integration Services que si elles sont développées en tant qu'application dans un langage de votre choix. Toutefois, pour les tâches répétitives qui ne peuvent pas être automatisées à l'aide d'Integration Services, vous pouvez utiliser AMO. AMO s'avère également utile lorsque vous souhaitez développer une application spécialisée décisionnelle au moyen d'Analysis Services.

Gestion automatique des objets

Avec AMO, il est très facile de créer, mettre à jour ou supprimer des objets Analysis Services (par exemple, Database, Dimension, Cube, MiningStructure et MiningModel ou Role) sur la base des entrées utilisateur ou de nouvelles données acquises. AMO est idéal pour les applications d'installation chargées de déployer une solution développée, d'un éditeur de logiciels indépendant vers un client final. L'application d'installation est en mesure de vérifier s'il existe une version antérieure, de mettre à jour la structure, de supprimer les objets devenus superflus et d'en créer de nouveaux. En l'absence d'une version antérieure, elle peut tout créer entièrement.

AMO peut s'avérer très efficace pour créer de nouvelles partitions basées sur de nouvelles données et supprimer celles, anciennes, qui avaient dépassé l'étendue du projet. Par exemple, pour une solution d'analyse financière qui utilise les données des 36 derniers mois, dès que les données d'un nouveau mois sont reçues, les données du mois le plus antérieur mois peuvent être supprimées. Pour optimiser les performances, de nouvelles agrégations peuvent être conçues en fonction de l'utilisation et être appliquées aux 12 derniers mois.

Traitement automatique des objets

Le traitement d'objets et la mise à jour de la disponibilité peuvent être accomplis en utilisant AMO pour répondre à certains événements au delà des données de flux ordinaires et des tâches planifiées qui utilisent Integration Services.

Gestion automatique de la sécurité

La gestion de la sécurité peut être automatisée pour inclure de nouveaux utilisateurs à des rôles et des autorisations ou pour supprimer d'autres utilisateurs dès que leur délai a expiré. De nouvelles interfaces peuvent être créées pour simplifier la gestion de la sécurité pour les administrateurs de la sécurité. Cela peut s'avérer plus simple que d'utiliser Business Intelligence Development Studio.

Gestion automatique de la sauvegarde

La gestion automatique de la sauvegarde peut être assurée en utilisant des tâches Integration Services ou en créant des applications AMO spécialisées qui s'exécutent automatiquement. En utilisant AMO, vous pouvez développer des interfaces de sauvegarde pour aider les opérateurs dans leurs travaux quotidiens.

Tâches pour lesquelles AMO n'est pas prévu

AMO ne peut pas être utilisé pour interroger les données. Pour interroger des données Analysis Services, y compris les cubes et les modèles d'exploration de données, utilisez ADOMD.NET à partir d'une application utilisateur. Pour plus d'informations, consultez ADOMD.NET.