Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Conector Google BigQuery de Amazon Athena

Modo de enfoque
Conector Google BigQuery de Amazon Athena - Amazon Athena

El conector de Google BigQuery de Amazon Athena permite que Amazon Athena ejecute consultas de SQL en los datos de Google BigQuery.

Este conector se puede registrar en el Catálogo de datos de Glue como un catálogo federado. Admite los controles de acceso a los datos definidos en Lake Formation a nivel de catálogo, base de datos, tabla, columna, fila y etiqueta. Este conector utiliza Conexiones de Glue para centralizar las propiedades de configuración en Glue.

Requisitos previos

Limitaciones

  • Las funciones de Lambda tienen un valor máximo de tiempo de espera de 15 minutos. Cada división ejecuta una consulta en BigQuery y debe finalizar con tiempo suficiente para almacenar los resultados para que Athena los lea. Si se agota el tiempo de espera de la función de Lambda, se produce un error en la consulta.

  • Google BigQuery distingue entre mayúsculas y minúsculas. El conector intenta corregir las mayúsculas y las minúsculas de los nombres del conjunto de datos, de las tablas y de los id. de proyectos. Esto es necesario porque Athena pone en minúsculas todos los metadatos. Estas correcciones hacen muchas llamadas adicionales a Google BigQuery.

  • Los tipos de datos binarios no son compatibles.

  • Debido a los límites de cuota y simultaneidad de Google BigQuery, el conector puede encontrar problemas con los límites de cuota de Google. Para evitar estos problemas, aplique tantas restricciones a Google BigQuery como sea posible. Para obtener información sobre cuotas de BigQuery, consulte Cuotas y límites en la documentación de Google BigQuery.

Parámetros

Utilice los parámetros de esta sección para configurar el conector Google BigQuery.

Glue connections (recommended)

Le recomendamos configurar un conector de Google BigQuery mediante un objeto de conexiones de Glue. Para ello, establezca la variable de entorno glue_connection del conector Lambda de Google BigQuery con el nombre de la conexión Glue que se va a utilizar.

Propiedades de las conexiones de Glue

Utilice el siguiente comando para obtener el esquema de un objeto de conexión de Glue. Este esquema contiene todos los parámetros que puede utilizar para controlar su conexión.

aws glue describe-connection-type --connection-type BIGQUERY

Propiedades del entorno de Lambda

glue_connection: especifica el nombre de la conexión Glue asociada al conector federado.

Legacy connections
nota

Los conectores de orígenes de datos de Athena creados a partir del 3 de diciembre de 2024 utilizan conexiones de AWS Glue.

Los nombres y definiciones de los parámetros que se indican a continuación corresponden a conectores de origen de datos de Athena creados sin una conexión Glue asociada. Utilice los siguientes parámetros únicamente cuando implemente de forma manual una versión anterior de un conector de origen de datos de Athena o cuando no se especifique la propiedad de entorno glue_connection.

Propiedades del entorno de Lambda

  • spill_bucket: especifica el bucket de Amazon S3 para los datos que superen los límites de la función de Lambda.

  • spill_prefix: (opcional) de forma predeterminada, se establece una subcarpeta en la carpeta especificada spill_bucket llamada athena-federation-spill. Le recomendamos configurar un ciclo de vida de almacenamiento de Amazon S3 en esta ubicación para eliminar vertidos de más de un número predeterminado de días u horas.

  • spill_put_request_headers: (opcional) un mapa codificado en JSON de encabezados y valores de solicitudes para la solicitud putObject de Amazon S3 que se usa para el vertidos (por ejemplo, {"x-amz-server-side-encryption" : "AES256"}). Para ver otros encabezados posibles, consulte PutObject en la referencia de la API de Amazon Simple Storage Service.

  • kms_key_id: (opcional) de forma predeterminada, los datos que se vierten a Amazon S3 se cifran mediante el modo de cifrado autenticado AES-GCM y una clave generada aleatoriamente. Para que la función de Lambda use claves de cifrado más seguras generadas por KMS, como a7e63k4b-8loc-40db-a2a1-4d0en2cd8331, puede especificar un ID de clave de KMS.

  • disable_spill_encryption: (opcional) cuando se establece en True, desactiva el cifrado del vertido. El valor predeterminado es False, de modo que los datos que se vierten a S3 se cifran mediante AES-GCM, ya sea mediante una clave generada aleatoriamente o KMS para generar claves. La desactivación del cifrado de vertido puede mejorar el rendimiento, especialmente si su ubicación de vertido usa cifrado del servidor.

  • gcp_project_id: el ID del proyecto, no el nombre del proyecto, que contiene los conjuntos de datos de los que debe leer el conector (por ejemplo, semiotic-primer-1234567).

  • secret_manager_gcp_creds_name: el nombre del secreto de AWS Secrets Manager que contiene sus credenciales de BigQuery en formato JSON (por ejemplo, GoogleCloudPlatformCredentials).

  • big_query_endpoint: (opcional) la URL de un punto de conexión privado de BigQuery. Use este parámetro cuando desee acceder a BigQuery a través de un punto de conexión privado.

