Implementar una estrategia de respaldo para los activos de Amazon Quick Sight BI

Amazon Quick Sight es una característica central de Amazon Quick , un espacio de trabajo digital basado en inteligencia artificial diseñado para maximizar la productividad del usuario final, que proporciona capacidades de BI impulsadas por inteligencia artificial a través de consultas en lenguaje natural, paneles interactivos y análisis integrados de fuentes de datos empresariales confiables.

Se puede realizar una copia de seguridad de los activos de Amazon Quick Sight, como paneles, análisis, conjuntos de datos y fuentes de datos, utilizando las API AssetsAsBundle que se describen en esta publicación. Una estrategia de respaldo ayuda a proteger contra eliminaciones accidentales, modificaciones no deseadas e interrupciones regionales. Para los equipos que dependen de Quick Sight para respaldar decisiones comerciales críticas, se recomienda un plan de respaldo bien diseñado.

Esta publicación es la primera de una serie de dos partes que cubren la copia de seguridad y la restauración de los activos de Amazon Quick Sight BI:

Parte 1 (esta publicación): cubre cómo diseñar e implementar una estrategia de respaldo, incluida la selección de activos, las API disponibles para exportar y una herramienta de automatización de muestra lista para usar. Parte 2: Cubre el proceso de restauración. Puede utilizar las copias de seguridad creadas en la Parte 1 para recuperar activos después de una eliminación accidental, cambios no deseados o como parte de un plan más amplio de recuperación ante desastres.

Una estrategia de respaldo eficaz es especialmente crítica para organizaciones en industrias fuertemente reguladas, como servicios financieros, atención médica y energía, por múltiples razones:

La prevención de pérdida de datos protege contra errores humanos, eliminaciones accidentales y eventos como ransomware. Cumplir los objetivos de recuperación ayuda a las organizaciones a alcanzar sus objetivos de punto de recuperación (RPO) y objetivos de tiempo de recuperación (RTO), minimizando la pérdida de datos durante los incidentes. La auditoría y la generación de informes respaldan el seguimiento y la generación de informes sobre los activos a lo largo de su ciclo de vida (creación, actualizaciones y eliminación). La mayor resiliencia de la carga de trabajo permite una rápida restauración de los sistemas a estados anteriores, lo que reduce el tiempo de inactividad y mejora la confiabilidad. Esto se alinea con el pilar de confiabilidad del marco de buena arquitectura de AWS. La preparación para la recuperación ante desastres (DR) proporciona una base para implementar un proceso de DR que anticipa desastres relacionados con la tecnología y contribuye al plan de continuidad del negocio (BCP) de su organización.

Para obtener más información sobre las capacidades de recuperación ante desastres de Quick y cómo evaluarlas según los requisitos organizacionales, consulte la guía de resiliencia y recuperación ante desastres de Amazon Quick.

En esta publicación, cubrimos las mejores prácticas para implementar una estrategia de respaldo efectiva para activos de BI en Quick Sight. Comenzamos cubriendo las opciones para seleccionar los activos que se incluirán en su copia de seguridad, luego explicamos las API de alto nivel disponibles para ese propósito y finalizamos con un código de muestra para ayudarlo a comenzar rápidamente.

Prácticas de respaldo para inteligencia de negocios

Los sistemas de BI presentan desafíos únicos para la continuidad del negocio debido a su papel en el apoyo a los procesos de toma de decisiones y a las partes interesadas clave. Debe protegerlos contra interrupciones del servicio implementando un plan de respaldo eficaz. Antes de crear este plan, es importante comprender la arquitectura y las dimensiones que se deben considerar como parte de su plan de recuperación ante desastres.

El diagrama anterior muestra que Quick Sight se basa en la infraestructura global de AWS en múltiples regiones de AWS para proporcionar alta disponibilidad para los activos de Quick Sight, incluidos orígenes de datos, conjuntos de datos, análisis y paneles.

El motor de cálculo en memoria, paralelo y ultrarrápido (SPICE) almacena y cifra datos importados con alta disponibilidad (HA) a través de copias redundantes en múltiples zonas de disponibilidad (AZ) dentro de la región Quick Sight.

Con este diseño regional, puede mantener recursos en varias regiones y utilizar una región secundaria en el improbable caso de que una interrupción regional afecte sus recursos de BI principales.

