Configura flujos de cambios

Si deseas hacer un seguimiento de los cambios en los datos realizados en una tabla de Bigtable, puedes habilitar un flujo de cambios para la tabla y, luego, leerla con una aplicación como Dataflow. Antes de leer este documento, consulta la Descripción general de los flujos de cambios. En especial, asegúrate de conocer los costos generados cuando cambia la transmisión.

En esta página, se describe cómo habilitar, inhabilitar y cambiar el período de retención de un flujo de cambios.

Si deseas obtener instrucciones para crear una tabla nueva con un flujo de cambios habilitado, consulta Crea una tabla.

Función requerida

Si quieres obtener los permisos que necesitas para habilitar, inhabilitar o modificar un flujo de cambios de Bigtable, pídele a tu administrador que te otorgue el siguiente rol de IAM.

  • Administrador de Bigtable (roles/bigtable.admin) en la instancia de Bigtable que contiene la tabla desde la que planeas transmitir cambios.

Habilita un flujo de cambios

Para habilitar un flujo de cambios en una tabla existente, completa los siguientes pasos:

Console

  1. Abre la lista de instancias de Bigtable en la consola de Google Cloud.

    Abrir la lista de instancias

  2. Haz clic en la instancia que contiene la tabla para la que deseas habilitar un flujo de cambios.

  3. Haz clic en Tablas en el panel izquierdo.

    La página Tablas muestra una lista de tablas en la instancia.

  4. Haz clic en Editar en la tabla en la que deseas habilitar un flujo de cambios.

  5. Haz clic en Habilitar flujo de cambios.

  6. En el campo Tiempo de vencimiento, ingresa un número del 1 al 7 para configurar la cantidad de días que se deben retener los registros del flujo de datos.

  7. Haz clic en Guardar.

gcloud

Para habilitar un flujo de cambios en una tabla, usa el comando gcloud bigtable instances tables update.

  gcloud bigtable instances tables update TABLE_ID \
        --instance=INSTANCE_ID \
        --project=PROJECT_ID \
        --change-stream-retention-period=CHANGE_STREAM_RETENTION_PERIOD

Reemplaza lo siguiente:

  • TABLE_ID: El ID de la tabla cuyos cambios deseas transmitir
  • INSTANCE_ID: Es la instancia que contiene la tabla.
  • PROJECT_ID: El proyecto que contiene la instancia
  • CHANGE_STREAM_RETENTION_PERIOD: Es el período que Bigtable debe mantener los datos de flujos de cambios en la tabla. Debe ser un día como mínimo y siete días como máximo, expresado como un número y una letra para la unidad. Las unidades aceptables son días (d), horas (h), minutos (m) y segundos (s). Ejemplo: 5d

Cómo inhabilitar un flujo de cambios

Puedes inhabilitar los flujos de cambios de una tabla en cualquier momento. Los registros de transmisión de datos que se crearon antes de inhabilitar el flujo de cambios continúan consumiendo almacenamiento hasta la siguiente compactación, pero ya no se te cobrará por ese almacenamiento. No puedes leer una transmisión de cambios después de inhabilitarla, incluidos los cambios que se grabaron antes de inhabilitarla.

Console

  1. Abre la lista de instancias de Bigtable en la consola de Google Cloud.

    Abrir la lista de instancias

  2. Haz clic en la instancia que tiene las tablas deseas ver.

  3. Haz clic en Tablas en el panel izquierdo.

    La página Tablas muestra una lista de tablas en la instancia.

  4. Haz clic en Editar en la tabla cuya configuración de flujo de cambios deseas inhabilitar.

  5. Desmarca la marca de verificación Habilitar flujo de cambios.

  6. Haz clic en Guardar.

gcloud

Para inhabilitar un flujo de cambios en una tabla, usa el comando gcloud bigtable instances tables update.

  gcloud bigtable instances tables update TABLE_ID \
        --instance=INSTANCE_ID \
        --project=PROJECT_ID \
        --clear-change-stream-retention-period

Reemplaza lo siguiente:

  • TABLE_ID: El ID de la tabla cuyos cambios deseas transmitir
  • INSTANCE_ID: Es la instancia que contiene la tabla.
  • PROJECT_ID: El proyecto que contiene la instancia

Modifica el tiempo de retención de un flujo de cambios

Puedes modificar la cantidad de días que Bigtable conserva los registros de flujos de cambios. Si reduces la cantidad de días, los registros que se transmitieron antes del cambio de configuración seguirán consumiendo almacenamiento hasta la siguiente compactación. Después del cambio de configuración, solo puedes transmitir los cambios del período especificado recientemente.

Si aumentas el tiempo de retención, no será retroactivo: los flujos de cambios se conservan durante el aumento de días a partir del momento en que modificas la configuración.

Console

  1. Abre la lista de instancias de Bigtable en la consola de Google Cloud.

    Abrir la lista de instancias

  2. Haz clic en la instancia que tiene las tablas deseas ver.

  3. Haz clic en Tablas en el panel izquierdo.

    La página Tablas muestra una lista de tablas en la instancia.

  4. Haz clic en Editar en la tabla cuya configuración de flujo de cambios deseas modificar.

  5. En el campo Hora de vencimiento, ingresa un número del 1 al 7 para la cantidad de días que se deben conservar los registros del flujo de datos.

  6. Haz clic en Guardar.

gcloud

Para cambiar el período de retención del flujo de cambios de una tabla, usa el comando gcloud bigtable instances tables update.

  gcloud bigtable instances tables update TABLE_ID \
        --instance=INSTANCE_ID \
        --project=PROJECT_ID \
        --change-stream-retention-period=CHANGE_STREAM_RETENTION_PERIOD

Reemplaza lo siguiente:

  • TABLE_ID: El ID de la tabla cuyos cambios deseas transmitir
  • INSTANCE_ID: Es la instancia que contiene la tabla.
  • PROJECT_ID: El proyecto que contiene la instancia
  • CHANGE_STREAM_RETENTION_PERIOD: Es el período que Bigtable debe mantener los datos de flujos de cambios en la tabla. Debe ser de uno a siete días, expresado como un número y una letra para la unidad. Las unidades aceptables son días (d), horas (h), minutos (m) y segundos (s). Ejemplo: 5d

¿Qué sigue?