Como funciona CloudWatch Contributor Insights for DynamoDB - Amazon DynamoDB

Como funciona CloudWatch Contributor Insights for DynamoDB

Amazon DynamoDB se integra con Información de colaboradores de Amazon CloudWatch para proporcionar información sobre los elementos a los que más se accede y que están sometidos a más limitaciones de una tabla o un índice secundario global. DynamoDB le da esta información a través de las reglas, los informes y los gráficos de datos de informes de Información de colaboradores de CloudWatch

Para obtener más información sobre Información de colaboradores de CloudWatch, consulte Using Contributor Insights to analyze high-cardinality data en la Guía del usuario de Amazon CloudWatch.

En las secciones siguientes se describen los conceptos y comportamientos básicos de CloudWatch Contributor Insights for DynamoDB.

Reglas de CloudWatch Contributor Insights for DynamoDB

Cuando se habilita CloudWatch Contributor Insights for DynamoDB en una tabla o un índice secundario global, DynamoDB crea automáticamente las siguientes reglas:

  • Most accessed items (partition key) (Elementos a los que más se accede [clave de partición]): identifica las claves de partición de los elementos a los que más se accede de la tabla o del índice secundario global.

    Formato de nombre de regla de CloudWatch: DynamoDBContributorInsights-PKC-[resource_name]-[creationtimestamp]

  • Most throttled keys (partition key) (Claves sometidas a más limitaciones controladas [clave de partición]): identifica las claves de partición de los elementos sometidos a más limitaciones controladas de la tabla o del índice secundario global.

    Formato de nombre de regla de CloudWatch: DynamoDBContributorInsights-PKT-[resource_name]-[creationtimestamp]

nota

Al activar Contributor Insights en la tabla de DynamoDB, se seguirán aplicando los límites de las reglas de Contributor Insights. Para obtener más información, consulte CloudWatch Service Quotas.

Si la tabla o el índice secundario global tiene una clave de ordenación, DynamoDB también crea las siguientes reglas específicas para las claves de ordenación:

  • Most accessed keys (partition and sort keys) (Claves a las que más se accede [claves de partición y ordenación]): identifica las claves de partición y ordenación de los elementos a los que más se accede de la tabla o del índice secundario global.

    Formato de nombre de regla de CloudWatch: DynamoDBContributorInsights-SKC-[resource_name]-[creationtimestamp]

  • Most throttled keys (partition and sort keys) (Claves sometidas a más limitaciones controladas [claves de partición y ordenación]): identifica las claves de partición y ordenación de los elementos sometidos a más limitaciones controladas de la tabla o del índice secundario global.

    Formato de nombre de regla de CloudWatch: DynamoDBContributorInsights-SKT-[resource_name]-[creationtimestamp]

nota
  • No puede usar las API o la consola de CloudWatch para modificar o eliminar directamente las reglas creadas por CloudWatch Contributor Insights for DynamoDB. Al desactivar CloudWatch Contributor Insights for DynamoDB en una tabla o un índice secundario global, se eliminan automáticamente las reglas creadas para esa tabla o índice secundario global.

  • Cuando se usa la operación GetInsightRuleReport con reglas de CloudWatch Contributor Insights creadas por DynamoDB, solo MaxContributorValue y Maximum devuelven estadísticas útiles. Las demás estadísticas de esta lista no devuelven valores significativos.

  • CloudWatch Contributor Insights para DynamoDB tiene un límite de 25 colaboradores. Si se solicitan más de 25 colaboradores, se producirá un error.

Puede crear alarmas de CloudWatch mediante las reglasde CloudWatch Contributor Insights para DynamoDB. Esto le permite recibir una notificación cuando cualquier artículo supere o cumpla un umbral específico para ConsumedThroughputUnits o ThrottleCount. Para obtener más información, consulte Configuración de una alarma en los datos de métricas de Información de colaboradores.

Descripción de los gráficos de CloudWatch Contributor Insights for DynamoDB

CloudWatch Contributor Insights for DynamoDB muestra dos tipos de gráficos en las consolas de DynamoDB y CloudWatch: Most Accessed Items (Elementos a los que más se accede) y Most Throttled Items (Elementos sometidos a más limitaciones controladas).

Most Accessed Items (Elementos más consultados)

Use este gráfico para identificar los elementos a los que se accede con más frecuencia en la tabla o el índice secundario global. El gráfico muestra los valores de ConsumedThroughputUnits en el eje Y y el tiempo en el eje X. Cada una de las N claves principales se muestra con su propio color y la leyenda aparece debajo del eje X.

DynamoDB mide la frecuencia de acceso a las claves mediante ConsumedThroughputUnits, que mide el tráfico combinado de lectura y de escritura. ConsumedThroughputUnits se define como sigue:

  • Aprovisionadas: (3 x unidades de capacidad de escritura consumidas) + Unidades de capacidad de lectura consumidas.

  • En diferido: (3 x unidades de solicitud de escritura) + unidades de solicitud de lectura.

En la consola de DynamoDB, cada punto de datos del gráfico representa el máximo de ConsumedThroughputUnits durante un periodo de un minuto. Por ejemplo, un valor de 180 000 ConsumedThroughputUnits en el gráfico indica que se ha accedido continuamente a ese elemento al máximo rendimiento por elemento de 1000 unidades de solicitud de escritura o 3000 unidades de solicitud de lectura a lo largo de 60 segundos durante ese periodo de un minuto (3000 x 60 segundos). Dicho de otro modo, los valores del gráfico representan el minuto con el máximo tráfico de cada periodo de un minuto. Puede cambiar la granularidad de tiempo de la métrica ConsumedThroughputUnits (por ejemplo, para ver métricas de 5 minutos en lugar de 1 minuto) en la consola de CloudWatch.

Si aparecen varias líneas muy agrupadas sin valores atípicos evidentes, indica que la carga de trabajo está relativamente equilibrada para todos los elementos durante ese espacio de tiempo determinado. Si aparecen puntos aislados en el gráfico en lugar de líneas conectadas, indican un elemento al que se ha accedido con frecuencia únicamente durante un breve periodo.

Si la tabla o el índice secundario global tiene una clave de ordenación, DynamoDB crea dos gráficos: uno para las claves de partición a las que más se accede y otro para los pares de clave de partición y clave de ordenación de acceso más frecuente. Puede ver el tráfico en el nivel de clave de partición en el gráfico de sólo clave de partición. Puede ver el tráfico en el nivel de elemento en los gráficos de clave de ordenación + partición.

Most Throttled Items (Elementos sometidos a más limitaciones controladas)

Use este gráfico para identificar los elementos sometidos a más limitaciones controladas en la tabla o el índice secundario global. El gráfico muestra los valores de ThrottleCount en el eje Y y el tiempo en el eje X. Cada una de las N claves principales se muestra con su propio color y la leyenda aparece debajo del eje X.

DynamoDB mide la frecuencia de las limitaciones controladas mediante ThrottleCount, que es la cantidad de excepciones ProvisionedThroughputExceededException y ThrottlingException y de errores RequestLimitExceeded.

No se mide la limitación controlada de la escritura causada por una capacidad de escritura insuficiente para un índice secundario global. Puede utilizar el gráfico Most Accessed Items (Elementos a los que más se accede) del índice secundario global para identificar patrones de acceso desequilibrados que pueden causar la limitación controlada de la escritura. Para obtener más información, consulte Consideraciones sobre el rendimiento aprovisionado para los índices secundarios globales.

En la consola de DynamoDB, cada punto de datos del gráfico representa el número de eventos de limitación controlada durante un período de un minuto.

Si no aparecen datos en este gráfico, indica que las solicitudes no se están sometido a limitaciones controladas. Si ve puntos aislados en el gráfico en lugar de líneas conectadas, indican un elemento que se ha sometido a limitaciones controladas durante un breve periodo.

Si la tabla o el índice secundario global tiene una clave de ordenación, DynamoDB crea dos gráficos: uno para las claves de partición sometidas a más limitaciones controladas y otro para los pares de clave de partición y clave de ordenación sometidos a más limitaciones controladas. Puede ver la cantidad de limitaciones controladas en el nivel de particiones en el gráfico de solo claves y la cantidad de limitaciones controladas en el nivel de elementos en los gráficos de partición y clave de ordenación.

Ejemplos de informes

A continuación se muestran ejemplos de informes generados para una tabla que tiene una clave de partición y una clave de ordenación.

Cuatro informes distintos de Contributor Insights que muestran los elementos a los que más se accede y los elementos sometidos a más limitaciones controladas.

Interacciones con otras características de DynamoDB

En las siguientes secciones se describe cómo CloudWatch Contributor Insights for DynamoDB se comporta e interactúa con otras características de DynamoDB.

