Conector de métricas de CloudWatch de Amazon Athena - 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 de métricas de CloudWatch de Amazon Athena

El conector de Amazon Athena para métricas de CloudWatch permite que Amazon Athena consulte datos de métricas de CloudWatch con SQL.

Para obtener información sobre cómo publicar métricas de consulta en CloudWatch desde el propio servicio de Athena, consulte Controlar los costos y monitorear las consultas con CloudWatch métricas y eventos.

Requisitos previos

Parámetros

Use las variables de entorno de Lambda de esta sección para configurar el conector de métricas de CloudWatch.

  • 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.

El conector también admite control de congestión de AIMD para gestionar los eventos de limitación de CloudWatch a través de la construcción ThrottlingInvoker del SDK de federación de consultas de Amazon Athena. Para modificar el comportamiento de limitación predeterminado, puede configurar cualquiera de las siguientes variables de entorno opcionales:

  • throttle_initial_delay_ms: el retraso de llamada inicial aplicado tras el primer evento de congestión. El valor predeterminado es 10 milisegundos.

  • throttle_max_delay_ms: el retraso máximo entre llamadas. Puede derivar TPS dividiéndolo en 1000 ms. El valor predeterminado es 1000 milisegundos.

  • throttle_decrease_factor: el factor por el que Athena reduce la tarifa de llamadas. El valor predeterminado es 0,5

  • throttle_increase_ms: la velocidad a la que Athena disminuye el retraso de la llamada. El valor predeterminado es 10 milisegundos.

Base de datos y tablas

El conector de métricas de CloudWatch de Athena asigna sus espacios de nombres, dimensiones, métricas y valores de métricas en dos tablas en un único esquema denominado default.

La tabla de métricas

La tabla metrics contiene las métricas disponibles definidas de forma exclusiva mediante una combinación de espacio de nombres, conjunto y nombre. La tabla metrics contiene las siguientes columnas.

  • namespace: VARCHAR que contiene el espacio de nombres.

  • metric_name: VARCHAR que contiene el nombre de la métrica.

  • dimensions: LIST de objetos STRUCT compuestos por dim_name (VARCHAR) y dim_value (VARCHAR).

  • statistic: LIST de estadísticas VARCH (por ejemplo, p90, AVERAGE, ...) disponibles para la métrica.

La tabla metric_samples

La tabla metric_samples contiene las muestras de métricas disponibles para cada métrica de la tabla de metrics. La tabla metric_samples contiene las siguientes columnas.

  • namespace: VARCHAR que contiene el espacio de nombres.

  • metric_name: VARCHAR que contiene el nombre de la métrica.

  • dimensions: LIST de objetos STRUCT compuestos por dim_name (VARCHAR) y dim_value (VARCHAR).

  • dim_name: un campo de conveniencia VARCHAR que puede usar para filtrar fácilmente por un nombre de dimensión único.

  • dim_value: un campo de conveniencia VARCHAR que puede usar para filtrar fácilmente un valor de dimensión única.

  • period: INT que representa el “periodo” de la métrica en segundos (por ejemplo, una métrica de 60 segundos).

  • timestamp: BIGINT que representa el tiempo de época en segundos para el que está destinada la muestra métrica.

  • value: un FLOAT8 que contiene el valor de la muestra.

  • statistic: VARCHAR que contiene el tipo de estadística de la muestra (por ejemplo, AVERAGE o p90).

Permisos necesarios

Para obtener información completa sobre las políticas de IAM que requiere este conector, consulte la sección Policies del archivo athena-cloudwatch-metrics.yaml. En la siguiente lista se resumen los permisos requeridos.

  • Acceso de escritura a Amazon S3: el conector requiere acceso de escritura a una ubicación de Amazon S3 para volcar los resultados de consultas de gran tamaño.

  • Athena GetQueryExecution: el conector usa este permiso para fallar rápidamente cuando finaliza la consulta ascendente de Athena.

  • Métricas de CloudWatch de solo lectura: el conector usa este permiso para consultar los datos de las métricas.

  • Escritura de Registros de CloudWatch: el conector usa este acceso para escribir sus registros de diagnóstico.

Desempeño

El conector de métricas de CloudWatch de Athena intenta optimizar las consultas con respecto a las métricas de CloudWatch paralelizando los escaneos de los flujos de registro necesarios para su consulta. Para determinados filtros de periodo de tiempo, métrica, espacio de nombres y dimensiones, la inserción de predicados se lleva a cabo tanto dentro de la función de Lambda como dentro de Registros de CloudWatch.

Información sobre licencias

El proyecto del conector de métricas de CloudWatch de Amazon Athena se licencia en virtud de la Licencia Apache-2.0.

Véase también

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