0% encontró este documento útil (0 votos)
6 vistas6 páginas

Rendimiento de Herramientas de Replicación

Cargado por

carlos moreira
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
6 vistas6 páginas

Rendimiento de Herramientas de Replicación

Cargado por

carlos moreira
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Volumen 1, Número 2.

(Julio - Dicimbre 2019) e -ISSN: 2661-6688


La Revista Técnico - Científica de la FIE.
Vol.2,
Revista N°2.- Científica
Técnico (Julio - Diciembre 2020)
PERSPECTIVAS

Revista Perspectivas
1
Volumen 2, Número 2. (Julio - Diciembre 2020) e -ISSN: 2661-6688

Revista Técnico - Científica PERSPECTIVAS


Revista Técnica-Científica Perspectivas
ISSN: 1390-7204
Artículo Recibido: dd/mm/aaaa – Aceptado: dd/mm/aaaa

sta Perspectivas
Rendimiento de herramientas de replicación libres
para la implementación de un sistema integrado de
alta disponibilidad orientado a la gestión de
tutorías académicas en Instituciones de Educación
Superior

Performance of free replication tools for the implementation of an


integrated high availability system oriented to the management of
academic tutoring in Higher Education Institutions
Diego Palacios Campana 1,2, Gonzalo Allauca Peñafiel 2, Danny Velasco Silva 2, Estuardo Cajilema
Guamán 2, Rubén Saltos Chávez 1.
1
Escuela Superior Politécnica de Chimborazo, Dirección de Tecnologías dela Información y Comunicación,
Riobamba, Ecuador.
2
Universidad Nacional de Chimborazo, Facultad de Ingeniería, Riobamba, Ecuador.

Email: dpalacios@[Link], gallauca@[Link], dvelasco@[Link],


[Link]@[Link], [Link]@[Link]

Resumen- Se realizó un análisis comparativo de las on the Apache JMeter tool, simulating 282 requests per second
herramientas de replicación de datos Slony-I y PgPool-II, para in an instant of time, observing that PgPool-II consumed less
seleccionar la mejor alternativa en la implementación de un resources with an average of 2.80%, however, Slony-I was more
sistema integrado de alta disponibilidad para la gestión de effective at carry out transactions with just 0.009% error.
tutorías académicas en Instituciones de Educación Superior. Se
establecieron como parámetros de estudio el tiempo de respuesta Keywords- Replication, Slony, PgPool, PrimeFaces, PostgreSQL
frente a la ejecución de sentencias SQL el uso de CPU, memoria,
y disco duro. Se desarrolló una aplicación web N-Capas I. INTRODUCCIÓN
utilizando PrimeFaces y PostgreSQL, integrada a un Sistema
Académico a través de servicios web SOAP. Para la realización En el ámbito de las bases de datos distribuidas, la
de las pruebas se configuraron servidores de base de datos de replicación es un conjunto de tecnologías destinadas a la
tipo master y esclavo bajo un entorno Linux. Las pruebas de copia y distribución de datos y objetos de una base de datos a
rendimiento estuvieron basadas en la herramienta Apache otra, para luego sincronizar ambas bases de datos y lograr
JMeter, simulando 282 peticiones por segundo en un instante de mantener su coherencia. La réplica permite distribuir datos a
tiempo, observándose que PgPool-II consumió menos recursos diferentes ubicaciones y a usuarios remotos o móviles
con un promedio de 2,80%, sin embargo, Slony-I fue más eficaz
al realizar las transacciones con apenas un 0,009% de error.
mediante redes de área local y de área extensa, conexiones de
acceso telefónico, conexiones inalámbricas e internet [1].
Palabras Clave- Replicación, Slony, PgPool, PrimeFaces, La replicación es un proceso clave para lograr el
PostgreSQL comportamiento exitoso de las bases de datos, ya que su
funcionalidad ayuda a garantizar la consistencia de los datos y
Abstract- A comparative analysis of the Slony-I and PgPool- permite que el motor de base de datos siga funcionando en
II data replication tools was carried out, to select the best caso de fallas de la red. Esto implica copiar y mantener cada
alternative in the implementation of an integrated system of high manipulación de datos desde una ubicación a los otros nodos
availability for the management of academic tutoring in Higher que se actualizarán. Por lo tanto, la configuración de la red y
Education Institutions, established as Study parameters the la comunicación de nodos tienen un gran impacto en el
response time against the execution of SQL statements, the use
rendimiento de la replicación. Sin embargo, los modelos
of CPU, memory, and hard disk. An N-Layers web application
was developed using PrimeFaces and PostgreSQL, integrated internos para la replicación provistos en la mayoría de los
into an Academic System through SOAP web services. To carry motores carecen de flexibilidad y sufren otros problemas
out the tests, master and slave database servers were configured como las comunicaciones de cuello de botella. Actualmente
under a Linux environment. The performance tests were based existe una diversidad de herramientas que facilitan el proceso

