El complemento SAP ODP permite la integración masiva de datos de aplicaciones de SAP con BigQuery o con otros sistemas de destino compatibles a través de Cloud Data Fusion. El complemento tiene las siguientes funciones clave:
- Utiliza SAP ECC, SAP S/4HANA o SAP BW como sistema de origen.
- Utiliza la CDC (captura de datos modificados) de SAP para hacer un seguimiento de los datos nuevos y delta en las fuentes de datos, y extraerlos.
- Usa el modo de extracción por lotes
- Admite SAP DataSources y vistas de CDS de ABAP como fuentes de datos
Versiones de software compatibles
Software | Versiones |
---|---|
SAP S4/HANA | SAP S4/HANA 1909 y versiones posteriores |
SAP ECC | SAP ERP6 NW 7.31 SP16 y versiones posteriores |
SAP JCo | SAP JCo versión 3.0.20 y posteriores |
Cloud Data Fusion | 6.3 y versiones posteriores |
Para obtener más información sobre SAP en Google Cloud, consulta la Descripción general de SAP en Google Cloud.
Antes de comenzar
Configura los siguientes sistemas y servicios que usa el complemento de SAP ODP:
- Configura el sistema SAP ERP.
Este proceso incluye los siguientes pasos:
- Instala los archivos de transporte de SAP.
- Configura las autorizaciones y los roles de SAP necesarios.
- Configura el conector SAP Java Connector.
Implementa el complemento de ODP en Cloud Data Fusion.
- Importante: Elige una versión del complemento que sea compatible con la versión de Cloud Data Fusion.
- Si actualizas la versión de tu instancia o complemento de Cloud Data Fusion, evalúa el impacto de los cambios en el alcance funcional y el rendimiento de la canalización.
Establece la conectividad RFC entre Cloud Data Fusion y SAP.
- Asegúrate de que la comunicación esté habilitada entre la instancia de Cloud Data Fusion y el servidor de SAP.
- En el caso de las instancias privadas, configura el intercambio de tráfico entre redes de VPC.
- Tanto el sistema SAP como la instancia de Cloud Data Fusion deben estar en el mismo proyecto.
Cómo configurar el complemento
- Ve a la interfaz web de Cloud Data Fusion y haz clic en Studio.
- Verifica que esté seleccionada la opción Data Pipeline - Batch (no Realtime).
- En el menú Fuente, haz clic en SapODP. El nodo de SAP ODP aparece en tu canalización.
- Para configurar la fuente, ve al nodo de SAP ODP y haz clic en Properties.
Ingresa las siguientes propiedades. Para obtener una lista completa, consulta Propiedades.
- Ingresa una etiqueta para el nodo de SAP ODP, por ejemplo,
SAP ODP tables
. Ingresa los detalles de la conexión. Puedes configurar una conexión nueva y única, o una conexión existente y reutilizable.
Nueva conexión
Para agregar una conexión única a SAP, sigue estos pasos:
- Mantén desactivada la opción Usar conexión.
En la sección Connection, ingresa la siguiente información de la cuenta de SAP en estos campos:
- En el campo Nombre de referencia, ingresa un nombre para la conexión que identifique esta fuente para el linaje.
- En el campo Cliente de SAP, ingresa el nombre del cliente de una instancia o un entorno específicos dentro de SAP. Un administrador de SAP puede proporcionar el nombre del cliente.
- En el campo Lenguaje de SAP, ingresa un lenguaje de inicio de sesión de SAP. El valor predeterminado es EN (inglés).
Selecciona uno de los siguientes tipos de conexión.
- Directo (a través del servidor de aplicaciones de SAP). Si eliges este tipo predeterminado, ingresa información en los siguientes campos: Host del servidor de aplicaciones de SAP, Número del sistema de SAP y SAP Router.
- Balanceo de cargas (a través del servidor de mensajes de SAP) Si eliges este tipo, ingresa información en los siguientes campos: Host del servidor de mensajes de SAP, Número de puerto o servicio del servidor de mensajes de SAP, ID del sistema SAP (SID) y Nombre del grupo de acceso de SAP.
En el campo Contexto, selecciona el tipo de fuente de datos que usas.
En el campo Nombre de la fuente de ODP de SAP, ingresa el nombre de la fuente de datos que usas.
En el campo Tipo de extracción, selecciona el tipo de extracción de datos. El valor predeterminado es Completo (todos los datos).
Proporciona las credenciales de SAP: Pídele al administrador de SAP el nombre de usuario de inicio de sesión de SAP y la contraseña.
En el campo Ruta de acceso de Cloud Storage de la biblioteca de JCo, ingresa la ruta de acceso de SAP Java Connector (SAP JCo) en Cloud Storage que contiene los archivos de la biblioteca de SAP JCo que subiste.
Para generar un esquema basado en los metadatos de SAP que asigna tipos de datos de SAP a tipos de datos de Cloud Data Fusion correspondientes, haz clic en Obtener esquema. Para obtener más información, consulta Asignaciones de tipos de datos.
Opcional: Para optimizar la carga de transferencia de SAP, ingresa información en los siguientes campos:
- En el campo Nombre del suscriptor de SAP ODP, identifica al suscriptor para la extracción de datos de una DataSource válida.
- Con Opciones de filtro, puedes extraer registros según las condiciones de selección.
- En el campo Number of splits, puedes crear particiones para extraer registros de datos en paralelo, lo que mejora el rendimiento. La cantidad de divisiones puede afectar los procesos de trabajo de SAP y debe seleccionarse con cuidado.
- En el campo Tamaño del paquete, especifica la cantidad de registros que se extraerán en una sola llamada de red de SAP. El tamaño del paquete afecta el rendimiento y los recursos disponibles, por lo que se debe seleccionar con cuidado.
Conexión reutilizable
Para reutilizar una conexión existente, sigue estos pasos:
- Activa Use connection.
- Haz clic en Browse connections.
Haz clic en el nombre de la conexión.
Si no existe una conexión, para crear una conexión reutilizable, sigue estos pasos:
- Haz clic en Agregar conexión > SapOdp.
- En la página Crear una conexión de SapOdp que se abre, ingresa un nombre y una descripción para la conexión.
- En el campo Cliente de SAP, ingresa el nombre del cliente de una instancia o un entorno específicos en SAP. Un administrador de SAP puede proporcionar el nombre del cliente.
- En el campo Lenguaje de SAP, ingresa un lenguaje de inicio de sesión de SAP. El valor predeterminado es EN (inglés).
Selecciona uno de los siguientes tipos de conexión.
- Directo (a través del servidor de aplicaciones de SAP). Si eliges este tipo predeterminado, ingresa información en los siguientes campos: Host del servidor de aplicaciones de SAP, Número de sistema de SAP y SAP Router.
- Balanceo de cargas (a través del servidor de mensajes de SAP) Si eliges este tipo, ingresa información en los siguientes campos: Host del servidor de mensajes de SAP, Número de puerto o servicio del servidor de mensajes de SAP, ID del sistema SAP (SID) y Nombre del grupo de inicio de sesión de SAP.
En el nombre de la fuente de SAP ODP, ingresa el nombre de la DataSource de ODP de SAP.
Proporciona las credenciales de SAP: Solicita al administrador de SAP los valores de nombre de usuario de acceso a SAP y contraseña.
En el campo Ruta de acceso de Cloud Storage de la biblioteca de JCo, ingresa la ruta de acceso de SAP Java Connector (SAP JCo) en Cloud Storage que contiene los archivos de la biblioteca de SAP JCo que subiste.
En el campo Wait time, ingresa un tiempo de espera (en segundos) antes del siguiente reintento, por ejemplo,
60
.En el campo Recuento de reintentos, ingresa la cantidad máxima de intentos de reintento, por ejemplo,
3
.Opcional: En el campo Propiedades de conexión de SAP adicionales, ingresa pares clave-valor que deben anular los valores predeterminados de SAP JCo.
Haz clic en Crear.
- Ingresa una etiqueta para el nodo de SAP ODP, por ejemplo,
Propiedades
Propiedad | Se habilitó la macro | Propiedad obligatoria | Descripción |
---|---|---|---|
Etiqueta | No | Sí | Es el nombre del nodo en tu canalización de datos. |
Usar conexión | No | No | Usa una conexión reutilizable. Si se usa una conexión, no es necesario que proporciones las credenciales. Para obtener más información, consulta Administra conexiones. |
Nombre | No | Sí | Nombre de la conexión reutilizable. |
Cliente de SAP | Sí | Sí | Es la instancia o el entorno específicos en un sistema SAP. |
Idioma de SAP | Sí | Sí | Es el idioma en el que se muestran y procesan la interfaz de usuario y los datos de SAP. |
Tipo de conexión | No | Sí | Tipo de conexión SAP: Directa o Con balanceo de cargas. |
Host del servidor de aplicaciones SAP | Sí | No | Solo para el tipo de conexión Directa, este nombre de host proviene del servidor de aplicaciones de SAP, que funciona como una capa de middleware entre los clientes de SAP (como la interfaz web de SAP, los navegadores web o las apps para dispositivos móviles) y la base de datos subyacente. |
Número de sistema SAP | Sí | No | Solo para el tipo de conexión Directa, este número es el identificador único asignado a cada sistema SAP. Por ejemplo, 00 . |
SAP router | Sí | No | Solo para el tipo de conexión Directa, esta es la cadena del router para el servidor proxy, que proporciona un canal seguro para la comunicación entre los sistemas SAP y los clientes o socios externos. |
Host del servidor de mensajes de SAP | Sí | No | Solo para el tipo de conexión Balanceada, este es el nombre del host, que facilita el balanceo de cargas en varios servidores de aplicaciones en SAP. |
Número de puerto o servicio del servidor de mensajes de SAP | Sí | No | Solo para el tipo de conexión Load balanced, este es el puerto de red en el que el servidor de mensajes de SAP escucha las conexiones entrantes de los clientes y servidores de aplicaciones de SAP. |
ID del sistema SAP (SID) | Sí | No | Solo para el tipo de conexión Balanceada por carga, este ID se asigna a cada sistema SAP. |
Nombre del grupo de inicio de sesión de SAP | Sí | No | Nombre de la agrupación lógica o configuración de varios servidores de aplicaciones de SAP. El valor predeterminado es PUBLIC . |
Tipo de objeto | N/A | N/A | Los tipos de objetos admitidos son DataSources/Extractors o ABAP Core Data Services. |
Nombre de la fuente de SAP ODP | Sí | Sí | Nombre de la vista de CDS o de las DataSources de SAP (por ejemplo, 2LIS_02_ITM ). |
Tipo de extracción | Sí | Sí | El complemento admite los siguientes dos tipos de extracción de datos:
|
Nombre de usuario de inicio de sesión de SAP | Sí | Sí | Nombre de usuario para SAP Recomendación: Si el nombre de usuario cambia de forma periódica, usa una macro. |
Contraseña de inicio de sesión de SAP | Sí | Sí | Contraseña de SAP. Recomendación: Usa macros seguras. |
ID del proyecto de GCP | Sí | Sí | ID del proyectoGoogle Cloud . |
Ruta de acceso de GCS de la biblioteca de SAP JCo | Sí | Sí | Ruta de acceso a Cloud Storage en la que subiste los archivos de la biblioteca de SAP JCo. |
Obtener esquema | N/A | N/A | El complemento genera un esquema basado en los metadatos de SAP, que asigna los tipos de datos de SAP a los tipos de datos correspondientes de Cloud Data Fusion. Consulta Asignación de tipos de datos. |
Nombre del suscriptor de ODP de SAP | Sí | Sí | Suscriptor de ODP para la extracción de datos de una vista de CDS o DataSource de SAP válida. Debe tener lo siguiente:
|
Tiempo de espera | Sí | No | Esta propiedad permite que los ingenieros de datos seleccionen un tiempo de espera adecuado después de cada llamada de red de Cloud Data Fusion a SAP. |
Recuento de reintentos | Sí | No | Es la cantidad de intentos de reintento mientras se espera que se complete la llamada de red. |
Opciones de filtro (igual) | Sí | No | Es el valor que debe tener un campo para que se pueda leer. Las opciones de filtro son listas de nombres de campos de metadatos y sus pares de valores. Definen la condición de filtro que se aplicará cuando se lean datos de una fuente de datos de SAP. Solo se extraen los registros que satisfacen las condiciones. La clave del filtro corresponde a un campo del esquema. Debe ser de un tipo simple (no ARRAY , RECORD ni UNION ). Ejemplo de uso:Nombre del campo: MTART Valor: FERT |
Opciones de filtro (rango) | Sí | No | Son los límites inferior y superior del valor que debe tener un campo para poder leerse. Las opciones de filtro son listas de nombres de campos de metadatos y sus pares de valores. Definen la condición de filtro que se aplicará cuando se lean datos de una fuente de datos de SAP. Solo se extraen los registros que satisfacen las condiciones. La clave del filtro corresponde a un campo del esquema. Tiene el formato low AND high. Ejemplo de uso: Nombre del campo: ERDAT Valor bajo: 2023-11-01 Valor alto: 2023-11-30 |
Opciones de filtro (menor o igual) | Sí | No | Es el valor que un campo debe ser menor o igual que. Las opciones de filtro son listas de nombres de campos de metadatos y sus pares de valores. Definen la condición de filtro que se aplicará cuando se lean datos de una fuente de datos de SAP. Solo se extraen los registros que satisfacen las condiciones. La clave del filtro corresponde a un campo del esquema. Debe ser de un tipo simple (no ARRAY , RECORD ni UNION ). Ejemplo de uso:Nombre del campo: MATNR Valor: 10008 |
Opciones de filtro (mayor o igual) | Sí | No | Es el valor que debe superar un campo para que se lea. Las opciones de filtro son listas de nombres de campos de metadatos y sus pares de valores. Definen la condición de filtro que se aplicará cuando se lean datos de una fuente de datos de SAP. Solo se extraen los registros que satisfacen las condiciones. La clave del filtro corresponde a un campo del esquema. Debe ser de un tipo simple (no ARRAY , RECORD ni UNION ). Ejemplo de uso:Nombre del campo: MATNR Valor: 10008 |
Opciones de filtro (no es igual) | Sí | No | Define el valor que un campo no debe tener para que se pueda leer. Las opciones de filtro son listas de nombres de campos de metadatos y sus pares de valores. Definen la condición de filtro que se aplicará cuando se lean datos de una fuente de datos de SAP. Solo se extraen los registros que satisfacen las condiciones. La clave del filtro corresponde a un campo del esquema. Debe ser de un tipo simple (no ARRAY , RECORD ni UNION ). Ejemplo de uso:Nombre del campo: MTART Valor: FERT |
Cantidad de divisiones que se generarán | Sí | No | Crea particiones para extraer registros en paralelo. El motor de ejecución crea la cantidad especificada de particiones (y conexiones de SAP) mientras extrae los registros. Ten cuidado cuando aumentes este valor, ya que incrementa las conexiones simultáneas con SAP. Recomendación: Planifica las conexiones de SAP para cada canalización y la cantidad total de canalizaciones que se ejecutan de forma simultánea. Si el valor es 0 o se deja en blanco, Cloud Data Fusion elige un valor adecuado según la cantidad de ejecutores disponibles, los registros que se extraerán y el tamaño del paquete. |
Tamaño del paquete (en KB) | Sí | No | Es la cantidad de registros que se extraerán en una sola llamada de red de SAP. Es la cantidad de registros que SAP almacena en búfer en la memoria durante cada llamada de extracción de red. Ten cuidado cuando configures esta propiedad. Varias canalizaciones de datos que extraen datos pueden aumentar el uso de memoria, lo que provoca fallas debido a errores de Out of memory .
|
Propiedades de conexión adicionales de SAP | Sí | No | Establece propiedades adicionales de SAP JCo para anular los valores predeterminados de SAP JCo.
Por ejemplo, establecer jco.destination.pool_capacity = 10 anula la capacidad predeterminada del grupo de conexiones. |
Asignaciones de tipos de datos
En la siguiente tabla, se enumeran los tipos de datos de SAP con los tipos correspondientes de Cloud Data Fusion.
Tipo de datos SAP | Tipo de ABAP | SAP description | Tipo de datos de Cloud Data Fusion |
---|---|---|---|
INT1 (numérico) |
b | Número entero de 1 byte | int |
INT2 (numérico) |
s | Número entero de 2 bytes | int |
INT4 (numérico) |
i | Número entero de 4 bytes | int |
INT8 (numérico) |
8 | Número entero de 8 bytes | long |
DEC (numérico) |
p | Número empaquetado en formato BCD (DEC) | decimal |
DF16_DEC , DF16_RAW (numérico) |
a | Punto flotante decimal de 8 bytes, IEEE 754r | double |
DF34_DEC , DF34_RAW (numérico) |
e | Punto flotante decimal de 16 bytes, IEEE 754r | double |
FLTP (numérico) |
f | Número de punto flotante binario | double |
CHAR , LCHR (personaje) |
c | Cadena de caracteres | string |
SSTRING , GEOM_EWKB (personaje) |
string | Cadena de caracteres | string |
STRING (carácter) |
string | CLOB de string de caracteres | bytes |
NUMC , ACCP (personaje) |
n | Texto numérico | string |
RAW , LRAW (byte) |
x | Datos binarios | bytes |
RAWSTRING (byte) |
xstring | BLOB de cadena de bytes | bytes |
DATS (Fecha y hora) |
d | Fecha | fecha |
TIMS (Fecha y hora) |
t | Hora | hora |
TIMS (Fecha y hora) |
utcl | Utclong), TimeStamp | timestamp |
Limitaciones
Para asegurarte de que las canalizaciones se definan y ejecuten correctamente, revisa las siguientes limitaciones del complemento:
- No se admiten tamaños de paquetes superiores a 50 KB.
- Las fuentes de datos que no admiten la extracción delta fallarán en el modo de sincronización.
- En una fuente de datos personalizada, si no se controla el tamaño del paquete, la canalización falla en las extracciones de datos grandes.
Casos de uso
Se admiten dos contextos de extracción:
- DataSources o Extractores (SAPI)
- Contexto de ODP de CDS de ABAP (ABAP_CDS)
El complemento de ODP admite las siguientes fuentes de datos estándar y personalizadas para ambos contextos:
Fuente de datos del ODP | Contexto | Extracción completa | Extracción de Delta |
---|---|---|---|
SAP Standard pre-delivered | SAPI | Admitido | Admitido |
Personalizado (Z*) | SAPI | Admitido | Admitido |
SAP Standard pre delivered | ABAP_CDS | Admitido | Admitido |
Personalizado (Z*) | ABAP_CDS | Admitido | Admitido |
Notas de la versión
¿Qué sigue?
- Obtén más información sobre Cloud Data Fusion.
- Obtén más información sobre SAP en Google Cloud.