|
Los lectores habituales de este blog y los clientes de AWS conocen los beneficios de la infraestructura como código (IaC). Le permite describir su infraestructura utilizando un lenguaje de programación para implementar su infraestructura de manera consistente en múltiples entornos o regiones de AWS. Otros beneficios son la posibilidad de controlar las versiones de su infraestructura usando las mismas herramientas de desarrollo y flujo de trabajo que usa para administrar el código fuente de su aplicación. IaC también ofrece la capacidad de validar mediante programación parte de la infraestructura antes de implementarla.
Hoy, estamos ampliando las capacidades de las API de QuickSight para permitir la creación y gestión programática de paneles, análisis y plantillas. Estas capacidades permiten que los equipos de BI administren sus activos de BI como código, similar a IaC. Brinda mayor agilidad a los equipos de BI y les permite acelerar las migraciones de BI desde productos heredados a través de opciones de migración programáticas.
La inteligencia comercial y las operaciones de TI (BIOps) se inspiran en las mejores prácticas aprendidas durante décadas de DevOps. BIOps permite una innovación más rápida para sus clientes, brindándoles información de datos rápidamente. Los tableros generalmente se desarrollan e implementan manualmente debido a la naturaleza basada en la interfaz de usuario de la creación de BI. Esto presenta un desafío para BIOps, ya que es posible que los cambios en los tableros durante las implementaciones no se validen por completo, lo que genera errores y tiempo de inactividad cuando los cambios se trasladan inadvertidamente a producción. Las nuevas API de QuickSight le permiten crear y modificar mediante programación sus análisis y paneles de QuickSight, activar el control de versiones de estos activos en su repositorio de código y ayudar a acelerar su migración a la nube de AWS.
La creación y administración programáticas de análisis, plantillas y tableros también lo ayudan a migrar activos de soluciones de BI más antiguas. Entre todas las cargas de trabajo de análisis y datos que se trasladan a la nube, la inteligencia empresarial tiende a estar entre las últimas piezas que se migran de las soluciones locales heredadas. Los equipos de BI a menudo tienen miles de informes y tableros personalizados, creados durante décadas, que son tediosos para migrar. La migración de estos informes lleva mucho tiempo, ya que los equipos de BI deben dedicar meses de trabajo a migrar cada uno de estos activos manualmente, uno por uno.
Terminología
Con este lanzamiento, QuickSight agrega una nueva describe
conjunto de API. También estamos actualizando los existentes create
, update
y list
verbos API. En conjunto, estas API nuevas y actualizadas le permiten trabajar con el modelo de datos de analiza, plantillasy tableros para el control de grano fino a través de API.
- Una vista rápida análisis es el espacio de trabajo fácil de usar para crear visualizaciones de datos, que son representaciones gráficas de sus datos. Cada análisis contiene una colección de visualizaciones que organiza y personaliza.
- Una vista rápida tablero le permite compartir visualizaciones interactivas o informes estáticos de un análisis con otros usuarios.
- Una vista rápida modelo es una entidad que encapsula los metadatos necesarios para crear un análisis o un tablero. Abstrae el conjunto de datos asociado con el análisis reemplazándolo con marcadores de posición.
Las nuevas API (DescribeAnalysisDefinition
, DescribeTemplateDefinition
, DescribeDashboardDefinition
) ahora permiten a los desarrolladores administrar todos los gráficos y componentes visuales admitidos.
Veámoslo en acción
Imaginemos que quiero crear mediante programación un análisis QuickSight.
La creación programática de un nuevo análisis de inteligencia empresarial es un proceso de tres pasos: crear el origen de datos que proporciona datos para los análisis, crear un conjunto de datos basado en el origen de datos y crear el análisis QuickSight.
El primer paso al usar QuickSight mediante programación o a través de la interfaz de usuario es definir sus fuentes de datos. Las fuentes de datos definen las propiedades de las bases de datos que tienen los datos que desea analizar. La creación y gestión de fuentes de datos mediante programación no es nueva. Puede consultar la página Operaciones de la API de QuickSight para controlar las fuentes de datos.
El segundo paso es crear el conjunto de datos para vincular una o varias fuentes de datos. Una vez más, la gestión programática de conjuntos de datos no es nueva.
Al usar el nuevo describe
La API, el análisis, los paneles y las plantillas se definen como objetos JSON totalmente modelados en el SDK de AWS. En esta demostración, uso la interfaz de línea de comandos (CLI) de AWS que usa objetos JSON. Cuando utiliza Java u otro SDK de AWS, puede manipular todos los elementos mediante programación.
La forma más fácil de comenzar a crear mediante programación un nuevo análisis o tablero es comenzar con la definición de uno existente que creó en la consola.
El tercer paso es crear el análisis. Primero llamo al describe-analysis-definition
API para describir un análisis existente. Recibo un archivo JSON que es la respuesta completa de la llamada API. Puedo inspeccionar y modificar el Definition
en el describe-analysis-definition
respuesta para crear un nuevo análisis.
aws quicksight describe-analysis-definition \
--aws-account-id 0123456789 \
--analysis-id linechart-kpi-donut-pivot
> ./AWS\ Blog\ Sample\ Code/linechart-kpi-donut-pivot.json
Nota: este archivo JSON no se puede usar directamente sin varias modificaciones como entrada al create
API.
Cuando estoy listo para crear un nuevo análisis, genero un archivo JSON usando el --generate-cli-skeleton
argumento. Luego copio el original o modificado Definition
objeto de mi llamada anterior a describe-analysis-definition
dentro create-sales-analysis.json
.
aws quicksight create-analysis \
--generate-cli-skeleton > create-sales-analysis.json
aws quicksight create-analysis \
--cli-input-json file://./AWS\ Blog\ Sample\ Code/create-sales-analysis.json
los Definition
El campo comparte la misma forma en todos los tableros, plantillas y análisis, por lo que el Definition
utilizado para crear nuestro análisis también se puede reutilizar para crear un nuevo tablero si lo desea con el create-dashboard
API.
aws quicksight create-dashboard \
--generate-cli-skeleton > create-dashboard.json
entonces puedo modificar create-dashboard.json
para incluir el Definition
de mi create-sales-analysis.json
archivo, así como actualizar otros parámetros, luego haga una llamada a create-dashboard
.
aws quicksight create-dashboard \
--cli-input-json file://./AWS\ Blog\ Sample\ Code/create-dashboard.json
Aquí hay un extracto del archivo JSON que utilicé.
Obviamente, desarrollar un tablero usando la API es un proceso iterativo. Aquí está el resultado después de varias iteraciones.
Puedo aplicar la misma técnica para migrar mediante programación activos de soluciones de BI más antiguas.
Precios y disponibilidad
La nueva API le permite definir su tablero de inteligencia comercial como objetos programables. Acelerará la migración desde herramientas de BI más antiguas. La página de documentación de la API de QuickSight tiene todos los detalles.
La API está disponible sin cargo adicional para todos los clientes de QuickSight Enterprise Edition en todas las regiones de AWS donde QuickSight está disponible. El soporte de AWS CloudFormation para los nuevos modelos de datos admitidos en estas API estará disponible próximamente.
¡Vaya a construir su primer panel programáticamente hoy!