Service système PowerPivot

Le service système PowerPivot est une fonctionnalité de PowerPivot pour SharePoint qui permet l'accès aux classeurs PowerPivot et la gestion de serveur dans une batterie SharePoint 2010. Avec d'autres composants serveur, il fournit l'infrastructure de niveau intermédiaire qui établit des connexions utilisateur aux données PowerPivot, charge et décharge des données, et surveille et établit des rapports sur l'intégrité du serveur.

Le service système PowerPivot est un service Web installé avec l'instance Analysis Services qui s'exécute en mode intégré SharePoint. Les deux services sont étroitement liés et se partagent la tâche de rendre les données PowerPivot disponibles dans la batterie. La configuration du service s'effectue via une application de service SharePoint qui est créée à votre place pendant l'installation, ou manuellement comme une tâche consécutive à l'installation dans l'Administration centrale de SharePoint.

Cliquez sur les liens suivants pour accéder à une section spécifique de cette rubrique :

Opérations du service

Configuration et administration du service

Dépendances et spécifications du service

Connexions au serveur dans la batterie de serveurs

Allocation des requêtes

Mise en cache des données PowerPivot

Découverte et maintenance du cache

Opérations du service

Le service système PowerPivot effectue les opérations suivantes :

Opérations du serveur

Description

Gestion des requêtes à la demande pour les données PowerPivot

Le service système PowerPivot gère les requêtes de données PowerPivot stockées dans les bibliothèques de contenu d'une batterie de serveurs SharePoint. Il accepte des requêtes du fournisseur de données MSOLAP sur un serveur d'applications ou du service Web PowerPivot sur un serveur frontal Web. Le service système PowerPivot récupère le classeur PowerPivot d'une bibliothèque SharePoint en empruntant l'identité de l'utilisateur SharePoint qui a demandé les données. Le service système PowerPivot envoie ensuite une requête de chargement de données aux services Analysis Services locaux. Analysis Services extrait les données PowerPivot du classeur, les charge dans la mémoire et retourne le jeu de résultats au client ou à l'application serveur qui a demandé les données.

Le service système PowerPivot continue à surveiller les requêtes pour les données et met à jour ces informations dans la base de données d'application de service PowerPivot. Si le fichier est inactif pendant 48 heures, le service système PowerPivot émettra une requête de déchargement à l'instance Analysis Services locale.

Gestion des requêtes pour l'actualisation des données PowerPivot

Le service système PowerPivot surveille également la file d'attente des travaux d'actualisation des données planifiés pour s'exécuter régulièrement. À l'heure planifiée, il ordonne à l'instance Analysis Services locale de charger les données PowerPivot et réimporter des données à partir des sources de données externes. L'actualisation des données est une opération de serveur effectuée pour le compte d'un utilisateur. Notez que des services et une configuration supplémentaires sont requis pour prendre en charge ce type d'opération. Pour plus d'informations, consultez Activer et configurer l'actualisation des données PowerPivot.

Allocation du traitement aux instances du service Analysis Services

Le service système PowerPivot équilibre la charge des requêtes pour le traitement des requêtes entre les différents serveurs disponibles s'il existe plusieurs instances de PowerPivot pour SharePoint dans la batterie de serveurs. SharePoint maintient une liste des services disponibles sur chaque serveur. Le service système PowerPivot utilise cette liste pour rechercher d'autres serveurs dans la batterie. Pour identifier le serveur PowerPivot pour SharePoint qui reçoit une requête particulière, le service système PowerPivot utilise une méthodologie d'allocation. Les méthodologies incluent une méthodologie de tourniquet (round robin) (valeur par défaut) et une méthodologie basée sur l'intégrité. Vous pouvez configurer une application de service pour qu'elle utilise l'une ou l'autre. Pour plus d'informations sur l'allocation, consultez Request Allocation, plus loin dans cette rubrique.

Configuration des connexions utilisateur et d'administration

Le service système PowerPivot gère des connexions actives, réutilisables et mises en cache à une instance Analysis Services. Les requêtes de connexion en cours de données PowerPivot déjà chargées peuvent être traitées via des pools de connexions gérés pour les connexions utilisateur à la même source de données en mémoire. Le service système PowerPivot crée et gère également des connexions d'administration à d'autres instances du service système PowerPivot dans la batterie de serveurs.