Tablas globales

CloudWatch Contributor Insights for DynamoDB monitorea las réplicas de tablas globales como tablas distintas. Es posible que los gráficos de Contributor Insights de una réplica en una región de AWS no muestren los mismos patrones que otra región. Esto se debe a que los datos de escritura se replican en todas las réplicas de una tabla global, pero cada réplica solo atiende al tráfico de lectura de una región.

DynamoDB Accelerator (DAX)

CloudWatch Contributor Insights for DynamoDB no muestra respuestas de caché de DAX. Sólo muestra respuestas para acceder a una tabla o a un índice secundario global.

nota

DynamoDB CCI no admite solicitudes de PartiQL.

Cifrado en reposo

CloudWatch Contributor Insights for DynamoDB no afecta al modo en que funciona el cifrado en DynamoDB. Los datos de clave principal que se publican en CloudWatch se cifran con la Clave propiedad de AWS. Sin embargo, DynamoDB también admite la Clave administrada de AWS y una clave administrada por el cliente.

Los gráficos de Información de colaboradores de CloudWatch para DynamoDB muestran la clave de partición y la clave de clasificación (si es aplicable) de los elementos a los que se accede con frecuencia y de los elementos que se someten con frecuencia a una limitación en texto sin formato. Si necesita utilizar AWS Key Management Service (KMS) para cifrar la clave de partición de esta tabla y clasificar los datos de la clave con una Clave administrada de AWS o una clave administrada por el cliente, no habilite CloudWatch Contributor Insights for DynamoDB para esta tabla.

Si necesita que los datos de la clave principal estén cifrados con la Clave administrada de AWS o con una clave administrada por el cliente, no habilite CloudWatch Contributor Insights for DynamoDB para esa tabla.

Control de acceso detallado

CloudWatch Contributor Insights for DynamoDB no funciona de manera diferente para las tablas con control de acceso detallado (FGAC, por sus siglas en inglés). Es decir, cualquier usuario que tenga los permisos de CloudWatch apropiados puede ver las claves principales protegidas mediante FGAC en los gráficos de CloudWatch Contributor Insights.

Si la clave principal de la tabla contiene datos protegidos mediante FGAC que no desea publicar en CloudWatch, no debería habilitar CloudWatch Contributor Insights for DynamoDB para esa tabla.

Control de acceso

Para controlar el acceso a CloudWatch Contributor Insights for DynamoDB mediante AWS Identity and Access Management (IAM), limite los permisos del plano de control de DynamoDB y los permisos del plano de datos de CloudWatch. Para obtener más información, consulte el artículo sobre uso de IAM con CloudWatch Contributor Insights for DynamoDB.

Facturación de CloudWatch Contributor Insights for DynamoDB

Los cargos por CloudWatch Contributor Insights for DynamoDB aparecen en la sección CloudWatch de su factura mensual. Estos cargos se calculan en función del número de eventos de DynamoDB que se procesan. Para las tablas y los índices secundarios globales en los que se ha habilitado CloudWatch Contributor Insights for DynamoDB, cada elemento escrito o leído a través de una operación de plano de datos representa un evento.

Si una tabla o índice secundario global incluye una clave de ordenación, cada elemento leído o escrito representa dos eventos. Esto se debe a que DynamoDB identifica a los principales contribuyentes de series temporales independientes: una para claves de particiones solamente y otra para pares de claves de partición y ordenación.

Por ejemplo, supongamos que la aplicación realiza las siguientes operaciones de DynamoDB: una operación GetItem, una operación PutItem y una operación BatchWriteItem que pone cinco elementos.

  • Si la tabla o el índice secundario global solo tiene una clave de partición, esto dará como resultado 7 eventos (1 para GetItem, 1 para PutItem y 5 para BatchWriteItem).

  • Si la tabla o el índice secundario global tiene una clave de partición y una clave de ordenación, esto dará como resultado 14 eventos (2 para GetItem, 2 para PutItem y 10 para BatchWriteItem).

  • Una operación Query siempre dará como resultado un evento, independientemente del número de elementos devueltos.

A diferencia de otras características de DynamoDB, la facturación de CloudWatch Contributor Insights for DynamoDB no varía en función de lo siguiente:

  • El modo de capacidad (aprovisionada frente a bajo demanda)

  • Si realiza solicitudes de lectura o escritura

  • El tamaño (KB) de los elementos leídos o escritos