Le recomendamos configurar un conector de Google BigQuery mediante un objeto de conexiones de Glue. Para ello, establezca la variable de entorno glue_connection del conector Lambda de Google BigQuery con el nombre de la conexión Glue que se va a utilizar.

Propiedades de las conexiones de Glue

Utilice el siguiente comando para obtener el esquema de un objeto de conexión de Glue. Este esquema contiene todos los parámetros que puede utilizar para controlar su conexión.

aws glue describe-connection-type --connection-type BIGQUERY

Propiedades del entorno de Lambda

glue_connection: especifica el nombre de la conexión Glue asociada al conector federado.

Divisiones y vistas

Como el conector de BigQuery usa la API de lectura de almacenamiento de BigQuery para consultar tablas y la API de almacenamiento de BigQuery no admite vistas, el conector usa el cliente de BigQuery con una sola división de vistas.

Rendimiento

Para consultar las tablas, el conector de BigQuery usa la API de lectura de almacenamiento de BigQuery, que utiliza un protocolo basado en RPC que proporciona un acceso rápido al almacenamiento administrado por BigQuery. Para obtener más información sobre la API de lectura de almacenamiento de BigQuery, consulte Cómo usar la API de lectura de almacenamiento de BigQuery para leer datos de tablas en la documentación de Google Cloud.

La selección de un subconjunto de columnas acelera significativamente el tiempo de ejecución de las consultas y reduce la cantidad de datos analizados. El conector está sujeto a errores de consulta a medida que aumenta la simultaneidad y, por lo general, es un conector lento.

El conector de Google BigQuery de Athena inserta predicados para reducir los datos analizados en la consulta. Las cláusulas LIMIT, las cláusulas ORDER BY, los predicados simples y las expresiones complejas se insertan en el conector para reducir la cantidad de datos analizados y disminuir el tiempo de ejecución de las consultas.

Cláusulas LIMIT

Una instrucción LIMIT N reduce los datos analizados en la consulta. Con la inserción LIMIT N, el conector devuelve solo las filas N a Athena.

Consultas N principales

Una consulta N principal especifica el orden del conjunto de resultados y un límite en la cantidad de filas devueltas. Puede usar este tipo de consulta para determinar los valores N principales máximos o N principales mínimos de sus conjuntos de datos. Con la inserción N principal, el conector devuelve solo las filas N ordenadas a Athena.

Predicados

Un predicado es una expresión de la cláusula WHERE de una consulta SQL que da como resultado un valor booleano y filtra las filas en función de varias condiciones. El conector de Google BigQuery de Athena puede combinar estas expresiones e insertarlas directamente en Google BigQuery para mejorar la funcionalidad y reducir la cantidad de datos analizados.

Los siguientes operadores del conector de Google BigQuery de Athena admiten la inserción de predicados:

  • Booleano: AND, OR, NOT.

  • Igualdad: EQUAL, NOT_EQUAL, LESS_THAN, LESS_THAN_OR_EQUAL, GREATER_THAN, GREATER_THAN_OR_EQUAL, IS_DISTINCT_FROM, NULL_IF, IS_NULL.

  • Aritmética: ADD, SUBTRACT, MULTIPLY, DIVIDE, MODULUS, NEGATE.

  • Otros: LIKE_PATTERN, IN.

Ejemplo de inserción combinada

Para mejorar las capacidades de consulta, combine los tipos de inserciones, como en el siguiente ejemplo:

SELECT * FROM my_table WHERE col_a > 10 AND ((col_a + col_b) > (col_c % col_d)) AND (col_e IN ('val1', 'val2', 'val3') OR col_f LIKE '%pattern%') ORDER BY col_a DESC LIMIT 10;

Consultas de acceso directo

El conector de Google BigQuery admite consultas de acceso directo. Las consultas de acceso directo utilizan una función de tabla para enviar la consulta completa al origen de datos para su ejecución.

Para utilizar las consultas de acceso directo con Google BigQuery, puede usar la siguiente sintaxis:

SELECT * FROM TABLE( system.query( query => 'query string' ))

El siguiente ejemplo de consulta envía una consulta a un origen de datos de Google BigQuery. La consulta selecciona todas las columnas de la tabla customer y limita los resultados a 10.

SELECT * FROM TABLE( system.query( query => 'SELECT * FROM customer LIMIT 10' ))

Información sobre licencias

El proyecto del conector de Google BigQuery de Amazon Athena se licencia en virtud de la Licencia Apache-2.0.

Al usar este conector, reconoce la inclusión de componentes de terceros, cuya lista se puede encontrar en el archivo pom.xml para este conector y acepta los términos de las licencias de terceros correspondientes que se proporcionan en el archivo LICENSE.txt de GitHub.com.

Recursos adicionales

Para obtener más información acerca de este conector, consulte el sitio correspondiente en GitHub.com.

PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.