Fecha de Recepción. 31 - 03 - 2020 Fecha de Aceptación. 15 – 06 – 2020


DOI: 10.47187/perspectivas.vol2iss2.pp2-6.2020

2
e -ISSN: 2661-6688 Volumen 2, Número 2. (Julio - Diciembre 2020)
Revista Técnica-Científica Perspectivas
Revista Técnico - Científica PERSPECTIVAS ISSN: 1390-7204
Artículo Recibido: dd/mm/aaaa – Aceptado: dd/mm/aaaa

de replicación de datos logrando mejorar el rendimiento y


proteger la disponibilidad de las aplicaciones, ayudando al
auge, cada día más creciente, de sistemas de base de datos
distribuidos. Una correcta identificación de las necesidades de
replicación asegura la consistencia de los datos y disminuye
los errores de replicación [2] [3].
Slony-I es un sistema de replicación maestro-esclavo que
incluye todas las características y capacidades necesarias para
replicar grandes bases de datos a un número razonablemente
limitado de sistemas esclavos. Es un sistema diseñado para su
uso en centros de datos y sitios de respaldo, donde el modo
normal de operación es que todos los nodos están disponibles
[4].
PgPool-II es un middleware que se ubica entre los
servidores y un cliente de base de datos PostgreSQL,
proporcionando las siguientes características: agrupación de
Fig. 1. Arquitectura de la Solución del Sistema integrado de alta
conexiones, equilibrio de carga, limitación del exceso de disponibilidad para la gestión de tutorías académicas en instituciones
conexiones y replicación; esta última característica se de Educación Superior
consideró en esta investigación [5].
Con el avance de la tecnología, tanto en el ámbito del En base a éste contexto, y, con el propósito de contribuir
desarrollo web y de las bases de datos, se han incorporado a la automatización de los procesos académicos y a los
nuevas tecnologías, que permiten el desarrollo de soluciones indicadores del modelo para la evaluación de las carreras,
informáticas mucho más robustas, escalables, productivas, presentado por el Consejo de Aseguramiento de la Calidad de
seguras, flexibles, con un mayor rendimiento y de alta la Educación Superior (CACES), en la Universidad Nacional
disponibilidad. Java 2 Enterprise Edition (J2EE) es una de Chimborazo (UNACH) se implementó el Sistema
plataforma y filosofía de diseño para grandes sistemas integrado de alta disponibilidad para la gestión de tutorías
empresariales [6]. académicas orientado a las Instituciones de Educación
JavaServer Faces (JSF) es un marco de componentes de superior, para lo cual en el desarrollo de la solución se aplicó
interfaz de usuario (UI) para aplicaciones web J2EE que, una la arquitectura N Capas, utilizando tecnologías con versiones
vez adoptadas, permite a las organizaciones migrar desde estables de acuerdo a la tendencia de uso establecida en
tecnologías antiguas, como plataformas basadas en caracteres google trends, como es el caso de Netbeans 8.0, JSF2.2,
para terminales virtuales, a plataformas y tecnologías más PrimeFaces 6.2.27 y Apache Tomcat 8.0. Posteriormente se
actualizadas basadas en estándares, como JSF y Java [7]. JSF desarrollaron servicios web para su integración con un
es considerado como un framework, el cual tiene como sistema académico heterogéneo implementado bajo software
propósito hacer más con menos código, para agilizar el propietario, y por último se realizó un análisis comparativo de
desarrollo [8]. las herramientas de replicación de datos Slony-I y PgPool-II
PrimeFaces es una suite de componentes open source de con respecto al rendimiento a través de pruebas de estrés
JSF, que provee un conjunto de componentes enriquecidos, utilizando Apache JMeter.
con Ajax incorporado, ligero, con soporte a través de La solución permite llevar un control y seguimiento de las
Atmosphere Framework, con un kit de UI Mobile para la tutorías académicas in situ o virtuales, de tipo individual o
creación de aplicaciones web móviles, y con mucha grupal, dirigidas a los estudiantes con inconvenientes en tres
documentación de apoyo para el desarrollador [9]. tipos de dimensiones: académica, profesional y personal.
Por otro lado, las tutorías académicas en las instituciones Cuenta con los siguientes módulos: integración,
de educación superior significan un proceso educativo administración, planificación de actividades, gestión de
dirigido a los estudiantes, con el objetivo de orientar, atender actividades y reportes.
y acompañar de forma individual o grupal, en el desarrollo
académico conforme a dimensiones basadas en criterios y II. METODOLOGÍA
mecanismos de monitoreo y control, a fin de fortalecer su
formación integral. A. Arquitectura de la solución
En el Art. 15 componente 1 literal. b) 2do. Párrafo del El estudio de rendimiento de las herramientas de
Reglamento de Régimen Académico del Consejo de replicación se la realizó en función al tiempo de respuesta
Educación Superior (CES), se menciona: Son actividades de frente a la ejecución de sentencias SQL, uso de CPU, uso de
aprendizaje colaborativo, entre otras: la sistematización de memoria, y uso de disco duro, con la finalidad de obtener una
prácticas de investigación-intervención, proyectos de arquitectura de la solución como se describe en la Figura 1.
integración de saberes, construcción de modelos y prototipos,
proyectos de problematización y resolución de problemas o B. Materiales
casos. Estas actividades deberán incluir procesos colectivos La infraestructura sobre la cual se implementó la solución
de organización del aprendizaje con el uso de diversas tecnológica es una red LAN de tres capas como se muestra en
tecnologías de la información y la comunicación, así como la Figura 2. En donde se puede observar como parte de la
metodologías en red, tutorías in situ o entornos virtuales [10]. solución un servidor web que alojará el sistema de gestión de
tutorías, un servidor web que aloja los servicios web para la

