Conector Amazon Athena para Google BigQuery - Amazon Athena

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Conector Amazon Athena para Google BigQuery

El conector Amazon Athena para Google BigQuerypermite a Amazon Athena ejecutar consultas SQL en sus datos de Google. BigQuery

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 BigQuery y debe terminar con el 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 distingue entre BigQuery mayúsculas y minúsculas. El conector intenta corregir las mayúsculas y minúsculas de los nombres del conjunto de datos y de las tablas, pero no corrige las mayúsculas y minúsculas de los ID del proyecto. 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 la BigQuery simultaneidad de Google y a los límites de cuota, es posible que el conector tenga problemas con los límites de cuota de Google. Para evitar estos problemas, impón a Google tantas restricciones BigQuery como sea posible. Para obtener información sobre BigQuery las cuotas, consulta Cuotas y límites en la BigQuery documentación de Google.

Parámetros

Usa las variables de entorno Lambda de esta sección para configurar el conector de Google BigQuery .

  • 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 posibles encabezados, consulta la referencia PutObjectde 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 AWS Secrets Manager que contiene sus credenciales en formato JSON (por ejemplo,). BigQuery GoogleCloudPlatformCredentials

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

Divisiones y vistas

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

Rendimiento

Para consultar las tablas, el BigQuery conector utiliza la API BigQuery Storage Read, que utiliza un protocolo basado en RPC que proporciona un acceso rápido al almacenamiento BigQuery gestionado. Para obtener más información sobre la API BigQuery de lectura de almacenamiento, consulta Cómo usar la API de lectura de BigQuery almacenamiento 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 BigQuery conector Athena de Google realiza una pulsación de predicados para reducir los datos escaneados por la consulta. LIMITLas ORDER BY cláusulas, los predicados simples y las expresiones complejas se insertan en el conector para reducir la cantidad de datos escaneados y 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 BigQuery conector Athena para Google puede combinar estas expresiones y enviarlas directamente a Google BigQuery para mejorar la funcionalidad y reducir la cantidad de datos escaneados.

Los siguientes operadores de BigQuery conectores de Google de Athena admiten la pulsació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;

Información sobre licencias

El proyecto Amazon Athena Google BigQuery Connector está licenciado bajo la licencia Apache-2.0.

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

Véase también

Para obtener información adicional sobre este conector, visite el sitio correspondiente en GitHub .com.