Para la gestión de identidades y usuarios, Quick Sight utiliza una única región que usted define durante el proceso de suscripción inicial de la cuenta. El diagrama muestra que esta región alberga información de identidad de usuarios y grupos y debe estar disponible para que los usuarios accedan a Quick Sight.

Por ejemplo, si un usuario desea acceder a un panel en la región eu-west-1 pero la región principal de Quick Sight es us-east-1, ambas regiones deben estar disponibles para finalizar el flujo de acceso del usuario. Quick Sight utiliza arquitectura regional con AZ para mayor redundancia. Sin embargo, si su empresa necesita protección contra el improbable caso de una interrupción regional, debe diseñar su estrategia de recuperación ante desastres (DR) en consecuencia.

Consejo: Si no está seguro de su región principal de Quick Sight, puede recuperar esta información ejecutando el siguiente comando:

aws quicksight describe-configuración-de-cuenta –aws-account-id XXXXXXXXXXXX –región us-east-1

Nota: Este comando aws quicksight describe-account-settings especifica us-east-1 como región del punto final. Si recibe un estado 200, su región de identidad es us-east-1. De lo contrario, recibirá un error como el siguiente, que le indicará que apunte a su Región de identidad actual (por ejemplo, eu-west-1):

Se produjo un error (AccessDeniedException) al llamar a la operación DescribeAccountSettings: la operación se llama desde el punto final us-east-1, pero su región de identidad es us-east-1. Utilice el punto final eu-west-1.

Definición de activos de Quick Sight para incluirlos en el plan de respaldo

Con una comprensión más clara de la arquitectura Quick Sight, el siguiente paso es seleccionar los activos a incluir en su plan de respaldo, para esto puede seguir dos estrategias:

Realice una copia de seguridad de activos específicos:

Esta opción es adecuada cuando define una estrategia de copia de seguridad o recuperación ante desastres centrada en proteger activos críticos para sus operaciones comerciales que puede restaurar cómodamente después de un desastre o una eliminación accidental. Esto incluye paneles de control específicos (y sus activos dependientes) que las partes interesadas clave utilizan para tomar decisiones comerciales o que los equipos operativos (finanzas, logística, adquisiciones, etc.) utilizan para respaldar la operación comercial continua.

Se recomienda esta opción cuando necesita un plan de respaldo sencillo y cuando los activos de BI que son clave para la continuidad del negocio son un subconjunto de todos los activos disponibles en su instancia de Quick Sight.

Haga una copia de seguridad de todos los activos:

Esta estrategia se recomienda cuando desea definir una estrategia de respaldo que cubra tanto el control de versiones como la posible recuperación ante desastres. Al realizar una copia de seguridad de todos los activos, puede realizar una reversión in situ de cualquier activo a un estado anterior si un error humano provoca una modificación o eliminación no deseada. Además, como tiene una copia de seguridad de todos los activos de su cuenta, puede seleccionar activos específicos para restaurarlos como parte de su plan de recuperación ante desastres.

Este enfoque le brinda la máxima cobertura, pero también requiere una orquestación y automatización más complejas. Esta publicación se centra en esta estrategia y proporciona un código de muestra que puede adaptar para minimizar el tiempo de producción.

Después de seleccionar su estrategia, elija el tipo de activos de BI que desea exportar. Quick Sight ofrece los siguientes tipos de activos:

Paneles de control: activos de solo lectura dirigidos a usuarios lectores, publicados a partir de un análisis. También puede guardar un panel en un análisis para realizar modificaciones. Análisis y paneles: un análisis es una versión editable de un panel. Sólo los autores que elijas podrán acceder a él. Fuentes de datos: una fuente de datos implementa la conexión a sus datos, que pueden provenir de fuentes analíticas como bases de datos o almacenes de datos, servicios de AWS como Amazon Simple Storage Service (Amazon S3) o proveedores de datos de software como servicio (SaaS) de terceros, como Jira y ServiceNow. Conjuntos de datos: un tipo de activo que utiliza una fuente de datos para acceder a datos externos que puede utilizar para preparar y estructurar los datos que impulsan sus análisis y paneles. Conexiones de VPC: una característica que puede utilizar para integrarse con sus recursos de VPC, como bases de datos y almacenes de datos que se encuentran en esa VPC o a los que se puede acceder desde ella (VPC emparejadas o redes conectadas a través de VPN o AWS Direct Connect). Temas: una colección de configuraciones de estilo y apariencia que puede aplicar a múltiples análisis y paneles para que coincidan con un estándar estético que satisfaga las necesidades de su producto o marca corporativa.