3
Volumen 2, Número 2. (Julio - Diciembre 2020) e -ISSN: 2661-6688
Revista Técnica-Científica Perspectivas
Revista Técnico - Científica PERSPECTIVAS
ISSN: 1390-7204
Artículo Recibido: dd/mm/aaaa – Aceptado: dd/mm/aaaa

sta Perspectivas Tabla II


INSUMOS PARA LA IMPLEMENTACIÓN DE REPLICACIÓN DE DATOS Y
PRUEBAS DE RENDIMIENTO

Insumo Descripción Versión


Sistema Operativo CentOS 7
Motor de bases de PostgreSQL (base de datos del 9.6
datos sistema de gestión de tutorías)
Herramienta de Slony –I 2.2.3
replicación 1
Herramienta de PgPool-II 3.7.0
replicación 2
Herramienta de estrés Apache JMeter 5.2.1
Complemento Apache JMeter PerfMon 2.1
Herramienta de estrés (Servers Performance
Monitoring)
Complemento Apache JMeter PerfMon Server 2.23
Herramienta de estrés Agent

Tabla III
Fig. 2. Infraestructura base para el despliegue de la Solución CARACTERÍSTICAS TÉCNICAS DE LOS SERVIDORES DE LA SOLUCIÓN
BAJO LA PLATAFORMA DE VIRTUALIZACIÓN PROXMOX VE 4.2-2
Tecnológica.
Servidor RAM CPU Disco
Tabla I (GB) Duro(GB)
INSUMOS PARA LA IMPLEMENTACIÓN DE LA APLICACIÓN WEB Web Apache 16 12 x Intel(R) Xeon(E) 150
Tomcat CPU E5-2620 2GHz (2
Insumo Descripción Versión sockets, 4 cores)
Sistema Operativo CentOS 7 Base de Datos 16 12 x Intel(R) Xeon(E) 500
Arquitectura de desarrollo de Software N Capas N/A PostgreSQL CPU E5-2620 2GHz (2
IDE Netbeans 8 (Master) sockets, 4 cores)
Framework JSF 2.2 Base de Datos 16 12 x Intel(R) Xeon(E) 500
PrimeFaces 5.2.1 PostgreSQL (Slave CPU E5-2620 2GHz (2
Servidor Web Apache Tomcat 8 1) sockets, 4 cores)
Motor de bases de datos aplicación PostgreSQL 9.6 Base de Datos 16 12 x Intel(R) Xeon(E) 500
web PostgreSQL (Slave CPU E5-2620 2GHz (2
Servicios Web Visual Studio 2017 2) sockets, 4 cores)
.NET
Motor de bases de datos del sistema SQL Server 2008
académico institucional
Tabla IV
HISTORIAS DE USUARIO
integración con el sistema académico institucional, un
Nº Nombre Iteración
servidor de base de datos que resguarda la información del
1 Gestión de Acceso de Usuarios 1
sistema académico institucional, y tres servidores de bases de 2 Gestión de Seguridad 1
datos para la replicación de datos. Los estudiantes, docentes y 3 Gestión de Facultades 1
autoridades institucionales, considerados como usuarios 4 Gestión de Carreras 1
finales pueden acceder a la aplicación desde cualquier 5 Gestión de Niveles 1
6 Gestión de Periodos 1
dispositivo tanto desde la intranet como desde el internet. En 7 Gestión de Tutores 1
la Tabla I y II, se detallan los insumos para la solución, y en
la Tabla III las características de los servidores utilizados. 8 Gestión de Actividades Planificadas 2
Gestión de Actividades Realizadas 2
Emisión de Reportes 3
C. Procesamiento y análisis
El procesamiento y análisis se basa en la siguiente
propuesta metodológica de comparación de herramientas de Tabla V
replicación de datos, la que está compuesta de los siguientes PLAN DE ENTREGA ITERACIONES
pasos: Iteración Historia de Usuario Duración en
- Análisis de herramientas de replicación de datos semanas
- Desarrollo del Sistema integrado de alta disponibilidad 1 Gestión de Acceso de Usuarios 2
para la gestión de tutorías académicas en instituciones 1 Gestión de la Seguridad 3
1 Gestión de Facultades 1
de Educación Superior 1 Gestión de Carreras 1
- Implementación de ambientes de prueba 1 Gestión de Niveles 1
- Ejecución de pruebas de rendimiento 1 Gestión de Periodos 1
1 Gestión de Tutores 3
- Resultados 2 Gestión de Actividades Planificadas 2
2 Gestión de Actividades Realizadas 3
Paso 1: Análisis de herramientas de replicación de datos 3 Emisión de Reportes 3

