Está en la página 1de 15

UNIVERSIDAD TÉCNICA DE AMBATO

FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL


PERÍODO ACADÉMICO: ABRIL– AGOSTO/2020

Facultad de Ingeniería en Sistemas, Electrónica e Industrial


Carrera de Tecnologías de la Información

Título: Replicación Heterogénea


Carrera: Tecnologías de la Información
Ciclo Académico y Paralelo: Quinto “A”
Alumnos participantes: Remache Freddy
Sailema Cristina
Jonathan Núñez
Módulo y Docente: Sistemas de Bases de Datos Distribuidos
Ing. Edison Álvarez
Titulo:
REPLICACIÓN HETEROGÉNEA ENTRE SQL SERVER, POSTGRESQL Y MYSQL
Objetivos:
General
- Realizar una replicación heterogénea utilizando tres diferentes motores de base de
datos.

Específicos
- Realizar una replicación entre SQLServer y Postgres
- Realizar una replicación entre SQLServer y MySQL.
- Documentar todos los procesos que se realicen para realizar las replicaciones.
Resumen

Este trabajo se constituye de una parte práctica y también investigativa, en el presente documento se
pretende explicar la replicación heterogénea de una base de datos entre los gestores SQL Server,
PostgreSQL y MYSQL. Además, se detalla acerca de sus definiciones para tener un mejor concepto y
conocimiento acerca de este tipo de replicaciones y los beneficios que nos brindan al momento de su
aplicación.

Palabras clave: SQL SEVER, PostgreSQL, MYSQL, Replicación, Heterogéneas.

Introducción

La replicación de datos permite que cierta información de la base sean almacenados en más de un sitio sin
importar la ubicación geográfica, y su principal utilidad es que permite aumentar la disponibilidad de los
datos y mejora el funcionamiento de las consultas globales a la base de datos.

La replicación en SQL Server consiste, en el transporte de datos entre dos o más instancias de servidores.
Para ello SQL Server brinda un conjunto de soluciones que permite copiar, distribuir y posiblemente
modificar datos de toda la organización. Se incluyen, además, varios métodos y opciones para el diseño,
implementación, supervisión y administración de la replicación, que le ofrecen la funcionalidad y flexibilidad
necesarias para distribuir datos y mantener su coherencia.

En la replicación se utiliza una metáfora de la industria de la publicación para representar los componentes y
procesos de una topología de replicación. De esta forma el modelo se compone, básicamente, de los
siguientes elementos: publicador, distribuidor, suscriptores, publicaciones, artículos y suscripciones.

Materiales y Metodología

SYMMETRICDS: Es un software de replicación de bases de datos de código abierto que se centra en las
funciones y la compatibilidad entre plataformas [1].
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: ABRIL– AGOSTO/2020

SQLSERVER: Microsoft SQL Server. Es un sistema para la gestión de bases de datos creado por Microsoft, el
mismo se basa en el modelo relacional. Sel Server utiliza como lenguajes de consulta T-SQL y ANSI SQL.

Microsoft SQL Server revoluciona el concepto de Base de datos para la Empresa. Reúne en un sólo producto
la potencia necesaria para cualquier aplicación empresarial ,crítica junto con unas herramientas de gestión
que reducen al mínimo el coste de propiedad. Con Microsoft SQL Server, la empresa tiene todo de serie.

Dentro de sus características fundamentales se encuentran:

• Soporte de transacciones.
• Escalabilidad, estabilidad y seguridad.
• Soporta procedimientos almacenados.
• Incluye también un potente entorno gráfico de administración, que permite el uso de comandos
DDL y DML gráficamente.
• Permite trabajar en modo cliente-servidor, donde la información y datos se alojan en el servidor y
los terminales o clientes de la red sólo acceden a la información.
• Además permite administrar información de otros servidores de datos [2].

POSTGRESQL: Es un sistema de código abierto de administración de bases de datos del tipo relacional,
aunque también es posible ejecutar consultas que sean no relaciones. En este sistema, las consultas
relacionales se basan en SQL, mientras que las no relacionales hacen uso de JSON.

Características

Siendo uno de los sistemas de bases de datos más avanzados y usados del mundo, es obvio que PostgreSQL
debe tener algunas características bastante llamativas, así que vamos a echarle un vistazo a algunas de ellas.

