Créer et gérer une partition distante (Analysis Services)

S’applique à : SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Lors du partitionnement d’un groupe de mesures, vous pouvez configurer une base de données secondaire sur une SQL Server Analysis Services instance distante en tant que stockage de partition.

Les partitions distantes d’un cube (appelée base de données master) sont stockées dans une base de données SQL Server Analysis Services dédiée sur la instance distante de SQL Server Analysis Services (appelée base de données secondaire).

Une base de données secondaire dédiée peut stocker des partitions distantes pour une seule base de données master, mais la base de données master peut utiliser plusieurs bases de données secondaires, tant que toutes les bases de données secondaires se trouvent sur la même instance distante de SQL Server Analysis Services. Les dimensions dans une base de données dédiée aux partitions distantes sont créées en tant que dimensions liées.

Prérequis

Pour vous permettre de créer une partition distante, les conditions suivantes doivent être remplies :

  • Vous devez disposer d’une deuxième base de données SQL Server Analysis Services instance et dédiée pour stocker les partitions. La base de données secondaire a une fonction unique ; elle fournit le stockage des partitions distantes pour une base de données master.

  • Les deux instances du serveur doivent présenter la même version. Les deux bases de données doivent avoir le même niveau fonctionnel.

  • Les instances doivent être configurées en vue de connexions TCP. SQL Server Analysis Services ne prend pas en charge la création de partitions distantes à l’aide du protocole HTTP.

  • Les paramètres de pare-feu sur les deux ordinateurs doivent être définis de manière à accepter les connexions externes. Pour plus d’informations sur la configuration du pare-feu, consultez Configurer le pare-feu Windows pour autoriser l’accès à Analysis Services.

  • Le compte de service du instance exécutant la base de données master doit disposer d’un accès administratif à la instance distante de SQL Server Analysis Services. Si le compte de service change, vous devez mettre à jour les autorisations à la fois sur le serveur et sur la base de données.

  • Vous devez être administrateur SQL Server Analysis Services sur les deux ordinateurs.

  • Vous devez vous assurer que votre plan de récupération d'urgence est adapté à une sauvegarde et à une restauration des partitions distantes. L'utilisation de partitions distantes peut compliquer les opérations de sauvegarde et de restauration. Veillez à tester soigneusement votre plan pour être certain de pouvoir restaurer les données nécessaires.

Configurer les partitions distantes

Deux ordinateurs distincts qui exécutent un instance de SQL Server SQL Server Analysis Services sont chacun requis pour créer un arrangement de partition à distance qui désigne un ordinateur comme serveur principal et l’autre comme serveur secondaire.

La procédure suivante suppose que vous disposez de deux instances de serveur, avec une base de données de cube déployée sur le serveur principal. Dans le cadre de cette procédure, il est fait référence à la base de données de cube sous le terme db-master. La base de données de stockage contenant les partitions distantes est désignée sous le terme de db-storage.

Vous utiliserez SQL Server Management Studio et SQL Server Data Tools pour effectuer cette procédure.

Notes

Les partitions distantes peuvent être fusionnées uniquement avec d'autres partitions distantes. Si vous utilisez une combinaison de partitions locales et distantes, une autre méthode consiste à créer des partitions qui contiennent les données combinées, en supprimant les partitions que vous n'utilisez plus.

Spécifier les noms de serveur valides pour le déploiement du cube (dans SSDT)

  1. Sur le serveur principal : dans Explorateur de solutions, cliquez avec le bouton droit sur le nom de la solution, puis sélectionnez Propriétés. Dans la boîte de dialogue Propriétés , cliquez sur Propriétés de configuration, puis sur Déploiement, puis sur Serveur et définissez le nom du serveur principal.

  2. Sur le serveur secondaire : dans Explorateur de solutions, cliquez avec le bouton droit sur le nom de la solution, puis sélectionnez Propriétés. Dans la boîte de dialogue Propriétés , cliquez sur Propriétés de configuration, puis sur Déploiement, puis sur Serveur et définissez le nom du serveur secondaire.

Créer et déployer une base de données secondaire (dans SSDT)

  1. Sur le serveur secondaire : créez un projet Analysis Services pour la base de données de stockage.

  2. Sur le serveur secondaire : dans Explorateur de solutions, créez une source de données pointant vers la base de données de cube, db-master. Utilisez le fournisseur OLE DB natif\Fournisseur Microsoft OLE DB pour Analysis Services 11.0.

  3. Sur le serveur secondaire : déployez la solution.