4
e -ISSN: 2661-6688 Volumen 2, Número 2. (Julio - Diciembre 2020)

Revista Técnico - Científica PERSPECTIVAS Revista Técnica-Científica Perspectivas


ISSN: 1390-7204
Artículo Recibido: dd/mm/aaaa – Aceptado: dd/mm/aaaa

El análisis corresponde a la revisión de elementos técnicos


y de versiones de las herramientas de replicación de datos
Slony-I y PgPool-II, para seleccionar la mejor alternativa en
la implementación de la solución.

Paso 2: Desarrollo del Sistema integrado de alta


disponibilidad para la gestión de tutorías académicas en
instituciones de Educación Superior

Para la implementación del software, se aplicó la


metodología Extreme Programming (XP), por considerarse
una metodología ágil, centrada en potenciar las relaciones
Fig. 3. Arquitectura de pruebas de rendimiento con Apache
interpersonales como clave para el éxito en desarrollo de JMeter
software, promoviendo el trabajo en equipo, preocupándose
por el aprendizaje de los desarrolladores, y propiciando un
buen clima de trabajo [11].
Se desarrollaron los módulos de: integración,
administración, planificación de actividades, gestión de
actividades y reportes. Para lo cual se utilizaron los insumos
detallados en la Tabla I.
Como roles del equipo de trabajo se definieron un
rastreador, testeador, un programador y un consultor, en la
Tabla IV se detallan las historias de usuario con un riesgo,
prioridad y esfuerzo alto y en la Tabla V se muestra el plan de
entrega de las historias de usuario de acuerdo a iteraciones.
La base de datos de la solución se implementó utilizando
el Front-End de PostgreSQL, Pg-Admin IV. La arquitectura
utilizada para la solución es la N Capas, conformada por las
capas de: Base de Datos, Acceso a Datos, Reglas de Negocio,
Integración y Presentación. En base a los requerimientos
recolectados, la descripción detallada en las historias de
usuario y el diagrama de procesos se definió las interfaces de
usuario definitivas, las cuales fueron implantadas en el Fig. 4. Interfaz de usuario del Sistema integrado de alta
sistema, como se muestra en la Figura 4. disponibilidad para la gestión de tutorías académicas,
disponible en [Link]
Paso 3: Implementación del ambiente de pruebas
varianzas, se aplicó la prueba U de Mann-Whitney, se
Una vez implementado el sistema, se definió el ambiente compararon las medias, posterior a ello se interpretaron los
de pruebas que permitió la comparación de ambas resultados y se obtuvieron las conclusiones respectivas.
herramientas de replicación de datos, como se muestra en la
Figura 3., utilizando los insumos detallados en la Tabla I y II.
III. RESULTADOS
Paso 4: Ejecución de pruebas de rendimiento
A. Resultados de las mediciones de rendimiento de las
Para la toma y recolección de datos, se generaron las
herramientas SLONY-I y PGPOOL-II
pruebas de rendimiento para las dos herramientas, ejecutando
Apache JMeter, realizando por varias ocasiones una Como se mencionó anteriormente, para la toma y
simulación de 282 peticiones concurrentes por segundo recolección de datos, se generaron las pruebas de
durante un lapso de 30 minutos. Este número corresponde al rendimiento, ejecutando Apache JMeter, tanto para el tiempo
número aproximado de usuarios que acceden normalmente al de respuesta frente a la ejecución de sentencias SQL, uso de
aplicativo. CPU, uso de memoria, y uso de disco duro de manera
independiente. Se Aplicó la prueba estadística, estableciendo
Paso 5. Resultados un nivel de significancia de 0,05% con una muestra de 384
por grupo, obteniéndose los resultados presentados en la
Dado que los datos de los parámetros de la investigación Tabla VI, Tabla VII y Tabla VIII.
no cumplen los supuestos de normalidad y homogeneidad de

5
Volumen 2, Número 2. (Julio - Diciembre 2020) e -ISSN: 2661-6688

Revista Técnico - Científica PERSPECTIVAS


Revista Técnica-Científica Perspectivas
ISSN: 1390-7204
Artículo Recibido: dd/mm/aaaa – Aceptado: dd/mm/aaaa

sta Perspectivas expuesto a tener errores con PostgreSQL versión 9.6 o


Tabla VI inferior por temas de compatibilidad y comunicación.
ANÁLISIS COMPARATIVO SLONY-I FRENTE PGPOOL-II Se recomienda trabajar con cualquiera de los dos métodos
Herramientas Método de Sincronización Pool de Balanceo Posicionamiento
de replicación síncrona o asíncrona, dependiendo del contexto
replicación Conexión de la de Consultas y de la infraestructura base que soportará el sistema
Carga
SLONY-I Maestro/Esclavo Asíncrono NO NO NO integrado, si se trabaja con el método de replicación síncrona
PGPOOL-II Maestro/Esclavo Síncrono SI SI SI
se debe tomar en cuenta que esta propenso a sobre cargar la
red, mientras con el método de replicación asíncrona se debe
tomar en cuenta los datos se puede actualizar más tarde desde
Tabla VII el servidor maestro a servidores esclavos.
TIEMPO DE RESPUESTA Y PORCENTAJE DE USO DE RECURSOS DE PrimeFaces cuenta con 117 componentes, no requiere
SLONY-I Y PGPOOL-II dependencias para utilizar la librería, es compatible con otras
Indicadores Slony-I PgPool-II Diferencia librerías de componentes, posee soporte Ajax, su
Tiempo de 2,22s 0,87s 1,35s documentación es actualizada, además los componentes son
respuesta amigables, atractivos e innovadores tanto para el
Uso de CPU 10,37 % 3,27% 7,1%
Uso de RAM 14,49% 5,05% 9,44% desarrollador como para el usuario.
Uso de DISCO 0,25% 0,09% 0,16%
Promedio uso de 8,37% 2,80% 5,57% AGRADECIMIENTOS
recursos
A las autoridades de la Universidad Nacional de
Chimborazo, a la Facultad de Ingeniería, al Centro de
Tabla VIII Tecnologías Educativas, a la Unidad Técnica de Control
PORCENTAJE DE ERROR EN EL PROCESO DE REPLICACIÓN Académico, y a la Dirección General Académica, por brindar
Indicadores Slony-I PgPool-II Diferencia las facilidades técnicas y administrativas para la
Error de 0,009% 1,56% 1,551% implementación del presente proyecto de investigación.
procesamiento
REFERENCIAS

