Logotipo de Zephyrnet

Mida la adopción de sus tableros de Amazon QuickSight y vea su cartera de BI en un solo panel de vidrio

Fecha:

Amazon QuickSight es un servicio de inteligencia empresarial (BI) nativo de la nube totalmente administrado. Si planea implementar tableros QuickSight de nivel empresarial, medir la adopción de los usuarios y los patrones de uso es un ingrediente importante para el éxito de su inversión en BI. Por ejemplo, conocer los patrones de uso, como la ubicación geográfica, el departamento y la función laboral, puede ayudarlo a ajustar sus paneles para la audiencia adecuada. Además, para recuperar la inversión de su cartera de BI, con el uso del tablero, puede reducir los costos de licencia al identificar a los autores inactivos de QuickSight.

En esta publicación, presentamos las últimas Consola de administración, una solución empaquetada de AWS que puede implementar y usar fácilmente para crear un panel de uso e inventario para sus activos de QuickSight. La Consola de administración ayuda a identificar patrones de uso de un usuario individual y paneles. También puede ayudarlo a realizar un seguimiento de los paneles y grupos a los que tiene o necesita acceso, y qué puede hacer con ese acceso, proporcionando más detalles sobre los permisos y actividades de grupos y usuarios de QuickSight y los permisos de activos de QuickSight (paneles, análisis y conjuntos de datos). . Con acceso oportuno a las métricas de uso interactivo, la Consola de administración puede ayudar a los líderes y administradores de BI a elaborar un plan rentable para las mejoras del tablero. Otro caso de uso común de este tablero es proporcionar un depósito centralizado de los activos de QuickSight. Los artefactos de QuickSight constan de varios tipos de activos (paneles, análisis, conjuntos de datos y más) con dependencias entre ellos. Tener un único repositorio para ver todos los activos y sus dependencias puede ser un elemento importante en el diccionario de datos de su empresa.

Esta publicación demuestra cómo crear la Consola de administración mediante una canalización de datos sin servidor. Con conocimientos básicos de AWS, puede crear esta solución en su propio entorno en una hora. Alternativamente, puede profundizar en el código fuente para satisfacer sus necesidades específicas.

Panel de control de la consola de administración

La siguiente animación muestra el contenido de nuestro tablero de demostración.

El panel de la consola de administración incluye seis hojas:

  • Landing Page – Proporciona desglose en cada pestaña detallada.
  • Análisis de usuario – Proporciona un análisis detallado del comportamiento del usuario e identifica usuarios y autores activos e inactivos.
  • Análisis de tablero – Muestra los tableros más vistos.
  • Permisos de acceso a activos – Proporciona información sobre los permisos aplicados a cada activo, como tablero, análisis, conjuntos de datos, fuente de datos y temas.
  • Diccionario de datos - Proporciona información sobre las relaciones entre cada uno de sus activos, como qué análisis se utilizó para crear cada panel y qué conjuntos de datos y fuentes de datos se utilizan en cada análisis. También proporciona detalles sobre cada conjunto de datos, incluido el nombre del esquema, el nombre de la tabla, las columnas y más.
  • General – Proporciona instrucciones sobre cómo usar el tablero.

Puede jugar de forma interactiva con el panel de muestra de la siguiente manera Demostración del tablero interactivo.

Echemos un vistazo a Forwood Safety, una empresa innovadora impulsada por valores con un enfoque láser en la prevención de fatalidades. Uno de los primeros en adoptar QuickSight, colaboró ​​con AWS para implementar esta solución para recopilar información sobre el uso de aplicaciones de BI.

“A nuestros ingenieros les encanta esta solución de consola de administración”, dice Faye Crompton, líder de análisis y evaluación comparativa en Forwood. “Nos ayuda a comprender cómo los usuarios analizan los aprendizajes de control crítico al ayudarnos a identificar rápidamente los tableros visitados con más frecuencia en la herramienta de informes y análisis de autoservicio de Forwood, FAST”.

Resumen de la solución

El siguiente diagrama ilustra el flujo de trabajo de la solución.