Activer les fonctionnalités (dans SSMS)

  1. Sur le serveur secondaire : dans SQL Server Management Studio, cliquez avec le bouton droit sur votre SQL Server Analysis Services instance connecté dans Explorateur d'objets, puis sélectionnez Propriétés. Affectez la valeur True à Feature\LinkToOtherInstanceEnabled et Feature\LinkFromOtherInstanceEnabled.

  2. Sur le serveur secondaire : redémarrez le serveur en cliquant avec le bouton droit sur le nom du serveur dans Explorateur d'objets et en sélectionnant Redémarrer.

  3. Sur le serveur principal : dans SQL Server Management Studio, cliquez avec le bouton droit sur votre SQL Server Analysis Services instance connecté dans Explorateur d'objets, puis sélectionnez Propriétés. Affectez la valeur True à Feature\LinkToOtherInstanceEnabled et Feature\LinkFromOtherInstanceEnabled.

  4. Sur le serveur principal : pour redémarrer le serveur, cliquez avec le bouton droit sur le nom du serveur dans Explorateur d'objets, puis sélectionnez Redémarrer.

Définir la propriété de base de données MasterDataSourceID sur le serveur distant (dans SSMS)

  1. Sur le serveur secondaire : cliquez avec le bouton droit sur la base de données de stockage db-storage, pointez sur Script Database en tant que | ALTER To | New Éditeur de requête Window.

  2. Ajoutez MasterDataSourceID à XMLA, puis spécifiez l’ID de la base de données de cube, db-master, comme valeur. Le code XMLA doit ressembler à ce qui suit.

    <Alter ObjectExpansion="ExpandFull" xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">  
    <Object>  
       <DatabaseID>DB-Storage</DatabaseID>  
    </Object>  
    <ObjectDefinition>  
       <Database xmlns:xsd="http://www.w3.org/2001/XMLSchema" 400"   
          <ID>DB-Storage</ID>  
          <Name>DB-StorageB</Name>  
          <ddl200:CompatibilityLevel>1100</ddl200:CompatibilityLevel>  
          <Language>1033</Language>  
          <Collation>Latin1_General_CI_AS</Collation>  
          <DataSourceImpersonationInfo>  
    <ImpersonationMode>ImpersonateAccount</ImpersonationMode>  
             <Account>*********</Account>  
          </DataSourceImpersonationInfo>  
          <MasterDataSourceID>DB-Master</MasterDataSourceID>  
       </Database>  
    </ObjectDefinition>  
    </Alter>  
    
  3. Appuyez sur F5 pour exécuter le script.

Configurer la partition distante (dans SSDT)

  1. Sur le serveur principal : ouvrez le cube dans Cube Designer, puis cliquez sur l’onglet Partitions. Développez le groupe de mesures. Cliquez sur Nouvelle partition si le groupe de mesures est déjà configuré pour plusieurs partitions, ou cliquez sur le bouton parcourir (. . ) dans la colonne Source pour modifier la partition existante.

  2. Dans l’Assistant Partition, dans Spécifier des informations sur la source, sélectionnez la table des faits et la vue de source de données d’origine.

  3. Si vous utilisez une liaison de requête, spécifiez une clause WHERE qui segmente les données de la nouvelle partition que vous créez.

  4. Dans Emplacements pour le traitement et le stockage, sous Emplacement du traitement, choisissez Source de données Analysis Services distante, puis cliquez sur Nouveau pour créer une source de données qui désigne la base de données subordonnée, db-storage.

    Notes

    Si vous obtenez une erreur indiquant que la source de données n'existe pas dans la collection, vous devez ouvrir le projet de la base de données de stockage, db-storage, et créer une source de données qui désigne la base de données master, db-master.

  5. Sur le serveur principal : cliquez avec le bouton droit sur le nom du cube dans Explorateur de solutions, sélectionnez Traiter et traitez entièrement le cube.

Administration de partitions distantes

SQL Server Analysis Services prend en charge le traitement parallèle et séquentiel des partitions distantes. La base de données master, dans laquelle les partitions ont été définies, coordonne les transactions entre toutes les instances qui participent au traitement des partitions d'un cube. Les rapports de traitement sont ensuite envoyés à toutes les instances qui ont traité une partition.

Un cube contenant des partitions distantes peut être administré avec ses partitions sur un seul instance de SQL Server Analysis Services. Toutefois, les métadonnées de la partition distante ne peuvent être consultées et mises à jour que sur le instance de SQL Server Analysis Services où la partition et son cube parent ont été définis. La partition distante ne peut pas être consultée ou mise à jour sur le instance distant de SQL Server Analysis Services.

Notes

Bien que les bases de données dédiées au stockage des partitions distantes ne soient pas exposées aux ensembles de lignes de schéma, les applications utilisant des objets AMO (Analysis Management Objects) peuvent toujours découvrir une base de données dédiée à l'aide de XML pour la commande Analysis Discover. Toute commande CREATE ou DELETE envoyée directement à une base de données dédiée à l'aide d'un protocole TCP ou client HTTP réussit, mais le serveur retourne un avertissement indiquant que l'action peut endommager cette base de données étroitement gérée.

Voir aussi

Partitions (Analysis Services - Données multidimensionnelles)