Blog de Amazon Web Services (AWS)

Cree tableros en Microsoft Power BI utilizando el conector de Amazon Athena

Por Lesly Reyes, Telco Specialist Solutions Architect

 

Amazon Athena permite realizar consultas interactivas sobre datos almacenados en Amazon S3 mediante el estándar SQL. Una de las características de Athena es que solo se paga por las consultas que ejecuta, debido a que no utiliza servidor por lo que no es necesario desplegar infraestructura para visualizar sus datos.

Amazon Athena utiliza Presto con compatibilidad con ANSI SQL y admite una variedad de formatos de datos estándar, incluidos CSV, JSON, ORC, Avro y Parquet. Athena proporciona un rendimiento interactivo incluso en conjuntos de datos grandes debido a que ejecuta consultas de manera simultánea. Amazon Athena usa Amazon S3 como almacén de datos subyacente, por lo que sus datos tienen altos niveles de disponibilidad, durabilidad y además no conlleva cargos de almacenamiento adicionales.

Existen diferentes herramientas de visualización para consultar sus datos almacenados en vistas de Athena como Amazon QuickSight, Microsoft Power BI, Tableau, entre otros. Amazon QuickSight es un servicio de inteligencia de negocios (BI) nativo de la nube, fácil de usar en cualquier dispositivo y en cualquier momento.  QuickSight se utiliza para analizar datos visualmente, compartir paneles interactivos con todos los usuarios de su organización. Amazon QuickSight permite combinar distintas fuentes de datos para crear modelos de datos complejos. QuickSight es un servicio que no requiere servidor y para escalar la exploración de datos a miles de usuario usa su almacenamiento de memoria llamado SPICE. El uso de Amazon QuickSight en conjunto con Athena le permite acelerar la implementación de paneles personalizados sin preocuparse por proveer o administrar infraestructura compleja.

Microsoft Power BI le permite analizar sus datos de manera similar. Antes del lanzamiento del conector de Amazon Athena era necesario descargar todos los datos de forma local, generando una duplicación de los datos en la nube y en las computadoras de los usuarios o la descarga de datos parciales limitando a los usuarios en sus análisis.

Gracias al conector de Amazon Athena se puede crear análisis en el entorno local sin generar duplicados ni perder datos por falta de capacidad en la computadora dado que se pueden realizar consultas directas a las vistas de Athena sin necesidad de importar todos los datos.

En esta publicación, demostramos cómo instalar y configurar el conector de Amazon Athena para consultar y visualizar los datos en Microsoft Power BI.

 

Requisitos

Para comenzar a crear tableros en Microsoft Powe BI es necesario cumplir con los siguientes requisitos.

En las siguientes secciones se demostrará cómo crear e instalar cada componente en el ambiente de la nube de AWS.

 

Clave de acceso programático

Una clave acceso concede acceso programático a sus recursos. El acceso programático es un tipo de acceso desde la interfaz de línea de comandos de AWS utilizado por los desarrolladores. Es necesario para configurar el controlador ODBC de Amazon Athena contar con una clave de acceso programático, se recomienda rotar las claves por periodos de tiempo para mayor seguridad. Además, como prática recomendada, utilice claves temporales (roles de IAM) en vez de claves de acceso, para obtener más información, consulte Prácticas recomendadas para administrar claves de acceso.

Para crear la clave de acceso debe iniciar sesión en la consola de IAM, en la barra de navegación se debe seleccionar Usuarios y crear nuevo usuario. Cuando cree el par de claves de acceso Power_BI_User, guarde el ID de clave de acceso y la clave de acceso secreta en un lugar seguro. La clave de acceso secreta solo está disponible en el momento de su creación. Si pierde su clave de acceso secreta, debe eliminar la clave de acceso y crear una nueva.

 

 

Permisos para utilizar Amazon Athena

Para acceder a los datos de las vistas de Amazon Athena a través del conector de ODBC es necesario contar con permisos de acceso del servicio de Amazon Athena y de los ficheros de S3 donde están almacenados los datos. Se debe asegurar que el conjunto de permisos del usuario de IAM Power_BI_User incluya todas las acciones enumeradas en la política administrada AmazonQuicksightAthenaAccess. Se hace uso de esta política porque contiene todos los permisos para usar una herramienta de inteligencia de negocios como Amazon QuickSight y Microsoft Power BI.

 

Conjunto de permisos de la política administrada

La política AWSQuicksightAthenaAccess se agrupa en los siguientes conjuntos de permisos.

  • Athena: permite al usuario ejecutar consultas en los recursos de Athena.
  • Glue: permite al usuario acceder a las bases de datos, tablas y particiones de AWS Glue. Esto es necesario para que el usuario Power_BI_User pueda utilizar el Catálogo de datos de AWS Glue con Athena.
  • S3: permite al usuario escribir y leer los resultados de las consultas de los ficheros de Amazon S3.

 

Código de ejemplo política de IAM

{

"Version": "2012-10-17",

"Statement": [

{

"Effect": "Allow",

"Action": [

"athena:BatchGetQueryExecution",

"athena:GetQueryExecution",

"athena:GetQueryResults",

"athena:GetQueryResultsStream",

"athena:ListQueryExecutions",

"athena:StartQueryExecution",

"athena:StopQueryExecution",

"athena:ListWorkGroups",

"athena:ListEngineVersions",

"athena:GetWorkGroup",

"athena:GetDataCatalog",

"athena:GetDatabase",

"athena:GetTableMetadata",

"athena:ListDataCatalogs",

"athena:ListDatabases",

"athena:ListTableMetadata"

],

"Resource": [

"*"

]

},

{

"Effect": "Allow",

"Action": [

"glue:CreateDatabase",

"glue:DeleteDatabase",

"glue:GetDatabase",

"glue:GetDatabases",

"glue:UpdateDatabase",

"glue:CreateTable",

"glue:DeleteTable",

"glue:BatchDeleteTable",

"glue:UpdateTable",

"glue:GetTable",

"glue:GetTables",

"glue:BatchCreatePartition",

"glue:CreatePartition",

"glue:DeletePartition",

"glue:BatchDeletePartition",

"glue:UpdatePartition",

"glue:GetPartition",

"glue:GetPartitions",

"glue:BatchGetPartition"

],

"Resource": [

"*"

]

},

{

"Effect": "Allow",

"Action": [

"s3:GetBucketLocation",

"s3:GetObject",

"s3:ListBucket",

"s3:ListBucketMultipartUploads",

"s3:ListMultipartUploadParts",

"s3:AbortMultipartUpload",

"s3:CreateBucket",

"s3:PutObject",

"s3:PutBucketPublicAccessBlock"

],

"Resource": [

"arn:aws:s3:::aws-athena-query-results-*"

]

},

{

"Effect": "Allow",

"Action": [

"lakeformation:GetDataAccess"

],

"Resource": [

"*"

]

}

]

}

 

 

Puede incluir directamente en los permisos del usuario de IAM Power_BI_User la política administrada desde la consola de IAM, como se muestra en la siguiente imagen.

 

Siempre que utilice políticas de IAM, asegúrese de seguir mejores prácticas de seguridad en IAM en la Guía del usuario de IAM.

Los controladores de Athena JDBC Y ODBC admiten la autenticación basada en SAML 2.0. Los siguientes proveedores de identidad estan incluidos en este método de autenticación: Servicio de Federación de Directorio Activo (ADFS), Azure Directorio Activo (AD), entre otros.

 

Conectar Power BI con el controlador ODBC Amazon Athena

Debe descargar el acuerdo de licencia del controlador ODBC de Amazon Athena, los controladores ODBC y la documentación de ODBC. Para obtener información sobre la cadena de conexión ODBC, consulte el archivo PDF de la Guía de instalación y configuración del controlador ODBC, que se puede descargar desde esta página.

 

Configuración del conector de ODBC Amazon Athena de Magnitude Simba