Todos estos activos tienen dependencias entre sí, con análisis y paneles de control en la parte superior de esta cadena de dependencia, como lo ilustra el siguiente diagrama.

Diagrama de dependencias de activos de Quick Sight que muestra análisis y paneles en la parte superior, conjuntos de datos en el medio y fuentes de datos, conexiones de VPC y temas en la parte inferior.

Cuando elija los tipos de activos de los que desea realizar una copia de seguridad, tenga en cuenta estas dependencias para poder restaurar completamente los activos desde la copia de seguridad. Por ejemplo, cuando realiza una copia de seguridad de un panel, también necesita hacer una copia de seguridad de sus dependencias, que pueden incluir conjuntos de datos, fuentes de datos, conexiones de VPC y un tema. Las siguientes secciones explican cómo las API de exportación de Quick Sight manejan estas dependencias.

Descripción general del proceso de copia de seguridad

El mecanismo que cubrimos en esta publicación utiliza las API AssetsAsBundle disponibles en Quick Sight. Las API AssetsAsBundle (también denominadas API AAB) son un conjunto de API de alto nivel diseñadas para admitir la exportación e importación programática de recursos Quick Sight. Cubren una variedad de casos de uso, como gestión de versiones, copia de seguridad y restauración, migración entre cuentas y flujos de trabajo de integración y entrega continua (CI/CD).

Este conjunto de API incluye las siguientes operaciones:

StartAssetBundleExportJob: crea un paquete (paquete) que contiene los activos exportados como parte de la operación. El paquete es un archivo zip con archivos de texto. El formato puede ser JSON o AWS CloudFormation según el valor especificado en el parámetro ExportFormat. Dependiendo del formato, puede importar estos activos usando las API de AAB directamente o usar la infraestructura de CloudFormation como código (IaC) para el aprovisionamiento. Una vez finalizada la operación asincrónica, el sistema carga el paquete en una ubicación temporal de S3 para descargarlo. StartAssetBundleImportJob: toma un paquete previamente exportado y restaura los activos empaquetados en él. Puede utilizar la operación de importación para definir anulaciones para un amplio conjunto de parámetros, como nombres de activos y parámetros de conexión de origen de datos (host, puerto, grupo de trabajo y más). DescribeAssetBundleImportJob y DescribeAssetBundleExportJob: ambas operaciones de AssetBundle son asincrónicas. Puede utilizar estas API para describir la operación, sondear su estado y actuar una vez finalizada. Cuando realiza un trabajo de exportación, puede usar DescribeAssetBundleExportJob para recuperar la URL de descarga del paquete, que es válida por 5 minutos. Puede renovar la URL con más llamadas a DescribeAssetBundleExportJob.

Activos admitidos y limitaciones actuales de las API AssetsAsBundle

Las API AssetsAsBundle admiten una lista de activos de Quick Sight que incluyen análisis, paneles, fuentes de datos, conjuntos de datos, carpetas compartidas, carpetas restringidas, programas de actualización, temas y conexiones de VPC. Sin embargo, algunos tipos de activos tienen limitaciones.

Fuentes de datos no compatibles: Adobe Analytics, File, GitHub, Jira, Salesforce, ServiceNow, Amazon S3 (con archivos de manifiesto cargados localmente) y Twitter.

Conjuntos de datos no compatibles: conjuntos de datos que contienen columnas de aprendizaje automático (ML) generadas mediante inferencia a través de modelos ML de SageMaker conectados.

Debe excluir estos activos de su plan de respaldo para evitar un error InvalidParameterValueException cuando emita la operación StartAssetBundleExportJob.

Para solucionar este problema, puede reemplazar fuentes y conjuntos de datos no compatibles siguiendo estos procedimientos.

Para orígenes de datos de Amazon S3 con archivos de manifiesto locales:

Cree una nueva fuente de datos de Amazon S3. Cargue el archivo de manifiesto en Amazon S3. Haga referencia al archivo de manifiesto de su fuente de datos. Reemplace la fuente de datos en los conjuntos de datos dependientes mediante la API UpdateDataSet.

Para otras fuentes y conjuntos de datos no compatibles:

Siga este procedimiento para transformar su conjunto de datos incompatible en uno compatible:

Cree un análisis conectado a la fuente de datos que desea respaldar en su copia de seguridad. Cree un objeto visual de tabla que muestre todas las columnas del conjunto de datos. Exporte los datos como un archivo CSV. Cree un conjunto de datos de Amazon S3 utilizando un manifiesto cargado en Amazon S3. Actualice sus análisis y paneles con el nuevo conjunto de datos utilizando la función de reemplazo de conjunto de datos.

Otros activos a considerar como parte de su respaldo

Aunque los recursos de Quick Sight son los activos clave para realizar copias de seguridad, debe incluir algunos recursos y configuraciones adicionales en su plan de copias de seguridad para posibles situaciones de restauración o recuperación ante desastres.

Puede exportar activos de Quick Sight junto con sus permisos, incluidos los usuarios y grupos que tienen acceso a ellos. Usted controla esto estableciendo el indicador IncludePermissions en verdadero.

Debido a que cada activo de Quick Sight es propiedad de un usuario, es necesario realizar una copia de seguridad de los usuarios y grupos para tener una copia de seguridad completa y restaurable.

Las API AssetsAsBundle no cubren usuarios ni grupos, pero puede usar DescribeUser, DescribeGroup y DescribeGroupMembership para incluir esta información en la copia de seguridad.

Además de los usuarios y grupos, considere hacer una copia de seguridad de la configuración de la cuenta, como la personalización de la cuenta (la API DescribeAccountCustomization), las marcas personalizadas (la API DescribeBrand) y las carpetas (las API ListFolders, DescribeFolder y DescribeFolderPermissions).

Implementación técnica

En esta sección, cubrimos cómo crear una automatización que organice la invocación de las API Quick Sight necesarias para realizar una implementación de respaldo efectiva. Proporcionamos un código de muestra al final de esta sección que implementa la copia de seguridad de usuarios y grupos y la copia de seguridad de activos Quick Sight.

Flujo de orquestación de respaldo

La herramienta de automatización admite tres modos de operación: solo copia de seguridad del usuario, solo copia de seguridad de activos y ambos. Esto proporciona la máxima flexibilidad al realizar su plan de respaldo. El siguiente diagrama muestra el flujo que sigue la herramienta dependiendo del modo de operación seleccionado.

Diagrama de flujo de la herramienta de automatización de respaldo que muestra los tres modos de operación (solo respaldo de usuario, solo respaldo de activos y ambos) con sus pasos de orquestación.

Copia de seguridad de usuarios y grupos

El servicio de copia de seguridad de usuarios y grupos utiliza las API de usuarios y grupos Quick Sight para leer el estado actual de su cuenta y almacenar los datos de usuarios y grupos recuperados en Amazon DynamoDB. El servicio utiliza sufijos basados ​​en fechas para los nombres de las tablas de DynamoDB para preservar los datos históricos de la copia de seguridad y evitar sobrescrituras. Esto permite la recuperación en un momento dado y el seguimiento del historial de copias de seguridad. Este diseño también simplifica las operaciones de restauración porque no necesita filtrar por sufijos de fecha cuando consulta datos dentro de una copia de seguridad específica.

Diagrama del flujo de copia de seguridad de usuarios y grupos que muestra cómo las API de grupos y usuarios de Quick Sight alimentan tres tablas de DynamoDB: usuarios, grupos y membresías de grupos de usuarios.

Ejemplo de ejecución de una copia de seguridad el 19/10/2025:

Usuarios: Quicksight-users-backup-2025-10-19 Grupos: Quicksight-groups-backup-2025-10-19 Membresías de grupos de usuarios: Quicksight-users-groups-backup-2025-10-19

Esquema de tabla de usuarios:

{ "user_name": "string (clave de partición)", "arn": "string", "email": "string", "role": "string", "identity_type": "string", "active": "boolean", "principal_id": "string", "backup_timestamp": "string (ISO 8601)", "custom_permissions_name": "string" }

Esquema de tabla de grupos:

{ "group_name": "string (clave de partición)", "arn": "string", "description": "string", "principal_id": "string", "members": ["lista de nombres de usuarios"], "backup_timestamp": "string (ISO 8601)" }

Esquema de la tabla de membresía de grupos de usuarios:

{ "membership_id": "string (clave de partición, formato: nombre de usuario#nombredegrupo)", "user_name": "string", "group_name": "string", "user_arn": "string", "group_arn": "string", "backup_timestamp": "string (ISO 8601)" }

Nota: El servicio de copia de seguridad de usuarios y grupos implementa soporte de doble región. Las operaciones de usuarios y grupos utilizan el parámetro de configuración identidad_región, mientras que las operaciones de activos de respaldo utilizan el estándar aws_region. Este diseño aborda escenarios empresariales donde la administración de identidades Quick Sight está configurada en una región diferente a la del almacenamiento de activos.

Copia de seguridad de activos

El servicio de copia de seguridad del paquete de activos coordina la exportación de activos dentro de una región y carga el paquete generado en una ubicación de Amazon S3 para su uso posterior. La automatización realiza una copia de seguridad de los siguientes activos: fuentes de datos, conjuntos de datos, análisis, paneles y temas. De forma predeterminada, la copia de seguridad incluye todas las dependencias. Puede desactivar esta configuración si es necesario.

A alto nivel, el servicio realiza las siguientes tareas:

Enumera todas las fuentes de datos que utilizan la API ListDataSources y filtra las fuentes de datos basadas en manifiestos de Amazon S3 y las fuentes de datos con nombres de conexión de VPC no válidos. Los nombres deben contener únicamente caracteres alfanuméricos separados por guiones. Enumera todos los conjuntos de datos utilizando la API ListDataSets, filtrando los conjuntos de datos ARCHIVO marcando el campo ImportMode. Enumera todos los análisis que utilizan la API ListAnalyses. Enumera todos los paneles que utilizan la API ListDashboards. Agrupa activos por tipo para trabajos de exportación separados. Puede configurar la cantidad de activos que se incluirán en cada paquete, con un máximo de 100 (el límite de API). Comprueba el estado del trabajo de exportación mediante la API DescribeAssetBundleExportJob e implementa un retroceso exponencial para evitar la limitación. Carga el paquete de activos completo en Amazon S3 utilizando la siguiente estructura de prefijo.

my-QuickSight-backups/ └── QuickSight-backups/ # Prefijo S3 personalizado ├── 2024/01/15/ │ ├── datasources/ │ │ ├── datasources-143022.zip # Paquete único (≤ max_assets_per_bundle) │ │ └── datasources_bundle_1-143045.zip # Múltiples paquetes cuando los activos exceden el límite │ ├── datasets/ │ │ ├── datasets_bundle_1-143045.zip # Múltiples paquetes cuando los activos exceder el límite │ │ └── datasets_bundle_2-143045.zip # Numeración secuencial para múltiples paquetes │ ├── análisis/ │ │ └── análisis-143108.zip # Paquete único │ └── paneles/ │ ├── paneles_bundle_1-143131.zip # Primero de varios paquetes de paneles │ └── paneles_bundle_2-143131.zip # Segundo paquete de paneles └── 2024/01/16/ ├── fuentes de datos/ │ └── fuentes de datos-090015.zip ├── conjuntos de datos/ │ └── conjuntos de datos-090030.zip └── …

Nota: La cadena de número de paquete está presente solo cuando la cantidad de activos a respaldar excede el valor configurado en max_assets_per_bundle.

Herramienta integral para la creación de copias de seguridad

La herramienta de copia de seguridad QuickSight proporciona una forma sencilla de exportar todos sus activos de Quick Sight y sus dependencias a un almacenamiento duradero y económico como Amazon S3. La herramienta crea nuevos prefijos para los paquetes generados, por lo que las copias de seguridad anteriores no se sobrescriben. La herramienta también exporta usuarios y grupos utilizando el mismo principio: DynamoDB almacena estos datos y los nombres de las tablas contienen la fecha en que se generó la copia de seguridad. Con este enfoque, puede utilizar copias de seguridad como fuente para su estrategia de recuperación y realizar un seguimiento del historial de cambios en sus activos de Quick Sight y usuarios asociados.

El código utiliza el SDK de Boto3 Python e incluye soporte de empaquetado a través de herramientas de configuración para su configuración y uso.

Uso y configuración de herramientas.

Antes de utilizar la herramienta, asegúrese de cumplir con los siguientes requisitos previos:

Python 3.8 o superior. Una cuenta Quick Sight con edición Enterprise o superior. Interfaz de línea de comandos de AWS (AWS CLI) configurada con las credenciales adecuadas. Permisos de AWS necesarios. Consulte la sección Permisos en el código.

Clonar desde fuente

clon de git https://github.com/aws-samples/sample-quicksight-backup-tool.git cd quicksight-backup-tool

Crear un venv de Python (recomendado)

python3 -m venv ./.venv fuente .venv/bin/activate

Instalar el paquete

Crear un archivo de configuración

Para comenzar, consulte el archivo config-basic.yaml en el repositorio o cree uno desde cero. Este archivo de configuración define parámetros clave para la herramienta, incluidos los siguientes:

Cuenta de AWS. Región. Ubicaciones de copia de seguridad (tablas de DynamoDB y prefijos de depósitos de Amazon S3).

Usando la herramienta

Después de la instalación, puede ejecutar la herramienta de la siguiente manera:

copia de seguridad rápida –config config.yaml –modo completo

Solo necesita proporcionar el parámetro –config. Puedes omitir el resto. El parámetro –mode controla el tipo de copia de seguridad (completa, solo para usuarios o solo para activos), donde completa es el modo predeterminado. La siguiente lista describe los argumentos que admite la herramienta.

Argumentos opcionales

–mode, -m: modo de copia de seguridad (completa, solo para usuarios, solo para activos); El valor predeterminado está lleno. –output-dir, -o: directorio de salida para informes y manifiestos. –verbose, -v: habilita el registro detallado (DEBUG). –log-file: Ruta al archivo de registro. –dry-run: Valida la configuración sin ejecutar la copia de seguridad. –no-progreso: Desactiva los indicadores de progreso. –generate-manifest: genera un archivo de manifiesto de respaldo. –generate-report: genera un informe de respaldo legible por humanos. –version: muestra información de la versión.

Para obtener más información, consulte el archivo README de la herramienta.

Código de herramienta

Puede encontrar el código de esta herramienta en el repositorio de aws-samples. Esta herramienta le ayuda a empezar rápidamente. Úselo como referencia fundamental para perfeccionarlo y adaptarlo a sus requisitos de respaldo específicos.

Antes de implementar una solución de respaldo en su entorno de producción, confirme que:

Revise y adapte el código para alinearlo con sus requisitos de infraestructura específicos, políticas de seguridad y estándares de cumplimiento. Realice pruebas exhaustivas en un entorno que no sea de producción para validar la funcionalidad y el rendimiento. Implemente controles de seguridad adecuados que incluyan cifrado, gestión de acceso y registro de auditoría requeridos por su organización. Valide los procedimientos de recuperación para confirmar que su estrategia de respaldo cumpla con sus objetivos de tiempo de recuperación (RTO) y objetivos de punto de recuperación (RPO) definidos. Considere estrategias de optimización de costos y monitoreo para mantener la solución dentro de su presupuesto operativo. Evite la ejecución simultánea de herramientas: esta herramienta se basa en las API AssetsAsBundle, que tienen umbrales de limitación bajos. La herramienta de muestra no está diseñada para ejecutar varias instancias en paralelo dentro de la misma cuenta de AWS. Si varios equipos necesitan usar la herramienta, considere implementar un mecanismo de control de concurrencia (por ejemplo, una tabla de bloqueo en DynamoDB o un bloqueo a nivel de base de datos) para evitar ejecuciones simultáneas que podrían desencadenar la limitación de API.

Ejecución programada

La herramienta de ejemplo descrita en la sección anterior está diseñada para ejecución bajo demanda y es muy adecuada para comenzar o ejecutar copias de seguridad ad hoc. Para una estrategia de respaldo de nivel de producción, es posible que desee automatizar las ejecuciones de respaldo en un cronograma recurrente para que sus activos de Quick Sight estén protegidos constantemente sin intervención manual.

Esta sección describe la arquitectura de alto nivel para una solución de respaldo programada y totalmente automatizada. La implementación detallada y el código para esta arquitectura están fuera del alcance de esta publicación.

Descripción general de la arquitectura

La arquitectura de ejecución programada se basa en tres servicios administrados de AWS que trabajan juntos para proporcionar un proceso de automatización confiable, sin servidor y rentable:

Amazon EventBridge es el programador. Activa el flujo de trabajo de respaldo con una cadencia definida, por ejemplo, diariamente a medianoche. Las reglas de EventBridge le permiten definir programaciones flexibles basadas en cron o en tarifas sin administrar ninguna infraestructura subyacente. AWS Step Functions es la capa de orquestación. Coordina la ejecución de los pasos de respaldo individuales en la secuencia correcta. Step Functions proporciona manejo de errores integrado, lógica de reintento e historial de ejecución, lo que lo hace muy adecuado para flujos de trabajo de larga duración que abarcan múltiples llamadas API y operaciones asincrónicas. AWS Lambda implementa cada paso de respaldo individual como una función independiente y sin estado. Dividir la lógica de respaldo en múltiples funciones Lambda soluciona las limitaciones de tiempo inherentes al proceso de respaldo. Cada trabajo de exportación es asincrónico y puede tardar varios minutos en finalizar, según la cantidad y el tamaño de los activos que se exportan.

Pasos del flujo de trabajo

Debido a que el proceso de copia de seguridad de un extremo a otro puede llevar una cantidad significativa de tiempo, la automatización se descompone en pasos discretos, cada uno implementado mediante una función Lambda dedicada. AWS Step Functions organiza estas funciones en secuencia, pasando estados entre ellas y manejando reintentos en caso de fallas transitorias. El flujo de trabajo consta de los siguientes pasos:

Copia de seguridad de usuarios y grupos: recupera todos los usuarios, grupos y membresías de grupos de Quick Sight mediante las API de identidad de Quick Sight y conserva los datos en DynamoDB con sufijos de tabla basados ​​en fechas, como se describe en la sección Implementación técnica. Esta operación se puede ejecutar en paralelo con las operaciones de copia de seguridad de activos porque no tiene ninguna dependencia. Descubrimiento de copia de seguridad de activos: enumera todos los activos de Quick Sight en la región de destino (fuentes de datos, conjuntos de datos, análisis y paneles), aplica los filtros necesarios para excluir tipos de activos no admitidos y agrupa los activos en listas de hasta 100 elementos cada una. El resultado de este paso se pasa a los pasos siguientes como entrada. Generar paquete: inicia trabajos de exportación para todos los activos incluidos en la lista especificada como parámetro de entrada, sondea la finalización del trabajo y carga los paquetes ZIP resultantes al prefijo de Amazon S3 designado. Verificar estado: sondea periódicamente la ejecución del paquete activo y notifica a la máquina de estado de AWS Step Functions cuando finaliza la exportación.

El siguiente diagrama ilustra el flujo de alto nivel de la arquitectura de ejecución programada.

Diagrama que muestra la arquitectura de ejecución programada con EventBridge que activa una máquina de estado de Step Functions que organiza funciones Lambda para copias de seguridad de usuarios y grupos, descubrimiento de copias de seguridad de activos, generación de paquetes y verificación de estado, con paquetes cargados en Amazon S3 y metadatos almacenados en DynamoDB.

Consideraciones clave de diseño

Sondeo asincrónico: la función Lambda de verificación de estado sondea el trabajo iniciado por la función Lambda de generación de paquete utilizando la API DescribeAssetBundleExportJob hasta que el trabajo alcanza un estado terminal (EXITOSO o FALLADO). La función Lambda de verificación de estado se ejecuta en un bucle con una condición de espera (por ejemplo, 30 segundos) entre llamadas. Paralelismo: configure un nivel adecuado de paralelismo para controlar el volumen de llamadas API realizadas por los pasos de su flujo de trabajo, especialmente en el paso generar paquete que llama a las API DescribeAssetBundleExportJob y StartAssetBundleExportJob, que tienen límites de tasa simultánea bajos. Puede utilizar el campo MaxConcurrency del estado del mapa en línea para limitar el número de ejecuciones simultáneas del paso generar paquete. Manejo de errores: Step Functions le permite definir bloques de captura y políticas de reintento en cada etapa. Un error en un paso (por ejemplo, un tipo de activo no compatible) no cancela toda la ejecución de la copia de seguridad. Costo: cuando la programación está habilitada, los costos aumentan con la frecuencia de respaldo y el período de retención. Para obtener orientación sobre cómo estimar los costos de almacenamiento, consulte la sección Estimación de costos.

Estimación de costos

Las siguientes secciones estiman los costos de ejecutar la herramienta de respaldo en Amazon S3 (para paquetes de activos) y DynamoDB (para metadatos de usuarios y grupos).