El flujo de trabajo implica los siguientes pasos:

  1. El AWS Lambda función Data_Prepare está programado para ejecutarse cada hora. Esta función llama a las API de QuickSight para obtener información sobre los permisos de acceso al espacio de nombres, el grupo, el usuario y los activos de QuickSight.
  2. La función Lambda Dataset_Info está programado para ejecutarse cada hora. Esta función llama a las API de QuickSight para obtener información sobre el tablero, el análisis, el conjunto de datos y la fuente de datos.
  3. Ambas funciones guardan los resultados en un Servicio de almacenamiento simple de Amazon (Amazon S3) cubo.
  4. Seguimiento de la nube de AWS los registros se almacenan en un depósito S3.
  5. Según el archivo de Amazon S3 que contiene información de grupos de usuarios, información de conjuntos de datos, información de permisos de acceso a recursos de QuickSight, así como vistas de tableros y eventos de inicio de sesión de usuarios de los registros de CloudTrail, cinco Atenea amazónica se crean tablas. Opcionalmente, el ingeniero de BI puede combinar estas tablas con tablas de información de empleados para mostrar información de recursos humanos de los usuarios.
  6. Cuatro conjuntos de datos de QuickSight obtienen los datos de las tablas de Athena creadas en el Paso 5 y los importan a SPICE. Luego, en función de estos conjuntos de datos, se crea un tablero de QuickSight.

Requisitos previos

Para este tutorial, debe tener los siguientes requisitos previos:

  • An Cuenta de AWS
  • Acceso a los siguientes servicios de AWS:
  • Conocimientos básicos de Python
  • Conocimientos básicos de SQL

Crear recursos de solución

Podemos crear todos los recursos necesarios para este tablero usando tres plantillas de CloudFormation: una para funciones de Lambda, otra para tablas de Athena y otra para objetos de QuickSight.

Plantilla de CloudFormation para funciones de Lambda

Esta plantilla crea las funciones de Lambda data_prepare y dataset_info.

  • Elige Pila de lanzamiento y siga los pasos para crear estos recursos.

Después de que la creación de la pila sea exitosa, tiene dos funciones Lambda, data_prepare y dataset_infoy un depósito de S3 llamado admin-console[AWS-account-ID]. Puede verificar si la función Lambda se puede ejecutar correctamente y si el group_membership, object_access, datasets_infoy data_dictionary las carpetas se crean en el depósito S3 en admin-console[AWS-account-ID]/monitoring/quicksight/, como se muestra en las siguientes capturas de pantalla.

El Data_Prepare La función Lambda está programada para ejecutarse cada hora con la regla admin-console-every-hour de CloudWatch Events. Esta función llama al API de activos de QuickSight para obtener información sobre los usuarios, los activos y los permisos de acceso de QuickSight. Finalmente, esta función crea dos archivos, group_membership.csv y object_access.csvy guarda estos archivos en un depósito de S3.

El Dataset_Info La función de Lambda está programada para ejecutarse cada hora y llama a las API de QuickSight Assets para obtener información sobre conjuntos de datos, esquemas, tablas y campos (columnas). Entonces esta función crea dos archivos, datasets_info.csv y data_dictionary.csvy guarda estos archivos en un depósito de S3.

  •  Crear un registro de CloudTrail si aún no tiene uno y anote el nombre del depósito S3 de los archivos de registro para uso futuro.
  •  Anote todos los recursos creados a partir de los pasos anteriores. Si el nombre del depósito de S3 para el registro de CloudTrail del paso 2 es diferente al de la salida del paso 1, use el depósito de S3 del paso 2.

La siguiente tabla resume las claves y los valores que usa al crear las tablas de Athena con la siguiente pila de CloudFormation.

Clave Valor Descripción
registro de la nube s3://cloudtrail-awslogs-[aws-account-id]-do-not-delete/AWSLogs/[aws-account-id]/CloudTrail La ubicación de Amazon S3 del registro de CloudTrail
nombre de la tabla de registro de nube cloudtrail_logs El nombre de la tabla del registro de CloudTrail
membresía de grupo s3://admin-console[aws-account-id]/monitoring/quicksight/group_membership La ubicación de Amazon S3 de group_membership.csv
acceso a objetos s3://admin-console[aws-account-id]/monitoring/quicksight/object_access La ubicación de Amazon S3 de object_access.csv
información del conjunto de datos s3://admin-console[aws-account-id]/monitoring/quicksight/datsets_info La ubicación de Amazon S3 de datsets_info.csv
dictado de datos s3://admin-console[aws-account-id]/monitoring/quicksight/data_dictionary La ubicación de Amazon S3 de data_dictionary.csv