[1] M. Marqués. SQL Server 2008 R2 Motor de base de datos y


administración. Grupo RC, España, 2011.
[2] F. Asteasuain y A. Javed, «Tecnología aplicada a aspectos en base de
IV. CONCLUSIONES datos relacionales: El caso de replicación,» Ingeniería & Desarrollo, nº 25, p.
Aplicando la prueba estadística U de Mann-Whitney se 232, 2009.
[3] Y. Guerra, E. Altuna, A. García y. Pérez, «Experiencias en el uso del
comprobó que existe diferencias de rendimientos en las symmetric para la replicación de datos en la plataforma educativa ZERA,»
herramientas de replicación. Además, en la Tabla VII se Revista Cubana de Ciencias Informáticas, vol. 9, nº 4, p. 197, 2015.
demuestra que la herramienta de replicación PgPool–II [4] S.D. Group. Slonny-I, 2007. [En línea]. Disponible:
presentó ventajas sobre Slony-I con respecto al rendimiento, y [Link]
[5] MediaWiki. PgPool, 2011. [En línea]. Disponible:
ejecución de sentencias SQL en ambientes Linux CentOS 7 [Link]
de 64 bits, luego de ejecutar Apache JMeter sobre la [6] G. Brill. Codenotes for J2EE: EJB, JDBC, JSP, and Servelets. Random
infraestructura base para la solución. Sin embargo, es House Trade Paperbacks, New York, 2002.
importante recalcar que al realizar las pruebas de rendimiento [7] J. Jacobi, J. Fallows. Pro JSF and AJAX. Building Rich Internet
Components (1 ed.). Apress, USA, 2006.
por medio de la ejecución de transacciones de replicación se [8] J. Arrambide. Desarrollo Web en Java: Configura paso a paso todas las
comprobó que Slony-I es más eficaz que PgPool-II. herramientas para crear proyectos web. Edición Kindle, Estados Unidos,
Los resultados obtenidos tanto en el ambiente de pruebas 2017.
y de producción arrojaron los mismos resultados. El método [9] PrimeTek. Leading Provider of Open Source UI Component Libraries,
2009. [En línea]. Disponible: [Link]
de replicación asincrónica usado por la herramienta Slony-I, [10] Consejo de Educación Superior. Reglamento de Régimen Académico.
es un método de replicación que provee menor carga a la red, CES, Ecuador, 2019.
por tal razón los datos se pueden replicar en un momento [11] K. Beck y C. Andres, Extreme Programming Explained: Embrace
determinado; es una herramienta útil a la hora de realizar Change, Addison-Wesley Educational Publishers Inc, 2004.
replicaciones de datos de un servidor maestro a varios
esclavos, puede replicar parte de las tablas a otros servidores
esclavos diferentes, su configuración es menos compleja que
PgPool-II.
El método de replicación síncrona usada por la
herramienta PgPool-II, es propenso a sobrecargar la red por
razón que el servidor esclavo debe estar en escucha todo el
tiempo, a posibles cambios que se realice en servidor maestro,
permite replicar toda una base de datos, así como esquemas y
tablas desde el servidor PgPool-II a clientes, presenta su nivel
de complejidad al realizar las configuraciones ya que no
existe mucha documentación disponible. PgPool-II está

También podría gustarte