Amazon S3: almacenamiento de paquetes de activos

Los paquetes de recursos son archivos ZIP comprimidos que se cargan en Amazon S3 después de cada trabajo de exportación. Según el diseño de la solución, cada paquete de hasta 100 activos tiene un promedio de aproximadamente 500 KB cuando se comprime.

Conclusión clave: los costos de almacenamiento de Amazon S3 para paquetes de activos son mínimos. Incluso para implementaciones Quick Sight muy grandes con miles de activos, el tamaño del paquete comprimido permanece en el rango bajo de megabytes, lo que resulta en un costo de almacenamiento mensual muy por debajo de $0,01.

Amazon DynamoDB: almacenamiento de metadatos de usuarios y grupos

La información de usuarios y grupos se almacena en tablas de DynamoDB con sufijos basados ​​en fechas para preservar el historial de copias de seguridad. El almacenamiento de DynamoDB tiene un precio de aproximadamente 0,25 dólares por GB al mes (clase de tabla estándar, modo bajo demanda).

Cada elemento almacenado en DynamoDB representa una única definición de usuario o grupo (incluidos todos los atributos asociados, como ARN, correo electrónico, rol, pertenencia a grupos y marca de tiempo de copia de seguridad). Según el esquema descrito en esta publicación, el tamaño promedio de un elemento es de aproximadamente 256 KB.

Puede utilizar esta fórmula para estimar el tamaño de sus tablas de DynamoDB:

Estimación del tamaño de la tabla = Número de elementos × Tamaño promedio de los elementos (256 KB)

Conclusión clave: para las organizaciones pequeñas y medianas, los costos de almacenamiento de DynamoDB siguen siendo mínimos (menos de $0,10 por mes por instantánea de respaldo). Para las grandes organizaciones con decenas de miles de usuarios, los costos siguen siendo modestos, en el rango bajo de un solo dígito por instantánea.

Resumen

Para una única ejecución de respaldo no programada, el costo total de AWS es efectivamente cercano a cero, dominado por unos pocos centavos de almacenamiento de Amazon S3 y DynamoDB como máximo. Si implementa copias de seguridad programadas (que se tratan en la sección Ejecución programada), los costos aumentan linealmente con la frecuencia de las copias de seguridad y el período de retención. Incluso con las copias de seguridad diarias retenidas durante 90 días, los costos totales de almacenamiento permanecen en el rango bajo de un solo dígito en dólares para la mayoría de las implementaciones. Considere la posibilidad de utilizar políticas de ciclo de vida de Amazon S3 y DynamoDB Standard-IA para optimizar los costos a medida que crece su historial de respaldo.

Conclusión

En esta publicación, cubrimos cómo diseñar e implementar una estrategia de respaldo integral para los activos de Amazon Quick Sight para que pueda mantener la continuidad del negocio, cumplir con los requisitos regulatorios y protegerse contra la pérdida de datos.

Cubrimos cómo utilizar las API AssetsAsBundle para exportar y preservar mediante programación activos de BI críticos, incluidos paneles, análisis, conjuntos de datos y fuentes de datos, junto con sus dependencias y permisos. Para ayudarlo a comenzar, esta publicación incluye una herramienta de automatización de muestra que puede probar y adaptar a las necesidades de su organización. El código organiza estas API, almacena paquetes de activos en Amazon S3 y conserva la información de usuarios y grupos en DynamoDB para una recuperación en un momento dado.

¿Listo para proteger sus activos de Quick Sight BI? Comience hoy clonando la herramienta de copia de seguridad de muestra del repositorio de muestras de AWS y probándola en su entorno que no es de producción. Comience con una configuración simple para realizar copias de seguridad de sus paneles más importantes y luego amplíe a una estrategia de copia de seguridad lista para producción a medida que valide el proceso. Para obtener más información sobre Amazon Quick Sight, consulte la Guía del usuario de Amazon Quick Sight.

Sobre el autor

Enrique Salgado Hernández

Enrique Salgado Hernández

Enrique Salgado Hernández es Arquitecto Senior de Soluciones Especialista en AWS con más de 10 años de experiencia trabajando en la nube. Se especializa en diseñar e implementar arquitecturas analíticas a gran escala en varios sectores industriales. Le apasiona trabajar con los clientes para resolver sus problemas apoyándolos durante su viaje a la nube.