Datastream te permite replicar los datos de cambios de tus fuentes directamente
en tablas de BigQuery para realizar análisis casi en tiempo real. Cuando transmites datos
a BigQuery, puedes seleccionar el modo de escritura de combinación o solo de adición,
y usar la columna datastream_metadata para hacer un seguimiento de los eventos de cambio. También puedes
aplicar las prácticas recomendadas de administración de costos, como las reservas de ranuras y el ajuste de la obsolescencia de las tablas, y revisar las limitaciones conocidas.
Comportamiento de escritura
El tamaño máximo de evento cuando transmites datos a BigQuery es de 20 MB.
Cuando configuras tu transmisión, puedes seleccionar la forma en que Datastream escribe tus datos de cambios en BigQuery. Para obtener más información, consulta Configura el modo de escritura.
Metadatos de tabla
Datastream agrega una columna STRUCT llamada datastream_metadata
a cada tabla que se escribe en el destino de BigQuery.
Modo de escritura de combinación
Si una tabla tiene una clave primaria en la fuente, la columna contiene los siguientes campos:
UUID: Este campo tiene el tipo de datosSTRING.SOURCE_TIMESTAMP: Este campo tiene el tipo de datosINTEGER.
Si una tabla no tiene una clave primaria, la columna contiene un campo adicional: IS_DELETED. Este campo tiene el tipo de datos BOOLEAN y, además, indica si los datos que Datastream transmite al destino están asociados con una operación DELETE en la fuente. Las tablas sin claves primarias son de solo anexión.
Modo de escritura de solo anexión
La columna datastream_metadata contiene los mismos campos para las tablas con y
sin claves primarias:
UUID: Este campo tiene el tipo de datosSTRING.SOURCE_TIMESTAMP: Este campo tiene el tipo de datosINTEGER.CHANGE_SEQUENCE_NUMBER: Este campo tiene el tipo de datosSTRING. Es un número de secuencia interno que Datastream usa para cada evento de cambio.CHANGE_TYPE: Este campo tiene el tipo de datosSTRING. Indica el tipo del evento de cambio:INSERT,UPDATE-INSERT,UPDATE-DELETEoDELETE.SORT_KEYS: Este campo contiene un array de valoresSTRING. Puedes usar los valores para ordenar los eventos de cambio.
Controla los costos de BigQuery
Los costos de BigQuery se cobran por separado de Datastream. Para aprender a controlar tus costos de BigQuery, consulta Precios de CDC de BigQuery.
Prácticas recomendadas para la administración de costos
Cuando uses Datastream con BigQuery como destino, ten en cuenta las siguientes prácticas recomendadas para administrar los costos:
- Comprende los costos de la CDC de BigQuery: Cuando usas
Datastream con BigQuery como destino, la captura de datos modificados (CDC) implica operaciones de combinación en segundo plano. De forma predeterminada,
los trabajos en segundo plano de transferencia de CDC de BigQuery que se realizan sin una asignación de reserva de BigQuery
BACKGROUNDoBACKGROUND_CHANGE_DATA_CAPTUREusan precios a pedido. - Usa reservas de BigQuery: Para administrar y limitar los costos asociados con los trabajos de combinación de CDC, te recomendamos que compres una reserva de ranuras de BigQuery. Esto proporciona una capacidad fija por un precio fijo, lo que hace que tus costos sean más predecibles. Para obtener más información, consulta Configura una reserva de BigQuery para usarla con la transferencia de CDC.
- Ajusta
max_staleness: El parámetromax_stalenessen BigQuery es una compensación directa entre la actualidad de los datos y el costo. Un valor más bajo significa operaciones de combinación más frecuentes y costos más altos, pero datos más actualizados. Ajusta este parámetro a un nivel que cumpla con los requisitos de tu empresa en cuanto a la actualidad de los datos sin exceder tu presupuesto. Para obtener más información, consulta Administra la obsolescencia de las tablas.
Limitaciones conocidas
Entre las limitaciones conocidas para usar BigQuery como destino, se incluyen las siguientes:
- De forma predeterminada, Datastream no admite agregar una clave primaria a una tabla que ya se replicó en BigQuery sin una clave primaria, ni quitar una clave primaria de una tabla que se replicó en BigQuery con una clave primaria. Si necesitas realizar estos cambios, comunícate con el equipo de Atención al Cliente de Google. Para obtener información sobre cómo cambiar la definición de la clave primaria de una tabla de origen que ya tiene una clave primaria, consulta Diagnostica problemas.
Las claves primarias en BigQuery deben ser de los siguientes tipos de datos:
DATEBOOLGEOGRAPHYINT64NUMERICBIGNUMERICSTRINGTIMESTAMPDATETIME
Datastream no replica las tablas que contienen claves primarias de tipos de datos no admitidos.
BigQuery no admite nombres de tablas con caracteres
.,$,/,@o+. Datastream reemplaza esos caracteres por guiones bajos cuando crea tablas de destino.Por ejemplo,
table.nameen la base de datos de origen se convierte entable_nameen BigQuery.Para obtener más información sobre los nombres de las tablas en BigQuery, consulta Nombres de tablas.
BigQuery no admite más de cuatro columnas de agrupamiento en clústeres. Cuando se replica una tabla con más de cuatro columnas de clave primaria, Datastream usa cuatro columnas de clave primaria como columnas de agrupamiento en clústeres.
Datastream asigna literales de fecha y hora fuera de rango, como los tipos de fecha de infinito de PostgreSQL, a los siguientes valores:
DATEpositivo para el valor de9999-12-31DATEnegativo al valor de0001-01-01TIMESTAMPpositivo para el valor de9999-12-31 23:59:59.999000 UTCTIMESTAMPnegativo al valor de0001-01-01 00:00:00 UTC
BigQuery no admite tablas de transmisión que tengan claves primarias de tipos de datos
FLOAToREAL. Estas tablas no se replican. Para obtener más información sobre los tipos y rangos de fechas de BigQuery, consulta Tipos de datos.Si tu fuente es Salesforce o Salesforce Marketing Cloud (versión preliminar), la opción de configuración Conjunto de datos para cada esquema no es compatible.