• Es de código abierto: una de las principales razones por la cual PostgreSQL se ha vuelto tan popular
es que se trata de un sistema de código abierto. Esto ha permitido que una gran comunidad de
desarrolladores crezca para respaldarlo y continuar mejorándolo.
• Es gratuito: como cabe esperarse se trata de un sistema totalmente gratis, no tenemos que pagar
nada por utilizarlo. Cualquier persona es libre de descargar PostgreSQL desde su sitio web oficial y
darle uso sin ningún costo.
• Es multiplataforma: una característica genial que de hecho es común en muchos grandes proyectos
de código abierto es el hecho de que se trata de software multiplataforma, es decir, es un software
que puede correr bajo distintos entornos y sistemas operativos, y es compatible con muchos de los
servidores web más populares como Apache, Nginx y LiteSpeed por mencionar algunos.
• Es fácil de usar: la facilidad de uso de PostgreSQL es sin dudas otra de las principales características
de este sistema. Su administración se vuelve muy sencilla por medio de paneles con PgAdmin, que
básicamente viene a ser un phpMyAdmin orientado para PostgreSQL.
• Puede manejar un gran volumen de datos: una característica extremadamente importante de
PostgreSQL es su gran capacidad para el manejo de grandes volúmenes de datos, algo en lo que
otros sistemas como MySQL aún no hacen tan bien
• Soporte total de ACID: otro punto muy importante que no se debe dejar de lado es el cumplimiento
de ACID. ¿Qué es ACID? Estas siglas en inglés refieren a: atomicity, consistency, isolation y durability,
que si lo traducimos al español básicamente hablan de la atomicidad, consistencia, aislamiento y
durabilidad de las transacciones que se realizan en una base de datos [3].

MYSQL: Es el sistema de gestión de bases de datos relacional más extendido en la actualidad al estar basada
en código abierto. Desarrollado originalmente por MySQL AB, fue adquirida por Sun MicroSystems en 2008
y esta su vez comprada por Oracle Corporation en 2010, la cual ya era dueña de un motor propio InnoDB
para MySQL.

MySQL es un sistema de gestión de bases de datos que cuenta con una doble licencia. Por una parte es de
código abierto, pero por otra, cuenta con una versión comercial gestionada por la compañía Oracle.
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: ABRIL– AGOSTO/2020

Características de MySQL

MySQL presenta algunas ventajas que lo hacen muy interesante para los desarrolladores. La más evidente
es que trabaja con bases de datos relacionales, es decir, utiliza tablas múltiples que se interconectan entre sí
para almacenar la información y organizarla correctamente.

Al ser basada en código abierto es fácilmente accesible y la inmensa mayoría de programadores que
trabajan en desarrollo web han pasado usar MySQL en alguno de sus proyectos porque al estar
ampliamente extendido cuenta además con una ingente comunidad que ofrece soporte a otros usuarios.
Pero estas no son las únicas características como veremos a continuación:

• Arquitectura Cliente y Servidor: MySQL basa su funcionamiento en un modelo cliente y servidor. Es


decir, clientes y servidores se comunican entre sí de manera diferenciada para un mejor
rendimiento. Cada cliente puede hacer consultas a través del sistema de registro para obtener
datos, modificarlos, guardar estos cambios o establecer nuevas tablas de registros, por ejemplo.
• Compatibilidad con SQL: SQL es un lenguaje generalizado dentro de la industria. Al ser un estándar
MySQL ofrece plena compatibilidad por lo que si has trabajado en otro motor de bases de datos no
tendrás problemas en migrar a MySQL.
• Vistas: Desde la versión 5.0 de MySQL se ofrece compatibilidad para poder configurar vistas
personalizadas del mismo modo que podemos hacerlo en otras bases de datos SQL. En bases de
datos de gran tamaño las vistas se hacen un recurso imprescindible.
• Procedimientos almacenados. MySQL posee la característica de no procesar las tablas directamente
sino que a través de procedimientos almacenados es posible incrementar la eficacia de nuestra
implementación.
• Desencadenantes. MySQL permite además poder automatizar ciertas tareas dentro de nuestra base
de datos. En el momento que se produce un evento otro es lanzado para actualizar registros o
optimizar su funcionalidad.
• Transacciones. Una transacción representa la actuación de diversas operaciones en la base de datos
como un dispositivo. El sistema de base de registros avala que todos los procedimientos se
establezcan correctamente o ninguna de ellas. En caso por ejemplo de una falla de energía, cuando
el monitor falla u ocurre algún otro inconveniente, el sistema opta por preservar la integridad de la
base de datos resguardando la información [4].

Materiales:
• LAPTOP
• SYMMETRICDS
• SQL SERVER
• MYSQL
• POSTGRESQL

Resultados y Discusiones

NODO MASTER SQLSERVER

Primero en SQL Server creamos una base datos con el nombre de PRMERA y dentro de esta
base de datos crearemos una tabla llamada datos. Los campos que crearemos son id, nombre,
apellido.
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: ABRIL– AGOSTO/2020

Ahora instalaremos SymmetricDS el cual utilizaremos como intermediario para realizar la


replicación.
Iniciamos SymmetricDS y damos clic en Open Web Server para abrir la interfaz de
administración en el navegador.
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: ABRIL– AGOSTO/2020

Ingresamos y nos aparecer la siguiente pantalla en donde seleccionamos la opción de Master.

En la siguiente pantalla debemos escoger el motor de base de datos a la cual nos vamos a
conectar en este caso será SQL Server además debemos ingresar el nombre de la base de
datos y el usuario y contraseña con el cual nos logueamos a la base de datos.
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: ABRIL– AGOSTO/2020

