Compatibilidad con SQL Server Analysis Services en Amazon RDS for SQL Server
Microsoft SQL Server Analysis Services (SSAS) forma parte del conjunto Microsoft Business Intelligence (MSBI). SSAS es una herramienta de procesamiento analítico en línea (OLAP) y minería de datos instalada en SQL Server. Utilice SSAS para analizar datos como ayuda para tomar decisiones empresariales. SSAS es diferente de la base de datos relacional de SQL Server porque SSAS está optimizado para consultas y cálculos comunes en un entorno de inteligencia empresarial.
Puede habilitar SSAS para instancias de base de datos existentes o nuevas. Está instalado en la misma instancia de base de datos que su motor de base de datos. Para obtener más información sobre SSAS, consulte la documentación de Microsoft Analysis Services
Amazon RDS admite SSAS para las ediciones Standard y Enterprise de SQL Server en las siguientes versiones:
-
Modo tabular:
-
SQL Server 2019, versión 15.00.4043.16.v1 y posteriores
-
SQL Server 2017, versión 14.00.3223.3.v1 y posteriores
-
SQL Server 2016, versión 13.00.5426.0.v1 y posteriores
-
-
Modo multidimensional:
-
SQL Server 2019, versión 15.00.4153.1.v1 y posteriores
-
SQL Server 2017, versión 14.00.3381.3.v1 y posteriores
-
SQL Server 2016, versión 13.00.5882.1.v1 y posteriores
-
Contenido
- Limitaciones
- Activación de SSAS
- Implementación de proyectos SSAS en Amazon RDS
- Monitoreo del estado de una tarea de implementación
- Uso de SSAS en Amazon RDS
- Copia de seguridad de una base de datos SSAS
- Restauración de una base de datos SSAS
- Cambiar el modo de SSAS
- Desactivación de SSAS
- Solución de problemas de SSAS
Limitaciones
Las siguientes limitaciones se aplican al uso de SSAS en RDS for SQL Server:
-
RDS for SQL Server admite la ejecución de SSAS en modo tabular o multidimensional. Para obtener más información, consulte Comparación de soluciones tabulares y multidimensionales
en la documentación de Microsoft. -
Solo puede utilizar un modo de SSAS a la vez. Antes de cambiar de modo, asegúrese de eliminar todas las bases de datos SSAS.
Para obtener más información, consulte Cambiar el modo de SSAS.
-
No se da soporte a las instancias Multi-AZ.
-
Las instancias deben utilizar Active Directory autoadministrado o AWS Directory Service for Microsoft Active Directory para la autenticación SSAS. Para obtener más información, consulte Uso de Active Directory con RDS para SQL Server.
-
Los usuarios no tienen acceso de administrador del servidor SSAS, pero se les puede conceder acceso de administrador en el nivel de base de datos.
-
El único puerto con soporte para obtener acceso a SSAS es 2383.
-
No se pueden implementar proyectos directamente. Para implementarlos, proporcionamos un procedimiento almacenado de RDS. Para obtener más información, consulte Implementación de proyectos SSAS en Amazon RDS.
-
No se da soporte a los procesamientos durante la implementación.
-
No se da soporte al uso de archivos .xmla para la implementación.
-
Los archivos de entrada del proyecto SSAS y los archivos de salida de copia de seguridad de la base de datos solo pueden estar en la carpeta
D:\S3
de la instancia de base de datos.
Activación de SSAS
Utilice el siguiente proceso para activar SSAS para su instancia de base de datos:
-
Cree un nuevo grupo de opciones o elija un grupo de opciones ya existente.
-
Añada la opción
SSAS
al grupo de opciones. -
Asocie el grupo de opciones a la instancia de base de datos.
-
Permitir el acceso entrante al grupo de seguridad de la nube virtual privada (VPC) para el puerto de escucha de SSAS.
-
Activar la integración de Simple Storage Service (Amazon S3).
Crear un grupo de opciones para SSAS
Utilice la AWS Management Console o la AWS CLI para crear un grupo de opciones que corresponda al motor de SQL Server y la versión de la instancia de base de datos que planee utilizar.
nota
También puede utilizar un grupo de opciones ya existente si es para el motor y la versión correctos de SQL Server.
El siguiente procedimiento de consola crea un grupo de opciones para SQL Server Standard Edition 2017.
Para crear el grupo de opciones
Inicie sesión en la AWS Management Console y abra la consola de Amazon RDS en https://console.aws.amazon.com/rds/
. -
En el panel de navegación, elija Option groups (Grupos de opciones).
-
Elija Create group.
-
En el panel Create option group (Crear grupo de opciones), haga lo siguiente:
-
En Nombre, escriba un nombre para el grupo de opciones que sea exclusivo dentro de su cuenta de AWS, como
ssas-se-2017
. El nombre solo puede contener letras, dígitos y guiones. -
En Descripción, escriba una breve descripción del grupo de opciones, como
SSAS option group for SQL Server SE 2017
. La descripción se utiliza para fines de visualización. -
Para Engine (Motor), elija sqlserver-se.
-
En Major engine version (Versión principal dle motor), elija 14.00.
-
-
Elija Create (Crear).
En el siguiente ejemplo de CLI se crea un grupo de opciones para SQL Server Standard Edition 2017.
Para crear el grupo de opciones
-
Utilice uno de los siguientes comandos.
Para Linux, macOS o 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
"En 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
"
Agregar la opción de SSAS al grupo de opciones
A continuación, utilice la AWS Management Console o la AWS CLI para agregar la opción SSAS
al grupo de opciones.
Para agregar la opción de SSAS
Inicie sesión en la AWS Management Console y abra la consola de Amazon RDS en https://console.aws.amazon.com/rds/
. -
En el panel de navegación, elija Option groups (Grupos de opciones).
-
Elija el grupo de opciones que acaba de crear.
-
Seleccione Add option (Añadir opción).
-
En Option details (Detalles de la opción), elija SSAS para Option name (Nombre de la opción).
-
En Option settings (Configuración de opciones), haga lo siguiente:
-
Para Max memory (Memoria máxima), ingrese un valor en el rango 10-80.
En Max memory (Memoria máxima) se especifica el umbral superior por encima del cual SSAS comienza a liberar memoria con mayor rapidez para dejar espacio a las solicitudes que se están ejecutando, así como a las nuevas solicitudes de alta prioridad. El número es un porcentaje de la memoria total de la instancia de base de datos. Se permiten los valores entre 10 y 80, y el valor predeterminado es 45.
-
Para Mode (Modo), elija el modo de servidor SSAS, Tabular o Multidimensional.
Si no ve la opción Mode (Modo), significa que el modo Multidimensional no es compatible con su región de AWS. Para obtener más información, consulte Limitaciones.
Tabular es el modo predeterminado.
-
En Security groups (Grupos de seguridad), elija el grupo de seguridad de VPC que desea asociar a la opción.
nota
El puerto para obtener acceso a SSAS, 2383, se rellena previamente.
-
-
En Scheduling (Programación), elija si desea agregar la opción inmediatamente o en el siguiente período de mantenimiento.
-
Elija Add option (Agregar opción).
Para agregar la opción de SSAS
-
Cree un archivo JSON, por ejemplo
ssas-option.json
, con los siguientes parámetros:-
OptionGroupName
: el nombre del grupo de opciones que ha creado o elegido anteriormente (ssas-se-2017
en el ejemplo siguiente). -
Port
: el puerto que se utiliza para obtener acceso a SSAS. Solo se da soporte al puerto 2383. -
VpcSecurityGroupMemberships
: membresías para los grupos de seguridad de la VPC para la instancia de base de datos RDS. -
MAX_MEMORY
: el umbral superior por encima del cual SSAS debería comenzar a liberar más memoria para dejar espacio a las solicitudes que se estén ejecutando y para nuevas solicitudes de alta prioridad. El número es un porcentaje de la memoria total de la instancia de base de datos. Se permiten los valores entre 10 y 80, y el valor predeterminado es 45. -
MODE
: el modo de servidor de SSAS, ya seaTabular
oMultidimensional
.Tabular
es el predeterminado.Si recibe un error que indica que la configuración de la opción
MODE
no es válida, significa que el modo multidimensional no es compatible con su región AWS. Para obtener más información, consulte Limitaciones.
El siguiente es un ejemplo de un archivo JSON con la configuración de las opciones de 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 } -
-
Agregue la opción
SSAS
al grupo de opciones.Para Linux, macOS o Unix:
aws rds add-option-to-option-group \ --cli-input-json file://
ssas-option.json
\ --apply-immediatelyEn Windows:
aws rds add-option-to-option-group ^ --cli-input-json file://
ssas-option.json
^ --apply-immediately
Asociación del grupo de opciones a su instancia de base de datos
Puede utilizar la consola o la CLI para asociar el grupo de opciones con la instancia de base de datos.
Asocie su grupo de opciones a una instancia de base de datos nueva o ya existente:
-
Si se trata de una instancia de base de datos nueva, asocie el grupo de opciones a la instancia de base de datos al iniciar la instancia. Para obtener más información, consulte Creación de una instancia de base de datos de Amazon RDS.
-
Si se trata de una instancia de base de datos ya existente, modifique la instancia y asóciele el nuevo grupo de opciones. Para obtener más información, consulte Modificación de una instancia de base de datos de Amazon RDS.
nota
Si usa una instancia que ya existe, esta debe tener ya asociados un dominio de Active Directory y un rol de AWS Identity and Access Management (IAM). Si crea una instancia nueva, especifique un rol de IAM y un dominio de Active Directory ya existentes. Para obtener más información, consulte Uso de Active Directory con RDS para SQL Server.
Puede asociar su grupo de opciones a una instancia de base de datos nueva o ya existente.
nota
Si usa una instancia que ya existe, esta debe tener ya asociados un dominio de Active Directory y un rol de IAM. Si crea una instancia nueva, especifique un rol de IAM y un dominio de Active Directory ya existentes. Para obtener más información, consulte Uso de Active Directory con RDS para SQL Server.
Para crear una instancia de base de datos que utilice el grupo de opciones
-
Especifique el mismo tipo de motor de base de datos y la misma versión principal que ha utilizado al crear el grupo de opciones.
Para Linux, macOS o 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
En 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
Para modificar una instancia de base de datos para asociar el grupo de opciones
-
Utilice uno de los siguientes comandos.
Para Linux, macOS o Unix:
aws rds modify-db-instance \ --db-instance-identifier
myssasinstance
\ --option-group-namessas-se-2017
\ --apply-immediatelyEn Windows:
aws rds modify-db-instance ^ --db-instance-identifier
myssasinstance
^ --option-group-namessas-se-2017
^ --apply-immediately
Permitir el acceso de entrada a su grupo de seguridad de VPC
Cree una regla de entrada para el puerto del agente de escucha de SSAS especificado en el grupo de seguridad de VPC asociado a su instancia de base de datos. Para obtener más información acerca de la configuración de grupos de seguridad, consulte Proporcionar acceso a la instancia de base de datos en la VPC mediante la creación de un grupo de seguridad.
Habilitación de la integración de Simple Storage Service (Amazon S3)
Para descargar los archivos de configuración del modelo en su host para su implementación, utilice la integración de Simple Storage Service (Amazon S3). Para obtener más información, consulte Integración de una instancia de base de datos de Amazon RDS for SQL Server con Amazon S3.
Implementación de proyectos SSAS en Amazon RDS
En RDS, no puede implementar directamente proyectos SSAS mediante SQL Server Management Studio (SSMS). Para implementar proyectos, utilice un procedimiento almacenado de RDS.
nota
No se da soporte al uso de archivos .xmla para la implementación.
Antes de implementar proyectos, asegúrese de lo siguiente:
-
La integración de Simple Storage Service (Amazon S3) está activada. Para obtener más información, consulte Integración de una instancia de base de datos de Amazon RDS for SQL Server con Amazon S3.
-
El valor de configuración de
Processing Option
tiene que estar establecido enDo Not Process
. Esta configuración significa que no se ejecutará ningún procesamiento después de la implementación. -
Tiene los archivos
ymyssasproject
.asdatabase
. Se generan automáticamente cuando se crea el proyecto SSAS.myssasproject
.deploymentoptions
Para implementar un proyecto SSAS en RDS
-
Descargue el archivo
.asdatabase
(modelo SSAS) desde su bucket S3 a su instancia de base de datos, tal y como se muestra en el siguiente ejemplo. Para obtener más información sobre los parámetros de descarga, consulte Descarga de archivos desde un bucket de Amazon S3 a una instancia de base de datos de 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]; -
Descargue el archivo
.deploymentoptions
desde su bucket S3 hasta la instancia de base de datos.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]; -
Implemente el proyecto.
exec msdb.dbo.rds_msbi_task @task_type='SSAS_DEPLOY_PROJECT', @file_path='D:\S3\
myssasproject
.asdatabase';
Monitoreo del estado de una tarea de implementación
Para realizar un seguimiento del estado de la tarea de implementación (o descarga), llame a la función rds_fn_task_status
. Tiene dos parámetros. El primer parámetro tiene que ser siempre NULL
porque no se aplica a SSAS. El segundo parámetro acepta un ID de tarea.
Para obtener una lista de todas las tareas, establezca el primer parámetro en NULL
y el segundo en 0
, como se muestra en el siguiente ejemplo.
SELECT * FROM msdb.dbo.rds_fn_task_status(NULL,
0
);
Para obtener una tarea específica, establezca el primer parámetro en NULL
y el segundo en el ID de la tarea, como se muestra en el siguiente ejemplo.
SELECT * FROM msdb.dbo.rds_fn_task_status(NULL,
42
);
La función rds_fn_task_status
devuelve la siguiente información.
Parámetro de salida |
Descripción |
---|---|
|
El ID de la tarea. |
|
Para SSAS, las tareas pueden tener los siguientes tipos de tareas:
|
|
No aplicable a tareas de SSAS. |
|
El porcentaje de progreso de la tarea. |
|
El tiempo empleado en la tarea, en minutos. |
|
El estado de la tarea. Los posibles estados son los siguientes:
|
|
Información adicional acerca de la tarea. Si se produce un error durante el procesamiento, esta columna contiene información acerca del error. Para obtener más información, consulte Solución de problemas de SSAS. |
|
La fecha y hora en que se actualizó por última vez el estado de la tarea. |
|
La fecha y hora en que se creó la tarea. |
|
No aplicable a tareas de SSAS. |
|
No aplicable a tareas de SSAS. |
|
No aplicable a tareas de SSAS. |
|
No aplicable a tareas de SSAS. |
|
No aplicable a tareas de SSAS. |
|
Metadatos asociados a la tarea de SSAS. |
Uso de SSAS en Amazon RDS
Después de implementar el proyecto SSAS, puede procesar directamente la base de datos OLAP en SSMS.
Para utilizar SSAS en RDS
-
En SSMS, conéctese a SSAS mediante el nombre de usuario y la contraseña del dominio de Active Directory.
-
Expanda Databases (Bases de datos). Aparece la base de datos SSAS recién implementada.
-
Localice la cadena de conexión y actualice el nombre de usuario y la contraseña para dar acceso a la base de datos SQL de origen. Esta operación es necesaria para procesar los objetos de SSAS.
-
Para el modo tabular, haga lo siguiente:
-
Despliegue la pestaña Connections (Conexiones).
-
Abra el menú contextual (con el botón derecho del ratón) del objeto de conexión y elija Properties (Propiedades).
-
Actualice el nombre de usuario y la contraseña en la cadena de conexión.
-
-
Para el modo multidimensional, haga lo siguiente:
-
Despliegue la pestaña Data Sources (Orígenes de datos).
-
Abra el menú contextual (con el botón derecho del ratón) del objeto origen de datos y, a continuación, elija Properties (Propiedades).
-
Actualice el nombre de usuario y la contraseña en la cadena de conexión.
-
-
-
Abra el menú contextual (haga clic con el botón derecho) de la base de datos SSAS que ha creado y elija Process Database (Procesar base de datos).
Según el tamaño de los datos de entrada, la operación de procesamiento puede tardar varios minutos en completarse.
Temas
Configuración de un usuario autenticado por Windows para SSAS
El usuario administrador principal (a veces llamado usuario maestro) puede utilizar el siguiente ejemplo de código para configurar un inicio de sesión autenticado por Windows y conceder los permisos de procedimiento necesarios. Al hacer esto se conceden permisos al usuario de dominio para ejecutar tareas de cliente de SSAS, utilizar procedimientos de transferencia de archivos S3, crear credenciales y trabajar con el proxy de SQL Server Agent. Para obtener más información, consulte Credenciales (Motor de base de datos)
Puede conceder algunos o todos los permisos siguientes, según sea necesario, a los usuarios autenticados de 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
Agregar un usuario de dominio como administrador de bases de datos
Puede agregar un usuario de dominio como administrador de base de datos SSAS de las siguientes maneras:
-
Un administrador de base de datos puede usar SSMS para crear un rol con privilegios de
admin
y, a continuación, agregar usuarios a dicho rol. -
Puede utilizar el siguiente procedimiento almacenado.
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
';Se requieren los siguientes parámetros:
-
@task_type
– el tipo de la tarea MSBI; en este casoSSAS_ADD_DB_ADMIN_MEMBER
. -
@database_name
: el nombre de la base de datos SSAS a la que concede privilegios de administrador. -
@ssas_role_name
: el nombre del rol de administrador de base de datos SSAS. Si el rol no existe, se crea. -
@ssas_role_member
: el usuario de la base de datos SSAS que va a agregar al rol de administrador.
-
Creación de un proxy de SSAS
Para poder programar el procesamiento de la base de datos de SSAS mediante SQL Server Agent, cree una credencial de SSAS y un proxy de SSAS. Ejecute estos procedimientos como usuario autenticado por Windows.
Para crear la credencial de SSAS
-
Cree la credencial para el proxy. Para ello, puede utilizar SSMS o la siguiente instrucción SQL.
USE [master] GO CREATE CREDENTIAL [SSAS_Credential] WITH IDENTITY = N'
mydomain
\user_name
', SECRET = N'mysecret
' GOnota
IDENTITY
debe ser un inicio de sesión autenticado por dominio. Reemplace
por la contraseña para el inicio de sesión autenticado por el dominio.mysecret
Para crear el proxy de SSAS
-
Utilice la siguiente instrucción SQL para crear el proxy.
USE [msdb] GO EXEC msdb.dbo.sp_add_proxy @proxy_name=N'SSAS_Proxy',@credential_name=N'SSAS_Credential',@description=N'' GO
-
Utilice la siguiente instrucción SQL para conceder acceso al proxy a otros usuarios.
USE [msdb] GO EXEC msdb.dbo.sp_grant_login_to_proxy @proxy_name=N'SSAS_Proxy',@login_name=N'
mydomain
\user_name
' GO -
Utilice la siguiente instrucción SQL para conceder acceso al subsistema de SSAS al proxy.
USE [msdb] GO EXEC msdb.dbo.rds_sqlagent_proxy @task_type='GRANT_SUBSYSTEM_ACCESS',@proxy_name='SSAS_Proxy',@proxy_subsystem='SSAS' GO
Para consultar el proxy y las concesiones en el proxy
-
Utilice la siguiente instrucción SQL para consultar los beneficiarios del proxy.
USE [msdb] GO EXEC sp_help_proxy GO
-
Utilice la siguiente instrucción SQL para consultar las concesiones del subsistema.
USE [msdb] GO EXEC msdb.dbo.sp_enum_proxy_for_subsystem GO
Programación del procesamiento de bases de datos SSAS mediante SQL Server Agent
Después de crear la credencial y el proxy y conceder acceso a SSAS al proxy, puede crear un trabajo de SQL Server Agent para programar el procesamiento de la base de datos de SSAS.
Para programar el procesamiento de base de datos de SSAS
-
Use SSMS o T-SQL para crear el trabajo de SQL Server Agent. En el siguiente ejemplo se utiliza T-SQL. Además, puede configurar la programación de trabajo a través de SSMS o T-SQL.
-
El parámetro
@command
indica el comando XML for Analysis (XMLA) que debe ejecutar el trabajo de SQL Server Agent Este ejemplo configura el procesamiento de la base de datos multidimensional de SSAS. -
El parámetro
@server
indica el nombre del servidor SSAS de destino del trabajo de SQL Server Agent.Para llamar al servicio de SSAS dentro de la misma instancia de base de datos RDS donde reside el trabajo de SQL Server Agent, utilice
localhost:2383
.Para llamar al servicio de SSAS desde fuera de la instancia de base de datos RDS, utilice el punto de conexión RDS. También puede utilizar el punto de conexión de Kerberos Active Directory (AD) (
) si las instancias de la base de datos RDS están unidas por el mismo dominio. En el caso de las instancias de base de datos externas, asegúrese de configurar correctamente el grupo de seguridad de la VPC asociado a la instancia de base de datos RDS para obtener una conexión segura.your-DB-instance-name
.your-AD-domain-name
Puede editar aún más la consulta para admitir varias operaciones XMLA. Realice las ediciones modificando directamente la consulta T-SQL o mediante la UI de SSMS tras la creación del trabajo de 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
-
Revocación de acceso de SSAS desde el proxy
Puede revocar el acceso al subsistema de SSAS y eliminar el proxy de SSAS mediante los siguientes procedimientos almacenados.
Para revocar el acceso y eliminar el proxy
-
Revoque el acceso al subsistema.
USE [msdb] GO EXEC msdb.dbo.rds_sqlagent_proxy @task_type='REVOKE_SUBSYSTEM_ACCESS',@proxy_name='SSAS_Proxy',@proxy_subsystem='SSAS' GO
-
Revoque las concesiones en el proxy.
USE [msdb] GO EXEC msdb.dbo.sp_revoke_login_from_proxy @proxy_name=N'SSAS_Proxy',@name=N'
mydomain
\user_name
' GO -
Elimine el proxy.
USE [msdb] GO EXEC dbo.sp_delete_proxy @proxy_name = N'SSAS_Proxy' GO
Copia de seguridad de una base de datos SSAS
Puede crear archivos de copia de seguridad de base de datos SSAS solo en la carpeta D:\S3
de la instancia de base de datos. Para mover los archivos de copia de seguridad al bucket de S3, utilice Amazon S3.
Puede realizar una copia de seguridad de una base de datos SSAS de la siguiente manera:
-
Un usuario de dominio con el rol
admin
de una base de datos determinada puede utilizar SSMS para realizar una copia de seguridad de la base de datos en la carpetaD:\S3
.Para obtener más información, consulte Agregar un usuario de dominio como administrador de bases de datos.
-
Puede utilizar el siguiente procedimiento almacenado. Este procedimiento almacenado no admite la codificación.
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];Se requieren los siguientes parámetros:
-
@task_type
– el tipo de la tarea MSBI; en este casoSSAS_BACKUP_DB
. -
@database_name
: el nombre de la base de datos SSAS cuya copia de seguridad está realizando. -
@file_path
: la ruta de acceso del archivo de copia de seguridad de SSAS. La extensión.abf
es necesaria.
Los siguientes parámetros son opcionales:
-
@ssas_apply_compression
: indica si se aplicará la compresión de copia de seguridad de SSAS. Los valores válidos son 1 (Sí) y 0 (No). -
@ssas_overwrite_file
: indica si se sobrescribe el archivo de copia de seguridad de SSAS. Los valores válidos son 1 (Sí) y 0 (No).
-
Restauración de una base de datos SSAS
Utilice el siguiente procedimiento almacenado para restaurar una base de datos SSAS a partir de una copia de seguridad.
No puede restaurar una base de datos si ya existe una base de datos SSAS con el mismo nombre. El procedimiento almacenado para restaurar no da soporte a archivos de copia de seguridad cifrados.
exec msdb.dbo.rds_msbi_task @task_type='SSAS_RESTORE_DB', @database_name='
mynewssasdb
', @file_path='D:\S3\ssas_db_backup
.abf';
Se requieren los siguientes parámetros:
-
@task_type
– el tipo de la tarea MSBI; en este casoSSAS_RESTORE_DB
. -
@database_name
: el nombre de la nueva base de datos SSAS en la que está realizando la restauración. -
@file_path
: la ruta de acceso al archivo de copia de seguridad de SSAS.
Restauración de una instancia de base de datos a un momento especificado
La recuperación a un momento dado (PITR) no se aplica a las bases de datos SSAS. Si ejecuta una PITR, solo los datos SSAS de la última instantánea antes de la hora solicitada estarán disponibles en la instancia restaurada.
Para tener bases de datos SSAS actualizadas en una instancia de base de datos restaurada
-
Haga una copia de seguridad de las bases de datos SSAS en la carpeta
D:\S3
de la instancia de origen. -
Transfiera los archivos de copia de seguridad al bucket S3.
-
Transfiera los archivos de copia de seguridad del bucket S3 a la carpeta
D:\S3
de la instancia restaurada. -
Ejecute el procedimiento almacenado para restaurar las bases de datos SSAS en la instancia restaurada.
También puede volver a procesar el proyecto SSAS para restaurar las bases de datos.
Cambiar el modo de SSAS
Puede cambiar el modo en el que se ejecuta SSAS, ya sea Tabular o Multidimensional. Para cambiar el modo, utilice la AWS Management Console o la AWS CLI para modificar la configuración de las opciones en la opción de SSAS.
importante
Solo puede utilizar un modo de SSAS a la vez. Asegúrese de eliminar todas las bases de datos de SSAS antes de cambiar el modo o aparecerá un error.
El siguiente procedimiento de la consola de Amazon RDS cambia el modo de SSAS a Tabular y establece el parámetro MAX_MEMORY
al 70 por ciento.
Para modificar la opción de SSAS
Inicie sesión en la AWS Management Console y abra la consola de Amazon RDS en https://console.aws.amazon.com/rds/
. -
En el panel de navegación, elija Option groups (Grupos de opciones).
-
Elija el grupo de opciones con la opción
SSAS
que desea modificar (ssas-se-2017
en los ejemplos anteriores). -
Elija Modify option (Modificar opción).
-
Cambie la configuración de las opciones:
-
Para Max memory (Memoria máxima), ingrese
70
. -
Para el Mode (Modo), elija Tabular
-
-
Elija Modify option (Modificar opción).
El siguiente ejemplo de la AWS CLI cambia el modo de SSAS a Tabular y establece el parámetro MAX_MEMORY
al 70 por ciento.
Para que el comando de la CLI funcione, asegúrese de incluir todos los parámetros requeridos, incluso si no los está modificando.
Para modificar la opción de SSAS
-
Utilice uno de los siguientes comandos.
Para Linux, macOS o 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-immediatelyEn 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
Desactivación de SSAS
Para descativar SSAS, quite la opción SSAS
de su grupo de opciones.
importante
Antes de quitar la opción SSAS
, elimine las bases de datos SSAS.
Es muy recomendable que realice una copia de seguridad de las bases de datos SSAS antes de eliminarlas y quitar la opción SSAS
.
Para quitar la opción SSAS de su grupo de opciones
Inicie sesión en la AWS Management Console y abra la consola de Amazon RDS en https://console.aws.amazon.com/rds/
. -
En el panel de navegación, elija Option groups (Grupos de opciones).
-
Elija el grupo de opciones con la opción
SSAS
que desea quitar (ssas-se-2017
en los ejemplos anteriores). -
Elija Delete option (Eliminar opción).
-
En Deletion options (Opciones de eliminación), elija SSAS para Options to delete (Opciones para eliminar).
-
En Apply immediately (Aplicar inmediatamente), seleccione Yes (Sí) para eliminar la opción inmediatamente o No para eliminarla en el siguiente período de mantenimiento.
-
Elija Eliminar.
Para quitar la opción de SSAS de su grupo de opciones
-
Utilice uno de los siguientes comandos.
Para Linux, macOS o Unix:
aws rds remove-option-from-option-group \ --option-group-name
ssas-se-2017
\ --options SSAS \ --apply-immediatelyEn Windows:
aws rds remove-option-from-option-group ^ --option-group-name
ssas-se-2017
^ --options SSAS ^ --apply-immediately
Solución de problemas de SSAS
Es posible que se encuentre con los siguientes problemas al utilizar SSAS.
Problema | Tipo | Sugerencias para la solución de problemas |
---|---|---|
No se puede configurar la opción de SSAS. El modo de SSAS solicitado es |
Evento de RDS | No se puede cambiar el modo de SSAS si todavía tiene bases de datos de SSAS que utilizan el modo actual. Elimine las bases de datos de SSAS y vuelva a intentarlo. |
No se puede eliminar la opción de SSAS porque hay un |
Evento de RDS | No se puede desactivar SSAS si todavía tiene bases de datos de SSAS. Elimine las bases de datos de SSAS y vuelva a intentarlo. |
La opción de SSAS no está habilitada o está en proceso de habilitarse. Inténtelo de nuevo más tarde. |
Procedimiento almacenado de RDS | No se puede ejecutar procedimientos almacenados de SSAS cuando la opción está desactivada ni cuando se encuentra activada. |
La opción de SSAS está configurada incorrectamente Asegúrese de que el estado de pertenencia al grupo de opciones sea “in-sync” y revise los registros de eventos de RDS en busca de mensajes de error de configuración de SSAS relevantes Tras estas investigaciones, inténtelo de nuevo. Si los errores continúan, contacte con AWS Support. |
Procedimiento almacenado de RDS |
No se puede ejecutar procedimientos almacenados de SSAS cuando la membresía de su grupo de opciones no tiene el estado Si el estado de membresía de su grupo de opciones cambia a
Reconfigure la opción de SSAS, porque RDS solo permite un modo de SSAS a la vez y no admite la eliminación de la opción de SSAS con bases de datos de SSAS presentes. Compruebe los registros de eventos de RDS en busca de errores de configuración para la instancia de SSAS y resuelva los problemas en consecuencia. |
Error de implementación El cambio solo puede implementarse en un servidor que se ejecute en el modo |
Procedimiento almacenado de RDS |
No se puede implementar una base de datos tabular en un servidor multidimensional ni una base de datos multidimensional en un servidor tabular. Asegúrese de utilizar archivos con el modo correcto y verifique que la configuración de la opción |
Error en la restauración. El archivo de copia de seguridad solo se puede restaurar en un servidor que se ejecute en el modo |
Procedimiento almacenado de RDS |
No se puede restaurar una base de datos tabular a un servidor multidimensional ni una base de datos multidimensional a un servidor tabular. Asegúrese de utilizar archivos con el modo correcto y verifique que la configuración de la opción |
Error en la restauración. Las versiones del archivo de copia de seguridad y de instancia de la base de datos RDS son incompatibles. |
Procedimiento almacenado de RDS |
No se puede restaurar una base de datos de SSAS con una versión incompatible con la versión de la instancia de SQL Server. Para obtener más información, consulte Niveles de compatibilidad para modelos tabulares |
Error en la restauración. El archivo de copia de seguridad especificado en la operación de restauración está dañado o no es un archivo de copia de seguridad de SSAS. Asegúrese de que @rds_file_path se encuentre correctamente formateado. |
Procedimiento almacenado de RDS |
No se puede restaurar una base de datos de SSAS con un archivo dañado. Asegúrese de que el archivo no esté dañado o corrupto. Este error también puede aparecer cuando |
Error en la restauración. El nombre de la base de datos restaurada no puede contener palabras reservadas o caracteres no válidos: . , ; ' ` : / \ * | ? ¡\" & % $ ! + = ( ) [ ] { } < >, o tener más de 100 caracteres. |
Procedimiento almacenado de RDS |
El nombre de la base de datos restaurada no puede contener palabras reservadas o caracteres que no sean válidos ni tener más de 100 caracteres. Para conocer las convenciones de denominación de objetos de SSAS, consulte Normas de nomenclatura de objetos |
Se proporcionó un nombre de rol no válido. El nombre del rol no puede contener ninguna cadena reservada. |
Procedimiento almacenado de RDS |
El nombre del rol no puede contener ninguna cadena reservada. Para conocer las convenciones de denominación de objetos de SSAS, consulte Normas de nomenclatura de objetos |
Se proporcionó un nombre de rol no válido. El nombre del rol no puede contener ninguno de los siguientes caracteres reservados: . , ; ' ` : / \\ * | ? ¡\" & % $ ! + = ( ) [ ] { } < > |
Procedimiento almacenado de RDS |
El nombre del rol no puede contener ningún carácter reservado. Para conocer las convenciones de denominación de objetos de SSAS, consulte Normas de nomenclatura de objetos |