Introducción

Hasta ahora, los equipos de datos que operaban en entornos regulados como el sector público o la banca debían construir y mantener pipelines de ETL personalizados para extraer información desde SAP, Salesforce o DynamoDB hacia sus almacenes de datos o lakes. Esto implicaba semanas de desarrollo, pruebas y monitoreo constante para garantizar integridad y rendimiento. Con la reciente disponibilidad del conector SAP OData y las integraciones cero-ETL de AWS Glue en las regiones AWS GovCloud (US-West) y AWS GovCloud (US-East), esta brecha técnica se cierra con soluciones nativas y gestionadas por AWS.

El cambio no es cosmético: elimina la necesidad de middleware de terceros, reduce el riesgo de fallos en pipelines complejos y permite a los equipos enfocarse en el análisis de datos en lugar de su movimiento. Para arquitectos de datos, SREs y equipos de DevOps que trabajan con cargas reguladas, esto significa menos código que mantener y más tiempo para derivar insights.

Qué ocurrió

AWS anunció oficialmente el 8 de julio de 2024 la disponibilidad del conector SAP OData y las integraciones cero-ETL para Amazon DynamoDB, Salesforce y SAP dentro de AWS Glue en las regiones AWS GovCloud (US-West) y AWS GovCloud (US-East). Estas regiones están diseñadas para cumplir con los requisitos de compliance más estrictos, como FedRAMP High, ITAR, y estándares de seguridad del Departamento de Defensa de EE.UU.

El lanzamiento incluye dos componentes clave:

  1. El conector SAP OData para AWS Glue:
Permite extraer datos directamente desde sistemas SAP que expongan servicios OData (versión 2.0 o 4.0), sin necesidad de desarrollar lógica de extracción personalizada ni depender de soluciones de middleware externas. El conector está certificado para operar con SAP ERP 6.0 EHP 8 y versiones posteriores, así como con SAP S/4HANA 1610 y superiores.

Según el anuncio oficial, el conector soporta autenticación SAML 2.0, OAuth 2.0 y Basic Authentication, lo que facilita su integración en entornos SAP modernos y legacy.

  1. Las integraciones cero-ETL (Zero-ETL):
Estas integraciones están totalmente gestionadas por AWS, lo que elimina la necesidad de diseñar, implementar y mantener pipelines de ETL tradicionales. El usuario puede configurar la replicación de datos entre DynamoDB, Salesforce o SAP hacia destinos como Amazon Redshift, Amazon S3 o Amazon OpenSearch Service mediante una interfaz no-code en la consola de AWS Glue.

AWS afirma que estas integraciones pueden reducir hasta un 80% el tiempo de ingeniería requerido para poner en marcha pipelines de datos, pasando de semanas a minutos.

Impacto para DevOps / Infraestructura / Cloud / Seguridad

Para equipos de DevOps e Infraestructura

El mayor impacto operativo es la reducción de la deuda técnica asociada a pipelines de ETL. Hasta ahora, un pipeline típico de replicación desde SAP hacia Redshift podía requerir:

  • Un AWS Lambda para la extracción.
  • Un AWS Step Functions para orquestar el flujo.
  • Un Amazon EMR o Glue Job para transformaciones.
  • Un Amazon CloudWatch para monitoreo y alertas.
  • Y finalmente, un Redshift Spectrum para consultas.

Con las integraciones cero-ETL, este stack se reduce a una configuración declarativa en la consola de AWS Glue. Además, al estar gestionadas por AWS, no hay que preocuparse por parches de seguridad, escalado o fallos en los componentes del pipeline. Esto es crítico en entornos donde la disponibilidad debe ser superior al 99.9%.

Para equipos que ya usan Amazon EKS, la integración se simplifica aún más. Los datos replicados pueden ser consumidos directamente desde pods en EKS mediante Amazon Redshift Data API o S3 Select, evitando la necesidad de exponer servicios internos de SAP al clúster Kubernetes.

Para equipos de Cloud

Los beneficios en costos son tangibles. Según el modelo de precios de AWS Glue (julio 2024), las integraciones cero-ETL tienen un costo de $0.10 por GB transferido desde DynamoDB o Salesforce, y $0.20 por GB desde SAP. Comparado con un pipeline tradicional que podría costar entre $500 y $2000 por mes en recursos de cómputo y almacenamiento intermedio, la diferencia es significativa.

