Comparación entre sistemas de gestión de bases de datos (SGBD) (página 3)
A continuación se mencionan los medios en los
cuales se dará a conocer el desarrollo de este trabajo
·
Este documento será entregado a las directivas del
área de sistemas perteneciente a la universidad
Católica de Colombia
de manera impresa y/o en medio magnético
·
Se dará a conocer este documento al publico en
general publicándose en los sitios
,
y https://www.monografias.com
Tabla 26. Descripción de la programación de los recursos de
talento humano, físicos y actividades.
Objetivos | Actividades | Duración en | Recursos | Costos |
Seleccionar un sistema de gestión de base de | Evaluar criterios para la selección de cada uno de los | 2 semanas | – Internet- | 300.000 |
Diseñar un conjunto de pruebas comparativas para
| -Diseño de Formatos, definir | 3 semanas | -Equipo de Computo Papelería- Recurso | 343.300 |
Diseñar un sistema de evaluación para valorar los | -diseño de las pruebas ( Reglas de | 4 semanas | Equipo de Computo Papelería- Recurso | 600.000 |
Ejecución de Las pruebas | - Ejecución de las instrucciones | 4 semanas | Equipo de computo- papelería- | 550.00 |
Concluir que tan conveniente es para un | -Análisis del resultado de la s Conclusiones con respecto al resultado de | 2 semanas | Equipo de Computo Papelería- Recurso | 350.000 |
TOTAL | 15 SEMANAS | 2.063.300 |
Tabla 27. Descripción de los
recursos
Actividades | Recurso | Perfil | Recurso |
Evaluar criterios para la selección | 2 Personas | Ingenieros de Sistemas, con conocimientos y | Bibliografía, Internet, texto |
Diseño de Formatos, definir | 3 Personas | 2 Ingenieros de Sistemas, con conocimientos y | 1 computador, 1 impresora, papel, tonner. |
-diseño de las pruebas ( Reglas de | 2 Personas | Ingenieros de Sistemas, con conocimientos y | Equipo de Computo, impresora, |
- Ejecución de las instrucciones | 2 Personas | Ingenieros de Sistemas, con conocimientos y | Equipo de Computo, el lenguaje |
-Análisis del resultado de la s Conclusiones con respecto al resultado de | 2 Personas | Ingenieros de Sistemas, con conocimientos y | Equipo de computo, papelería, |
Tabla 28. Descripción del presupuesto.
Ingresos | Egresos | Costos |
Recursos propios 2.103.300 | Honorarios de los investigadores | 833.300 |
honorarios director ( este recurso es | 0 | |
computador- impresora | 800.000 | |
papelería e insumos | 80.000 | |
compra de materiales y equipo | 350.000 | |
Transporte | 40.000 | |
TOTAL | 2.103.300 |
Al finalizar el desarrollo de este trabajo
el resultado es muy enriquecedor, retomamos algunos
conocimientos aportados por los profesionales en la
especialización y a lo largo de nuestra
trayectoria como estudiantes del ciclo profesional y
como profesionales en el ámbito laboral.,
aspectos como administración, limitaciones sobre
los sistemas de almacenamiento Sql Server
2000 y Mysql
Server, conociendo características en
general sobre los manejadores de bases de datos utilizados
en el mercado.
Esperamos que la investigación realizada sea
base para una ampliación y profundización
mucho mayor teniendo otras variables de estudio o factores diferentes a
comparar los cuales pueden arrojar otros
resultados con un soporte diferente al señalado y
aportado en este documento, por tal razón se
sugiere tenerse en cuenta para investigaciones o profundizaciones sobre el
tema a futuros profesionales en este campo, para los cuales
esperamos aportar una guía o ayuda a los
interesados en el tema del software libre Vs
software comercial.
Al inicio de la investigación tuvimos
algunos inconvenientes con la definición del
escenario de pruebas, lo ajustamos basándonos en las
características mínimas de instalación
que se requiere para el buen funcionamiento de los sistemas
de bases de datos, enumerados en el capitulo 8
donde se describe la metodología, no obstante que no
hay escenario ideal, hicimos el mejor uso de los
recursos y se obtuvieron resultados, que
esperamos sean de gran utilidad.
PIATINNI, Mario G, Auditoria Informática, un Enfoque Practico, Alfa
Omega.
COGUAR , Robert , Windows 2000,
Edicíon Especial, Editorial: Prentice Hall.
MONEY, Kevin, Oracle 9i,
Editorial: Oracle Press.
GIL, Francisco Javier, Creación de sitos Web con
Php4, Editorial: Mcgraw-Hill
STANEK, William R, Sql Server 2000 Manual del
Administrator, Editorial: Mcgraw-Hill
GIM GRAY, Kalen Delaney , A fondo Sql Server 2000,
Editorial: Mcgraw-Hill
hhtp://www.gnu.org
hhtp://www.lawebdelprogramador.com
hhtp://www.sqlmax.com
hhtp://virtual.unal.edu.co
hhtp://www.mssqlsite.com
hhtp://www.gnsite.net
http://www.pps.jussieu.fr/~dicosmo/Piege/trampas/
"Por qué el software no debe tener propietarios".
Richard Stallman.
http://www.gnu.org/philosophy/why-free.es.html
"Vender Software
Libre". Richard Stallman.
http://www.grulic.org.ar/proposicion/doc/encrucijada.html.es
"Razones por las que el Estado debe
usar Software
Libre". Federico Heinz.
ANEXO A
En este anexo damos a conocer el código
fuente de los programas utilizados en la ejecución de las
pruebas realizadas en la presente investigación,
desarrollado en lenguaje Php
versión 4.3.1
A1. Script para la
realización de la prueba de la concurrencia al SGBD
Sql Server
A2. Script para la realización de la prueba
de la concurrencia al SGBD Mysql Server
A3. script con que se calculara el puntaje para el
que ocupo el segundo puesto es la siguiente
La formula con que se calculara el puntaje para el que
obtuvo el segundo puesto de los sistemas de des
gestión e bases de datos.
Script con |
<? $Mejor_Tiempo ='25'; $Segundo_Tiempo ='100'; $Ultimo_Puntaje='10'; $Puntaje= ((100 -(($Segundo_Tiempo $Puntaje= strtok($Puntaje, "."); echo "puntaje $Puntaje"; ?> |
ANEXO B
En este anexo damos a conocer la
ejecución y resultados de los pruebas realizadas por
cada uno tanto de los proceso y
criterios mencionados en el capitulo 8 de este
documento.
B1. Insert simultáneos – prueba de
concurrencia
DISEÑO Y RESULTADO DE PRUEBAS DE CRITERIO: PRUEBA OCURRENCIA No: PROCESO |
OBJETIVO DE LA PRUEBA: Realizar una prueba de concurrencia para |
RECURSOS NECESARIOS PARA APLICARLA - Manejados bases de datos Mysql - Tablas creadas con la misma - Lenguaje de programación |
PROCEDIMIENTO A EMPLEAR
Se crearán dos tablas en cada Se desarrollara un script que genere 59 En Base a la hora de inicio y la hora en que Se realizará un conteo para verificar la Se realizará una consulta para verificar
|
RESULTADOS OBTENIDOS Y |
OBSERVACIONES :
El objetivo de la prueba fue cumplido con |
Elaborado por : Maria Argenis
Revisado por: Wilson Rojas |
B2. Cargue de registros
masivo
DISEÑO Y RESULTADO DE PRUEBAS DE CRITERIO: PRUEBA OCURRENCIA No: 1 PROCESO |
OBJETIVO DE LA PRUEBA: Verificar cual de los dos SGBD es mas
|
RECURSOS NECESARIOS PARA APLICARLA - Manejados bases de datos Mysql - Tablas creadas con la misma - Un archivo con 10 millones de |
PROCEDIMIENTO A EMPLEAR
Se creará una tabla con la misma estructura Se exportara a un archivo plano la Se utilizara la herramienta mas optima En Base a la hora de inicio y la hora en que Se realizará un conteo para verificar la Se realizará una comparación |
RESULTADOS OBTENIDOS Y PUNTUACION |
OBSERVACIONES :
|
Elaborado por : Maria Argenis Gonzalez Revisado por: Wilson Rojas |
B3. Inserción basado en una
consulta
DISEÑO Y RESULTADO DE PRUEBAS DE CRITERIO: PRUEBA OCURRENCIA No: 1 PROCESO : |
OBJETIVO DE LA PRUEBA: Verificar cual de los dos SGBD es mas |
RECURSOS NECESARIOS PARA APLICARLA – Manejados bases de datos Mysql Server Y – Tablas creadas con la misma estructura – Una tabla con 10 millones de |
PROCEDIMIENTO A EMPLEAR
Crear una tabla con la estructura de la tabla Se ejecutara el siguiente Query: "insert into Se realizará una consulta a la tabla Se realizará un conteo para verificar la Se realizará una comparación |
RESULTADOS OBTENIDOS Y
|
OBSERVACIONES :
El objetivo de la prueba fue cumplido con * Se realizo la verificacion de la informacion |
Elaborado por : Maria Argenis Gonzalez
Revisado por: Wilson Rojas |
B4. Generar una
consulta en base al resultado de una
subconsulta
DISEÑO Y RESULTADO DE PRUEBAS DE CRITERIO: PRUEBA OCURRENCIA No: 1 PROCESO |
OBJETIVO DE LA PRUEBA: Verificar cual de los dos SGBD es mas |
RECURSOS NECESARIOS PARA APLICARLA – Manejados bases de datos Mysql Server Y – Tablas creada con 10 millones de registros. -Tabla creada con 7 registros, llamada |
PROCEDIMIENTO A EMPLEAR Realizar la siguiente sentencia SQL :select Calcular la duración de la consulta en |
RESULTADOS OBTENIDOS Y
|
OBSERVACIONES :
El objetivo de la prueba fue cumplido con * Mysql Server fue mas rápido que |
Elaborado por : Maria Argenis Gonzalez
Revisado por: Wilson Rojas |
B5. Join – diferencia de información
entre dos tablas
DISEÑO Y RESULTADO DE CRITERIO: PRUEBA OCURRENCIA PROCESO |
OBJETIVO DE LA PRUEBA: – Verificar la ejecución – Conocer cual de los dos SGBD |
RECURSOS NECESARIOS PARA – Manejados bases de datos – Dos Tablas con al misma |
PROCEDIMIENTO A Realizar una consulta entre las "SELECT empleados.* FROM |
RESULTADOS OBTENIDOS Y |
OBSERVACIONES :
El objetivo de la prueba fue * sql Server fue mas rapido con |
Elaborado por : Maria Revisado por: Wilson |
B6. Exportar la información de la tabla a un
archivo
DISEÑO Y RESULTADO DE PRUEBAS DE CRITERIO: PRUEBA OCURRENCIA No: PROCESO |
OBJETIVO DE LA PRUEBA: – Conocer cual de los dos SGBD es mas |
RECURSOS NECESARIOS PARA APLICARLA - Manejados bases de datos Mysql - Una Tabla con 10 millones de |
PROCEDIMIENTO A EMPLEAR Exportar toda la información de la tabla Se realizará una importación de los |
RESULTADOS OBTENIDOS Y
|
OBSERVACIONES : El objetivo de la prueba fue cumplido con * Se realizaron las verificaciones * Mysql Server fue mas rápido al momento |
Elaborado por : : Maria Argenis Gonzalez
Revisado por: Wilson Rojas |
B7. Funciones
varias
DISEÑO Y RESULTADO DE PRUEBAS DE CRITERIO: PRUEBA OCURRENCIA No: PROCESO |
OBJETIVO DE LA PRUEBA: Ejecutar las principales funciones |
RECURSOS NECESARIOS PARA - Manejados bases de datos Mysql - Una Tabla con 10 millones de |
PROCEDIMIENTO A EMPLEAR Realizar una consultas en la tabla Objetivo Ejecución Sql
Realizar una consulta que devuelva que select avg(sueldo) from sqlserver (144)
Realizar una consulta que devuelva el numero select count(*) from sqlserver (132)
Realizar una consulta que devuelva el select max(id_empleado) from sqlserver (22)
Realizar una consulta que devuelva el select min(id_empleado) from sqlserver (0)
Realizar una consulta que devuelva aquellos
select *from empleados where id_empleado sqlserver (0)
Realizar una consulta ordenada por un campo select *from empleados order by id_empleado select top 1 *from empleados order by sqlserver (0)
Realizar una consulta ordenada por un campo select *from empleados order by id_empleado select top 1 *from empleados order by sqlserver (0)
Realizar una consulta que devuelva que select distinct sueldo as Resultado from sqlserver (147)
Realizar tres consulta en el campo dirección de la tabla empleados contenga en cualquier lugar del campo la contenga al final del campo la palabra contenga al principio del campo la
select count(*) from empleados where sqlserver (836) select count(*) from empleados where sqlserver (866) select count(*) from empleados where sqlserver (646)
Realizar una consulta donde se agrupe la select id_dpto from empleados group by sqlserver (140) |
|
OBSERVACIONES : El objetivo de la prueba fue cumplido con Para Sql Server promedio de |
Elaborado por : Maria Argenis Gonzalez Revisado por Wilson Rojas |
B8. Eliminar todos los registros de una
tabla
DISEÑO Y RESULTADO DE PRUEBAS DE CRITERIO: PRUEBA OCURRENCIA No: 1 PROCESO |
OBJETIVO DE LA PRUEBA: Conocer cual de los dos SGBD es mas |
RECURSOS NECESARIOS PARA APLICARLA - Manejados bases de datos Mysql - Una tabla con 10 millones de |
PROCEDIMIENTO A EMPLEAR Ejecutar la siguiente instrucción SQL DELETE Realizar una consulta para verificar que toda la |
RESULTADOS OBTENIDOS Y PUNTUACION
|
OBSERVACIONES : – El objetivo de la prueba fue cumplido con – Se elimino la información de dos formas, para Mysql Server los resultados
para Sql Server los resultados
Se realiza sumatoria de los tiempos para cada uno |
Elaborado por : Maria Argenis Gonzalez
Revisado por: Wilson Rojas |
B9. Eliminar un rango de registros de una
tabla
DISEÑO Y RESULTADO DE PRUEBAS DE CRITERIO: PRUEBA OCURRENCIA No: 1 PROCESO |
OBJETIVO DE LA PRUEBA: Conocer cual de los dos SGBD es mas |
RECURSOS NECESARIOS PARA APLICARLA - Manejados bases de datos Mysql - Una tabla con 10 millones de |
PROCEDIMIENTO A EMPLEAR Ejecutar la siguiente instrucción SQL Realizar una consulta para verificar que toda la Select count(*) from empleados WHERE id_empleado Select count(*) from |
RESULTADOS OBTENIDOS Y PUNTUACION
|
OBSERVACIONES :
El objetivo de la prueba fue cumplido con Mysql Server tubo un mejor tiempo de respuesta con El objetivo de la prueba fue cumplido con Mysql Server tubo un mejor tiempo de |
Elaborado por : Maria Argenis Gonzalez Revisado por :Wilson Rojas |
B10. Eliminar un rango de registros de una
tabla y recuperarlos con roll back
DISEÑO Y RESULTADO DE PRUEBAS DE CRITERIO: PRUEBA OCURRENCIA No: PROCESO |
OBJETIVO DE LA PRUEBA: Conocer cual de los dos SGBD es mas |
RECURSOS NECESARIOS PARA APLICARLA - Manejados bases de datos Mysql - Una tabla con 10 millones de |
PROCEDIMIENTO A Eliminar 1, 5 y 10 millones de Verificar que se hallan eliminado los Luego recuperarlos con la instrucción SQL Calcular el tiempo de duración de la Después de la prueba verificar la |
RESULTADOS OBTENIDOS Y |
OBSERVACIONES : El objetivo de la prueba fue cumplido con Estas son los resultados obtenidos en esta Elaborado por : Maria Argenis Revisado por: Wilson |
|
b11. Actualización a un
campo
DISEÑO Y RESULTADO DE PRUEBAS DE CRITERIO: PRUEBA OCURRENCIA No: 1 PROCESO |
OBJETIVO DE LA PRUEBA: Conocer cual de los dos SGBD es mas |
RECURSOS NECESARIOS PARA APLICARLA - Manejados bases de datos Mysql - Una tabla con 10 millones de registros |
PROCEDIMIENTO A EMPLEAR Ejecutar la siguiente instrucción SQL en Comprobar que toda la información haya Calcular la duración de
|
RESULTADOS OBTENIDOS Y
|
OBSERVACIONES :
El objetivo de la prueba fue cumplido con |
Elaborado por : Maria Argenis Gonzalez C. Revisado por: Wilson Rojas |
B12. Actualización a un campo – en
cascada
DISEÑO Y RESULTADO DE PRUEBAS DE CRITERIO: PRUEBA OCURRENCIA No: PROCESO |
OBJETIVO DE LA PRUEBA: Conocer cual de los dos SGBD es mas |
RECURSOS NECESARIOS PARA APLICARLA - Manejados bases de datos Mysql - Una tabla con 10 millones de registros - Una tabla con una referencia a la tabla |
PROCEDIMIENTO A EMPLEAR En la tabla "empleados" cuenta con Verificar que se haya actualizado la |
RESULTADOS OBTENIDOS Y
|
OBSERVACIONES : El objetivo de la prueba fue cumplido con * Al realizar la verificación, no se |
Elaborado por : Maria Argenis Gonzalez
Revisado por: Wilson Rojas |
B13. Actualización a un campo –
realizando una condición
DISEÑO Y RESULTADO DE PRUEBAS DE CRITERIO: PRUEBA OCURRENCIA No: PROCESO |
OBJETIVO DE LA PRUEBA: Conocer cual de los dos SGBD es mas |
RECURSOS NECESARIOS PARA APLICARLA – Manejados bases de datos Mysql Server Y - Una tabla con 10 millones de registros |
PROCEDIMIENTO A Ejecutar la siguiente instrucción SQl en Verificar que se haya actualizado la |
RESULTADOS OBTENIDOS Y
|
OBSERVACIONES : El objetivo de la prueba fue cumplido con excito * Se realizaron las correspondientes |
Elaborado por : : Maria Argenis Gonzalez
Revisado por: Wilson Rojas |
B14. Realización backup de toda la base de
datos
DISEÑO Y RESULTADO DE PRUEBAS DE CRITERIO: PRUEBA OCURRENCIA No: PROCESO |
OBJETIVO DE LA PRUEBA: Realizar backup de toda la base de datos donde |
RECURSOS NECESARIOS PARA APLICARLA – Manejados bases de datos Mysql Server Y - Una tabla con 10 millones de registros |
PROCEDIMIENTO A Asegurar que todas las tablas que hayan sido Verificar la cantidad de registros que cada uno Realizar una copia de seguridad de la base de datos de Para |
RESULTADOS OBTENIDOS Y |
OBSERVACIONES :
El objetivo de la prueba fue cumplido con |
Elaborado por : Maria Argenis Gonzalez
Revisado por: Wilson Rojas |
B15. Restauración backup de toda la
base de datos
DISEÑO Y RESULTADO DE PRUEBAS DE CRITERIO: PRUEBA OCURRENCIA No: PROCESO |
OBJETIVO DE LA PRUEBA: Realizar el proceso de restauración al |
RECURSOS NECESARIOS PARA APLICARLA – Manejados bases de datos Mysql Server Y - backup de la base de datos de |
PROCEDIMI ENTO A Se creará una base de datos llamada Realizar verificación de lo Objetivo Ejecución Sql
Realizar una consulta que devuelva el numero de select count(*) from empleados;
Realizar una consulta que devuelva el Select max(id_empleado) from
Realizar una consulta que devuelva el select min(id_empleado) from
Realizar una consulta que devuelva aquellos
select *from empleados where id_empleado
Ver los registros de la tabla dptos Select *from dptos |
RESULTADOS OBTENIDOS Y
|
OBSERVACIONES : El objetivo de la prueba fue cumplido con |
Elaborado por : Maria Argenis Gonzalez Revisado por: Wilson |
B16. Prueba de inserción mientras el
sistema esta sobrecargado
DISEÑO Y RESULTADO DE PRUEBAS DE CRITERIO: PRUEBA OCURRENCIA No: PROCESO |
OBJETIVO DE LA PRUEBA: Determinar si el SGBD responderá a una |
RECURSOS NECESARIOS PARA APLICARLA – Manejados bases de datos Mysql Server Y -Tabla "empleados" con 10 millones de -Se crearán tres tablas "empleados _ -Un archivo llamada "empleados_cargue.txt" con |
PROCEDIMIENTO A Se realizará los siguientes Se utilizara el script que se desarrollo para la Enseguida se procederá a cargar un Se procederá a realizar la La prueba terminara cuando el último Por ultimo, se procederá a verificar la |
RESULTADOS OBTENIDOS Y OBSERVACIONES : El objetivo de la prueba fue cumplido con Durante la ejecución de la prueba se En mysql el consumo de CPU es de aprox. En sql server el consumo de CPU se mantuvo en el |
Elaborado por : Maria Argenis |
Revisado por: Wilson Rojas |
B16. Prueba de consulta mientras el
sistema esta sobrecargado
Para ver esta tabla seleccionar
"Descargar" del menú superior
B18 Prueba de actualización mientras
el sistema esta sobrecargado
DISEÑO Y RESULTADO DE PRUEBAS DE CRITERIO: PRUEBA OCURRENCIA No: PROCESO |
OBJETIVO DE LA PRUEBA: Determinar si el SGBD responderá a |
RECURSOS NECESARIOS PARA APLICARLA – Manejados bases de datos Mysql Server Y -Tabla "empleados" con 10 millones de -Se crearán tres tablas "empleados_cargue -Un archivo llamada "empleados_cargue.txt" con |
PROCEDIMIENTO A Se realizará los siguientes Se utilizara el script que se desarrollo para la Enseguida se procederá a cargar un Instrucción Sql Server: bcp mibd_sqlserver..empleados_cargue int Instrucción Mysql Server: mysqlimport -pmiclave -umiusuario mibd_innodb Se procederá a realizar una update dptos set id_dpto=5 where La prueba terminara cuando el último Por Ultimo, se verificara la información |
OBSERVACIONES : El objetivo de la prueba fue cumplido con Durante la ejecución de la prueba se |
Elaborado por : : Maria Argenis
Revisado por: Wilson Rojas |
B19 Prueba de eliminación
mientras el sistema esta sobrecargado
Para ver esta tabla seleccionar
"Descargar" del menú superior
B20. Prueba interrupción
eléctrica
Para ver esta tabla seleccionar
"Descargar" del menú superior
ANEXO C
Comparativos de características
generales sobre los diferentes gestores
mencionados en el desarrollo del presente
trabajo. Pruebas realizadas una versión
inferior a la analizada en este documento
(versión 4.1.11), consultadas en Internet
hhtp://www.lawebdelprogramador.com
C1. Pruebas de Acceso a Datos
MySQL 3.23.37 | PostgreSQL 7.1 | Interbase 6.2 | SAP DB 7.2 | |
Inserción 100 mil tuplas | 10 seg. | 12min 38seg | 42seg | 2min 38seg |
100.000 variados | 17seg | 6min 30seg | 1min 07seg | 8min |
1000 selects complejos | 55seg | 1min 26seg | 2min 23seg | 1min 14seg |
§
Vemos que MySQL gana siempre en velocidad
§
PostgreSQL pierde mucho en las inserciones debido a que
guarda básicamente cada escritura
que hace. En las pruebas con PostgreSQL, se puede ver
como el disco no para de escribir, mientras que con las otras,
va escribiendo a ratos. PostgreSQL también tiene un modo
Bflush(usar buffer) pero no recomiendan usarlo. En cuanto a los
selects complejos los trata muy bien.
§
Interbase da tiempo moderados en todos los campos sin
destacar en ninguno.
§
SAP DB pierde en los inserts, pero gana en los selects
complejos, aunque se muestra lento
en un entorno variado con selects cortos. En la primera prueba
de 100.000 inserts se llenó el fichero de log. Estaba a
10Mb y lo subimos a 20Mb, solucionando el problema.
C2. Segundos en completar las 1000 peticiones
MySQL | PostgreSQL | Interbase | SAP DB | |
10p | 312,66 | 752,74 | 225,30 | 305,31 |
10 | 325,22 | 943,40 | 212,42 | 300,03 |
20p | 849,47 | 813,69 | 262,76 | 549,99 |
20 | 947,91 | 974,51 | 291,12 | 612,06 |
30p | 1153,88 | 1620,00 | 377,75 | 763,76 |
30 | 1199,01 | 1468,79 | 408,23 | 806,18 |
40p | Timeout | Error | 681,38 | timeout |
40 | Timeout | Error | 683,29 | timeout |
50p | Timeout | Error | timeout | timeout |
50 | Timeout | Error | timeout | timeout |
§
Los tests empiezan con 10 clientes
concurrentes hasta los 50, incrementando de 10 en
10.
§
Los resultados los damos en tres variables: tiempo
en resolver todas las peticiones, páginas por segundo y
velocidad de transferencia en Kb/seg. En las tablas, un 20
significa un test con 20
peticiones concurrentes de páginas normales, un 20p
significa un test con 20 peticiones con conexión
persistente.
§
Los tests fueron realizamos con un script bash que
ejecuta todos los tests uno a uno y los envía a un
fichero de resultados. Esto afecta a los resultados: se puede
apreciar que MySQL a partir de 40 conexiones da timeout en las
pruebas, pero si no ejecutamos los tests de 10, 20 y 30
conexiones anteriormente y ejecutamos el de 40 aisladamente
dejando reposar la máquina, lo pasa sin problemas,
incluso el de 50. Pero creemos que la gracia de un test, es ir
incrementando sin parar las conexiones, para ver como escala, no
probar puntas de trabajo aisladas. De hecho, desde un estado de
reposo, todas aguantan hasta las 75 conexiones
concurrentes.
Cuando las bases de datos se colapsan (por falta de
memoria, CPU,
disco, etc.), MySQL, Interbase y SAP DB
simplemente dejan de responder (o tardan demasiado en hacerlo) y
el Apache da un timeout que recoge el Apache Benchmark. Pero el
PostgreSQL cuando ya no puede dar absorber más conexiones
da un error al generar la página de Too many clients. En
este caso, la página es generada, pero con el
típico error de conexión, y el Apache Benchmark no
lo puede detectar.. Veamos las siguiente tablas para ver los
resultados:
C3. Peticiones servidas por segundo
MySQL | PostgreSQL | Interbase | SAP DB | |
10p | 3,17 | 1,32 | 4,39 | 3,24 |
10 | 3,04 | 1,04 | 4,66 | 3,30 |
20p | 1,17 | 1,21 | 3,77 | 1,80 |
20 | 1,04 | 1,01 | 3,40 | 1,62 |
30p | 0,86 | 0,61 | 2,62 | 1,30 |
30 | 0,83 | 0,67 | 2,43 | 1,23 |
40p | Timeout | Error | 1,45 | Timeout |
40 | Timeout | Error | 1,45 | timeout |
50p | Timeout | Error | Timeout | timeout |
50 | Timeout | Error | Timeout | timeout |
§
De los resultados, se ve que MySQL escalara
tan
§
mal. Bajo pocas conexiones funcionó
perfectamente, cumpliendo expectativas, pero no pudo con el
Interbase en el tramo final.
§
PostgreSQL 7.X realmente ha mejorado la velocidad
respecto las versiones 6.X. Lo normal en las 6.X es que fueran
3 veces más lentas que el MySQL. Ahora bajo pocas
conexiones apenas es la mitad, y la iguala en un entorno
cargado.
§
SAP DB empieza con resultados cercanos al MySQL, y
después se aleja para mejor debido a su mejor
escalabilidad.
§
Interbase es el mejor en todos los campos en este
terreno, le pertenecen los mejores tiempos en cada test. Es el
Único que llega a 50 peticiones concurrentes sin dar
errores y además el que mejor escala.
§
Si MySQL se llevó el premio del test por fichero,
el Interbase se lleva el de base de datos ideal para servidor
Internet.
C4. Límites y
Capacidades de SQL- Comparativa usando el programa
crash-me
MySQL 4.1.0 | PostgreSQL 7.1 | Oracle | Sybase | Access | Informix | |
Conexiones simultáneas | 101 | 32 | 41 | 25 | 64 | 269 |
Columnas por Tabla | 2.819 | 1.600 | 1.000 | 250 | 255 | 994 |
Tamaño de fila por Columna | 65.534 | 103.275 | 255.000 | 1.960 | 2.025 | 32.356 |
Tamaño de fila por Columna sin | 65.502 | 103.275 | 255 | 1.941 | 2.025 | 32.356 |
Tamaño de Consulta | 1.048.574 | 16.777.216 | 16.777.216 | 65.535 | 16.777.216 | 32.766 |
Ma. ARGENIS GONZALEZ CASTELLANOS
WILSON ROJAS PABON
TRABAJO DE GRADO
Director
LUIS HUMBERTO SAENZ RUSSI
Ingeniero Electrónico
UNIVERSIDAD CATOLICA DE COLOMBIA
FACULTA DE INGENIERIA DE SISTEMAS
BOGOTA 2005
[1]
http://www.gnu.org/philosophy/why-free.es.html
"Vender Software Libre". Richard Stallman.
[2]
hhtp://www.gnsite.net
[3] Figura Extraída del
sitio mysql.com
[4] Http://64.233.187.104./search?q=cache:iynbfipfxgqj:sqljunkies.com
[5]
Http://64.233.187.104./search?q=cache:iynbfipfxgqj:sqljunkies.com
[6]
Http://64.233.187.104./search?q=cache:iynbfipfxgqj:sqljunkies.com
[7]
Http://64.233.187.104./search?q=cache:iynbfipfxgqj:sqljunkies.com
[8]
glud.udistrital.edu.co/glud/areas/doc/miniproyectos/6_comparativa_bd
[9] [9]
glud.udistrital.edu.co/glud/areas/doc/miniproyectos/6_comparativa_bd
[10] [10]
glud.udistrital.edu.co/glud/areas/doc/miniproyectos/6_comparativa_bd
Página anterior | Volver al principio del trabajo | Página siguiente |