Una vez establecida la conexión nos pedirá que ingresemos un usuario y una contraseña para
conectarnos a la interfaz de administración, por defecto podemos usar el usuario admin al cual
debemos asignarle una contraseña.
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: ABRIL– AGOSTO/2020

Al momento de crear el Master nos generará el siguiente link para poder conectar a los nodos
con el master
http://DESKTOP-I0802PA:31415/sync/master-1

Una vez hayamos ingresado nos aparecerá la siguiente pantalla.

Ahora nos dirigimos a Manager en donde veremos la conexión hacia la base de datos SQL
Server, lo cual significa que el Master ya esta registrado.

NODO 1 POSTGRES

Ahora en otra máquina instalaremos la base de datos Postgres

Una vez se haya instalado ejecutamos el programa pgAdmin 4, el cual nos permitirá acceder a
la interfaz web de administración de la base de datos.
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: ABRIL– AGOSTO/2020

Crearemos a igual que en SQL Server una base de datos con el nombre Primera. Y dentro una
tabla llamada datos con los mismos campos id, nombre y apellido.

Ahora procederemos a instalar SymmetricDS al igual que lo realizamos en la primera máquina.


Lo que cambiaremos es que configuraremos un Nodo y no un Master.
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: ABRIL– AGOSTO/2020

Seleccionamos la opción de Node para agregar la base de Postgres como un nodo.

Escogemos el motor de base de datos a la cual nos vamos a conectar en este caso será
Postgres, también ingresamos usuario y contraseña, para este ejemplo nos conectaremos con
el usuario postgres que es el que trae por defecto el motor de base de datos.
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: ABRIL– AGOSTO/2020

Ahora ingresaremos el link que se generó al momento de crear el Master, el link es el siguiente
http://DESKTOP-I0802PA:31415/sync/master-1

Una vez terminada la configuración podemos observar cómo ya está agregado el nodo.

Ahora no colocamos sobre el nodo agregado y escogemos la opción Send para agregar la tabla
con la cual vamos a trabajar en la replicación.
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: ABRIL– AGOSTO/2020

NODO 2 MYSQL

Creamos la base de datos a la cual llamaremos primera al igual que las demás y en esta base
de datos creamos la tabla datos

La tabla datos debe tener los mismos campos que las tablas del Master y del otro nodo.

Este nodo será local por lo cual en administración de Symmetric escogemos la opción de
Agregar un Nodo Local, al igual que con el Nodo 1 nos pedirá el motor de base de datos con el
cual nos vamos a conectar y las credenciales. Una vez conectado el nodo observaremos que ya
se ha agregado junto al Master y al otro Nodo.
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: ABRIL– AGOSTO/2020

Escogemos la tabla con la que vamos a trabajar, en este caso es la tabla datos.

PRUEBAS DE FUNCIONAMIENTO

Finalmente realizamos las pruebas para comprobar que está correctamente realizada la
replicación para esto agregaremos un dato en la tabla Master (SQL Server)
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: ABRIL– AGOSTO/2020

Ahora actualizamos la tabla Nodo 1 de Postgres para comprobar que los datos se han replicado
correctamente.

También Actualizamos la tabla del Nodo 2, y observaremos que se reflejan los cambios

En la tabla de la base de datos del Nodo1 ingresaremos un dato.

Actualizaremos la tabla Master para comprobar que se esté ejecutando correctamente la


replicación.
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: ABRIL– AGOSTO/2020

Ahora actualizamos la tabla del Nodo 2 para observar los cambios.

Finalmente agregaremos un dato en la tabla del Nodo 2

Verificamos en el Master que los cambios se reflejen.

También verificamos que los cambios se reflejen en el Nodo 1


UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: ABRIL– AGOSTO/2020

Conclusiones:

Realizamos la replicación entre los Motores de base de datos SQL Server, PostgreSQL y MySQL,
mediante este trabajo de replicación comprendimos que es posible implementarlo con
diferentes bases de datos.

Documentamos todo el proceso de la instalación y configuración con lo cual tendremos un


manual para próximos trabajos relacionados al tema.

Bibliografía

[1] «https://www.symmetricds.org/,» [En línea]. Available: https://www.symmetricds.org/. [Último acceso:


09 Agosto 2020].
[2] «https://www.ecured.cu/,» [En línea]. Available: https://www.ecured.cu/Microsoft_SQL_Server. [Último
acceso: 09 Agosto 2020].
[3] «https://blog.infranetworking.com/,» [En línea]. Available: https://blog.infranetworking.com/servidor-
postgresql/#Que_es_PostgreSQL. [Último acceso: 09 Agosto 2020].
[4] «https://openwebinars.net/,» [En línea]. Available: https://openwebinars.net/blog/que-es-mysql/.
[Último acceso: 09 Agosto 2020].

También podría gustarte