Émission de requêtes pour mettre en cache des données

Pour réduire le temps d'attente qu'implique la récupération des données PowerPivot d'une bibliothèque de contenu, le service système PowerPivot utilise une méthodologie de mise en cache qui stocke et charge une copie locale des données à partir du système de fichiers. Pour plus d'informations sur la mise en cache, consultez Caching PowerPivot Data, plus loin dans cette rubrique.

Émission de requêtes pour décharger des données

Le service système PowerPivot surveille l'accès aux données PowerPivot et indique à l'instance Analysis Services de décharger les sources de données inactives de la mémoire. Lorsque les données PowerPivot sont chargées en mémoire, elles y restent pour le traitement des requêtes supplémentaires concernant les mêmes données. Après une période d'inactivité, le service système PowerPivot envoie une requête de déchargement à l'instance Analysis Services pour décharger les données PowerPivot et libérer de la mémoire sur le serveur d'applications. Par défaut, une session est considérée comme inactive si plus de 48 heures se sont écoulées sans interaction de l'utilisateur avec les données.

Collecte des données d'utilisation

Le service système PowerPivot enregistre des événements d'utilisation pour la connexion, le chargement, le déchargement, la création de rapports de requête et les vérifications de l'état du serveur, et génère des données d'utilisation pour ces événements. Les données d'utilisation sont disponibles dans le Tableau de bord de gestion PowerPivot. Pour plus d'informations, consultez Collecte des données d'utilisation PowerPivot.

Surveillance de l'intégrité du serveur

Le service système PowerPivot surveille la disponibilité et l'intégrité du service Analysis Services. Aux intervalles déterminés par le travail du minuteur pour le collecteur de statistiques d'intégrité Power Pivot, le service système PowerPivot demande des informations système à chaque ordinateur disposant d'une instance d'Analysis Services. Les données d'utilisation de l'UC et de la mémoire apparaissent dans les rapports d'intégrité du Tableau de bord de gestion PowerPivot. Pour plus d'informations, consultez Tableau de bord de gestion PowerPivot.

Configuration et administration du service

Le service système PowerPivot est configuré via une application de service PowerPivot qui initialise une instance du service physique et utilise les paramètres, les données d'application et le contexte de sécurité défini pour cette application de service. L'application de service a des propriétés que vous pouvez utiliser pour configurer les seuils de délai d'attente, l'équilibrage de la charge, les niveaux d'enregistrement des événements, la collecte des données d'utilisation et l'actualisation des données, mais elle ne fournit pas les propriétés qui vous permettent de modifier les intervalles prédéfinis pour la mise en cache, le déchargement ou la suppression de fichiers de données.

Si le programme d'installation de SQL Server a configuré une application de service PowerPivot, le service est affecté au Pool d'applications de service - Système des services Web SharePoint défini pour la batterie de serveurs. La meilleure pratique de sécurité consiste à modifier ultérieurement le compte de service pour exécuter un compte dédié. Pour plus d'informations, consultez Application de service PowerPivot et Modifier des comptes de service et des mots de passe (PowerPivot pour SharePoint).

La configuration et l'administration du serveur sont effectuées à l'aide de l'Administration centrale et du Tableau de bord de gestion PowerPivot, qui affiche les données d'utilisation pour des applications de service PowerPivot spécifiques. Pour plus d'informations, consultez Tableau de bord de gestion PowerPivot et Administration SharePoint (PowerPivot pour SharePoint).

N'utilisez pas d'autres outils et applications, tels que le Gestionnaire de configuration SQL Server ou les services Internet (IIS), pour gérer les services installés avec PowerPivot pour SharePoint. L'utilisation de l'Administration centrale pour démarrer ou arrêter des services, ou pour modifier les comptes de service ou les mots de passe, garantit que les modifications apportées à l'état ou à l'identité du serveur sont diffusées aux autres serveurs de la batterie. Les autorisations et connexions gérées par SharePoint sont également mises à jour lorsque vous utilisez les outils SharePoint pour administrer des services qui s'exécutent dans la batterie de serveurs.

