En esta guía, se proporciona una descripción general de BigQuery Connector para SAP, en la que se detallan sus capacidades y cómo facilita la integración de datos entre los sistemas de SAP y BigQuery. BigQuery Connector para SAP replica tus datos de SAP en BigQuery casi en tiempo real. Con tus datos en BigQuery, puedes realizar análisis con inteligencia artificial o aprendizaje automático en datos de aplicaciones en vivo de SAP. En BigQuery, también puedes integrar tus datos de SAP en datos de otras fuentes.
BigQuery Connector para SAP se instala en SAP Landscape Transformation Replication Server (SAP LT Replication Server) y usa las interfaces y capacidades estándar de SAP Landscape Transformation Replication Server. BigQuery Connector para SAP admite todas las fuentes de datos que admite SAP LT Replication Server.
Google Cloud desarrolló BigQuery Connector para SAP como una implementación de un complemento empresarial (BAdI) de SAP para SAP LT Replication Server, siguiendo el proceso del SDK de SAP LT Replication Server. El conector usa la función de captura de datos modificados (CDC) de SAP LT Replication Server.
Procesamiento de datos
BigQuery Connector para SAP solo permite una transformación de datos mínima, lo que cumple con un modelo de extracción, carga y transformación (ELT), en lugar de un modelo de extracción, transformación y carga (ETL). Para obtener más información sobre estos modelos, consulta Procedimientos y patrones para canalizaciones de datos.
El conector sugiere automáticamente los campos, los nombres de campo y los tipos de datos para la tabla de destino según los datos de origen. Antes de crear la tabla de BigQuery de destino, puedes modificar los valores sugeridos según sea necesario. Los nombres sugeridos para los campos de destino se basan en las descripciones de los campos de la tabla de origen. Si deseas obtener más información, consulta Opciones de nombres predeterminados para campos.
Aunque BigQuery Connector para SAP sugiere de forma automática los tipos de datos de BigQuery para la mayoría de los campos, los valores booleanos, de marca de tiempo y hexadecimales no se pueden interpretar de forma automática, por lo que debes asignarlos de forma manual. Para obtener más información, consulta Asignación de tipos de datos.
BigQuery Connector para SAP proporciona varios puntos de mejora en los que puedes insertar tus propias mejoras personalizadas en el código de BigQuery Connector para SAP. Para obtener más información, consulta Salidas de mejoras.
Si una tabla de destino aún no existe en BigQuery, se crea una con BigQuery Connector para SAP. Para la replicación de CDC a través de Pub/Sub, BigQuery Connector para SAP también crea automáticamente el tema, el esquema y la suscripción de Pub/Sub necesarios.
Rutas de replicación admitidas
BigQuery Connector para SAP admite las siguientes rutas de replicación:
- Replicación de la captura de datos modificados (CDC) a través de Pub/Sub
- Replicación de datos de transmisión
Replicación de captura de datos modificados (CDC) a través de Pub/Sub
Con la replicación de la captura de datos modificados (CDC) a través de Pub/Sub, tu tabla de BigQuery refleja directamente los cambios de las tablas de SAP de origen, actualiza los datos existentes y agrega registros nuevos para mantener los datos sincronizados. Este enfoque usa las capacidades de CDC de la API de Storage Write, lo que elimina la necesidad de realizar una deduplicación manual. La CDC se enfoca en capturar y aplicar solo los cambios (actualizaciones, eliminaciones y nuevas inserciones) que ocurren en tus tablas de origen de SAP.
Cuando se actualiza o borra un registro en una tabla de SAP, BigQuery Connector para SAP publica este cambio en un tema de Pub/Sub. Luego, una suscripción a BigQuery lo transmite directamente a la tabla de BigQuery correspondiente, y aplica el cambio sin duplicados.
Replicación de datos de transmisión
Con la replicación de datos de transmisión, tu tabla de BigQuery agrega continuamente registros nuevos, lo que refleja cada cambio como una entrada distinta en un modo de solo inserción. Si BigQuery recibe una actualización de un registro que ya existe en la tabla de BigQuery, BigQuery inserta una instancia nueva del registro en esa tabla sin modificar la instancia existente. La instancia del registro que se insertó de forma más reciente refleja el estado actual del registro en la tabla de origen.
Para la replicación de datos de transmisión, BigQuery Connector para SAP usa la API de transmisión de BigQuery.
En el siguiente diagrama, se ilustran las dos rutas de replicación de datos desde SAP a BigQuery con BigQuery Connector para SAP:
El desglose del flujo de datos y los componentes para cada ruta es el siguiente:
Extracción de datos y procesamiento inicial (común a ambas rutas)
- Fuente de datos de SAP: Origina los datos dentro del entorno de SAP.
- SAP LT Replication Server: Se conecta a la fuente de datos de SAP a través de una conexión RFC. Su función principal es extraer datos de CDC de la fuente de SAP.
- BigQuery Connector para SAP: Recibe los datos de CDC extraídos y determina qué ruta de replicación tomarán los datos según las configuraciones.
Ruta de replicación de CDC
Esta ruta se enfoca en replicar los cambios en una tabla de CDC de BigQuery a través de Pub/Sub:
- API de REST de Pub/Sub: BigQuery Connector para SAP publica los datos de CDC en Pub/Sub con la API de REST de Pub/Sub.
- Tema de Pub/Sub: Actúa como un agente de mensajes central, ya que recibe los datos de CDC publicados.
- Esquema de Pub/Sub: Asociado al tema de Pub/Sub, el esquema aplica la estructura de datos, lo que mantiene la coherencia de los datos.
- Suscripción de Pub/Sub a BigQuery: Se suscribe al tema de Pub/Sub y transmite los datos de CDC a la tabla de CDC de BigQuery.
- Tabla de CDC de BigQuery: Es el destino final de los datos de CDC en BigQuery. Aplica cambios (actualizaciones o eliminaciones) y, luego, inserta registros nuevos, lo que mantiene una vista actualizada y sin duplicados de los datos de SAP.
- Tema de mensajes no entregados: Es un tema de Pub/Sub al que se envían los mensajes que no se pueden procesar con la suscripción a BigQuery para su posterior investigación manual, lo que garantiza que no se pierdan datos.
Ruta de replicación de datos de transmisión (solo para inserciones)
Esta ruta está diseñada para insertar continuamente registros nuevos en una tabla de etapa de pruebas de BigQuery, y conservar cada cambio como una entrada nueva:
- API de REST de transmisión de BigQuery: BigQuery Connector para SAP transmite los datos directamente a BigQuery con la API de REST de transmisión de BigQuery.
- Tabla de etapa de pruebas de BigQuery: Es el destino de los datos de transmisión. En este modo de solo inserción, cada cambio (incluidas las actualizaciones y las eliminaciones de registros existentes de SAP) genera que se agregue una fila nueva a esta tabla.
Elige tu ruta de replicación
En esta sección, se comparan las rutas de replicación para ayudarte a decidir cuál se adapta mejor a tus necesidades de datos y requisitos operativos específicos.
Factor | Replicación de CDC a través de Pub/Sub | Replicación de datos de transmisión (modo de solo inserción) |
---|---|---|
Cómo funciona | Captura y aplica solo los cambios en la tabla de BigQuery. | Inserta cada cambio como un registro nuevo en la tabla de BigQuery. |
Resultado de BigQuery | Mantiene un solo registro actualizado, ya que actualiza o borra de forma nativa las filas existentes. | Cada cambio crea una entrada nueva, lo que genera varias versiones del mismo registro. |
Ventajas clave | Proporciona una alta coherencia de los datos con los datos más recientes. | Es útil para la transferencia básica y proporciona una auditoría histórica. |
Arquitecturas de implementación
Instala BigQuery Connector para SAP como un complemento empresarial (BAdI) dentro de una instancia de SAP LT Replication Server.
La instancia de SAP LT Replication Server puede estar en Google Cloud, en un entorno local o en otro proveedor de servicios en la nube. Te recomendamos que coloques tu instancia de SAP LT Replication Server lo más cerca posible de la fuente de datos de SAP. Trabaja con tu equipo de redes para asegurarte de que haya una latencia baja y una capacidad de procesamiento alta entre el sistema SAP de origen, SAP LT Replication Server y tu conjunto de datos de BigQuery.
En las siguientes secciones, se describen las arquitecturas comunes recomendadas para BigQuery Connector para SAP.
Arquitecturas de Deployment para la replicación de CDC a través de Pub/Sub
Arquitectura para fuentes de datos de SAP en Google Cloud
En el siguiente diagrama, se muestran dos ejemplos de instalaciones de SAP LT Replication Server en Google Cloud, con la fuente de datos de SAP en Google Cloud.
Para mostrar un ejemplo de cada arquitectura, una instalación usa una arquitectura independiente de SAP LT Replication Server, en la que SAP LT Replication Server se instala en un servidor independiente y la otra usa una arquitectura incorporada de SAP LT Replication Server, en la que SAP LT Replication Server se instala en el servidor del sistema de origen SAP.
Debido a que las instancias de SAP LT Replication Server se instalan enGoogle Cloud, BigQuery Connector para SAP se conecta directamente al extremo de API de Pub/Sub, sin necesidad de una conexión de Cloud Interconnect o Cloud VPN.
Arquitectura para fuentes de datos de SAP locales o en otro proveedor de servicios en la nube
En el siguiente diagrama, se muestran dos ejemplos de instalaciones de SAP LT Replication Server que se ejecutan de forma local o en otro proveedor de servicios en la nube.
Para mostrar un ejemplo de cada arquitectura, una instalación usa una arquitectura independiente de SAP LT Replication Server y la otra usa una arquitectura incorporada de SAP LT Replication Server.
En ambos ejemplos, SAP LT Replication Server se instala en el mismo entorno que la fuente de datos de SAP.
La conexión de BigQuery Connector para SAP en SAP LT Replication Server a Pub/Sub se proporciona a través de una conexión de Cloud Interconnect o Cloud VPN.
Vista detallada de la arquitectura del flujo de datos
En el siguiente diagrama, se muestra dónde BigQuery Connector para SAP se ajusta al flujo de datos de SAP LT Replication Server:
Las siguientes explicaciones numeradas corresponden a los números del diagrama:
- Después de inicializar SAP LT Replication Server, cuando se insertan, actualizan o borran registros en las tablas de origen, el activador de la base de datos registra los cambios en las tablas de registro.
- SAP LT Replication Server comprueba de forma continua las tablas de registro en busca de entradas nuevas a través de llamadas RFC.
- Si SAP LT Replication Server encuentra entradas nuevas, el motor de lectura lee los registros y llama al motor de asignación y transformación.
- El motor de asignación y transformación llama al motor de escritura, que invoca BigQuery Connector para SAP.
- El motor de escritura pasa los datos procesados a BigQuery Connector para SAP. Aquí, la implementación personalizada de la BAdI del conector transforma los registros de cambio de SAP en un formato JSON compatible con Avro.
Propaga campos de metadatos específicos de la siguiente manera:
_CHANGE_TYPE
: Se completa según la operación de SAP SLT. Por ejemplo,UPSERT
para inserciones o actualizaciones, yDELETE
para eliminaciones._CHANGE_SEQUENCE_NUMBER
: Es una marca de tiempo detallada para la ordenación cronológica y la resolución de conflictos en BigQuery.
- Luego, BigQuery Connector para SAP publica los mensajes transformados en Pub/Sub a través de la API de REST de Pub/Sub con HTTPS a través de una conexión segura.
- Cuando recibe los datos, Pub/Sub realiza las siguientes
acciones:
- Realiza verificaciones de validación según el esquema.
- Envía un código de estado HTTP 200 (
OK
) a BigQuery Connector para SAP para los mensajes válidos. - Inserta los registros en la tabla de destino de BigQuery a través de la suscripción a BigQuery.
- Captura los mensajes que no se pueden transferir a BigQuery en un tema de mensajes no entregados, lo que evita la pérdida de datos y simplifica la solución de problemas.
- La API de BigQuery Storage Write usa los campos
_CHANGE_TYPE
y_CHANGE_SEQUENCE_NUMBER
de los mensajes para aplicar los cambios. La API realiza operaciones de inserción, actualización o eliminación, lo que permite mantener los datos sincronizados en las tablas de BigQuery para el análisis de datos. - BigQuery Connector para SAP pasa el código de estado HTTP
OK
a SAP LT Replication Server, que borra las entradas replicadas de la tabla de registro y libera recursos en el sistema de origen SAP.
Arquitecturas de Deployment para la replicación de datos de transmisión
En el siguiente diagrama, se muestran dos ejemplos de instalaciones de SAP LT Replication Server en Google Cloud, con la fuente de datos de SAP en Google Cloud.
Para mostrar un ejemplo de cada arquitectura, una implementación usa una arquitectura independiente de SAP LT Replication Server, en la que SAP LT Replication Server se instala en un servidor independiente, y la otra usa una arquitectura incorporada de SAP LT Replication Server, en la que SAP LT Replication Server se instala en el servidor del sistema de origen SAP.
Debido a que las instancias de SAP LT Replication Server se instalan enGoogle Cloud, BigQuery Connector para SAP se conecta directamente al extremo de API de BigQuery, sin necesidad de una conexión de Cloud Interconnect o Cloud VPN.
En el diagrama, los sistemas SAP y BigQuery se muestran en diferentes proyectos de Google Cloud , pero puedes usar el mismo proyecto para ambos, si es necesario.
Arquitectura para fuentes de datos de SAP locales o en otro proveedor de servicios en la nube
En el siguiente diagrama, se muestran dos ejemplos de instalaciones de SAP LT Replication Server que se ejecutan de forma local o en otro proveedor de servicios en la nube.
Para mostrar un ejemplo de cada arquitectura, una instalación usa una arquitectura independiente de SAP LT Replication Server y la otra usa una arquitectura incorporada de SAP LT Replication Server.
En ambos ejemplos, SAP LT Replication Server se instala en el mismo entorno que la fuente de datos de SAP.
La conexión de BigQuery Connector para SAP en SAP LT Replication Server a BigQuery se proporciona a través de una conexión de Cloud Interconnect o Cloud VPN.
Vista detallada de la arquitectura del flujo de datos
En el siguiente diagrama, se muestra dónde BigQuery Connector para SAP se ajusta al flujo de datos de SAP LT Replication Server:
Las siguientes explicaciones numeradas corresponden a los números del diagrama:
- Después de inicializar SAP LT Replication Server, cuando se insertan, actualizan o borran registros en las tablas de origen, el activador de la base de datos registra los cambios en las tablas de registro.
- SAP LT Replication Server comprueba de forma continua las tablas de registro en busca de entradas nuevas a través de llamadas RFC.
- Si SAP LT Replication Server encuentra entradas nuevas, el motor de lectura lee los registros y llama al motor de asignación y transformación.
- El motor de asignación y transformación llama al motor de escritura, que invoca BigQuery Connector para SAP.
- BigQuery Connector para SAP realiza las siguientes acciones:
- Asigna los datos de SAP al nombre, los nombres de campo y los tipos de datos de BigQuery de la tabla de destino.
- Crea la tabla de BigQuery, si es necesario.
- Envía los registros a BigQuery en fragmentos a través de la API de transmisión de BigQuery.
- Cuando recibe los datos, BigQuery realiza las siguientes
acciones:
- Realiza verificaciones de validación.
- Inserta los registros en la tabla de destino.
- Envía un código de estado HTTP 200 (
OK
) a BigQuery Connector para SAP.
- BigQuery Connector para SAP pasa el código de estado HTTP
OK
a SAP LT Replication Server, que borra las entradas replicadas de la tabla de registro y libera recursos en el sistema de origen SAP.
¿Qué sigue?
Si deseas obtener información para planificar la instalación y configuración de BigQuery Connector para SAP, consulta la guía de planificación de BigQuery Connector para SAP.