Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Prise en charge de SQL Server Analysis Services dans Amazon RDS for SQL Server
Microsoft SQL Server Analysis Services (SSAS) fait partie de la suite Microsoft Business Intelligence (MSBI). SSAS est un outil de traitement analytique en ligne (OLAP) et d'exploration de données installé dans SQL Server. Vous utilisez SSAS pour analyser des données et vous aider ainsi à prendre des décisions professionnelles. SSAS diffère de la base de données relationnelle SQL Server, car SSAS est optimisé pour les requêtes et les calculs, courants dans un environnement business intelligence.
Vous pouvez activer SSAS pour des instances de base de données existantes ou nouvelles. Il est installé sur la même instance de base de données que votre moteur de base de données. Pour plus d'informations sur SSAS, consultez la documentation Analysis Services
Amazon RDS prend en charge SSAS pour SQL Server éditions Standard et Enterprise sur les versions suivantes :
-
Mode tabulaire :
-
SQL Server 2019, version 15.00.4043.16.v1 et ultérieure
-
SQL Server 2017, version 14.00.3223.3.v1 et ultérieure
-
SQL Server 2016, version 13.00.5426.0.v1 et ultérieure
-
-
Mode multidimensionnel :
-
SQL Server 2017, version 14.00.3381.3.v1 et ultérieure
-
SQL Server 2016, version 13.00.5882.1.v1 et ultérieure
-
Table des matières
- Limites
- Activation de SSAS
- Déploiement de projets SSAS sur Amazon RDS
- Surveillance de l'état d'une tâche de déploiement
- Utilisation de SSAS sur Amazon RDS
- Sauvegarde d'une base de données SSAS
- Restauration d'une base de données SSAS
- Modification du mode SSAS
- Désactivation de SSAS
- Résolution des problèmes rencontrés avec SSAS
Limites
Les limitations suivantes s'appliquent à l'utilisation de SSAS sur RDS pour SQL Server :
-
RDS for SQL Server prend en charge l'exécution de SSAS en mode tabulaire ou multidimensionnel. Pour de plus amples informations, veuillez consulter Comparaison des solutions tabulaires et multidimensionnelles
dans la documentation Microsoft. -
Vous ne pouvez utiliser qu'un seul mode SSAS à la fois. Avant de changer de mode, assurez-vous de supprimer toutes les bases de données SSAS.
Pour plus d'informations, consultez Modification du mode SSAS.
-
Le mode multidimensionnel n'est pas pris en charge sur SQL Server 2019.
-
Les instances multi-AZ ne sont pas prises en charge.
-
Les instances doivent utiliser Active Directory autogéré ou AWS Directory Service for Microsoft Active Directory pour l'authentification SSAS. Pour plus d'informations, consultez Utilisation d'Active Directory avec RDS for SQL Server.
-
Les utilisateurs ne disposent pas d'un accès administrateur au serveur SSAS, mais ils peuvent avoir un accès administrateur au niveau de la base de données.
-
Le seul port pris en charge pour accéder à SSAS est le port 2383.
-
Vous ne pouvez pas déployer de projets directement. Nous fournissons une procédure stockée fournie par RDS pour cela. Pour plus d'informations, consultez Déploiement de projets SSAS sur Amazon RDS.
-
Le traitement pendant le déploiement n'est pas pris en charge.
-
L'utilisation de fichiers .xmla pour le déploiement n'est pas prise en charge.
-
Les fichiers d'entrée du projet SSAS et les fichiers de sortie de la sauvegarde de base de données peuvent se trouver uniquement dans le dossier
D:\S3
de l'instance de base de données.
Activation de SSAS
Utilisez la procédure suivante pour activer SSAS pour votre instance de base de données :
-
Créez un groupe d'options ou choisissez un groupe d'options existant.
-
Ajoutez l'option
SSAS
au groupe d'options. -
Associez le groupe d'options à l'instance de base de données.
-
Autorisez l'accès entrant au groupe de sécurité VPC (Virtual Private Cloud) pour le port d'écoute SSAS.
-
Activez l'intégration Amazon S3.
Création d'un groupe d'options pour SSAS
Utilisez AWS Management Console ou l'AWS CLI pour créer un groupe d'options correspondant au moteur SQL Server et à la version de l'instance de base de données que vous prévoyez d'utiliser.
Note
Vous pouvez également utiliser un groupe d'options existant s'il convient au moteur et à la version SQL Server.
La procédure de console suivante crée un groupe d'options pour SQL Server Standard Edition 2017.
Pour créer le groupe d'options
Connectez-vous à la AWS Management Console et ouvrez la console Amazon RDS à l'adresse https://console.aws.amazon.com/rds/
. -
Dans le panneau de navigation, choisissez Groupes d'options.
-
Choisissez Create group.
-
Dans la fenêtre Créer un groupe d'options, procédez comme suit :
-
Pour Nom, attribuez au groupe d'options un nom unique au sein de votre compte AWS, par exemple
ssas-se-2017
. Le nom ne peut contenir que des lettres, des chiffres et des tirets. -
Pour Description, saisissez une brève description du groupe d'options, par exemple
SSAS option group for SQL Server SE 2017
. La description est utilisée à des fins d'affichage. -
Pour Moteur, choisissez sqlserver-se.
-
Pour Version majeure du moteur, choisissez 14.00.
-
-
Sélectionnez Créer.
L'exemple de CLI suivant crée un groupe d'options pour SQL Server Standard Edition 2017.
Pour créer le groupe d'options
-
Utilisez l’une des commandes suivantes.
Pour LinuxmacOS, ou Unix :
aws rds create-option-group \ --option-group-name
ssas-se-2017
\ --engine-namesqlserver-se
\ --major-engine-version14.00
\ --option-group-description "SSAS option group for SQL Server SE 2017
"Dans Windows :
aws rds create-option-group ^ --option-group-name
ssas-se-2017
^ --engine-namesqlserver-se
^ --major-engine-version14.00
^ --option-group-description "SSAS option group for SQL Server SE 2017
"
Ajout de l'option SSAS au groupe d'options
Ensuite, utilisez AWS Management Console ou l'AWS CLI pour ajouter l'option SSAS
au groupe d'options.
Pour ajouter l'option SSAS
Connectez-vous à la AWS Management Console et ouvrez la console Amazon RDS à l'adresse https://console.aws.amazon.com/rds/
. -
Dans le panneau de navigation, choisissez Groupes d'options.
-
Choisissez le groupe d'options que vous venez de créer.
-
Sélectionnez Ajouter une option.
-
Sous Option details (Détails de l'option), choisissez SSAS pour Option name (Nom de l'option).
-
Sous Option settings (Paramètres d'option), procédez comme suit :
-
Pour Max memory (Mémoire maximale), saisissez une valeur comprise entre 10 et 80.
Max memory (Mémoire max.) spécifie le seuil supérieur au-delà duquel SSAS commence à libérer de la mémoire de manière plus agressive pour laisser de la place aux requêtes en cours d'exécution et hautement prioritaires. Le nombre correspond à un pourcentage de la mémoire totale de l'instance de base de données. Les valeurs autorisées sont 10–80, et celle par défaut est 45.
-
Pour Mode, choisissez le mode serveur SSAS, Tabular (Tabulaire) ou Multidimensional (Multidimensionnel).
Si vous ne voyez pas le paramètre d'option Mode, le mode multidimensionnel n'est pas pris en charge dans votre région AWS. Pour plus d'informations, consultez Limites.
Le mode Tabular (Tabulaire) est le mode par défaut.
-
Pour Groupes de sécurité, choisissez le groupe de sécurité VPC à associer à l'option.
Note
Le port permettant d'accéder à SSAS, 2383, est prérempli.
-
-
Sous Scheduling (Planification), choisissez si vous souhaitez ajouter l'option immédiatement ou lors du créneau de maintenance suivant.
-
Sélectionnez Ajouter une option.
Pour ajouter l'option SSAS
-
Créez un fichier JSON, par exemple
ssas-option.json
, avec les paramètres suivants :-
OptionGroupName
– Nom du groupe d'options que vous avez créé ou choisi précédemment (ssas-se-2017
dans l'exemple suivant). -
Port
– Port que vous utilisez pour accéder à SSAS. Le seul port pris en charge est 2383. -
VpcSecurityGroupMemberships
– Appartenances aux groupes de sécurité VPC pour votre instance de base de données RDS. -
MAX_MEMORY
– Seuil supérieur au-delà duquel SSAS doit commencer à libérer de la mémoire de manière plus agressive pour laisser de la place aux requêtes en cours d'exécution et hautement prioritaires. Le nombre correspond à un pourcentage de la mémoire totale de l'instance de base de données. Les valeurs autorisées sont 10–80, et celle par défaut est 45. -
MODE
– Le mode de serveur SSAS,Tabular
ouMultidimensional
.Tabular
est le mode par défaut.Si vous recevez une erreur indiquant que le paramètre d'option
MODE
n'est pas alide, le mode multidimensionnel n'est pas pris en charge dans votre région AWS. Pour plus d'informations, consultez Limites.
Voici un exemple de fichier JSON avec les paramètres d'option SSAS.
{ "OptionGroupName": "
ssas-se-2017
", "OptionsToInclude": [ { "OptionName": "SSAS", "Port": 2383, "VpcSecurityGroupMemberships": ["sg-0abcdef123
"], "OptionSettings": [{"Name":"MAX_MEMORY","Value":"60
"},{"Name":"MODE","Value":"Multidimensional
"}] }], "ApplyImmediately": true } -
-
Ajoutez l'option
SSAS
au groupe d'options.Pour LinuxmacOS, ou Unix :
aws rds add-option-to-option-group \ --cli-input-json file://
ssas-option.json
\ --apply-immediatelyDans Windows :
aws rds add-option-to-option-group ^ --cli-input-json file://
ssas-option.json
^ --apply-immediately
Association du groupe d'options à votre instance de base de données
Vous pouvez utiliser la console ou la CLI pour associer le groupe d'options à votre instance de base de données.
Associez votre groupe d'options à une instance de base de données nouvelle ou existante :
-
Pour une nouvelle instance de base de données, associez le groupe d'options à l'instance de base de données lorsque vous lancez l'instance. Pour plus d'informations, consultez Création d'une instance de base de données Amazon RDS.
-
Pour une instance de base de données existante, modifiez l'instance et associez-lui le nouveau groupe d'options. Pour plus d'informations, consultez Modification d'une instance de base de données Amazon RDS.
Note
Si vous utilisez une instance existante, un domaine Active Directory et un rôle AWS Identity and Access Management (IAM) doivent déjà lui être associés. Si vous créez une instance, spécifiez un domaine Active Directory et un rôle IAM existants. Pour plus d'informations, consultez Utilisation d'Active Directory avec RDS for SQL Server.
Vous pouvez associer votre groupe d'options à une instance de base de données nouvelle ou existante.
Note
Si vous utilisez une instance existante, un domaine Active Directory et un rôle IAM doivent déjà lui être associés. Si vous créez une instance, spécifiez un domaine Active Directory et un rôle IAM existants. Pour plus d'informations, consultez Utilisation d'Active Directory avec RDS for SQL Server.
Pour créer une instance de base de données utilisant le groupe d'options
-
Spécifiez le type de moteur de base de données et la version majeure utilisés lors de la création du groupe d'options.
Pour LinuxmacOS, ou Unix :
aws rds create-db-instance \ --db-instance-identifier
myssasinstance
\ --db-instance-classdb.m5.2xlarge
\ --enginesqlserver-se
\ --engine-version14.00.3223.3.v1
\ --allocated-storage100
\ --manage-master-user-password \ --master-usernameadmin
\ --storage-typegp2
\ --license-modelli
\ --domain-iam-role-namemy-directory-iam-role
\ --domainmy-domain-id
\ --option-group-namessas-se-2017
Dans Windows :
aws rds create-db-instance ^ --db-instance-identifier
myssasinstance
^ --db-instance-classdb.m5.2xlarge
^ --enginesqlserver-se
^ --engine-version14.00.3223.3.v1
^ --allocated-storage100
^ --manage-master-user-password ^ --master-usernameadmin
^ --storage-typegp2
^ --license-modelli
^ --domain-iam-role-namemy-directory-iam-role
^ --domainmy-domain-id
^ --option-group-namessas-se-2017
Pour modifier une instance de base de données afin d'y associer le groupe d'options
-
Utilisez l’une des commandes suivantes.
Pour LinuxmacOS, ou Unix :
aws rds modify-db-instance \ --db-instance-identifier
myssasinstance
\ --option-group-namessas-se-2017
\ --apply-immediatelyDans Windows :
aws rds modify-db-instance ^ --db-instance-identifier
myssasinstance
^ --option-group-namessas-se-2017
^ --apply-immediately
Autorisation de l'accès entrant à votre groupe de sécurité VPC
Créez une règle entrante pour le port d'écoute SSAS spécifié dans le groupe de sécurité VPC associé à votre instance de base de données. Pour de plus amples informations sur la configuration des groupes de sécurité, veuillez consulter Créer un groupe de sécurité qui autorise l'accès à votre instance de base de données dans votre VPC.
Activation de l'intégration Amazon S3
Pour télécharger des fichiers de configuration de modèle sur votre hôte pour le déploiement, utilisez l'intégration Amazon S3. Pour plus d'informations, consultez Intégration d'une instance de base de données Amazon RDS for SQL Server DB avec Amazon S3.
Déploiement de projets SSAS sur Amazon RDS
Sur RDS, vous ne pouvez pas déployer de projets SSAS directement avec SQL Server Management Studio (SSMS). Pour déployer des projets, utilisez une procédure stockée de RDS.
Note
L'utilisation de fichiers .xmla pour le déploiement n'est pas prise en charge.
Avant de déployer des projets, vérifiez les points suivants :
-
L'intégration Amazon S3 est activée. Pour plus d'informations, consultez Intégration d'une instance de base de données Amazon RDS for SQL Server DB avec Amazon S3.
-
Le paramètre de configuration
Processing Option
est défini surDo Not Process
. Ce paramètre signifie qu'aucun traitement n'est effectué après le déploiement. -
Vous disposez des fichiers
etmyssasproject
.asdatabase
. Ils sont générés automatiquement lorsque vous créez le projet SSAS.myssasproject
.deploymentoptions
Pour déployer un projet SSAS sur RDS
-
Téléchargez le fichier
.asdatabase
(modèle SSAS) de votre compartiment S3 dans votre instance de base de données, comme illustré dans l'exemple suivant. Pour plus d'informations sur les paramètres de téléchargement, consultez Téléchargement des fichiers d'un compartiment Amazon S3 vers une instance de base de données SQL Server.exec msdb.dbo.rds_download_from_s3 @s3_arn_of_file='arn:aws:s3:::
bucket_name
/myssasproject
.asdatabase', [@rds_file_path='D:\S3\myssasproject
.asdatabase'], [@overwrite_file=1]; -
Téléchargez le fichier
.deploymentoptions
de votre compartiment S3 dans votre instance de base de données.exec msdb.dbo.rds_download_from_s3 @s3_arn_of_file='arn:aws:s3:::
bucket_name
/myssasproject
.deploymentoptions', [@rds_file_path='D:\S3\myssasproject
.deploymentoptions'], [@overwrite_file=1]; -
Déployez le projet.
exec msdb.dbo.rds_msbi_task @task_type='SSAS_DEPLOY_PROJECT', @file_path='D:\S3\
myssasproject
.asdatabase';
Surveillance de l'état d'une tâche de déploiement
Pour suivre l'état de votre tâche de déploiement (ou de téléchargement), appelez la fonction rds_fn_task_status
. Deux paramètres sont nécessaires. Le premier paramètre doit toujours être NULL
, car il ne s'applique pas à SSAS. Le second paramètre accepte l'ID de tâche.
Pour consulter une liste de toutes les tâches, définissez le premier paramètre sur NULL
et le second sur 0
, comme illustré dans l'exemple suivant.
SELECT * FROM msdb.dbo.rds_fn_task_status(NULL,
0
);
Pour obtenir une tâche spécifique, définissez le premier paramètre sur NULL
et le second sur l'ID de tâche, comme illustré dans l'exemple suivant.
SELECT * FROM msdb.dbo.rds_fn_task_status(NULL,
42
);
La fonction rds_fn_task_status
retourne les informations suivantes.
Paramètre de sortie |
Description |
---|---|
|
ID de la tâche |
|
Pour SSAS, les tâches peuvent avoir les types suivants :
|
|
Non applicable aux tâches SSAS. |
|
Progression de la tâche sous forme de pourcentage. |
|
Temps consacré à la tâche, en minutes. |
|
État de la tâche. Les statuts possibles sont les suivants :
|
|
Informations supplémentaires sur la tâche. Si une erreur se produit pendant le traitement, cette colonne contient des informations sur l'erreur. Pour plus d'informations, consultez Résolution des problèmes rencontrés avec SSAS. |
|
Date et heure de la dernière mise à jour de l'état de la tâche. |
|
Date et heure de création de la tâche. |
|
Non applicable aux tâches SSAS. |
|
Non applicable aux tâches SSAS. |
|
Non applicable aux tâches SSAS. |
|
Non applicable aux tâches SSAS. |
|
Non applicable aux tâches SSAS. |
|
Métadonnées associées à la tâche SSAS. |
Utilisation de SSAS sur Amazon RDS
Après le déploiement du projet SSAS, vous pouvez traiter directement la base de données OLAP sur SSMS.
Pour utiliser SSAS sur RDS
-
Dans SSMS, connectez-vous à SSAS en utilisant le nom d'utilisateur et le mot de passe du domaine Active Directory.
-
Développez Bases de données. La nouvelle base de données SSAS déployée s'affiche.
-
Localisez la chaîne de connexion, puis remplacez le nom d'utilisateur et le mot de passe pour donner accès à la base de données SQL source. Cette opération est nécessaire pour le traitement des objets SSAS.
-
Pour le mode tabulaire, procédez comme suit :
-
Développez l'onglet Connections (Connexions).
-
Ouvrez le menu contextuel (clic droit) de l'objet de connexion, puis choisissez Properties (Propriétés).
-
Mettez à jour le nom d'utilisateur et le mot de passe dans la chaîne de connexion.
-
-
Pour le mode multidimensionnel, procédez comme suit :
-
Développez l'onglet Data Sources (Sources de données).
-
Ouvrez le menu contextuel (clic droit) de la source de données, puis choisissez Properties (Propriétés).
-
Mettez à jour le nom d'utilisateur et le mot de passe dans la chaîne de connexion.
-
-
-
Ouvrez le menu contextuel (clic droit) de la base de données SSAS que vous avez créée et choisissez Process Database (Traiter la base données).
Selon la taille des données d'entrée, le traitement peut prendre plusieurs minutes.
Rubriques
Configuration d'un utilisateur authentifié par Windows pour SSAS
L'utilisateur administrateur principal (parfois appelé utilisateur principal) peut utiliser l'exemple de code suivant pour configurer une connexion authentifiée par Windows et accorder les autorisations de procédure requises. Ainsi, l'utilisateur de domaine peut exécuter des tâches utilisateur SSAS, utiliser des procédures de transfert de fichiers S3, créer des informations d'identification et travailler avec le proxy d'agent SQL Server. Pour de plus amples informations, consultez Informations d'identification (Moteur de base de données)
Vous pouvez accorder quelques-unes ou la totalité des autorisations suivantes, selon les besoins, aux utilisateurs authentifiés par Windows.
-- Create a server-level domain user login, if it doesn't already exist USE [master] GO CREATE LOGIN [
mydomain
\user_name
] FROM WINDOWS GO -- Create domain user, if it doesn't already exist USE [msdb] GO CREATE USER [mydomain
\user_name
] FOR LOGIN [mydomain
\user_name
] GO -- Grant necessary privileges to the domain user USE [master] GO GRANT ALTER ANY CREDENTIAL TO [mydomain
\user_name
] GO USE [msdb] GO GRANT EXEC ON msdb.dbo.rds_msbi_task TO [mydomain
\user_name
] with grant option GRANT SELECT ON msdb.dbo.rds_fn_task_status TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_task_status TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_cancel_task TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_download_from_s3 TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_upload_to_s3 TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_delete_from_filesystem TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_gather_file_details TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_add_proxy TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_update_proxy TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_grant_login_to_proxy TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_revoke_login_from_proxy TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_delete_proxy TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_enum_login_for_proxy to [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_enum_proxy_for_subsystem TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_sqlagent_proxy TO [mydomain
\user_name
] with grant option ALTER ROLE [SQLAgentUserRole] ADD MEMBER [mydomain
\user_name
] GO
Ajout d'un utilisateur de domaine en tant qu'administrateur de base de données
Vous pouvez ajouter un utilisateur de domaine en tant qu'administrateur de base de données SSAS de la manière suivante :
-
Un administrateur de base de données peut utiliser SSMS pour créer un rôle avec des privilèges
admin
, puis ajouter des utilisateurs à ce rôle. -
Vous pouvez utiliser la procédure stockée suivante.
exec msdb.dbo.rds_msbi_task @task_type='SSAS_ADD_DB_ADMIN_MEMBER', @database_name='
myssasdb
', @ssas_role_name='exampleRole
', @ssas_role_member='domain_name
\domain_user_name
';Les paramètres suivants sont obligatoires :
-
@task_type
– Type de la tâche MSBI, en l'occurrenceSSAS_ADD_DB_ADMIN_MEMBER
. -
@database_name
– Nom de la base de données SSAS à laquelle vous accordez des privilèges d'administrateur. -
@ssas_role_name
– Nom du rôle de l'administrateur de la base de données SSAS. Si le rôle n'existe pas déjà, il est créé. -
@ssas_role_member
– Utilisateur de la base de données SSAS que vous ajoutez au rôle d'administrateur.
-
Création d'un proxy SSAS
Pour pouvoir planifier le traitement de base de données SSAS à l'aide de SQL Server Agent, créez des informations d'identification SSAS et un proxy SSAS. Exécutez ces procédures en tant qu'utilisateur authentifié par Windows.
Pour créer les informations d'identification SSAS
-
Créez les informations d'identification pour le proxy. Pour ce faire, vous pouvez utiliser SSMS ou l'instruction SQL suivante.
USE [master] GO CREATE CREDENTIAL [SSAS_Credential] WITH IDENTITY = N'
mydomain
\user_name
', SECRET = N'mysecret
' GONote
IDENTITY
doit être une connexion authentifiée par domaine. Remplacez
par le mot de passe de la connexion authentifiée par le domaine.mysecret
Pour créer le proxy SSAS
-
Utilisez l'instruction SQL suivante pour créer le proxy.
USE [msdb] GO EXEC msdb.dbo.sp_add_proxy @proxy_name=N'SSAS_Proxy',@credential_name=N'SSAS_Credential',@description=N'' GO
-
Utilisez l'instruction SQL suivante pour accorder l'accès au proxy à d'autres utilisateurs.
USE [msdb] GO EXEC msdb.dbo.sp_grant_login_to_proxy @proxy_name=N'SSAS_Proxy',@login_name=N'
mydomain
\user_name
' GO -
Utilisez l'instruction SQL suivante pour donner au sous-système SSAS l'accès au proxy.
USE [msdb] GO EXEC msdb.dbo.rds_sqlagent_proxy @task_type='GRANT_SUBSYSTEM_ACCESS',@proxy_name='SSAS_Proxy',@proxy_subsystem='SSAS' GO
Pour afficher le proxy et les octrois sur le proxy
-
Utilisez l'instruction SQL suivante pour afficher les bénéficiaires du proxy.
USE [msdb] GO EXEC sp_help_proxy GO
-
Utilisez l'instruction SQL suivante pour afficher les octrois du sous-système.
USE [msdb] GO EXEC msdb.dbo.sp_enum_proxy_for_subsystem GO
Planification du traitement de base de données SSAS à l'aide de SQL Server Agent
Après avoir créé les informations d'identification et le proxy et accordé l'accès SSAS au proxy, vous pouvez créer une tâche SQL Server Agent pour planifier le traitement de la base de données SSAS.
Pour planifier le traitement de la base de données SSAS
-
Utilisez SSMS ou T-SQL pour créer la tâche SQL Server Agent. L'exemple suivant utilise T-SQL. Vous pouvez configurer davantage sa planification des tâches via SSMS ou T-SQL.
-
Le paramètre
@command
décrit la commande XML for Analysis (XMLA) devant être exécutée par la tâche SQL Server Agent. Cet exemple montre comment configurer le traitement des bases de données multidimensionnelles SSAS. -
Le paramètre
@server
définit le nom du serveur SSAS cible de la tâche SQL Server Agent.Pour appeler le service SSAS dans la même instance de base de données RDS où réside la tâche SQL Server Agent, utilisez
localhost:2383
.Pour appeler le service SSAS depuis l'extérieur de l'instance de base de données RDS, utilisez le point de terminaison RDS. Vous pouvez également utiliser le point de terminaison Kerberos Active Directory (
) si les instances de base de données RDS sont jointes par le même domaine. Pour les instances de base de données externes, assurez-vous de configurer correctement le groupe de sécurité VPC associé à l'instance de base de données RDS pour une connexion sécurisée.your-DB-instance-name
.your-AD-domain-name
Vous pouvez modifier davantage la requête pour prendre en charge diverses opérations XMLA. Apportez des modifications soit en modifiant directement la requête T-SQL, soit en utilisant l'interface utilisateur SSMS après la création de la tâche SQL Server Agent.
USE [msdb] GO DECLARE @jobId BINARY(16) EXEC msdb.dbo.sp_add_job @job_name=N'SSAS_Job', @enabled=1, @notify_level_eventlog=0, @notify_level_email=0, @notify_level_netsend=0, @notify_level_page=0, @delete_level=0, @category_name=N'[Uncategorized (Local)]', @job_id = @jobId OUTPUT GO EXEC msdb.dbo.sp_add_jobserver @job_name=N'SSAS_Job', @server_name = N'(local)' GO EXEC msdb.dbo.sp_add_jobstep @job_name=N'SSAS_Job', @step_name=N'Process_SSAS_Object', @step_id=1, @cmdexec_success_code=0, @on_success_action=1, @on_success_step_id=0, @on_fail_action=2, @on_fail_step_id=0, @retry_attempts=0, @retry_interval=0, @os_run_priority=0, @subsystem=N'ANALYSISCOMMAND', @command=N'<Batch xmlns="http://schemas.microsoft.com/analysisservices/2003/engine"> <Parallel> <Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ddl2="http://schemas.microsoft.com/analysisservices/2003/engine/2" xmlns:ddl2_2="http://schemas.microsoft.com/analysisservices/2003/engine/2/2" xmlns:ddl100_100="http://schemas.microsoft.com/analysisservices/2008/engine/100/100" xmlns:ddl200="http://schemas.microsoft.com/analysisservices/2010/engine/200" xmlns:ddl200_200="http://schemas.microsoft.com/analysisservices/2010/engine/200/200" xmlns:ddl300="http://schemas.microsoft.com/analysisservices/2011/engine/300" xmlns:ddl300_300="http://schemas.microsoft.com/analysisservices/2011/engine/300/300" xmlns:ddl400="http://schemas.microsoft.com/analysisservices/2012/engine/400" xmlns:ddl400_400="http://schemas.microsoft.com/analysisservices/2012/engine/400/400" xmlns:ddl500="http://schemas.microsoft.com/analysisservices/2013/engine/500" xmlns:ddl500_500="http://schemas.microsoft.com/analysisservices/2013/engine/500/500"> <Object> <DatabaseID>Your_SSAS_Database_ID</DatabaseID> </Object> <Type>ProcessFull</Type> <WriteBackTableCreation>UseExisting</WriteBackTableCreation> </Process> </Parallel> </Batch>', @server=N'localhost:2383', @database_name=N'master', @flags=0, @proxy_name=N'SSAS_Proxy' GO
-
Révocation de l'accès SSAS à partir du proxy
Vous pouvez révoquer l'accès au sous-système SSAS et supprimer le proxy SSAS à l'aide des procédures stockées suivantes.
Pour révoquer l'accès et supprimer le proxy
-
Révoquez l'accès au sous-système.
USE [msdb] GO EXEC msdb.dbo.rds_sqlagent_proxy @task_type='REVOKE_SUBSYSTEM_ACCESS',@proxy_name='SSAS_Proxy',@proxy_subsystem='SSAS' GO
-
Révoquez les octrois sur le proxy.
USE [msdb] GO EXEC msdb.dbo.sp_revoke_login_from_proxy @proxy_name=N'SSAS_Proxy',@name=N'
mydomain
\user_name
' GO -
Supprimez le proxy.
USE [msdb] GO EXEC dbo.sp_delete_proxy @proxy_name = N'SSAS_Proxy' GO
Sauvegarde d'une base de données SSAS
Vous pouvez créer des fichiers de sauvegarde d'une base de données SSAS uniquement dans le dossier D:\S3
de l'instance de base de données. Pour déplacer les fichiers de sauvegarde vers votre compartiment S3, utilisez Amazon S3.
Vous pouvez sauvegarder une base de données SSAS comme suit :
-
Un utilisateur de domaine ayant le rôle
admin
pour une base de données particulière peut utiliser SSMS pour sauvegarder la base de données en question dans le dossierD:\S3
.Pour plus d'informations, consultez Ajout d'un utilisateur de domaine en tant qu'administrateur de base de données.
-
Vous pouvez utiliser la procédure stockée suivante. Cette procédure stockée ne prend pas en charge le chiffrement.
exec msdb.dbo.rds_msbi_task @task_type='SSAS_BACKUP_DB', @database_name='
myssasdb
', @file_path='D:\S3\ssas_db_backup
.abf', [@ssas_apply_compression=1], [@ssas_overwrite_file=1];Les paramètres suivants sont obligatoires :
-
@task_type
– Type de la tâche MSBI, en l'occurrenceSSAS_BACKUP_DB
. -
@database_name
– Nom de la base de données SSAS que vous sauvegardez. -
@file_path
– Chemin d'accès au fichier de sauvegarde de la base de données SSAS. L'extension.abf
est requise.
Les paramètres suivants sont facultatifs :
-
@ssas_apply_compression
– Pour spécifier s'il faut compresser la sauvegarde SSAS. Les valeurs valides sont 1 (Oui) et 0 (Non). -
@ssas_overwrite_file
– Pour spécifier s'il faut écraser le fichier de sauvegarde SSAS. Les valeurs valides sont 1 (Oui) et 0 (Non).
-
Restauration d'une base de données SSAS
Utilisez la procédure stockée suivante pour restaurer une base de données SSAS à partir d'une sauvegarde.
Vous ne pouvez pas restaurer une base de données si une base de données SSAS existante porte le même nom. La procédure stockée pour la restauration ne prend pas en charge les fichiers de sauvegarde chiffrés.
exec msdb.dbo.rds_msbi_task @task_type='SSAS_RESTORE_DB', @database_name='
mynewssasdb
', @file_path='D:\S3\ssas_db_backup
.abf';
Les paramètres suivants sont obligatoires :
-
@task_type
– Type de la tâche MSBI, en l'occurrenceSSAS_RESTORE_DB
. -
@database_name
– Nom de la nouvelle base de données SSAS que vous restaurez. -
@file_path
– Chemin d'accès au fichier de sauvegarde SSAS.
Restauration d'une instance de base de données à une date spécifiée
P oint-in-time recovery (PITR) ne s'applique pas aux bases de données SSAS. Si vous effectuez ce type de restauration, seules les données SSAS du dernier instantané avant l'heure demandée sont disponibles sur l'instance restaurée.
Pour disposer de bases de données up-to-date SSAS sur une instance de base de données restaurée
-
Sauvegardez vos bases de données SSAS dans le dossier
D:\S3
de l'instance source. -
Transférez les fichiers de sauvegarde dans le compartiment S3.
-
Transférez les fichiers de sauvegarde du compartiment S3 vers le dossier
D:\S3
de l'instance restaurée. -
Exécutez la procédure stockée pour restaurer les bases de données SSAS sur l'instance restaurée.
Vous pouvez également traiter à nouveau le projet SSAS pour restaurer les bases de données.
Modification du mode SSAS
Vous pouvez modifier le mode dans lequel SSAS s'exécute : tabulaire ou multidimensionnel. Pour modifier le mode, utilisez la AWS Management Console ou la AWS CLI afin de modifier les paramètres d'option dans l'option SSAS.
Important
Vous ne pouvez utiliser qu'un seul mode SSAS à la fois. Assurez-vous de supprimer toutes les bases de données SSAS avant de modifier de mode afin de ne pas recevoir d'erreur.
La procédure suivante de la console Amazon RDS modifie le mode SSAS en tabulaire et définit le paramètre MAX_MEMORY
sur 70 %.
Pour modifier l'option SSAS
Connectez-vous à la AWS Management Console et ouvrez la console Amazon RDS à l'adresse https://console.aws.amazon.com/rds/
. -
Dans le panneau de navigation, choisissez Groupes d'options.
-
Choisissez le groupe d'options avec l'option
SSAS
que vous souhaitez modifier (ssas-se-2017
dans les exemples précédents). -
Choisissez Modify option (Modifier l'option).
-
Modifiez les paramètres d'option :
-
Pour Max memory (Mémoire maximale), saisissez
70
. -
Pour Mode, choisissez Tabular (Tabulaire).
-
-
Choisissez Modify option (Modifier l'option).
L'exemple AWS CLI suivant modifie le mode SSAS en tabulaire et définit le paramètre MAX_MEMORY
sur 70 %.
Pour que la commande CLI fonctionne, veillez à inclure tous les paramètres requis, même si vous ne les modifiez pas.
Pour modifier l'option SSAS
-
Utilisez l’une des commandes suivantes.
Pour LinuxmacOS, ou Unix :
aws rds add-option-to-option-group \ --option-group-name
ssas-se-2017
\ --options "OptionName=SSAS,VpcSecurityGroupMemberships=sg-12345e67
,OptionSettings=[{Name=MAX_MEMORY,Value=70},{Name=MODE,Value=Tabular}]" \ --apply-immediatelyDans Windows :
aws rds add-option-to-option-group ^ --option-group-name
ssas-se-2017
^ --options OptionName=SSAS,VpcSecurityGroupMemberships=sg-12345e67
,OptionSettings=[{Name=MAX_MEMORY,Value=70},{Name=MODE,Value=Tabular}] ^ --apply-immediately
Désactivation de SSAS
Pour désactiver SSAS, supprimez l'option SSAS
de son groupe d'options.
Important
Avant de supprimer l'option SSAS
, supprimez vos bases de données SSAS.
Nous vous recommandons vivement de sauvegarder vos bases de données SSAS avant de les supprimer et de supprimer l'option SSAS
.
Pour supprimer l'option SSAS de son groupe d'options
Connectez-vous à la AWS Management Console et ouvrez la console Amazon RDS à l'adresse https://console.aws.amazon.com/rds/
. -
Dans le panneau de navigation, choisissez Groupes d'options.
-
Choisissez le groupe d'options avec l'option
SSAS
que vous souhaitez supprimer (ssas-se-2017
dans les exemples précédents). -
Choisissez Supprimer une option.
-
Sous Deletion options (Options de suppression), choisissez SSAS pour Options to delete (Options à supprimer).
-
Sous Appliquer immédiatement, choisissez Oui pour supprimer l'option immédiatement, ou Non pour la supprimer lors du prochain créneau de maintenance.
-
Sélectionnez Delete.
Pour supprimer l'option SSAS de son groupe d'options
-
Utilisez l’une des commandes suivantes.
Pour LinuxmacOS, ou Unix :
aws rds remove-option-from-option-group \ --option-group-name
ssas-se-2017
\ --options SSAS \ --apply-immediatelyDans Windows :
aws rds remove-option-from-option-group ^ --option-group-name
ssas-se-2017
^ --options SSAS ^ --apply-immediately
Résolution des problèmes rencontrés avec SSAS
Vous pouvez rencontrer les problèmes suivants lors de l'utilisation de SSAS.
Problème | Type | Suggestions de dépannage |
---|---|---|
Impossible de configurer l'option SSAS. Le mode SSAS demandé est |
Événement RDS | Vous ne pouvez pas modifier le mode SSAS si les bases de données SSAS utilisent toujours le mode actuel. Supprimez les bases de données SSAS, puis réessayez. |
Impossible de supprimer l'option SSAS car il existe |
Événement RDS | Vous ne pouvez pas désactiver SSAS si vous possédez toujours des bases de données SSAS. Supprimez les bases de données SSAS, puis réessayez. |
L'option SSAS n'est pas activée ou est en cours d'activation. Réessayez ultérieurement. |
Procédures stockées RDS | Vous ne pouvez pas exécuter de procédures stockées SSAS lorsque l'option est désactivée ou lorsqu'elle est en cours d'activation. |
L'option SSAS n'est pas configurée correctement. Assurez-vous que l'état d'appartenance au groupe d'options est « in-sync » (en cours de synchronisation) et consultez les journaux d'événements RDS pour trouver les messages d'erreur de configuration SSAS pertinents. Ensuite, réessayez. Si les erreurs ne sont pas résolues, contactez AWS Support. |
Procédures stockées RDS |
Vous ne pouvez pas exécuter de procédures stockées SSAS lorsque votre appartenance au groupe d'options n'est pas dans l'état Si l'état de votre appartenance au groupe d'options passe à
Reconfigurez l'option SSAS, car RDS n'autorise qu'un seul mode SSAS à la fois et ne prend pas en charge la suppression des options SSAS en présence de bases de données SSAS. Vérifiez les erreurs de configuration de votre instance SSAS dans les journaux d'événements RDS et résolvez les problèmes en conséquence. |
Le déploiement a échoué. La modification ne peut être déployée que sur un serveur exécuté dans le mode |
Procédures stockées RDS |
Vous ne pouvez pas déployer une base de données tabulaire sur un serveur multidimensionnel ou une base de données multidimensionnelle sur un serveur tabulaire. Veillez à utiliser des fichiers avec le mode approprié et vérifiez que le paramètre d'option |
La restauration a échoué. Le fichier de sauvegarde ne peut être restauré que sur un serveur exécuté dans le mode |
Procédures stockées RDS |
Vous ne pouvez pas restaurer une base de données tabulaire sur un serveur multidimensionnel ou une base de données multidimensionnelle sur un serveur tabulaire. Veillez à utiliser des fichiers avec le mode approprié et vérifiez que le paramètre d'option |
La restauration a échoué. Le fichier de sauvegarde et les versions de l'instance de base de données RDS sont incompatibles. |
Procédures stockées RDS |
Vous ne pouvez pas restaurer une base de données SSAS dont la version est incompatible avec la version de l'instance SQL Server. Pour de plus amples informations, veuillez consulter Niveau de compatibilité pour les modèles tabulaires |
La restauration a échoué. Le fichier de sauvegarde spécifié dans l'opération de restauration est endommagé ou n'est pas un fichier de sauvegarde SSAS. Assurez-vous que @rds_file_path est correctement formaté. |
Procédures stockées RDS |
Vous ne pouvez pas restaurer une base de données SSAS avec un fichier endommagé. Assurez-vous que le fichier n'est pas endommagé ou corrompu. Cette erreur peut également être déclenchée lorsque |
La restauration a échoué. Le nom de la base de données restaurée ne peut pas contenir de mots réservés ou de caractères non valides (. , ; ' ` : / \\ * | ? \" & % $ ! + = ( ) [ ] { } < >) et ne peut pas comporter plus de 100 caractères. |
Procédures stockées RDS |
Le nom de la base de données restaurée ne peut pas contenir de mots réservés ou de caractères non valides et ne peut pas comporter plus de 100 caractères. Pour voir les conventions de dénomination d'objets SSAS, veuillez consulter Règles d'attribution de noms aux objets (Analysis Services) |
Le nom de rôle fourni n'est pas valide. Le nom de rôle ne peut pas contenir de chaînes réservées. |
Procédures stockées RDS |
Le nom de rôle ne peut pas contenir de chaînes réservées. Pour voir les conventions de dénomination d'objets SSAS, veuillez consulter Règles d'attribution de noms aux objets (Analysis Services) |
Le nom de rôle fourni n'est pas valide. Le nom de rôle ne peut pas contenir les caractères réservés suivants : . , ; ' ` : / \\ * | ? \" & % $ ! + = ( ) [ ] { } < > |
Procédures stockées RDS |
Le nom de rôle ne peut pas contenir de caractères réservés. Pour voir les conventions de dénomination d'objets SSAS, veuillez consulter Règles d'attribution de noms aux objets (Analysis Services) |