Suporte para o SQL Server Analysis Services no Amazon RDS for SQL Server
O Microsoft SQL Server Analysis Services (SSAS) faz parte do pacote Microsoft Business Intelligence (MSBI). O SSAS é um processamento analítico online (OLAP) e uma ferramenta de mineração de dados que está instalado no SQL Server. Use o SSAS para analisar dados a fim de ajudar a tomar decisões de negócios. O SSAS difere do banco de dados relacional do SQL Server porque é otimizado para consultas e cálculos comuns em um ambiente de business intelligence.
É possível habilitar o SSAS em instâncias de banco de dados novas ou existentes. Ele é instalado na mesma instância de banco de dados que o mecanismo de banco de dados. Para obter mais informações sobre o SSAS, consulte a Documentação do Analysis Services
O Amazon RDS oferece suporte às Standard e Enterprise Editions do SSAS for SQL Server nas seguintes versões:
-
Modo tabular:
-
Versão 15.00.4043.16.v1 e posterior do SQL Server 2019
-
Versão 14.00.3223.3.v1 e posterior do SQL Server 2017
-
Versão 13.00.5426.0.v1 e posterior do SQL Server 2016
-
-
Modo multidimensional:
-
SQL Server 2017, versão 14.00.3381.3.v1 e posterior
-
SQL Server 2016, versão 13.00.5882.1.v1 e posterior
-
Sumário
Limitações
As seguintes limitações se aplicam à utilização do SSAS no RDS for SQL Server:
-
O RDS for SQL Server oferece suporte à execução do SSAS no modo Tabular ou Multidimensional. Para obter mais informações, consulte Comparar soluções tabulares e multidimensionais
na documentação da Microsoft. -
É possível usar apenas um modo SSAS de cada vez. Antes de alterar os modos, certifique-se de excluir todos os bancos de dados SSAS.
Para obter mais informações, consulte Alterar o modo SSAS.
-
O modo multidimensional não é compatível com o SQL Server 2019.
-
As instâncias Multi-AZ não são compatíveis.
-
As instâncias devem usar o Active Directory autogerenciado ou o AWS Directory Service for Microsoft Active Directorypara autenticação SSAS. Para obter mais informações, consulte Trabalhar com o Active Directory com o RDS para SQL Server.
-
Os usuários não recebem acesso de administrador do servidor do SSAS, mas podem receber acesso de administrador no nível de banco de dados.
-
A única porta compatível para acessar o SSAS é a 2383.
-
Não é possível implantar projetos diretamente. Nós fornecemos um procedimento armazenado do RDS para fazer isso. Para obter mais informações, consulte Implantar projetos do SSAS no Amazon RDS.
-
O processamento durante a implantação não é compatível.
-
O uso de arquivos .xmla para implantação não é compatível.
-
Os arquivos de entrada de projeto e os arquivos de saída de backup de banco de dados do SSAS podem estar somente na pasta
D:\S3
na instância de banco de dados.
Ativar o SSAS
Use o seguinte processo para ativar o SSAS para a instância de banco de dados:
-
Crie um grupo de opções ou selecione um existente.
-
Adicione a opção
SSAS
ao grupo de opções. -
Associe o grupo de opções à instância de banco de dados.
-
Permita acesso de entrada ao grupo de segurança da nuvem privada virtual (VPC) para a porta do ouvinte do SSRS.
-
Ative a integração do Simple Storage Service (Amazon S3).
Criar um grupo de opções para o SSAS
Use o AWS Management Console ou a AWS CLI para criar um grupo de opções que corresponda à versão e ao mecanismo do SQL Server da instância de banco de dados que você planeja usar.
nota
Também é possível usar um grupo de opções existente se ele for para a versão e o mecanismo e corretos do SQL Server.
O procedimento do console a seguir cria um grupo de opções para o SQL Server Standard Edition 2017.
Como criar o grupo de opções
Faça login no AWS Management Console e abra o console do Amazon RDS em https://console.aws.amazon.com/rds/
. -
No painel de navegação, escolha Option groups (Grupos de opções).
-
Escolha Create group (Criar grupo).
-
No painel Create option group (Criar grupo de opções), faça o seguinte:
-
Em Name (Nome), insira um nome para o grupo de opções que seja exclusivo na sua conta da AWS, como
ssas-se-2017
. O nome pode conter somente letras, números e hifens. -
Em Descrição, insira uma breve descrição do grupo de opções, como
SSAS option group for SQL Server SE 2017
. A descrição é usada para fins de exibição. -
Em Engine (Mecanismo), selecione sqlserver-se.
-
Em Major engine version (Versão principal do mecanismo), selecione 14.00.
-
-
Escolha Create (Criar).
O exemplo de CLI a seguir cria um grupo de opções para o SQL Server Standard Edition 2017.
Como criar o grupo de opções
-
Use um dos seguintes comandos.
Para Linux, macOS 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
"Para 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
"
Adicionar a opção SSAS ao grupo de opções
Depois, use o AWS Management Console ou a AWS CLI para adicionar a opção SSAS
ao grupo de opções.
Como adicionar a opção SSAS
Faça login no AWS Management Console e abra o console do Amazon RDS em https://console.aws.amazon.com/rds/
. -
No painel de navegação, escolha Option groups (Grupos de opções).
-
Selecione o grupo de opções que você acabou de criar.
-
Escolha Add option (Adicionar opção).
-
Em Option details (Detalhes da opção), selecione SSAS em Option name (Nome da opção).
-
Em Configurações de opção, faça o seguinte:
-
Para Max memory (Memória máxima), insira um valor de 10 a 80.
Max memory (Memória máxima) especifica o limite superior acima do qual o SSAS começa a liberar memória de forma mais agressiva para liberar espaço a solicitações que estão em execução e a novas solicitações de alta prioridade. O número é uma porcentagem da memória total da instância de banco de dados. Os valores permitidos são de 10–80 e o padrão é 45.
-
Para Mode (Modo), escolha o modo de servidor SSAS, Tabular ou Multidimensional.
Se você não vir a opção de configuração Mode (Modo), significa que o modo multidimensional não é compatível com sua região da AWS. Para obter mais informações, consulte Limitações.
Tabular é o padrão.
-
Em Security groups (Grupos de segurança), selecione o grupo de segurança da VPC a ser associado à opção.
nota
A porta para acessar o SSAS, 2383, é preenchida automaticamente.
-
-
Em Scheduling (Programação), escolha se deseja adicionar a opção imediatamente ou na próxima janela de manutenção.
-
Escolha Add option (Adicionar opção).
Como adicionar a opção SSAS
-
Crie um arquivo JSON, por exemplo
ssas-option.json
, com os seguintes parâmetros:-
OptionGroupName
– O nome do grupo de opções que você criou ou selecionou anteriormente (ssas-se-2017
no exemplo a seguir). -
Port
– A porta que você usa para acessar o SSAS. A única porta compatível é a 2383. -
VpcSecurityGroupMemberships
– Associações a grupos de segurança da VPC para a instância de banco de dados do RDS. -
MAX_MEMORY
– O limite superior acima do qual o SSAS deve começar a liberar memória de forma mais agressiva para liberar espaço a solicitações que estão em execução e a novas solicitações de alta prioridade. O número é uma porcentagem da memória total da instância de banco de dados. Os valores permitidos são de 10–80 e o padrão é 45. -
MODE
– O modo de servidor SSAS,Tabular
ouMultidimensional
.Tabular
é o padrão.Se você receber um erro dizendo que a opção de configuração
MODE
não é válida, isso significa que o modo multidimensional não é aceito em sua região da AWS. Para obter mais informações, consulte Limitações.
Veja a seguir um exemplo de arquivo JSON com configurações de opção 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 } -
-
Adicione a opção
SSAS
ao grupo de opções.Para Linux, macOS ou Unix:
aws rds add-option-to-option-group \ --cli-input-json file://
ssas-option.json
\ --apply-immediatelyPara Windows:
aws rds add-option-to-option-group ^ --cli-input-json file://
ssas-option.json
^ --apply-immediately
Associar o grupo de opções à instância de banco de dados
É possível usar o console ou a CLI para associar o grupo de opções à instância de banco de dados.
Associe o grupo de opções a uma instância de banco de dados nova ou existente:
-
Para uma nova instância de banco de dados, associe o grupo de opções à instância de banco de dados ao executar a instância. Para obter mais informações, consulte Criar uma instância de banco de dados do Amazon RDS.
-
Para uma instância de banco de dados existente, modifique a instância e associe o novo grupo de opções a ela. Para obter mais informações, consulte Modificar uma instância de banco de dados do Amazon RDS.
nota
Se você usar uma instância existente, ela já deve ter um domínio do Active Directory e uma função do AWS Identity and Access Management (IAM) associados a ela. Se você criar uma nova instância, especifique um domínio do Active Directory e uma função do IAM existentes. Para obter mais informações, consulte Trabalhar com o Active Directory com o RDS para SQL Server.
É possível associar o grupo de opções a uma instância de banco de dados nova ou existente.
nota
Se você usar uma instância existente, ela já deve ter um domínio do Active Directory e uma função do IAM associados a ela. Se você criar uma nova instância, especifique um domínio do Active Directory e uma função do IAM existentes. Para obter mais informações, consulte Trabalhar com o Active Directory com o RDS para SQL Server.
Como criar uma instância de banco de dados que usa o grupo de opções
-
Especifique o mesmo tipo de mecanismo de banco de dados e a versão principal que você usou ao criar o grupo de opções.
Para Linux, macOS 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
Para 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
Como modificar uma instância de banco de dados para associar o grupo de opções
-
Use um dos seguintes comandos.
Para Linux, macOS ou Unix:
aws rds modify-db-instance \ --db-instance-identifier
myssasinstance
\ --option-group-namessas-se-2017
\ --apply-immediatelyPara Windows:
aws rds modify-db-instance ^ --db-instance-identifier
myssasinstance
^ --option-group-namessas-se-2017
^ --apply-immediately
Como conceder acesso de entrada ao grupo de segurança da VPC
Crie uma regra de entrada para a porta de listener do SSAS especificada no grupo de segurança da VPC associado à instância de banco de dados. Para obter mais informações sobre como configurar um grupo de segurança, consulte Fornecer acesso à instância de banco de dados na VPC criando um grupo de segurança.
Habilitar a integração do Simple Storage Service (Simple Storage Service (Amazon S3))
Para baixar arquivos de configuração de modelo para seu host para implantação, use a integração do Simple Storage Service (Simple Storage Service (Amazon S3)). Para obter mais informações, consulte Integrar uma instância de banco de dados do Amazon RDS for SQL Server ao Amazon S3.
Implantar projetos do SSAS no Amazon RDS
No RDS, não é possível implantar projetos do SSAS diretamente usando o SQL Server Management Studio (SSMS). Para implantar projetos, use um procedimento armazenado do RDS.
nota
O uso de arquivos .xmla para implantação não é compatível.
Antes de implantar projetos, certifique-se do seguinte:
-
A integração do Simple Storage Service (Simple Storage Service (Amazon S3)) está habilitada. Para obter mais informações, consulte Integrar uma instância de banco de dados do Amazon RDS for SQL Server ao Amazon S3.
-
A configuração
Processing Option
está definida comoDo Not Process
. Essa configuração significa que nenhum processamento ocorrerá após a implantação. -
Você tem os arquivos
emyssasproject
.asdatabase
. Eles são gerados automaticamente quando você cria o projeto do SSAS.myssasproject
.deploymentoptions
Como implantar um projeto do SSAS no RDS
-
Baixe o arquivo
.asdatabase
(modelo do SSAS) no bucket do S3 para a instância de banco de dados, conforme mostrado no exemplo a seguir. Para obter mais informações sobre os parâmetros de download, consulte Baixar arquivos de um bucket do Amazon S3 em uma instância de banco de dados 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]; -
Baixe o arquivo
.deploymentoptions
no bucket do S3 para a instância de banco de dados.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]; -
Implante o projeto.
exec msdb.dbo.rds_msbi_task @task_type='SSAS_DEPLOY_PROJECT', @file_path='D:\S3\
myssasproject
.asdatabase';
Monitorar o status de uma tarefa de implantação
Para rastrear o status da tarefa de implantação (ou de download), chame a função rds_fn_task_status
. Ela leva dois parâmetros. O primeiro parâmetro sempre deve ser NULL
porque ele não se aplica ao SSAS. O segundo parâmetro aceita um ID de tarefa.
Para ver uma lista de todas as tarefas, defina o primeiro parâmetro como NULL
e o segundo parâmetro como 0
, conforme mostrado no seguinte exemplo.
SELECT * FROM msdb.dbo.rds_fn_task_status(NULL,
0
);
Para obter uma tarefa específica, defina o primeiro parâmetro como NULL
e o segundo parâmetro como o ID da tarefa, conforme mostrado no exemplo a seguir.
SELECT * FROM msdb.dbo.rds_fn_task_status(NULL,
42
);
A função rds_fn_task_status
retorna as informações a seguir.
Parâmetro de saída |
Descrição |
---|---|
|
O ID da tarefa. |
|
No SSAS, as tarefas podem ter os seguintes tipos de tarefa:
|
|
Não aplicável a tarefas do SSAS. |
|
O progresso da tarefa em porcentagem. |
|
A quantidade de tempo gasta na tarefa, em minutos. |
|
O status da tarefa. Os possíveis status são os seguintes:
|
|
Informações adicionais sobre a tarefa. Se um erro ocorrer durante o processamento, essa coluna conterá informações sobre o erro. Para obter mais informações, consulte Solução de problemas do SSAS. |
|
A data e hora em que o status da tarefa foi atualizado pela última vez. |
|
A data e hora em que a tarefa foi criada. |
|
Não aplicável a tarefas do SSAS. |
|
Não aplicável a tarefas do SSAS. |
|
Não aplicável a tarefas do SSAS. |
|
Não aplicável a tarefas do SSAS. |
|
Não aplicável a tarefas do SSAS. |
|
Metadados associados à tarefa do SSAS. |
Como usar o SSAS no Amazon RDS
Depois de implantar o projeto do SSAS, será possível processar diretamente o banco de dados OLAP no SSMS.
Como usar o SSAS no RDS
-
No SSMS, conecte-se ao SSAS usando o nome de usuário e a senha do domínio do Active Directory.
-
Expanda Databases (Bancos de dados). Será exibido o banco de dados recém-implantado do SSAS.
-
Localize a string de conexão e atualize o nome de usuário e a senha para dar acesso ao banco de dados da fonte do SQL. Isso é necessário para processar objetos SSAS.
-
Para o modo Tabular, faça o seguinte:
-
Escolha a guia Connections (Conexões).
-
Abra o menu de contexto (clique com o botão direito do mouse) do objeto de conexão e escolha Properties (Propriedades).
-
Atualize o nome de usuário e a senha na string de conexão.
-
-
Para o modo Multidimensional, faça o seguinte:
-
Expanda a guia Data Sources (Origem dos dados).
-
Abra o menu de contexto (clique com o botão direito do mouse) para o objeto de origem dos dados e escolha Properties (Propriedades).
-
Atualize o nome de usuário e a senha na string de conexão.
-
-
-
Abra o menu de contexto (clique com o botão direito do mouse) para o banco de dados do SSAS que você criou e selecione Process Database (Processar banco de dados).
Dependendo do tamanho dos dados de entrada, a operação de processamento pode levar vários minutos para ser concluída.
Tópicos
Configurar um usuário autenticado pelo Windows para o SSAS
O usuário administrador principal (às vezes chamado de usuário primário) pode usar o exemplo de código a seguir para configurar um logon autenticado pelo Windows e conceder as permissões de procedimento necessárias. Isso concede permissões ao usuário do domínio para executar tarefas do cliente SSAS, usar procedimentos de transferência de arquivos do S3, criar credenciais e trabalhar com o proxy do SQL Server Agent. Para obter mais informações, consulte Credenciais (mecanismo de banco de dados)
Você pode conceder algumas ou todas as seguintes permissões, conforme necessário, aos usuários autenticados pelo 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
Adicionar um usuário de domínio como administrador de banco de dados
É possível adicionar um usuário de domínio como administrador de banco de dados do SSAS das seguintes maneiras:
-
Um administrador de banco de dados pode usar o SSMS para criar uma função com privilégios
admin
e adicionar usuários a essa função. -
É possível usar o procedimento armazenado a seguir.
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
';Os seguintes parâmetros são obrigatórios:
-
@task_type
– O tipo da tarefa do MSBI, nesse casoSSAS_ADD_DB_ADMIN_MEMBER
. -
@database_name
– O nome do banco de dados do SSAS ao qual você está concedendo privilégios de administrador. -
@ssas_role_name
– O nome da função de administrador de banco de dados do SSAS. Se a função ainda não existir, ela será criada. -
@ssas_role_member
– O usuário do banco de dados do SSAS que você está adicionando à função de administrador.
-
Criar um proxy do SSAS
Para poder programar o processamento do banco de dados do SSAS usando o SQL Server Agent, crie uma credencial do SSAS e um proxy SSAS. Execute esses procedimentos como um usuário autenticado pelo Windows.
Para criar a credencial do SSAS
-
Crie a credencial para o proxy. Para fazer isso, você pode usar o SSMS ou a seguinte instrução SQL.
USE [master] GO CREATE CREDENTIAL [SSAS_Credential] WITH IDENTITY = N'
mydomain
\user_name
', SECRET = N'mysecret
' GOnota
IDENTITY
deve ser um login autenticado por domínio. Substitua
pela senha do login autenticado por domínio.mysecret
Para criar o proxy do SSIS
-
Use a seguinte instrução SQL para criar o proxy.
USE [msdb] GO EXEC msdb.dbo.sp_add_proxy @proxy_name=N'SSAS_Proxy',@credential_name=N'SSAS_Credential',@description=N'' GO
-
Use a seguinte instrução SQL para conceder acesso ao proxy para outros usuários.
USE [msdb] GO EXEC msdb.dbo.sp_grant_login_to_proxy @proxy_name=N'SSAS_Proxy',@login_name=N'
mydomain
\user_name
' GO -
Use a seguinte instrução SQL para dar ao subsistema do SSAS acesso ao proxy.
USE [msdb] GO EXEC msdb.dbo.rds_sqlagent_proxy @task_type='GRANT_SUBSYSTEM_ACCESS',@proxy_name='SSAS_Proxy',@proxy_subsystem='SSAS' GO
Como visualizar o proxy e as concessões no proxy
-
Use a seguinte instrução SQL para visualizar os beneficiários do proxy.
USE [msdb] GO EXEC sp_help_proxy GO
-
Use a seguinte instrução SQL para visualizar as concessões do subsistema.
USE [msdb] GO EXEC msdb.dbo.sp_enum_proxy_for_subsystem GO
Programar o processamento de banco de dados do SSAS usando o SQL Server Agent
Depois de criar a credencial e o proxy e conceder acesso SSAS ao proxy, você pode criar um trabalho do SQL Server Agent para programar o processamento do banco de dados do SSAS.
Para programar processamento de banco de dados do SSAS
-
Use o SSMS ou o T-SQL para criar o trabalho do SQL Server Agent. O exemplo a seguir usa T-SQL. Você pode configurar ainda mais seu programa de trabalho por meio do SSMS ou o T-SQL.
-
O parâmetro
@command
descreve o comando XML for Analysis (XMLA) a ser executado pelo trabalho do SQL Server Agent. Este exemplo configura o processamento de banco de dados multidimensional do SSAS. -
O parâmetro
@server
descreve o nome do servidor do SSAS de destino do trabalho do SQL Server Agent.Para chamar o serviço do SSAS na mesma instância de banco de dados do RDS em que o trabalho do SQL Server Agent reside, use
localhost:2383
.Para chamar o serviço do SSAS de fora da instância de banco de dados do RDS, use o endpoint do RDS. Você também pode usar o endpoint do Kerberos Active Directory (AD) (
) se as instâncias de banco de dados do RDS forem unidas pelo mesmo domínio. Para instâncias de banco de dados externas, certifique-se de configurar corretamente o grupo de segurança da VPC associado à instância de banco de dados do RDS para uma conexão segura.your-DB-instance-name
.your-AD-domain-name
Você pode editar ainda mais a consulta para oferecer suporte a várias operações XMLA. Faça edições modificando diretamente a consulta T-SQL ou usando a interface do usuário do SSMS após a criação do trabalho do 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
-
Revogar o acesso do SSAS do proxy
Você pode revogar o acesso ao subsistema SSAS e excluir o proxy SSAS usando os procedimentos armazenados a seguir.
Como revogar o acesso e excluir o proxy
-
Revogue o acesso ao subsistema.
USE [msdb] GO EXEC msdb.dbo.rds_sqlagent_proxy @task_type='REVOKE_SUBSYSTEM_ACCESS',@proxy_name='SSAS_Proxy',@proxy_subsystem='SSAS' GO
-
Revogue as concessões no proxy.
USE [msdb] GO EXEC msdb.dbo.sp_revoke_login_from_proxy @proxy_name=N'SSAS_Proxy',@name=N'
mydomain
\user_name
' GO -
Exclua o proxy.
USE [msdb] GO EXEC dbo.sp_delete_proxy @proxy_name = N'SSAS_Proxy' GO
Fazer backup de um banco de dados do SSAS
É possível criar arquivos de backup de banco de dados do SSAS somente na pasta D:\S3
da instância de banco de dados. Para mover os arquivos de backup para o bucket do S3, use o Amazon S3.
É possível fazer backup de um banco de dados do SSAS da seguinte forma:
-
Um usuário de domínio com a função
admin
de um banco de dados específico pode usar o SSMS para fazer backup do banco de dados para a pastaD:\S3
.Para obter mais informações, consulte Adicionar um usuário de domínio como administrador de banco de dados.
-
É possível usar o procedimento armazenado a seguir. Este procedimento armazenado não oferece suporte a criptografia.
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];Os seguintes parâmetros são obrigatórios:
-
@task_type
– O tipo da tarefa do MSBI, nesse casoSSAS_BACKUP_DB
. -
@database_name
– O nome do banco de dados do SSAS do qual você está fazendo backup. -
@file_path
– O caminho para o arquivo de backup do SSAS. É necessária a extensão.abf
.
Os seguintes parâmetros são opcionais:
-
@ssas_apply_compression
– Se deve ser aplicada a compactação do backup do SSAS. Os valores válidos são 1 (Sim) e 0 (Não). -
@ssas_overwrite_file
– Se o arquivo de backup do SSAS deve ser substituído. Os valores válidos são 1 (Sim) e 0 (Não).
-
Restaurar um banco de dados do SSAS
Use o procedimento armazenado a seguir para restaurar um banco de dados do SSAS de um backup.
Não será possível restaurar um banco de dados se houver um banco de dados existente do SSAS com o mesmo nome. O procedimento armazenado para restauração não oferece suporte a arquivos de backup criptografados.
exec msdb.dbo.rds_msbi_task @task_type='SSAS_RESTORE_DB', @database_name='
mynewssasdb
', @file_path='D:\S3\ssas_db_backup
.abf';
Os seguintes parâmetros são obrigatórios:
-
@task_type
– O tipo da tarefa do MSBI, nesse casoSSAS_RESTORE_DB
. -
@database_name
– O nome do novo banco de dados do SSAS para o qual você está restaurando. -
@file_path
– O caminho para o arquivo de backup do SSAS.
Restauração de uma instância de banco de dados para um tempo especificado
A recuperação em um ponto anterior no tempo (PITR) não se aplica a bancos de dados do SSAS. Se você fizer PITR, somente os dados do SSAS no último snapshot antes do tempo solicitado estarão disponíveis na instância restaurada.
Como ter bancos de dados do SSAS atualizados em uma instância de banco de dados restaurada
-
Faça backup dos bancos de dados do SSAS para a pasta
D:\S3
na instância de origem. -
Transfira os arquivos de backup para o bucket do S3.
-
Transfira os arquivos de backup do bucket do S3 para a pasta
D:\S3
na instância restaurada. -
Execute o procedimento armazenado para restaurar os bancos de dados do SSAS na instância restaurada.
Também é possível reprocessar o projeto do SSAS para restaurar os bancos de dados.
Alterar o modo SSAS
Você pode alterar o modo no qual o SSAS é executado, seja Tabular ou Multidimensional. Para alterar o modo, use o AWS Management Console ou a AWS CLI para modificar as configurações de opções na opção SSAS.
Importante
É possível usar apenas um modo SSAS de cada vez. Certifique-se de excluir todos os bancos de dados do SSAS antes de alterar o modo ou você receberá um erro.
O procedimento de console do Amazon RDS a seguir altera o modo SSAS para Tabular e define o parâmetro MAX_MEMORY
para 70%.
Para modificar a opção SSAS
Faça login no AWS Management Console e abra o console do Amazon RDS em https://console.aws.amazon.com/rds/
. -
No painel de navegação, escolha Option groups (Grupos de opções).
-
Selecione o grupo de opções com a opção
SSAS
que você quer modificar (ssas-se-2017
nos exemplos anteriores). -
Escolha Modify option (Modificar opção).
-
Altere as configurações de opção:
-
Para Max memory (Memória máxima), insira
70
. -
Para Mode (Modo), escolha Tabular.
-
-
Escolha Modify option (Modificar opção).
O seguinte exemplo da AWS CLI altera o modo SSAS para Tabular e define o parâmetro MAX_MEMORY
para 70%.
Para que o comando da CLI funcione, certifique-se de incluir todos os parâmetros necessários, mesmo se você não estiver modificando-os.
Para modificar a opção SSAS
-
Use um dos seguintes comandos.
Para Linux, macOS 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-immediatelyPara 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
Desativar o SSAS
Para desativar o SSAS, remova a opção SSAS
do grupo de opções.
Importante
Antes de remover a opção SSAS
, exclua os bancos de dados do SSAS.
É altamente recomendável que você faça backup dos bancos de dados do SSAS antes de excluí-los e remover a opção SSAS
.
Como remover a opção SSAS do grupo de opções
Faça login no AWS Management Console e abra o console do Amazon RDS em https://console.aws.amazon.com/rds/
. -
No painel de navegação, escolha Option groups (Grupos de opções).
-
Escolha o grupo de opções com a opção
SSAS
que você quer remover (ssas-se-2017
nos exemplos anteriores). -
Selecione Delete option (Excluir opção).
-
Em Deletion options (Opções de exclusão), selecione SSAS em Options to delete (Opções a serem excluídas).
-
Em Apply immediately (Aplicar imediatamente), selecione Yes (Sim) para excluir a opção imediatamente ou No (Não) para excluí-la na próxima janela de manutenção.
-
Escolha Delete (Excluir).
Como remover a opção SSAS do grupo de opções
-
Use um dos seguintes comandos.
Para Linux, macOS ou Unix:
aws rds remove-option-from-option-group \ --option-group-name
ssas-se-2017
\ --options SSAS \ --apply-immediatelyPara Windows:
aws rds remove-option-from-option-group ^ --option-group-name
ssas-se-2017
^ --options SSAS ^ --apply-immediately
Solução de problemas do SSAS
Você pode encontrar os problemas a seguir ao usar o SSAS.
Problema | Tipo | Sugestões de solução de problemas |
---|---|---|
Não foi possível configurar a opção SSAS. O modo SSAS solicitado é |
Evento RDS | Você não pode alterar o modo SSAS se ainda tiver bancos de dados do SSAS que usam o modo atual. Exclua os bancos de dados do SSAS e tente novamente. |
Não é possível remover a opção SSAS porque há |
Evento RDS | Você não pode desativar o SSAS se ainda tiver bancos de dados do SSAS. Exclua os bancos de dados do SSAS e tente novamente. |
A opção SSAS não está habilitada ou está em processo de habilitação. Tente novamente mais tarde. |
Procedimentos armazenados do RDS | Você não pode executar procedimentos armazenados do SSAS quando a opção estiver desativada ou quando ela está sendo ativada. |
A opção SSAS está configurada incorretamente. Certifique-se de que o status da associação do grupo de opções esteja “em sincronia” e revise os logs de eventos do RDS para mensagens de erro de configuração SSAS relevantes. Após essas investigações, tente novamente. Se os erros continuarem a ocorrer, entre em contato com o AWS Support. |
Procedimentos armazenados do RDS |
Você não pode executar procedimentos armazenados do SSAS quando sua associação ao grupo de opções não tiver o status Se o status de associação do seu grupo de opções mudar para
Reconfigure a opção SSAS, porque o RDS permite apenas um modo SSAS por vez e não suporta a remoção de opções SSAS com bancos de dados do SSAS presentes. Verifique se há erros de configuração nos logs de eventos do RDS para sua instância do SSAS e resolva os problemas de acordo. |
Falha na implantação. A alteração só pode ser implantada em um servidor em execução no modo |
Procedimentos armazenados do RDS |
Você não pode implantar um banco de dados Tabular em um servidor Multidimensional ou em um banco de dados Multidimensional em um servidor Tabular. Verifique se você está usando arquivos com o modo correto e verifique se a configuração de opção |
A restauração falhou. O arquivo de backup só pode ser restaurado em um servidor em execução no modo |
Procedimentos armazenados do RDS |
Você não pode restaurar um banco de dados Tabular para um servidor Multidimensional ou um banco de dados Multidimensional para um servidor Tabular. Verifique se você está usando arquivos com o modo correto e verifique se a configuração de opção |
A restauração falhou. O arquivo de backup e as versões da instância de banco de dados do RDS são incompatíveis. |
Procedimentos armazenados do RDS |
Você não pode restaurar um banco de dados do SSAS com uma versão incompatível com a versão da instância do SQL Server. Para obter mais informações, consulte Níveis de compatibilidade para modelos tabulares |
A restauração falhou. O arquivo de backup especificado na operação de restauração está danificado ou não é um arquivo de backup do SSAS. Certifique-se de que @rds_file_path esteja formatado corretamente. |
Procedimentos armazenados do RDS |
Você não pode restaurar um banco de dados do SSAS com um arquivo danificado. Certifique-se de que o arquivo não esteja danificado ou corrompido. Esse erro também pode ser gerado quando |
A restauração falhou. O nome do banco de dados restaurado não pode conter palavras reservadas, mais de 100 caracteres ou caracteres inválidos: . , ; ' ` : / \\ * | ? \" & % $ ! + = ( ) [ ] { } < > |
Procedimentos armazenados do RDS |
O nome do banco de dados restaurado não pode conter palavras ou caracteres reservados que não sejam válidos ou tenham mais de 100 caracteres. Para convenções de nomenclatura de objetos SSAS, consulte Regras de nomeação de objetos |
Um nome de função inválido foi fornecido. O nome da função não pode conter strings reservados. |
Procedimentos armazenados do RDS |
O nome da função não pode conter strings reservados. Para convenções de nomenclatura de objetos SSAS, consulte Regras de nomeação de objetos |
Um nome de função inválido foi fornecido. O nome da função não pode conter nenhum dos seguintes caracteres reservados: . , ; ' ` : / \\ * | ? \" & % $ ! + = ( ) [ ] { } < > |
Procedimentos armazenados do RDS |
O nome da função não pode conter caracteres reservados. Para convenções de nomenclatura de objetos SSAS, consulte Regras de nomeação de objetos |