Dépendances et spécifications du service

Le service système PowerPivot s'exécute en tant que service partagé sur un serveur d'applications SharePoint. Il est étroitement associé à l'instance SQL Server Analysis Services PowerPivot locale (MSOLAP$PowerPivot) qui s'exécute sur le même ordinateur physique. C'est le seul conduit pour toutes les requêtes de chargement et déchargement de données dirigées vers l'instance Analysis Services locale. Chaque instance physique du service système PowerPivot a toujours une instance de serveur Analysis Services locale. Le programme d'installation de SQL Server installe et configure les services ensemble. Les deux services doivent partager le même état (exécuté ou arrêté) pour éviter des échecs de requêtes.

Une application de service doit être définie pour le service système PowerPivot. L'application de service fournit le point de terminaison HTTP. Les opérations de service ne sont pas disponibles tant que vous n'avez pas terminé cette étape.

PowerPivot pour SharePoint présente des dépendances sur d'autres fonctionnalités et sur l'infrastructure SharePoint, notamment Excel Services, le service d'émission de jetons Revendications et le service Banque d'informations sécurisé. Pour plus d'informations relatives aux dépendances opérationnelles sur les fonctionnalités fournies par SharePoint, consultez Configuration par défaut de PowerPivot pour SharePoint.

Connexions au serveur dans la batterie de serveurs

