You are on page 1of 10

UNIVERSIDAD CENTRAL DE CHILE ESCUELA DE INGENIERIA EN COMPUTACION

LABORATORIO N2 INTRODUCCIN AL ANLISIS DE RENDIMIENTO

MATAS PACHECO EMILIO SEPLVEDA

Santiago de Chile , Lunes 20 de Mayo del 2013

Introduccin:
En el presente informe se desarrollara un anlisis de rendimiento de 3 motores de base de datos distintos, con el fin de ponerlos a prueba entre s para determinar el que tenga mejor performance, estos motores son MySQL, PostgreSQL y FireBird. Cada uno se pobl con 1.000.000 de datos y luego se le realizaron 5 consultas distintas: InnerJoin, LeftJoin, RightJoin, Like y Funcin de agregacin, se midieron los tiempos de ejecucin gracias a una funcin en php especfica para cada consulta la cual fue ejecutada por consola, esto arroj los siguientes resultados con un 95% de confianza.

Desarrollo:
Los Clculos como se mencion anteriormente fueron realizados con un 95% de confianza es decir el =0,05, a continuacin se vern los tiempos obtenidos ejecutando 5 consultas a las Bases de Datos pobladas con un milln de datos, las Consultas son las siguientes: Consulta 1:
SELECT A.PATENTE, P.NOMBRE, P.APELLIDO FROM AUTO A LEFT JOIN DUENO D ON A.ID_AUTO=D.ID_AUTO INNER JOIN PERSONA P ON P.ID_PERSONA=D.ID_PERSONA WHERE A.PATENTE LIKE '%9'

Esta consulta nos entrega la patente del auto con el nombre del dueo de aquellos autos que terminan en 9, pensando en la restriccin vehicular. Consulta 2:
SELECT COUNT (A.ID_AUTO) FROM AUTO A INNER JOIN DUENO D ON A.ID_AUTO = D.ID_AUTO INNER JOIN PERSONA P ON P.ID_PERSONA = D.ID_PERSONA WHERE A.PATENTE LIKE '%10'

Esta consulta entrega la cantidad de autos cuya patente termine en 10 relacionando las tablas con inner join.

Consulta 3:
SELECT P.NOMBRE,P.APELLIDO FROM PERSONA P RIGHT JOIN DUENO D ON P.ID_PERSONA=D.ID_PERSONA WHERE P.NOMBRE LIKE '%18'

Esta consulta entrega el nombre completo de las personas cuyos nombres terminen en 18, en este caso es 18 ya que los nombres insertados terminan en nmeros ejemplo nombre18, pero servira para buscar personas cuyos nombres terminen de cierta forma o si se cambia el % de lado puede ser que empiece u otra variante. Consulta 4:
SELECT P.NOMBRE,P.APELLIDO FROM PERSONA P RIGHT JOIN DUENO D ON P.ID_PERSONA=D.ID_PERSONA

Esta consulta entrega como resultado a las personas que tienen auto.

Consulta 5:
SELECT A.PATENTE, P.NOMBRE,P.APELLIDO FROM AUTO A INNER JOIN DUENO D ON A.ID_AUTO=D.ID_AUTO INNER JOIN PERSONA P ON P.ID_PERSONA=D.ID_PERSONA WHERE A.PATENTE LIKE '%B002%' GROUP BY A.ID_AUTO

Esta consulta entrega como resultado la patente y el nombre de la persona cuyo auto tenga una patente que contenga B002.

Comparaciones:
Tiempos y Promedios de motores utilizando Php5 para ejecutar las consultas, son los siguientes: Clculos realizados con un 95% de confianza, es decir con un =0,05. MySQL 2,66 2,822 2,255 2,861 2,671 2,6538 PostgreSQL FireBird 0,425 5,957 1,026 4,8195 2,486 3,359638 0,233 3,159453 0,538 3,03875 0,9416 4,0668682

Consulta 1 Consulta 2 Consulta 3 Consulta 4 Consulta 5 Promedios

, a continuacin se realizaran las comparaciones uno a uno a las Bases de Datos, para determinar diferencias significativas.

1) MySQL vs PostgreSQL:

Consulta 1 Consulta 2 Consulta 3 Consulta 1 Consulta 5

MySQL 2,66 2,822 2,255 2,861 2,671

PostgreSQL d 0,425 2,235 1,026 1,796 2,486 -0,231 0,233 2,628 0,538 2,133 Promedio 1,7122 Desviacin 1,12606958 Estndar Student 2,776

Los rangos son los siguientes:

Rango inferior 0,314224095

Rango superior 3,110175905

Al no pasar por el cero, podramos decir que entre MySQL y PostgreSQL, hay diferencias significativas, por lo que el motor con mejor rendimiento es PostgreSQL.

2) MySQL vs Firebird:
MySQL 2,66 2,822 2,255 2,861 2,671 Firebird 5,957 4,8195 3,359638 3,159453 3,03875 Promedio Desviacin Estndar Student d -3,297 -1,9975 -1,104638 -0,298453 -0,36775 -1,4130682 1,25707457 2,776

Consulta 1 Consulta 2 Consulta 3 Consulta 1 Consulta 5

Los rangos son los siguientes: Rango inferior -2,973682211 Rango superior 0,147545811

En esta ocasin el rango incluye al cero, por ende no se presentan diferencias significativas entre MySQL y Firebird.

3) PostgreSQL vs Firebird:
PostgreSQL FireBird Consulta 1 0,425 5,957 Consulta 2 1,026 4,8195 Consulta 3 2,486 3,359638 Consulta 1 0,233 3,159453 Consulta 5 0,538 3,03875 Promedio Desviacin Estndar Student Los rangos son los siguientes: Rango inferior -5,251970544 Rango superior -0,998565856 d -5,532 -3,7935 -0,873638 -2,926453 -2,50075 -3,1252682 1,71305872 2,776

Se puede apreciar que en esta ocacin el rango tampoco incluye al cero por ende entre PostgreSQL y Firebird la diferencia es significativa, y el motor de Base de Datos con mejor promedio es PostgreSQL, por ende tiene mejor rendimiento que Firebird.

Anlisis:
De los datos obtenidos anteriormente y realizando las comparaciones uno a uno, podras deducir que PostgreSQL tiene mejor rendimiento y diferencias significativas frente a MySQL y Firebird, en cuanto a MySQL y Firebird, entre ellos no se presentaron diferencias significativas, por ende el motor que se aconsejara utilizar seria PostgreSQL.

Conclusin:
Gracias a los datos recopilados y procesados, se pudo determinar que el motor de base de datos con mejor performance es PostgreSQL, de acuerdo al anlisis comparativo de rendimiento hecho, se aconseja su implementacin por sobre MySQL y Firebird.

You might also like