> Data > Ecriture d’un cube sous forme de script dans XMLA

Ecriture d’un cube sous forme de script dans XMLA

Data - Par Erin Welker - Publié le 24 juin 2010
email



Ecriture d’un cube sous forme de script dans XMLA

Cette boite à outil se rattache à l’article "Migration des cubes d’Analys Services 2000 vers Analys Services 2005"

Quasiment tous les objets dans SQL Server Analysis Services (SSAS), y compris les cubes, dimensions, sources de données et vues de source de données (DSV), se prêtent à l’écriture de scripts avec XMLA. La méthode la plus simple de commencer un script consiste à cliquer avec le bouton droit de la souris sur l’objet à créer dans SQL Server Management Services (SSMS) et à sélectionner l’option Script.

Vous pouvez employer cette fonctionnalité pour scripter de manière sélective certains objets migrés. La liste de contrôle générale suivante illustre comment appliquer cette méthode dans notre scénario FoodMart 2000 :

1. Scriptez une migration de base de données directe à partir de SSAS 2000 en utilisant le Migration Wizard. La base de données résultante est probablement nommée « FoodMart 2000 ».

2. Créez une nouvelle base de données FoodMart, en la nommant par exemple « FoodMart 2005 ».

3. Scriptez et exécutez la source de données à partir de la base de données migrée (changez la base de données dans le script).

4. Scriptez et exécutez la vue de source de données à partir de la base de données migrée (changez la base de données dans le script).

5. Ajoutez les relations et clés primaires appropriées à la vue de source de données dans FoodMart 2005.

6. Changez le nom des calculs nommés dans la vue de source de données FoodMart 2005 selon les besoins. Le Migration Wizard a ajouté des calculs nommés à certaines des tables dans la vue et les a nommés « Column1 ». Ces calculs reflètent les instructions SQL qui ont été entrées dans la colonne Source pour les mesures du cube ou la colonne Member pour les noms de niveau dimension dans FoodMart 2000. Il est judicieux de les renommer afin qu’ils soient plus représentatifs des calculs sousjacents.

7. Créez un nouveau cube dans FoodMart 2005 au moyen de la fonctionnalité Auto Build (Génération automatique).

8. Examinez et révisez les dimensions résultantes (par ex., propriétés d’attributs, hiérarchies définies par l’utilisateur, relations d’attributs) dans FoodMart 2005.

9. Scriptez et exécutez le code XMLA pour créer d’autres objets, notamment des partitions, des calculs MDX et des actions afin de les copier de la base de données migrée vers FoodMart 2005. Vous pouvez scripter ces objets indépendamment ou les extraire d’un script de création de cube ou de base de données.

10. Ajoutez des désignations à FoodMart 2005 pour les dimensions parent/ enfant, les cumuls (rollup)/formules de membres personnalisés et les opérateurs unaires. Vous pouvez déterminer ces désignations en examinant la base de données migrée.

11. Ajoutez des actions d’exploration transversale pour dupliquer les paramètres de drillthrough à partir de SSAS 2000. Il pourrait être extrêmement facile de découper des sousensembles d’un script de création de cube ou de base de données lors de la création d’objets tels que des partitions, actions et calculs MDX. Il est possible d’exécuter l’exemple de script du listing A dans SSMS afin de créer des membres calculés à partir du cube source Sales dans la nouvelle base de données générée.

Listing A – Script XMLA destiné à créer des membres calculés à partir du cube Sales

<Alter ObjectExpansion=|ObjectProperties|
xmlns=|http://schemas.microsoft.com/analysisservices/2003/engine|>
<Object>
<DatabaseID>FoodMart 2005</DatabaseID>
<CubeID>Food Mart</CubeID>
<MdxScriptID>MdxScript</MdxScriptID>
</Object>
<ObjectDefinition>
<MdxScript xmlns:xsd=|http://www.w3.org/2001/XMLSchema| xmlns:xsi=|http://www.w3.org/2001/XMLSchema-instance|>
<ID>MdxScript</ID>
<Name>MdxScript</Name>
<Commands>
<Command>
<Text>CALCULATE;</Text>
</Command>
<Command>
<Text>
CREATE MEMBER Sales.Measures
.[Profit] AS _[Measures].[Store Sales]-[Measures].[Store Cost] ,
FORMAT_STRING = _Standard ;
</Text>
</Command>
<Command>
<Text>
CREATE MEMBER Sales.Measures
.[Sales Average] AS _[Measures].[Store Sales]/[Measures].[Sales Count] ,
FORMAT_STRING = _Standard ;
</Text>
</Command>
</Commands>
</MdxScript>
</ObjectDefinition>
</Alter>


Téléchargez gratuitement cette ressource

Endpoint Security : Guide de Mise en œuvre

Endpoint Security : Guide de Mise en œuvre

Détournement d’applications légitimes, élévation de privilèges, logiciels malveillants furtifs : comment les solutions de Endpoint Security permettent elles de faire face aux nouvelles techniques d'attaques complexes ? Découvrez, dans ce Guide Endpoint Security, les perspectives associées à leur mise en œuvre.

Data - Par Erin Welker - Publié le 24 juin 2010