Ahora que está familiarizado con el proceso básico de replicación, implementemos la replicación de una manera más sostenible.
Es posible configurar y actualizar la replicación ejecutando sentencias SQL en la consola SQL. Pero este enfoque significa que los objetos que se crean en la base de datos serán propiedad de su ID de usuario y esto puede provocar problemas cuando otros necesiten hacerse cargo de los objetos. Además, el transporte de los objetos de base de datos no es posible.
Se recomienda desarrollar los objetos mediante archivos de origen y, a continuación, crear/desplegar para generar los artefactos de la base de datos en un contenedor HDI.
La tarea de replicación

Para gestionar replicaciones, cree un archivo .hdbreptask para definir los metadatos de la replicación. Los metadatos describen:
- Fuente remota
Nombre del objeto de fuente remota utilizado para acceder a los datos fuente.
- Objeto fuente remoto
Nombre de la tabla, vista o archivo al que desea acceder.
- Tabla destino
Nombre de la tabla en la que se almacenarán los datos replicados
- Comportamiento de replicación
Puede optar por replicar todos los datos solo una vez. Esto suele denominarse carga inicial. Esto es útil si desea una instantánea de sus datos. También podría seleccionar la replicación en tiempo real sin carga inicial si solo necesita datos futuros. A continuación, también podría querer replicar modificaciones en la estructura de la tabla.
Las opciones disponibles son las siguientes:
- Sin transferencia de datos
Si solo desea una copia de la estructura de datos fuente, pero sin los datos fuente. Esto equivale a una sentencia CREATE TABLE <...(new table)> like <...(existing table)>.
- Solo carga inicial
Si solo desea una copia de los datos actuales, pero no una replicación de datos futuros. Esto se denomina instantánea.
- Inicial + tiempo real
Lo más probable es que desee datos actuales y modificaciones futuras.
- Inicial + tiempo real con estructura
Es la misma que la opción anterior, pero también replicará las modificaciones en la estructura de la tabla de origen. Solo funciona para tablas.
- Tiempo real
Solo podría necesitar datos futuros, pero no datos actuales.
- Solo en tiempo real con estructura
Igual que la opción anterior, pero con la replicación de la estructura de tabla.
Una vez creada/desplegada, la tarea de replicación genera los diferentes objetos necesarios en la base de datos de SAP HANA. Esto incluye:
- Una tabla virtual
- Una tabla de destino
- Un procedimiento de inicio (.START_REPLICATION) para configurar la replicación
- Un segundo procedimiento (.RS_SP) para ejecutar comandos de suscripción individuales
Debe llamar el procedimiento de inicio principal para crear la suscripción remota, los desencadenadores, etc. La tarea de replicación solo ejecuta una carga inicial.
El segundo procedimiento se puede llamar para mantenimiento o para ejecutar comandos individuales como Restablecer, Soltar o cualquier otro paso de suscripción.
Configuración del proyecto
Si su destino es una base de datos SAP HANA local, utilice Web IDE para SAP HANA.
Si su destino es una base de datos de SAP HANA Cloud, utilice SAP Business Application Studio.
Para ambas herramientas, primero debe configurar un proyecto y un módulo HDB para gestionar sus objetos de desarrollo.
Para acceder a las fuentes remotas, se necesitan los siguientes pasos:
- Cree y luego añada un servicio proporcionado por el usuario (UPS) como recurso en su archivo mta.yaml.
- Añada privilegios en un archivo .hdbGrant.
Puede crear el servicio proporcionado por el usuario directamente en SAP Business Application Studio como se muestra en la siguiente captura de pantalla:

Nota
Si su destino es una base de datos local, puede crear el servicio proporcionado por el usuario en XSA Cockpit:

Nota
Tenga cuidado de añadir la etiqueta "hana" si la plantilla no la proporciona.
La plantilla no proporciona ningún parámetro de esquema, pero también puede especificar un nombre de esquema específico.
El archivo .hdbGrant debe incluir las autorizaciones necesarias tanto para el propietario del objeto como para el usuario de la aplicación como se muestra en el siguiente ejemplo:

Inicie el siguiente vídeo para aprender a configurar el proyecto en Business Application Studio:
Inicie el siguiente vídeo para aprender a configurar el proyecto en SAP Web IDE, si su destino es una base de datos local:
Creación de tarea de replicación
Una vez que su proyecto esté configurado correctamente, puede crear la tarea de replicación utilizando el editor basado en formularios:

Los pasos son los siguientes:
- Conectarse a la fuente remota
- Seleccione el objeto fuente deseado
- Seleccionar propiedad de comportamiento de replicación
- Crear/Desplegar
- En el Explorador de base de datos, ejecute el procedimiento de inicio generado.
- Modificar los datos fuente
- Verifique la tabla de destino
Inicie el siguiente vídeo para aprender a crear una tarea de replicación: