Configura flujos de cambios

Si deseas hacer un seguimiento de los cambios de datos realizados en una tabla de Bigtable, puedes habilitar un flujo de cambios para la tabla y, luego, leerlo con una aplicación como Dataflow. Antes de leer este documento, consulta la descripción general de los flujos de cambios. En particular, asegúrate de conocer los costos que se incurren cuando se realizan cambios en 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.

Para obtener instrucciones sobre cómo crear una tabla nueva con un flujo de cambios habilitado, consulta Crea una tabla.

Función requerida

Para 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 deseas 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 para la que deseas habilitar un flujo de cambios.

  5. Haz clic en Habilitar el flujo de cambios.

  6. En el campo Hora de vencimiento, ingresa un número entre 1 y 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: Es el ID de la tabla cuyos cambios deseas transmitir.
  • INSTANCE_ID: La instancia que contiene la tabla
  • PROJECT_ID: Es el proyecto que contiene la instancia.
  • CHANGE_STREAM_RETENTION_PERIOD: Es el tiempo que Bigtable debe conservar los datos del flujo de cambios de la tabla. Debe ser de al menos un día y no más de siete, 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

Inhabilitar un flujo de cambios

Puedes inhabilitar el flujo de cambios de una tabla en cualquier momento. Los registros del flujo de datos que se crearon antes de inhabilitar el flujo de cambios siguen consumiendo almacenamiento hasta la próxima compactación, pero ya no se te cobra por ese almacenamiento. No puedes leer un flujo de cambios después de inhabilitarlo, incluidos los cambios registrados antes de inhabilitarlo.

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. Quita la marca de verificación de Habilitar el 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: Es el ID de la tabla cuyos cambios deseas transmitir.
  • INSTANCE_ID: La instancia que contiene la tabla
  • PROJECT_ID: Es el proyecto que contiene la instancia.

Modifica el tiempo de retención de una transmisión de cambios

Puedes modificar la cantidad de días que Bigtable conserva los registros de tu transmisión 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 próxima compactación. Después del cambio de configuración, solo podrás transmitir los cambios del período especificado recientemente.

Si aumentas el tiempo de retención, no se aplica de forma retroactiva, es decir, los flujos de cambios se conservan durante la cantidad de días aumentada 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 Tiempo de vencimiento, ingresa un número entre 1 y 7 para la cantidad de días que se deben retener 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: Es el ID de la tabla cuyos cambios deseas transmitir.
  • INSTANCE_ID: La instancia que contiene la tabla
  • PROJECT_ID: Es el proyecto que contiene la instancia.
  • CHANGE_STREAM_RETENTION_PERIOD: Es el tiempo que Bigtable debe conservar los datos del flujo de cambios de 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?