Puedes encontrar respuestas a las preguntas frecuentes sobre Datastream y la captura de datos modificados. Los temas incluyen casos de uso comunes, comportamiento de origen y destino, integraciones de Google Cloud , seguridad, conectividad, supervisión y precios.
Preguntas generales sobre Datastream y la captura de datos modificados (CDC)
| Pregunta | Respuesta |
|---|---|
| ¿Qué es Datastream? | Datastream es un servicio de replicación y captura de datos modificados (CDC) sin servidores fácil de usar. Datastream permite la replicación fluida de datos de fuentes de base de datos relacional, como AlloyDB para PostgreSQL, PostgreSQL, MySQL, SQL Server y Oracle, así como de Salesforce, Salesforce Marketing Cloud (versión preliminar), ServiceNow (versión preliminar) y MongoDB, directamente en BigQuery. Datastream ofrece la escala, velocidad, seguridad y simplicidad que necesitan las empresas modernas. Gracias a su arquitectura de escalado automático y sin servidores, Datastream te permite configurar una canalización de ELT (extracción, carga y transformación) para la replicación de datos de baja latencia con el objetivo de obtener estadísticas casi en tiempo real. Datastream también tiene la capacidad de sincronizar flujos de datos en bases de datos y aplicaciones heterogéneas de manera confiable y con una latencia mínima. Puedes integrar el servicio en plantillas de Dataflow para replicar bases de datos en Cloud SQL o Spanner para la sincronización de bases de datos, o bien aprovechar la transmisión de eventos directamente desde Cloud Storage para crear arquitecturas controladas por eventos. |
| ¿Cuáles son los métodos que usa Datastream para transmitir datos? | Datastream transmite datos de una fuente a un destino a través de uno de los siguientes dos métodos:
|
| ¿Qué es CDC? |
La CDC es un enfoque de integración de datos que te permite integrar y analizar datos con mayor rapidez y con menos recursos del sistema. Es un método para extraer solo los cambios más recientes (actualizaciones, inserciones o eliminaciones) de una fuente de datos, a menudo leyendo el registro de cambios que la fuente mantiene para su propia integridad transaccional interna. La CDC es un mecanismo muy eficiente para limitar el impacto en la fuente cuando se cargan datos nuevos en almacenes de datos operativos y almacenes de datos, y elimina la necesidad de actualizar la carga masiva y las ventanas de lotes inconvenientes, ya que permite la carga incremental o la transmisión casi en tiempo real de los cambios de datos en un destino de datos. La CDC se puede usar en muchos casos de uso que obtienen valor del acceso constante a los cambios de datos a medida que ocurren, como las estadísticas, la sincronización de datos en sistemas distribuidos geográficamente y las arquitecturas basadas en eventos. |
| ¿Qué es el reabastecimiento? | Además de los cambios continuos, Datastream también usa el reabastecimiento para extraer todos los datos existentes de una fuente y, luego, transmitirlos a un destino. Como resultado, el destino se "rellena" con todos los datos históricos de la fuente. Existen dos tipos de reabastecimiento:
|
| ¿Existen limitaciones que debas tener en cuenta cuando realices un reabastecimiento? |
Para obtener información sobre las restricciones de reabastecimiento, consulta las páginas de limitaciones conocidas de los tipos de fuentes correspondientes:
|
| ¿Cuál es el orden recomendado para las operaciones de CDC y de reabastecimiento? | En la mayoría de los casos, no hay ninguna consideración especial aquí. Cuando se habilita el reabastecimiento en una transmisión, Datastream realiza el reabastecimiento y la CDC al mismo tiempo. En algunos casos extremos, por ejemplo, cuando se replican tablas muy grandes que no se pueden reabastecer con Datastream, es posible que debas cargar los datos en BigQuery antes de iniciar la transmisión. |
| ¿Puedo supervisar el estado de las operaciones de CDC y reabastecimiento? | Puedes supervisar el estado del reabastecimiento por objeto:
El estado de la CDC es, en efecto, el estado de la transmisión. Si la operación de CDC falla, fallará toda la transmisión. En Cloud Monitoring, hay métricas adicionales a nivel de objeto. Para obtener más información, consulta la documentación de Cloud Monitoring. |
| ¿Cuál es la diferencia entre un flujo de cambios y la replicación? | Un flujo de cambios es una secuencia de eventos que Datastream emite a un destino para su consumo posterior. El resultado de un flujo de cambios que se escribe en Cloud Storage es un conjunto de archivos que contienen eventos de registro de cambios de una tabla específica durante un período. Los eventos representan inserciones, actualizaciones y eliminaciones en esa tabla, y los servicios como Dataflow pueden consumirlos y procesarlos después de Cloud Storage para casos de uso como arquitecturas basadas en eventos. La replicación en el contexto de Datastream significa una representación 1:1 actualizada de la tabla de origen en el destino. Por ejemplo, una tabla en Oracle cuyos cambios se replican continuamente en una tabla de BigQuery, en la que la tabla de BigQuery se mantiene actualizada con los flujos de cambios transmitidos desde la tabla de Oracle. La replicación aprovecha los flujos de cambios consumiendo cada evento de cambio y usándolo para actualizar el destino. Datastream permite la replicación directa en BigQuery y admite destinos adicionales, como Cloud SQL y Spanner, a través de la integración en Dataflow, con plantillas que extraen los eventos de flujo de cambios de Cloud Storage y actualizan las tablas de destino según corresponda. |
| ¿Datastream requiere un agente en la fuente? | No es necesario que instales un agente en la fuente. Datastream usa interfaces existentes (como Oracle LogMiner) para obtener los datos de la fuente. |
| ¿Cuántas tablas puedo incluir en una sola transmisión? | Datastream puede controlar hasta 10,000 tablas en una sola transmisión. No hay ninguna razón técnica para dividir una base de datos en varios flujos, aunque puede haber algunas consideraciones empresariales para usar diferentes flujos para diferentes flujos lógicos, por ejemplo, cuando se replican transacciones grandes desde fuentes de PostgreSQL. Sin embargo, cada transmisión agrega carga a la base de datos de origen. Esta carga es insignificante para la CDC, pero puede ser significativa para el reabastecimiento. |
| ¿Qué ocurre con el impacto en el rendimiento que tiene el uso de Datastream en una base de datos de producción? |
La CDC es un mecanismo altamente eficiente para limitar el impacto en la fuente cuando se cargan datos nuevos en almacenes de datos de destino. La CDC también elimina la necesidad de actualizar la carga masiva y las ventanas de lotes inconvenientes, ya que habilita la carga incremental o la transmisión casi en tiempo real de los cambios de datos en un destino. Además, Datastream minimiza el impacto de un reabastecimiento inicial, ya que limita la cantidad de tareas de reabastecimiento simultáneas y te ofrece el control para decidir qué objetos reabastecer y cuándo hacerlo. |
| ¿Puedes copiar los archivos de registro de la fuente a Google Cloud? | No. Datastream consulta los registros directamente en el servidor de la base de datos, y solo se escriben en el destino los cambios en las tablas especificadas. |
| ¿Datastream también puede transferir datos históricos? | Sí. De forma predeterminada, Datastream obtiene todos los datos históricos de las tablas de la base de datos de la fuente que especifiques, en paralelo a la transmisión de CDC. Datastream te brinda la flexibilidad de obtener datos históricos de algunas o todas las tablas de la base de datos de tu fuente. Además, cuando configuras tu transmisión, puedes inhabilitar el reabastecimiento histórico. |
| ¿Datastream garantiza la entrega exactamente una vez? | No. Datastream es una entrega de al menos una vez. Los metadatos adicionales que Datastream escribe en cada evento se pueden usar para quitar los datos duplicados. |
| ¿Datastream puede controlar bases de datos encriptadas? | Sí. |
| ¿Datastream puede transmitir tablas y columnas específicas desde una fuente? | Sí. Con Datastream, puedes especificar listas de inclusión y exclusión para tablas y esquemas, de modo que solo se transmitan los datos que quieras de una fuente a un destino. En el caso de las tablas incluidas, puedes excluir columnas específicas de las tablas para ajustar con mayor precisión qué datos quieres que se transmitan al destino. Sin embargo, las vistas materializadas no se pueden replicar. |
| ¿Cómo se mueve una transmisión a otro proyecto o región? |
|
| ¿Cómo controla Datastream las transacciones no confirmadas en los archivos de registro de la base de datos? | Cuando los archivos de registro de la base de datos contienen transacciones no confirmadas, si se revierte alguna transacción, la base de datos lo refleja en los archivos de registro como operaciones de lenguaje de manipulación de datos (DML) "inversas". Por ejemplo, una operación INSERT revertida tendrá una operación DELETE correspondiente. Datastream lee estas operaciones de los archivos de registro. |
| ¿Cuál es la disponibilidad regional de Datastream? | Para ver una lista de las regiones en las que Datastream está disponible, consulta Listas de IP permitidas y regiones. |
Comportamiento y limitaciones generales de las fuentes
| Pregunta | Respuesta |
|---|---|
| ¿Qué fuentes admite Datastream? | Datastream admite la transmisión de datos desde fuentes de Oracle, MySQL, PostgreSQL, AlloyDB para PostgreSQL, SQL Server, Salesforce, Salesforce Marketing Cloud (versión preliminar), ServiceNow (versión preliminar) y MongoDB, tanto alojadas en la nube como autoadministradas. Para obtener información sobre las versiones específicas de la fuente, consulta las siguientes páginas:
|
| ¿Datastream puede controlar bases de datos encriptadas? | Sí. |
| ¿Cómo extrae Datastream los datos de las fuentes? | Para MySQL, Datastream procesa el registro binario de MySQL para extraer eventos de cambio. En el caso de Oracle, Datastream usa LogMiner y parámetros de configuración complementarios para extraer datos de los registros de rehacer de Oracle. En cuanto a PostgreSQL y AlloyDB para PostgreSQL, Datastream depende de la función de decodificación lógica de PostgreSQL. Esta función expone todos los cambios asignados a la base de datos y permite consumirlos y procesarlos. En el caso de SQL Server, Datastream hace un seguimiento de los cambios del lenguaje de manipulación de datos (DML) usando registros de transacciones. |
| ¿Puedes copiar archivos de registro directamente desde una fuente a Google Cloud? | Datastream no copia la totalidad de los archivos de registro, sino que los consulta directamente desde el servidor de la base de datos y solo replica los cambios de las tablas especificadas en el destino. |
| ¿Cuáles son las limitaciones de los datos que Datastream puede procesar? |
Existen limitaciones generales y limitaciones que se aplican a fuentes de bases de datos específicas. Estas son algunas de las limitaciones generales:
Para conocer las limitaciones específicas de la fuente, consulta las siguientes páginas:
|
| ¿Qué datos se incluyen en cada evento que genera Datastream? | Cada evento generado (para inserciones, actualizaciones y eliminaciones) incluye la fila completa de datos de la fuente, con el valor y el tipo de datos de cada columna. Cada evento también incluye metadatos de eventos que se pueden usar para establecer el ordenamiento y garantizar que las entregas se realicen exactamente una vez. |
| ¿Datastream garantiza el orden? | Aunque Datastream no garantiza el orden, proporciona metadatos adicionales para cada evento. Estos metadatos se pueden usar para garantizar la coherencia eventual en el destino. Según la fuente, la tasa y la frecuencia de los cambios, y otros parámetros, la coherencia eventual se puede lograr, por lo general, en un plazo de 1 hora. |
| ¿Datastream garantiza la entrega exactamente una vez? | Datastream garantiza al menos una entrega. Puedes eliminar los datos duplicados con los metadatos adicionales que Datastream escribe en cada evento. |
| ¿Cómo representa Datastream los tipos de datos de la fuente para usarlos en el procesamiento posterior? | Cuando se escribe en un destino sin esquema, como Cloud Storage, Datastream simplifica el procesamiento posterior de los datos en todas las fuentes normalizando los tipos de datos en todas ellas. Datastream toma el tipo de datos de origen original (por ejemplo, un tipo Los tipos unificados representan un superconjunto sin pérdidas de todos los tipos de fuentes posibles, y la normalización significa que los datos de diferentes fuentes se pueden procesar con un esfuerzo mínimo y consultar de forma independiente de la fuente. |
| ¿Cómo maneja Datastream los cambios de estructura (esquema) en la fuente? | Datastream recupera el esquema de la fuente de forma periódica. Los esquemas se almacenan en el registro de esquemas interno de Datastream, y cada evento hace referencia al esquema en el momento en que se generó. Esto permite que Datastream realice un seguimiento de los cambios en el esquema y se ajuste en función de estos cambios, lo que garantiza que todos los datos se transmitan y carguen en el destino de forma correcta. Sin embargo, entre las recuperaciones de esquemas, es posible que algunos cambios en el esquema pasen desapercibidos, lo que podría causar discrepancias en los datos. |
| Borré (quité) una columna en mi base de datos de origen, pero sigue apareciendo en mi destino. ¿Por qué? | Datastream no borra columnas en el destino. Debes borrar las columnas de forma manual. Este comportamiento es intencional, ya que, en algunos casos, es posible que prefieras mantener la columna borrada en el destino. Por ejemplo, Datastream interpreta que cambiar el nombre de una columna en la fuente equivale a borrar una columna y agregar otra. En este caso, no querrás perder la columna original en el destino. |
| La transmisión no se inicia debido a un error de validación, pero creo que es un error o quiero intentar ejecutar la transmisión de todos modos. ¿Cómo puedo superar esta validación? | Puedes iniciar la transmisión con la API agregando la marca force=true y omitiendo las verificaciones de validación. Ten en cuenta que omitir las validaciones no garantiza que la transmisión se pueda ejecutar, y es posible que falle si la base de datos no tiene la configuración o los permisos necesarios.
|
| ¿Puedo reiniciar una transmisión con errores? | Para corregir un flujo con el estado También puedes recuperar una transmisión con el estado |
| ¿Datastream bloquea las tablas de la base de datos? | No. Datastream no necesita bloquear las tablas. |
| En las páginas de limitaciones de cada fuente, se especifica que las transmisiones pueden tener hasta 10,000 tablas. ¿Esto significa que Datastream no puede ejecutar operaciones de CDC en paralelo para más de 10,000 tablas al mismo tiempo? | No. El límite mencionado es por transmisión. Puedes tener varias transmisiones con una cantidad total de tablas que supere las 10,000. |
Comportamiento y limitaciones de la fuente de MySQL
| Pregunta | Respuesta |
|---|---|
| ¿Cómo obtiene Datastream los datos de MySQL? | Datastream usa el registro binario de MySQL para extraer los eventos de cambio de MySQL. |
| ¿Datastream admite instancias de réplica de lectura de Cloud SQL para MySQL? | Sí, Datastream admite instancias de réplica de lectura para las versiones 5.7 y 8.0 de Cloud SQL para MySQL. Puedes habilitar el registro binario en estas instancias. Para ello, ejecuta el siguiente comando de gcloud CLI: gcloud sql instances patch INSTANCE_NAME -- enable-bin-log Para obtener más información, consulta Registro binario en réplicas de lectura. |
| ¿Qué permisos mínimos necesita Datastream para replicar datos de una base de datos de MySQL de origen? | Debes otorgar los siguientes permisos a tu usuario de Datastream para replicar datos de una base de datos de MySQL:
|
| ¿Datastream admite la compresión de registros binarios? | No, Datastream no admite la compresión de eventos de transacciones con la compresión de transacciones de registros binarios. Inhabilita la compresión de transacciones de registro binario para usar la funcionalidad de captura de datos modificados para MySQL en Datastream. |
Tu organización no permite otorgar el permiso SELECT en todas sus tablas y bases de datos. ¿Puedes seguir usando Datastream? |
Puedes otorgar el permiso GRANT SELECT ON DATABASE_NAME.TABLE_NAME TO USER_NAME@'%'; GRANT SELECT ON DATABASE_NAME.* TO USER_NAME@'%'; Reemplaza lo siguiente:
Si deseas restringir los permisos a un nombre de host en particular, reemplaza el carácter |
Comportamiento y limitaciones de la fuente de Oracle
| Pregunta | Respuesta |
|---|---|
| ¿Cómo obtiene Datastream los datos de Oracle? | Datastream usa Oracle LogMiner para extraer los datos de los registros de rehacer de Oracle. |
| ¿Datastream requiere una licencia GoldenGate de Oracle? | No. Datastream no requiere una licencia de GoldenGate porque usa Oracle LogMiner para leer los datos de los registros de rehacer de la base de datos. |
| ¿Qué sucederá cuando ya no se admita Oracle LogMiner? | Oracle LogMiner aún se admite en todas las versiones de Oracle con disponibilidad general, y Datastream seguirá admitiendo LogMiner en todas las versiones futuras. Oracle descontinuó la compatibilidad con la opción CONTINUOUS_MINE de LogMiner. Sin embargo, Datastream no usa esta opción, por lo que esta baja no tiene ningún impacto en Datastream. |
| ¿Datastream admite la encriptación de datos en tránsito desde bases de datos de Oracle? | Datastream admite la encriptación de datos en tránsito basada en los servicios de Oracle Net. Datastream se ejecuta en modo |
| ¿Datastream admite la encriptación de capa de conexión segura (SSL) y seguridad de la capa de transporte (TLS)? | Sí, Datastream admite el protocolo TCPS para conexiones encriptadas con SSL/TLS a fuentes de Oracle. |
| ¿Datastream admite la arquitectura multiusuario de Oracle, específicamente las bases de datos de contenedores (CDB) y las bases de datos conectables (PDB)? | Sí, Datastream admite la arquitectura multiusuario de Oracle (CDB/PDB). Sin embargo, solo puedes replicar una base de datos conectable en una transmisión. |
Tu organización no permite otorgar el permiso GRANT SELECT ANY TABLE. ¿Puedes seguir usando Datastream? |
Si no puedes otorgar el permiso
Para transmitir cambios con Datastream, también necesitas acceso de lectura a todas las tablas incluidas en la transmisión. Para iniciar la transmisión, omite la validación con la API. Para obtener más información, consulta Cómo iniciar una transmisión. |
| ¿Datastream admite la replicación desde instancias de réplica de lectura de Oracle? | Datastream admite la replicación desde instancias de réplica de lectura de Oracle, siempre que la instancia esté configurada de acuerdo con los lineamientos de configuración. |
| ¿Datastream admite bases de datos de Oracle SCAN RAC? | Sí, así es. Sin embargo, no puedes establecer conectividad directa con las bases de datos mediante la función de nombre de acceso de cliente único (SCAN) en los entornos de Oracle Real Application Clusters (RAC) con Datastream. Para superar esta limitación, conéctate directamente a uno de los nodos o usa Oracle Connection Manager. También puedes crear una configuración de conectividad privada con soluciones de proxy inverso, como HAProxy. |
Comportamiento y limitaciones de la fuente de PostgreSQL
| Pregunta | Respuesta |
|---|---|
| ¿Cómo obtiene Datastream los datos de PostgreSQL? | Datastream usa la función de decodificación lógica de PostgreSQL para extraer los eventos de cambio de PostgreSQL. |
| ¿Datastream admite la replicación desde fuentes de AlloyDB para PostgreSQL o AlloyDB Omni? | Sí. Datastream admite ambas fuentes. Para obtener información sobre cómo configurar tu base de datos de origen de AlloyDB para PostgreSQL, consulta Configura una base de datos de AlloyDB para PostgreSQL. Para obtener información sobre cómo configurar tu base de datos de AlloyDB Omni de origen, consulta Configura una base de datos de PostgreSQL autoadministrada. |
| ¿Datastream admite la replicación desde una instancia de réplica de lectura de PostgreSQL? | Sí, Datastream admite la replicación desde instancias de réplica de lectura de PostgreSQL para la versión 16 y posteriores de PostgreSQL. Para obtener más información sobre cómo configurar réplicas de lectura, consulta Replicación desde réplicas de lectura. |
| ¿Datastream admite la seguridad a nivel de fila (RLS)? | Datastream no admite la replicación de tablas con la RLS habilitada. Sin embargo, puedes omitir esta limitación con la cláusula BYPASSRLS:
ALTER USER USER_NAME BYPASSRLS; Reemplaza USER_NAME por el nombre del usuario que Datastream usa para conectarse a la base de datos y para el que deseas omitir las políticas de RLS. |
| ¿Datastream admite operaciones de CDC simultáneas cuando se replica desde una fuente de PostgreSQL? | No. La replicación de PostgreSQL se basa en el concepto de ranuras de replicación, y estas no admiten conexiones simultáneas. Solo puede haber una tarea de CDC que lea desde la ranura de replicación a la vez. Por ejemplo, si borras una gran cantidad de registros de la base de datos de origen, la ranura de replicación podría sobrecargarse con eventos de eliminación. Los cambios posteriores en la fuente se retrasan hasta que se procesen los eventos de eliminación que ya están en la cola de la ranura de replicación. Para obtener información sobre el enfoque sugerido cuando se replican datos de transacciones grandes, consulta Diagnostica problemas. |
| ¿Datastream admite la encriptación de capa de conexión segura (SSL) y seguridad de la capa de transporte (TLS)? | Sí, Datastream admite conexiones encriptadas con SSL/TLS. |
Comportamiento y limitaciones de la fuente de SQL Server
| Pregunta | Respuesta |
|---|---|
| ¿Qué ediciones de SQL Server admite Datastream? | Datastream admite versiones de bases de datos de SQL Server que admiten la captura de datos modificados. Para obtener una lista completa de las versiones y ediciones compatibles de SQL Server, consulta Versiones. |
| ¿Cómo funciona la replicación de CDC de Datastream para las fuentes de SQL Server? | El proceso de transferencia de datos de Datastream utiliza registros de transacciones o tablas de cambios, según la configuración de la fuente. Para obtener más información, consulta Base de datos de SQL Server de origen. |
| ¿Qué permisos mínimos necesita Datastream para replicar datos de una base de datos de origen de SQL Server? | Debes otorgar los siguientes roles y permisos a tu usuario de Datastream para replicar datos de una base de datos de SQL Server: Para el método de CDC de tablas de cambios, haz lo siguiente:
Además, para el método de CDC de registros de transacciones, haz lo siguiente:
Para obtener información detallada sobre cómo configurar tu fuente, consulta las páginas de configuración respectivas para tu tipo de base de datos. |
| ¿Por qué necesitas configurar parámetros como cambiar los intervalos de sondeo y establecer una protección de truncamiento cuando usas registros de transacciones? | Cuando replicas datos de una fuente de SQL Server con registros de transacciones, si un registro se trunca antes de que Datastream lo lea, se produce una pérdida de datos. Cambiar los intervalos de sondeo y configurar la protección de truncamiento es opcional, pero proporciona una capa adicional de protección para garantizar que Datastream pueda leer los datos incluso en situaciones en las que se produzcan problemas de tiempo de inactividad o conectividad. Para obtener más información, consulta Configura una base de datos de SQL Server de origen. |
| ¿Qué método de CDC se debe seleccionar cuando se replica desde una fuente de SQL Server? | Puedes seleccionar uno de los dos métodos de CDC disponibles, según la configuración de tu base de datos de SQL Server de origen:
Para obtener más información, consulta Descripción general de SQL Server como fuente. |
Comportamiento y limitaciones de la fuente de Salesforce
| Pregunta | Respuesta |
|---|---|
| ¿Qué es una organización de Salesforce? | Una organización de Salesforce, también conocida como organización, es tu implementación dedicada de Salesforce, similar a una instancia de base de datos. Una organización tiene un conjunto definido de usuarios con licencia y almacena todos los datos y las aplicaciones de los clientes. |
| ¿Qué son los objetos, registros y campos de Salesforce? | Un objeto es una entidad de clase y es similar a una tabla en la nomenclatura de las bases de datos relacionales. Pueden ser estándar o personalizados. Los objetos estándar se incluyen en Salesforce de forma predeterminada, mientras que los objetos personalizados los crean los usuarios para almacenar datos específicos de su caso de uso. Un registro es una instancia específica de un objeto, similar a una fila en las bases de datos relacionales. Un campo es un atributo específico de un objeto, similar a una columna en las bases de datos relacionales. |
| ¿Datastream admite los campos calculados de Salesforce? | Datastream admite parcialmente los campos calculados de Salesforce (campos de fórmula). La replicación de estos campos está sujeta a ciertas restricciones. Para obtener más información, consulta Limitaciones conocidas. |
Comportamiento y limitaciones de la fuente de Salesforce Marketing Cloud
| Pregunta | Respuesta |
|---|---|
| ¿Qué es Salesforce Marketing Cloud? | Salesforce Marketing Cloud es una plataforma para ofrecer recorridos del cliente personalizados en varios canales, como correo electrónico, dispositivos móviles y redes sociales. Es un producto completamente independiente de la plataforma estándar de Salesforce. |
| ¿Cómo replica Datastream los datos de Salesforce Marketing Cloud? | Datastream usa las APIs de Salesforce Marketing Cloud para extraer datos según los intervalos de sondeo configurados. Admite la sincronización incremental para la mayoría de los objetos y las actualizaciones completas periódicas para objetos como las extensiones de datos. |
Comportamiento del destino de BigQuery
| Pregunta | Respuesta |
|---|---|
| ¿Cómo funcionan juntos Datastream y BigQuery para replicar los cambios de la base de datos de origen? | Datastream lee de forma continua el flujo de cambios de la base de datos de origen y transmite los eventos de actualización o inserción y eliminación a las tablas de destino de BigQuery con la API de Storage Write. Luego, BigQuery aplica los cambios a la tabla según la configuración de inactividad de la tabla. |
| ¿Cómo se aplican las operaciones del lenguaje de manipulación de datos (DML) en BigQuery? |
|
| ¿Cómo manejan Datastream y BigQuery el orden de los eventos? | BigQuery usa los metadatos de eventos y un número de secuencia de cambio (CSN) interno para aplicar los eventos a la tabla en el orden correcto. Para obtener más información sobre los metadatos de eventos, consulta Eventos y transmisiones. |
| ¿Cómo se calculan los costos de BigQuery cuando se usa con Datastream? | Los costos de BigQuery se calculan y cobran por separado de Datastream. Para aprender a controlar tus costos de BigQuery, consulta Precios de CDC de BigQuery. |
| ¿Cuál es el tamaño máximo de fila que admite Datastream cuando se transmiten datos a BigQuery? | El tamaño máximo de fila que admite Datastream es de 20 MB. |
Cuando transmites a BigQuery, las tablas tienen el prefijo . ¿Puedes cambiar este comportamiento para que las tablas de BigQuery sigan la misma estructura que tienen en la base de datos de origen? |
Cuando configuras conjuntos de datos para un destino de BigQuery, creas un conjunto de datos para cada esquema o un solo conjunto de datos para todos los esquemas. Cuando creas un conjunto de datos para cada esquema, cada esquema de la fuente se asigna a un conjunto de datos en BigQuery, y todas las tablas del esquema de origen se asignan a las tablas del conjunto de datos. Cuando seleccionas la opción de un solo conjunto de datos para todos los esquemas, los nombres de las tablas tienen el prefijo , según la convención de nombres de tablas en BigQuery. |
| ¿La CDC puede capturar cambios en el esquema de origen, por ejemplo, cuando se inserta o borra una columna en el origen? ¿Esos cambios se reflejan automáticamente en las tablas ya propagadas en los conjuntos de datos de BigQuery de destino? | Datastream detecta las columnas nuevas automáticamente y las agrega al esquema de destino para las filas nuevas, pero no para las que ya se replicaron en el destino. Las columnas borradas se ignoran y Datastream las propaga con valores NULL en el destino. Luego, puedes borrar estas columnas de forma manual en BigQuery. |
Comportamiento del destino de Cloud Storage
| Pregunta | Respuesta |
|---|---|
| ¿Cómo se crean los archivos en Cloud Storage? | Datastream crea una carpeta para cada tabla. En cada carpeta, Datastream rota el archivo (o crea uno nuevo) cada vez que alcanza el umbral de tamaño o tiempo definido por el usuario. Datastream también rota el archivo cada vez que se detecta un cambio de esquema. El nombre del archivo se compondrá de una clave de esquema única (basada en un hash del esquema), seguida de la marca de tiempo del primer evento del archivo. Por motivos de seguridad, estos nombres de archivo no están diseñados para que las personas los lean o comprendan. |
| Si los datos en Cloud Storage no están ordenados, ¿cómo se pueden reordenar los eventos antes de cargarlos en el destino? | Cada evento contiene varios campos de metadatos que identifican de forma única la fila en los archivos de registro y te permiten ordenar los eventos. Estos campos incluyen lo siguiente: Para fuentes de Oracle:
Para fuentes de MySQL:
Para fuentes de PostgreSQL:
Para obtener más información sobre los campos de metadatos, consulta Metadatos específicos de la fuente. |
| Si se crean varios archivos para la misma marca de tiempo, ¿en qué orden se deben procesar? | Debido a que no se garantiza el orden dentro de los archivos y entre ellos, la mejor manera de determinar el orden para procesar los archivos de la fuente es obtener todos los eventos de todos los archivos para la marca de tiempo específica y, luego, aplicar el orden con el método mencionado anteriormente en esta sección. |
| ¿Cómo se manejan las actualizaciones de clave primaria? ¿Hay información anterior y posterior en el evento? | Cuando cambia la clave primaria de una fila, Datastream genera dos eventos para el cambio: un UPDATE-DELETE y un UPDATE-INSERT. El evento UPDATE-DELETE representa los datos antes de la actualización y UPDATE-INSERT representa los datos después de la actualización. Para obtener más información sobre los metadatos específicos de la fuente, consulta Eventos y transmisiones. |
| ¿Cuál es el tamaño máximo de fila que admite Datastream cuando se transmiten datos a Cloud Storage? | El tamaño máximo de fila que admite Datastream es de 100 MB. |
Casos de uso
| Pregunta | Respuesta |
|---|---|
| ¿Cuáles son algunos casos de uso comunes de Datastream? | Datastream es un servicio de replicación y de CDC, lo que significa que es flexible en varios casos prácticos que pueden beneficiarse del acceso a datos de cambios en transmisión continua. Los casos de uso más comunes de Datastream son los siguientes:
|
Integraciones
| Pregunta | Respuesta |
|---|---|
| ¿Cómo se integra Datastream con los servicios de datos de Google Cloud ? | Datastream complementa y mejora el paquete de datos de Google Cloud proporcionando replicación de datos de CDC desde fuentes a varios servicios de Google Cloud . Gracias a su integración perfecta con estos servicios, Datastream se adapta al ecosistema más amplio de Google Cloud . Datastream se integra en los siguientes servicios de datos:
|
| ¿La plantilla de Datastream a BigQuery en Dataflow tiene alguna limitación para la cantidad de operaciones de lenguaje de manipulación de datos (DML)? | No. La plantilla usa la API de inserciones de transmisión para cargar datos en BigQuery. Como resultado, no hay límite para la cantidad de operaciones de DML. Sin embargo, se aplican algunas limitaciones de cuota. |
Seguridad y conectividad
| Pregunta | Respuesta |
|---|---|
| ¿Datastream es un servicio seguro para datos sensibles? | Datastream admite varios parámetros de configuración de conectividad privada y segura para proteger los datos en tránsito mientras se transmiten de un origen a un destino. Después de que se replican los datos, se encriptan de forma predeterminada y aprovechan los controles de seguridad de BigQuery o Cloud Storage. Todos los datos que Datastream almacena en el búfer se encriptan en reposo. |
| ¿Qué opciones de conectividad están disponibles para conectar tus fuentes a Datastream? | Existen tres tipos de métodos de conectividad que puedes configurar:
|
| ¿Cómo puedo limitar el procesamiento de datos sensibles de Datastream? |
Datastream permite especificar qué elementos de datos específicos (esquemas, tablas y columnas) de tu fuente quieres transmitir a un destino y qué elementos quieres excluir de la transmisión. Los registros de la base de datos pueden contener datos de cambios de elementos que se excluyeron en tu definición de transmisión. Debido a que no puedes filtrar estos elementos en la fuente, Datastream leerá, pero ignorará, los datos asociados con los elementos. |
| ¿Cómo mantiene Datastream la seguridad de las credenciales de la base de datos? | Ya sea que uses Secret Manager para almacenar tu contraseña o que la ingreses de forma manual cuando crees tu perfil de conexión, todos los metadatos del usuario se encriptan en tránsito y en reposo, y Google los almacena en sus sistemas de almacenamiento de propiedad exclusiva. Se hace un seguimiento y se audita el acceso a estos metadatos. |
¿Por qué en la página Crea una configuración de conectividad privada se indica que debes otorgar el rol roles/compute.networkAdmin a la cuenta de servicio de Datastream para crear una configuración de conectividad privada en una VPC compartida? |
El rol networkAdmin solo es necesario para crear el intercambio de tráfico entre VPC. Una vez que se establece el intercambio de tráfico, ya no necesitas el rol. Si tu organización no permite otorgar el rol networkAdmin a la cuenta de servicio de Datastream, crea un rol personalizado con los siguientes permisos específicos:
Selecciona rangos de IP de forma dinámica
Crea redes con intercambio de tráfico
Reserva direcciones IP
|
| ¿Puedo usar Private Service Connect para crear una configuración de conectividad privada? | Datastream admite interfaces de Private Service Connect como una configuración de conectividad privada. Una interfaz de Private Service Connect es un recurso que permite que una red de nube privada virtual (VPC) de productor inicie conexiones con un adjunto de red en una red de VPC de consumidor y reciba conexiones de este. Para obtener más información, consulta Configura interfaces de Private Service Connect. |
Supervisa Datastream
| Pregunta | Respuesta |
|---|---|
| ¿Cómo sé cuándo se copiaron todos mis datos históricos en el destino? | Datastream proporciona información sobre su estado actual en los archivos de registro. Se crea una entrada de registro para indicar cuándo se completa el reabastecimiento de una tabla. |
| La latencia aumenta de vez en cuando y, luego, disminuye de forma gradual con el tiempo. ¿Es normal que esto suceda? | Datastream escala verticalmente de forma automática cuando aumenta la capacidad de procesamiento de eventos que genera la fuente. Sin embargo, para proteger tanto la base de datos de origen como Datastream, existen límites en cuanto a la cantidad de conexiones y procesos simultáneos que Datastream puede abrir en cualquier momento. Se esperan aumentos repentinos temporales en la latencia cuando hay un aumento significativo en la capacidad de procesamiento de eventos, y se espera que disminuyan de forma gradual a medida que se procesa la lista de tareas pendientes de eventos. |
Precios
| Pregunta | Respuesta |
|---|---|
| ¿Cuáles son los precios de Datastream? | El precio de Datastream se basa en el volumen (GB) de datos procesados desde tu fuente hasta un destino. Para obtener más información sobre los precios de Datastream, consulta Precios. |
| ¿Cómo se calcula el tamaño de los datos? | La facturación se calcula en función del tamaño de los datos que procesa Datastream. Datastream solo cobra por los datos que se transmiten al destino. |
| Si usas Datastream con BigQuery o Dataflow, ¿por qué pagas? | Cada servicio tiene un precio y se cobra por separado. |
Información adicional
| Pregunta | Respuesta |
|---|---|
| ¿Qué sucede si tengo más preguntas o problemas con el uso de Datastream? | El equipo de asistencia de Google puede brindarte ayuda si tienes problemas para usar Datastream. Además, la guía de solución de problemas aborda los problemas habituales que puedes tener cuando usas Datastream. |
¿Qué sigue?
- Obtén más información sobre Datastream.
- Obtén información sobre los conceptos y las funciones clave de Datastream.
- Obtén más información sobre las fuentes que admite Datastream.
- Obtén información sobre los destinos que admite Datastream.