Les connexions aux données PowerPivot proviennent d'applications client ou serveur qui interrogent les données PowerPivot à l'aide de bibliothèques clientes Analysis Services. Les bibliothèques clientes (ADOMD.NET, AMO ou le fournisseur OLE DB Analysis Services) déterminent si le classeur PowerPivot se trouve à l'intérieur ou à l'extérieur de la batterie de serveurs. Les bibliothèques clientes routent la requête différemment selon que l'URL du classeur est interne ou externe à la batterie de serveurs.

  • Les requêtes internes à la batterie sont envoyées directement à une application de service PowerPivot, en ignorant le service Web PowerPivot. L'exemple le plus courant de ce type de requête concerne les données PowerPivot incorporées dans un classeur Excel. Dans ce cas de figure, les services de calcul Excel utilisent le fournisseur OLE DB Analysis Services pour rechercher une application de service PowerPivot dans la batterie de serveurs. Les connexions directes à une application de service PowerPivot ne sont pas restreintes seulement aux services de calcul Excel. D'autres applications, telles que les rapports Reporting Services ou les tableaux de bord PerformancePoint, établissent également des connexions directes à une application de service PowerPivot si le rapport ou tableau de bord qui interroge les données s'exécute dans la même batterie.

  • Les requêtes externes à la batterie de serveurs proviennent généralement d'applications client ou serveur qui demandent seulement les données PowerPivot. Ce type de requête est typiquement utilisé lorsqu'un classeur PowerPivot sert de source de données externe dans le Générateur de rapports ou de source de données à un autre classeur Excel. Dans ce cas de figure, les connexions externes récupèrent uniquement les données PowerPivot dans un classeur Excel, en ignorant tous les objets de visualisation et d'interaction de données également présents dans le classeur.

    Les connexions externes sont envoyées au service Web PowerPivot dans la batterie source. Le service Web PowerPivot recherche et établit une connexion à une application de service PowerPivot, qui ensuite envoie à son tour la requête à l'instance Analysis Services qui charge et retourne les données. Pour plus d'informations sur ce service, consultez Service Web PowerPivot (PowerPivot pour SharePoint).

    Notes

    L'ouverture d'un classeur PowerPivot dans Excel (par exemple, en entrant l'URL SharePoint d'un classeur dans la boîte de dialogue qui s'affiche en cliquant sur Fichier, puis Ouvrir) n'implique pas les composants serveur PowerPivot pour SharePoint. L'ouverture d'un document serveur dans Excel 2010 télécharge le fichier à partir de SharePoint vers la station de travail cliente. Dans ce cas de figure, l'application bureautique Excel et le complément PowerPivot pour Excel, via la version in-process du moteur VertiPaq Analysis Services, chargent et restituent les données localement.

Le diagramme suivant illustre les différents chemins d'accès qu'une requête peut suivre selon qu'elle provient d'Excel Services dans la batterie de serveurs ou d'un outil client, tel que le Générateur de rapports ou Excel qui s'exécute à l'extérieur de la batterie de serveurs. Les requêtes internes à la batterie de serveurs utilisent des connexions WCF vers d'autres applications de service. Les requêtes externes à la batterie de serveurs utilisent des connexions HTTP reçues par le service Web PowerPivot.

connexions et transports de composants

Les connexions aux données PowerPivot sont formulées par le fournisseur OLE DB Analysis Services. Les services et applications qui utilisent les données PowerPivot doivent utiliser une ou plusieurs des versions SQL Server 2008 R2 des bibliothèques clientes Analysis Services. Ces bibliothèques sont installées avec PowerPivot pour SharePoint ou avec PowerPivot pour Excel. Étant donné qu'elles sont redistribuables, vous pouvez également les télécharger et les installer depuis la page Web du Feature Pack SQL Server 2008 R2 sur ce site Web Microsoft.

À propos des connexions de données incorporées

Les données incorporées sont indiquées par la valeur « Data Source = $embedded$ » dans une chaîne de connexion de données PowerPivot dans le classeur parent. Pour les données incorporées, le fournisseur OLE DB Analysis Services établit une connexion WCF avec une application de service PowerPivot, qui ensuite récupère les données à l'aide de l'URL du classeur parent. L'adresse SharePoint des données incorporées est toujours l'URL du classeur parent.

Les données incorporées sont uniquement présentes dans les classeurs Excel 2010. Ni les rapports Reporting Services ni les tableaux de bord PerformancePoint n'incorporent les données PowerPivot dans le document parent restitué dans une application cliente ou une visionneuse.

Allocation des requêtes

Si vous disposez de plusieurs instances de serveur PowerPivot pour SharePoint dans une batterie, une requête relative à des données PowerPivot peut être gérée par n'importe lequel de ces serveurs. Chaque application de service PowerPivot tient à jour la liste des serveurs disponibles et des données chargées qu'elle utilise lors de l'allocation de requêtes d'interrogation. Ces informations sont stockées dans la base de données d'application de service PowerPivot. Chaque application de service PowerPivot que vous définissez maintient sa propre version de la liste des serveurs et y fait référence pour chaque requête d'interrogation. Cette liste est mise à jour immédiatement si une instance du service Analysis Services refuse une requête ou si des requêtes commencent à échouer.

Les services système PowerPivot utilisent un système de mise en cache et un schéma d'équilibrage de charge pour allouer la requête. Le serveur effectue les vérifications suivantes jusqu'à ce qu'il trouve et charge les données :

  1. Les données sont déjà chargées. L'application de service PowerPivot vérifie sa liste interne de datasets PowerPivot actifs pour déterminer si les données sont déjà chargées en mémoire par une instance Analysis Services dans la batterie de serveurs. Si les données sont actuellement chargées, une connexion utilisateur est ouverte pour la nouvelle requête.

  2. Les données ne sont pas chargées, mais mises en cache. L'application de service PowerPivot vérifie sa liste interne de datasets PowerPivot mis en cache qui sont déjà sur le système de fichiers. Si les mêmes datasets PowerPivot sont mis en cache sur plusieurs serveurs, l'application de service PowerPivot vérifie l'intégrité des serveurs et dresse la liste des serveurs qui disposent de suffisamment de ressources pour accepter la requête. Dans cette liste, un serveur est choisi au hasard.

  3. Les données ne sont ni chargées ni mises en cache. Dans ce cas, les données PowerPivot doivent être récupérées de la bibliothèque de contenu. Une méthode d'allocation est utilisée pour identifier le serveur qui obtient la requête. Une fois le serveur sélectionné, l'application de service PowerPivot envoie une requête de chargement à l'instance Analysis Services, en passant l'URL SharePoint du classeur PowerPivot.

    Par défaut, PowerPivot pour SharePoint utilise un mécanisme de tourniquet (round robin) qui alloue les requêtes dans le même ordre de répétition entre plusieurs serveurs PowerPivot. Une autre solution consiste à spécifier un mécanisme basé sur l'intégrité. Dans ce cas, le service PowerPivot alloue la requête au serveur qui présente la plus petite charge. Pour plus d'informations sur la spécification du schéma d'équilibrage de charge, consultez Créer et configurer une application de service PowerPivot.

Mise en cache des données PowerPivot

Si les données PowerPivot sont inactives pendant 48 heures, elles sont déchargées de la mémoire et mises en cache sur le disque. La mise en cache du fichier de données raccourcit les temps d'attente subis lors de la récupération des données à partir d'une base de données de contenu. En effectuant d'abord une mise en cache sur le disque, le serveur peut recharger rapidement les données pour traiter une requête d'interrogation ou à des fins d'actualisation des données. Les données restent dans le cache pendant trois jours avant leur suppression physique du serveur.

Les données PowerPivot sont mises en cache sur le serveur où elles ont été chargées. Bien que des données mises en cache soient réutilisées aussi souvent que possible, elles peuvent être mises en cache sur plusieurs serveurs si elles font l'objet de fréquents accès et que la requête a été allouée à plusieurs serveurs.

Par défaut, les fichiers mis en cache sont stockés dans le dossier C:\Program Files\Microsoft SQL Server\MSAS10_50.POWERPIVOT\OLAP\Backup par l'instance du service Analysis Services. L'accès en lecture et en écriture à ce dossier est accordé à la fois à l'instance Analysis Services et à une application de service PowerPivot. Seuls les fichiers de données PowerPivot sont mis en cache ; le classeur Excel qui fournit les données n'est jamais mis en cache ou réutilisé une fois les données PowerPivot extraites.

Vous pouvez supprimer manuellement des fichiers de données PowerPivot du dossier Backup afin de libérer de l'espace disque, mais le fichier est ajouté au cache la prochaine fois qu'il est demandé. Vous ne pouvez pas désactiver la mise en cache pour le système ou pour des classeurs PowerPivot individuels. Tous les fichiers de données PowerPivot sont mis en cache dans le système de fichiers lors d'une opération de déchargement.

Découverte et maintenance du cache

Les informations sur les fichiers mis en cache sont conservées par l'application de service PowerPivot. Le service exécute un processus de nettoyage et de découverte qui supprime les données inutilisées et détecte les nouveaux fichiers de données mis en cache. Les informations mises à jour sont écrites dans le mappage d'instance dans la base de données d'application de service PowerPivot.

Ce processus s'exécute en arrière-plan. Il n'est pas configurable et vous ne pouvez pas l'exécuter manuellement pour forcer une opération de nettoyage ou de découverte.

La maintenance est constituée des actions suivantes :

  • Supprime tous les fichiers mis en cache qui n'ont pas été utilisés au cours des 3 derniers jours. Les fichiers mis en cache sont supprimés uniquement après une inactivité totale de 5 jours (2 jours dans la mémoire du serveur et 3 jours dans le cache). Le processus recherche les fichiers inactifs toutes les 30 minutes.

  • Supprime tous les fichiers mis en cache qui ont été mis à jour ou supprimés dans la base de données de contenu. Par exemple, si les données ont été actualisées sur le serveur, toutes les copies mises en cache de ces données sont supprimées. Ce contrôle est effectué quotidiennement.

  • Ajoute de nouvelles entrées pour les nouveaux fichiers mis en cache trouvés sur le système de fichiers dans les bases de données d'application de service PowerPivot. La base de données contient des tables où sont stockées les informations relatives aux fichiers mis en cache. Au fur et à mesure que de nouveaux fichiers sont ajoutés au cache, le processus de nettoyage et de découverte recherche les nouveaux fichiers et met à jour le mappage d'instance dans la base de données d'application de service PowerPivot. Le processus vérifie quotidiennement les informations de mappage d'instance à propos des fichiers mis en cache.

  • Vérifie que les fichiers mis en cache répertoriés dans la base de données d'application de service PowerPivot sont réellement sur le disque à l'emplacement attendu. Si un fichier a été supprimé sur le système de fichiers, il est supprimé de la liste. Ce contrôle est effectué quotidiennement.