El conector Simba Amazon Athena ODBC permite a las organizaciones conectar sus herramientas de inteligencia de negocios al servicio de consultas de Amazon Athena. El conector recupera los metadatos del catálogo de AthenaAPI. El conector cumple con el estándar de datos ODBC 3.80, incluida la funcionalidad de Unicode y compatibilidad con 32 y 64 bits para entornos informáticos de alto rendimiento en todas las plataformas.

ODBC es una de las API más establecidas y con mayor soporte para conectarse y trabajar con bases de datos. El conector Simba Amazon Athena ODBC está disponible para las plataformas Windows, Linux y macOS.

Luego de instalar el conector ODBC de Simba Amazon Athena, es necesario crear Data source Name (DSN).  En el administrador de fuentes de datos ODBC, en la sección de controladores debe confirmar que el conector ODBC de Simba Amazon Athena aparece en la lista alfabética de conectores ODBC que están instalados en su sistema. Luego debe presionar la opción de crear, para la creación del DSN es necesario completar los siguientes datos en el formulario del administrador de Simba.

  • Región de AWS donde se desea conectar
  • Ubicación del fichero de S3 donde desea guardar los resultados de las consultas
  • Controlador ODBC Amazon Athena
  • Opciones de autenticación: con credenciales de IAM
    • Utilice la clave de acceso y la secreta de AWS en este formulario

Una vez completado el formulario se creará la fuente de datos llamaba Simba Athena que será visible desde el escritorio de Power BI.

 

Crear la conexión de Athena en Power BI

Para crear la conexión de Amazon Athena debe hacerlo desde el escritorio de Power BI. Una vez dentro del esritorio de Power BI seleccione obtener datos (en inglés Get Data), luego buscar en la fuente de datos Amazon Athena y presionar el botón de conectar.

 

 

En la siguiente ventana se le solicitará que escriba el nombre de su fuente de datos, escriba en la casilla Simba Athena o el nombre que se utilizó en el paso anterior para su DSN. Para el modo de conectividad de datos, elija un modo que sea apropiado para su caso de uso, siguiendo estas pautas generales:

  • Para conjuntos de datos más pequeños escoja importar los datos. Cuando se usa este modo Power BI importa todo el conjunto de datos a su computadora o EC2.
  • Para conjuntos de datos de gran tamaño, utilizar DirectQuery que realizará consultas directas a los datos almacenados en la nube. Este modo no descarga los datos en su estación de trabajo. Microsoft Power BI trabaja con Athena para consultar dinámicamente la fuente de datos subyacente para que siempre esté viendo los datos actuales.

 

 

Cuando se le solicite configurar la autenticación del origen de datos, seleccione usar configuración del origen de datos o Autenticación de AAD y luego presione conectar.

 

 

El catálogo de datos, como las vistas de Amazon Athena y sus bases datos estarán disponibles en la ventana de navegación de Microsoft Power BI.

 

 

Conclusión

En este artículo hemos visto que Amazon Athena es una excelente opción para analizar y crear vistas de datos en la nube. Amazon Athena se adapta a las herramientas de visualización de datos que utiliza el usuario y a las características de los datos, proporciona conexión directa con Amazon QuickSight y un controlador ODBC especializado para consultar o importar datos hacia Microsoft Power BI. En este artículo hemos visto paso a paso cómo configurar y utilizar el conector de Amazon Athena con la herramienta de inteligencia de negocios Power BI. Si desea optimizar sus consultas con Athena o profundizar en técnicas para explorar sus datos, este artículo proporciona una serie de consejos de optimización, además puede seguir aprendiendo consultando los blogs de AWS.

Puede probar Amazon Athena en las regiones US-East (Virginia del Norte) y US-West 2 (Oregón). Para obtener más información, consulte la página de productos de Amazon Athena o la Guía del usuario de Amazon Athena.

 


Acerca de la autora

Lesly Reyes es Arquitecta de Soluciones en Amazon Web Services para la vertical de telecomunicaciones con amplia experiencia en AI/ML.