Soluciona problemas relacionados con las suscripciones de Bigtable

En este documento, se proporcionan sugerencias para solucionar problemas relacionados con las suscripciones de Bigtable.

No se puede crear ni actualizar la suscripción

Cuando intentas crear o actualizar una suscripción de Bigtable, es posible que encuentres los siguientes errores.

Error de permiso denegado

Si la instancia o la tabla de Bigtable no existen, o si la cuenta de servicio configurada no tiene acceso a ninguna de ellas, recibirás un error de permiso denegado.

Para resolver el problema, sigue estos pasos:

Faltan familias de columnas

Si la tabla de Bigtable no tiene las familias de columnas correctas, recibirás un error INCOMPATIBLE_BIGTABLE_SCHEMA.

Este error puede deberse a los siguientes problemas:

  • La tabla no tiene una familia de columnas data.
  • La escritura de metadatos está habilitada y la tabla no tiene una familia de columnas pubsub_metadata.

Para resolver el problema, crea las familias de columnas necesarias. Para obtener más información, consulta Agrega familias de columnas.

La suscripción no escribe datos

Si una suscripción de Bigtable no escribe datos, verifica el estado de la suscripción ejecutando el gcloud beta pubsub subscriptions describe comando:

gcloud beta pubsub subscriptions describe SUBSCRIPTION_ID

Reemplaza SUBSCRIPTION_ID por el nombre de la suscripción.

El campo bigtableConfig.state contiene el estado. Si la suscripción está lista para escribir mensajes en Bigtable, el estado es ACTIVE. De lo contrario, hay un error en la configuración que impide que la suscripción escriba mensajes en la tabla de Bigtable.

Los problemas de configuración pueden incluir lo siguiente:

Mientras una suscripción está en estado de error, no escribe mensajes en la tabla de Bigtable. Los mensajes permanecen en el backlog de la suscripción; no se entregan al tema de mensajes no entregados, si se configuró uno. Los mensajes no confirmados se retienen durante el período de retención de mensajes de la suscripción .

Una vez que se resuelve el problema, la suscripción vuelve a un estado correcto.

Aumento del backlog

Si el estado de tu suscripción es ACTIVE, pero hay un backlog cada vez mayor de mensajes en la suscripción o los mensajes van al tema de mensajes no entregados de la suscripción, busca los siguientes problemas.

La tasa de publicación supera la capacidad

Si la tasa de publicación de mensajes en tu tema supera la capacidad de tu clúster de Bigtable, es posible que se acumulen backlogs en la suscripción.

El ordenamiento de mensajes tiene compensaciones de rendimiento. El uso de suscripciones de Bigtable con ordenamiento puede generar una menor capacidad de procesamiento o una mayor latencia de entrega de mensajes. Si ves problemas de rendimiento con el ordenamiento habilitado, asegúrate de usar claves de ordenamiento lo suficientemente detalladas para evitar las claves activas o modificar tu aplicación para que no requiera ordenamiento. Para obtener más información, consulta Consideraciones cuando se usa la mensajería ordenada.

Supervisa el rendimiento de tu clúster y considera aumentar su tamaño. Para obtener más información, consulta los siguientes temas en la documentación de Bigtable:

Tráfico entre regiones

Si tu aplicación publica en tu tema desde una región diferente a la del clúster de Bigtable, cada mensaje tarda más en publicarse, en comparación con la publicación desde la misma región. El tiempo de publicación más largo reduce la tasa a la que tu suscripción escribe mensajes en Bigtable, lo que reduce la capacidad de procesamiento total.

Para minimizar el tiempo que tardan en publicarse los mensajes, debes publicarlos en la misma región que tu clúster de Bigtable.

¿Qué sigue?