Además, al eliminar la necesidad de mantener infraestructura dedicada para ETL (como instancias EC2 o clusters EMR), se reducen los costos indirectos de operaciones de seguridad, backups y recuperación ante desastres.

Para equipos de Seguridad

El conector SAP OData y las integraciones cero-ETL están diseñados para operar dentro del modelo de responsabilidad compartida de AWS, pero con un enfoque en seguridad desde el diseño:

  • Cifrado en tránsito: Todo el tráfico entre SAP y AWS Glue usa TLS 1.2 o superior.
  • Cifrado en reposo: Los datos en S3 y Redshift se cifran con AWS KMS usando claves gestionadas por el cliente (CMK).
  • Autenticación robusta: Soporte para IAM Roles, SAML 2.0 y OAuth 2.0, lo que permite integrarse con proveedores de identidad como Okta, Ping Identity o Microsoft Entra ID.
  • Auditoría: Las integraciones generan registros en AWS CloudTrail para todas las operaciones, incluyendo metadatos de la replicación (timestamp, cantidad de registros, etc.).

Para equipos que operan bajo NIST SP 800-53 o ISO 27001, el conector cumple con los controles SC-8 (Transmission Confidentiality), SC-12 (Cryptographic Key Management) y SI-4 (Information System Monitoring).

Detalles técnicos

Requisitos del conector SAP OData

ComponenteVersión mínimaNotas
**SAP ERP**6.0 EHP 8Requiere activación del servicio OData en el SAP Gateway
**SAP S/4HANA**1610Soporte para CDS Views en modo OData
**AWS Glue**4.0Disponible solo en regiones GovCloud (US-West/East)
**Autenticación**SAML 2.0, OAuth 2.0, Basic AuthRequiere configuración previa en SAP Identity Management
El conector utiliza el protocolo OData v4 como estándar principal, pero mantiene retrocompatibilidad con OData v2 para entornos legacy. Para SAP S/4HANA, AWS recomienda usar CDS Views expuestos como OData, ya que ofrecen mejor rendimiento y seguridad que los servicios OData tradicionales.

Configuración de la integración cero-ETL

El proceso de configuración se realiza en 3 pasos desde la consola de AWS Glue:

  1. Seleccionar la fuente:
– DynamoDB: Seleccionar tabla y región.

– Salesforce: Autenticar con OAuth 2.0 y seleccionar objeto (ej: Account, Opportunity).