Plantilla de CloudFormation para tablas de Athena

Para crear sus tablas de Athena, complete los siguientes pasos:

  • Descargue lo siguiente Archivo JSON.
  • Edite el archivo y reemplace los campos correspondientes con las claves y valores que anotó en la sección anterior.

Por ejemplo, busque la groupmembership palabra clave.

Luego reemplace el valor de ubicación con la ubicación de Amazon S3 para el groupmembership carpeta.

  • Cree tablas de Athena implementando este archivo editado como una plantilla de CloudFormation. Para obtener instrucciones, consulte ¡Empieza aquí!.

Después de una implementación exitosa, tiene una base de datos llamada admin-console creada en AwsDataCatalog en Athena y tres tablas en la base de datos: cloudtrail_logs, group_membership, object_access, datasets_info y data_dict

  • Confirme las tablas a través de la consola de Athena.

La siguiente captura de pantalla muestra datos de muestra del group_membership mesa.

La siguiente captura de pantalla muestra datos de muestra del object_access mesa.

Para obtener instrucciones sobre cómo crear una tabla de Athena con eventos de CloudTrail, consulte Amazon QuickSight ahora es compatible con el registro de auditoría con AWS CloudTrail. Para esta publicación, creamos la tabla. cloudtrail_logs en la base de datos predeterminada.

  • Después de crear las cinco tablas en Athena, vaya a los permisos de seguridad en la consola de QuickSight para habilitar el acceso al depósito para s3://admin-console[AWS-account-ID] and s3://cloudtrail-awslogs-[aws-account-id]-do-not-delete.
  • Habilite el acceso a Athena en Seguridad y permisos.

Ahora QuickSight puede acceder a las cinco mesas a través de Athena.

Plantilla de CloudFormation para objetos QuickSight

Para crear los objetos QuickSight, complete los siguientes pasos:

  • Elige Pila de lanzamiento para crear los conjuntos de datos y el tablero de QuickSight:

  • Proporcione el ARN que anotó anteriormente.

Después de una implementación exitosa, cuatro conjuntos de datos llamados Admin-Console-Group-Membership, Admin-Console-dataset-info, Admin-Console-Object-Accessy Admin-Console-CFN-Main se crean y tiene el tablero llamado admin-console-dashboard. Si prefiere modificar el tablero, use la opción Guardar como del tablero, luego vuelva a crear el análisis, realice modificaciones y publique un nuevo tablero.

  • Establezca su programa de actualización de SPICE preferido para los cuatro conjuntos de datos de SPICE y comparta el tablero en su organización según sea necesario.

Demostración del panel

La siguiente captura de pantalla muestra la Consola de administración Landing page.

La siguiente captura de pantalla muestra el Análisis de usuario hoja.

La siguiente captura de pantalla muestra el Análisis de cuadros de mando hoja.

La siguiente captura de pantalla muestra el Permisos de acceso hoja.

La siguiente captura de pantalla muestra el Diccionario de Datos hoja.

La siguiente captura de pantalla muestra el General hoja.

Puede jugar de forma interactiva con el panel de muestra de la siguiente manera Demostración del tablero interactivo.

Puede hacer referencia a la plantilla pública del panel anterior en create-template, create-analysis, y create-dashboard Llamadas API para crear este tablero y análisis en su cuenta. La plantilla pública de este tablero con el ARN de la plantilla es 'TemplateArn': 'arn:aws:quicksight:us-east-1:889399602426:template/admin-console'.

Consejos y trucos.

Estos son algunos consejos y trucos avanzados para crear el tablero como Consola de administración para analizar las métricas de uso. Los siguientes pasos se basan en el conjunto de datos admin_console. Puede aplicar la misma lógica para crear los campos calculados para analizar las actividades de inicio de sesión del usuario.

  • Crear parámetros – Por ejemplo, podemos crear un parámetro llamado InActivityMonths, como en la siguiente captura de pantalla. Del mismo modo, podemos crear otros parámetros como InActivityDays, Start Date y End Date.

  • Crear controles basados ​​en los parámetros. – En la siguiente captura de pantalla, creamos controles basados ​​en la fecha de inicio y finalización.

  • Crear campos calculados – Por ejemplo, podemos crear un campo calculado para detectar el estado activo o inactivo de los autores de QuickSight. Si el lapso de tiempo entre la última actividad del tablero de vista y ahora es mayor o igual al número definido en el control Meses de inactividad, el estado del autor es Inactivo. La siguiente captura de pantalla muestra el código relevante. De acuerdo con los requisitos del usuario final, podemos definir varios campos calculados para realizar el análisis.

  • Crear imágenes – Por ejemplo, creamos una perspectiva para mostrar las tres vistas principales del tablero por lector y una imagen para mostrar los autores de estos tableros.

  • Agregar acciones de URL – Puede agregar una acción de URL para definir algunas funciones adicionales para enviar correos electrónicos a autores inactivos o verificar los detalles de los usuarios.

El siguiente código de muestra define la acción para enviar un correo electrónico a los autores inactivos:

mailto:<>?subject=¡Alerta a autor inactivo! &body=Hola, <>, cualquier autor sin actividad durante más de un mes será eliminado. ¡Inicie sesión en su cuenta de QuickSight para continuar accediendo y creando análisis y tableros!

Limpiar

Para evitar incurrir en cargos futuros, elimine todos los recursos que creó con las plantillas de CloudFormation.

Conclusión

Esta publicación discutió cómo los administradores de BI pueden usar QuickSight, CloudTrail y otros servicios de AWS para crear una vista centralizada para analizar las métricas de uso de QuickSight. También presentamos una canalización de datos sin servidor para admitir el panel de la consola de administración.

Si desea tener una demostración, por favor email con nosotros.

Apéndice

Podemos realizar algunos análisis sofisticados adicionales para recopilar métricas de uso avanzadas. Por ejemplo, Forwood Safety presentó una solicitud única para analizar a los lectores que inician sesión pero no ven ninguna acción del tablero (consulte el siguiente código). Esto ayuda a sus clientes a identificar y evitar el desperdicio de tarifas de sesiones de lectura. Los equipos de liderazgo valoran la capacidad de minimizar la actividad no económica de los usuarios.

CREATE OR REPLACE VIEW "loginwithoutviewdashboard" AS
with login as
(SELECT COALESCE("useridentity"."username", "split_part"("useridentity"."arn", '/', 3)) AS "user_name", awsregion,
date_parse(eventtime, '%Y-%m-%dT%H:%i:%sZ') AS event_time
FROM cloudtrail_logs
WHERE
eventname = 'AssumeRoleWithSAML'
GROUP BY  1,2,3),
dashboard as
(SELECT COALESCE("useridentity"."username", "split_part"("useridentity"."arn", '/', 3)) AS "user_name", awsregion,
date_parse(eventtime, '%Y-%m-%dT%H:%i:%sZ') AS event_time
FROM cloudtrail_logs
WHERE
eventsource = 'quicksight.amazonaws.com'
AND
eventname = 'GetDashboard'
GROUP BY  1,2,3),
users as 
(select Namespace,
Group,
User,
(case
when Group in (‘quicksight-fed-bi-developer’, ‘quicksight-fed-bi-admin’)
then ‘Author’
else ‘Reader’
end)
as author_status
from "group_membership" )
select l.* 
from login as l 
join dashboard as d 
join users as u 
on l.user_name=d.user_name 
and 
l.awsregion=d.awsregion 
and 
l.user_name=u.user_name
where d.event_time>(l.event_time + interval '30' minute ) 
and 
d.event_time<l.event_time 
and 
u.author_status='Reader'


Acerca de los autores

ying wang es Gerente de Ingeniería de Desarrollo de Software. Tiene 12 años de experiencia en análisis de datos y ciencia. Ayudó a los clientes con soluciones de arquitectura de datos empresariales para escalar sus análisis de datos en la nube durante su tiempo como arquitecta de datos. Actualmente, ayuda al cliente a desbloquear el poder de los datos con QuickSight desde la ingeniería mediante la entrega de nuevas funciones.

Ian Liao es arquitecto sénior de visualización de datos en AWS Professional Services. Antes de AWS, Ian pasó años construyendo nuevas empresas en datos y análisis. Ahora disfruta ayudar al cliente a escalar su aplicación de datos en la nube.

Maitri Brahmhatt es ingeniero de inteligencia empresarial en AWS. Ayuda a los clientes y socios a aprovechar sus datos para obtener información sobre su negocio y tomar decisiones basadas en datos mediante el desarrollo de paneles QuickSight.

punto_img

Información más reciente

punto_img