– SAP: Ingresar endpoint OData (ej: https://<sap-server>/sap/opu/odata/sap/API_BUSINESS_PARTNER/) y credenciales.

  1. Configurar el destino:
– Amazon Redshift: Seleccionar clúster y esquema.

– Amazon S3: Definir bucket y formato (Parquet, ORC).

– Amazon OpenSearch: Configurar índice y políticas de retención.

  1. Programar la replicación:
– Frecuencia: Desde tiempo real (con Amazon EventBridge) hasta diario.

– Modo: Incremental (solo cambios) o Completo (replicación inicial).

Ejemplo de configuración en YAML (para automatización con AWS CDK):

Resources:
  ZeroEtlSapIntegration:
    Type: AWS::Glue::ZeroEtlIntegration
    Properties:
      Source:
        Type: SAPODATA
        ConnectionName: !Ref SapConnection
        Endpoint: "https://sap-gateway.example.com/sap/opu/odata/sap/API_BUSINESS_PARTNER/"
        ObjectPath: "BusinessPartner"
      Destination:
        Type: REDSHIFT
        ClusterIdentifier: "redshift-cluster-1"
        DatabaseName: "sap_data"
        TableName: "business_partners"
      Schedule:
        Type: CONTINUOUS  # o "DAILY", "WEEKLY"
      Tags:
        Environment: "GovCloud"

Limitaciones conocidas

  • SAP OData: No soporta replicación de datos binarios (como imágenes o PDFs) en el conector actual.
  • Salesforce: La integración cero-ETL no soporta objetos relacionados (Salesforce no permite SOQL joins en tiempo real).
  • DynamoDB: Requiere que la tabla tenga un GSI (Global Secondary Index) para replicación incremental eficiente.

Qué deberían hacer los administradores y equipos técnicos

1. Evaluar la infraestructura actual

  • Si usan SAP legacy (ERP 6.0):
Verificar que el SAP Gateway esté configurado y exponga los servicios OData necesarios. Ejemplo de comando en SAP:
  /n/IWFND/GW_CLIENT
  

Luego, ejecutar:

  CALL FUNCTION 'IWFND_GET_SERVICE'
    EXPORTING
      service_name = 'API_BUSINESS_PARTNER'
    IMPORTING
      service = lv_service.
  
  • Si usan DynamoDB:
Crear un GSI con LastEvaluatedKey como clave de partición para optimizar la replicación incremental.

2. Configurar el conector SAP OData

Pasos detallados para AWS GovCloud:

  1. Crear un rol IAM con permisos para AWS Glue y cifrado KMS:
   aws iam create-role \
     --role-name GlueSapConnectorRole \
     --assume-role-policy-document file://trust-policy.json \
     --tags Key=Environment,Value=GovCloud
   
  1. Configurar la conexión SAP en AWS Glue:
– Ir a AWS Glue Console > Connections > Add connection.

– Seleccionar tipo SAP (OData).

– Ingresar endpoint, credenciales y seleccionar el rol IAM.

  1. Probar la conexión:
   aws glue test-connection \
     --connection-name SapODataConnection \
     --connection-type SAP
   

3. Implementar la integración cero-ETL

  1. Desde la consola de AWS Glue:
– Ir a Zero-ETL Integrations > Create integration.

– Seleccionar fuente (ej: SAP) y destino (ej: Redshift).

– Configurar frecuencia (ej: cada 15 minutos).

  1. Para automatización (AWS CDK):
   import * as cdk from 'aws-cdk-lib';
   import * as glue from 'aws-cdk-lib/aws-glue';

   new glue.CfnZeroEtlIntegration(this, 'SapToRedshift', {
     source: {
       type: 'SAPODATA',
       connectionName: 'SapODataConnection',
       endpoint: 'https://sap-gateway.example.com/sap/opu/odata/sap/API_BUSINESS_PARTNER/',
       objectPath: 'BusinessPartner'
     },
     destination: {
       type: 'REDSHIFT',
       clusterIdentifier: 'redshift-cluster-1',
       databaseName: 'sap_data',
       tableName: 'business_partners'
     },
     schedule: {
       type: 'CONTINUOUS'
     }
   });
   

4. Validar y monitorear

  • Verificar datos en Redshift:
  SELECT COUNT(*) FROM sap_data.business_partners;
  
  • Configurar alertas en CloudWatch:
  Resources:
    GlueZeroEtlAlarm:
      Type: AWS::CloudWatch::Alarm
      Properties:
        AlarmName: "ZeroEtlSapToRedshift-Failure"
        MetricName: "FailedJobs"
        Namespace: "AWS/Glue"
        Statistic: "Sum"
        Period: 300
        EvaluationPeriods: 1
        Threshold: 1
        ComparisonOperator: "GreaterThanOrEqualToThreshold"
        Dimensions:
          - Name: "JobName"
            Value: "SapToRedshiftIntegration"
  

Conclusión

El lanzamiento del conector SAP OData y las integraciones cero-ETL en AWS Glue para regiones GovCloud (US) representa un avance significativo para equipos que operan en entornos regulados. Al eliminar la necesidad de construir y mantener pipelines de ETL personalizados, AWS permite a los equipos de DevOps, Infraestructura y Seguridad enfocarse en el valor real: derivar insights desde los datos.

Para arquitectos de datos, esto significa menos complejidad operativa y mayor agilidad. Para equipos de seguridad, la confianza en que las integraciones cumplen con los estándares más estrictos. Y para las organizaciones, una reducción tangible en costos y tiempo de implementación.

La recomendación final es clara: evaluar la infraestructura SAP actual, configurar el conector y migrar los pipelines tradicionales a las integraciones cero-ETL antes de que la deuda técnica crezca. AWS Glue ya hace el trabajo pesado; solo queda aprovecharlo.

FIN

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *