REPORTE DE RESULTADOS:
“Comparación entre MySQL y Access”
Programación en bases de datos
Jesús Antonio Ferrer Sánchez
Primer y ultimo revisor: Jesús Antonio Ferrer Sánchez
UNIVERSIDAD JUÁREZ AUTÓNOMA DE TABASCO
DIVISIÓN ACADÉMICA DE INFORMÁTICA Y SISTEMAS
Cunduacán, Tabasco 31 de Mayo del 2013
1
Índice
DESCRIPCIÓN. ........................................................................................................................................................................ 2
ESPECIFICACIONES TÉCNICAS. ................................................................................................................................................ 3
CONSIDERACIONES. ............................................................................................................................................................... 3
BASES DE DATOS CREADAS. ................................................................................................................................................... 4
PRUEBAS REALIZADAS Y TIEMPOS REGISTRADOS. ................................................................................................................ 9
CONCLUSIÓN. ...................................................................................................................................................................... 15
2
Introducción.
El presente reporte ha sido elaborado con la finalidad de mostrar los tiempos de respuesta al
implementar múltiples consultas de datos y operaciones, entre los manejadores de bases de
datos de Access 2010 y MySQL 5.5.
Los resultados son presentados de manera tabular donde se documentan las pruebas
realizadas y los tiempos registrados para poder comparar los resultados obtenidos, en la
realización de operaciones a bases de datos, iguales en estructura, datos y cantidad de datos;
en Access y MySQL.
3
Especificaciones técnicas.
El equipo de cómputo que se utilizó cuenta con las siguientes características:
Características del hardware Características del software
- Mini laptop Acer AOD270.
- Equipo basado en x86 procesador
x64.
- Procesador Intel Atom CPU N2600 @
1.60GHz, 2 procesadores principales,
4 procesadores lógicos.
- Memoria RAM 2.00 GB.
- Sistema Operativo Microsoft Windows
8 Enterprise de 32 bits compilación
9200.
- Memoria virtual 4.00 GB.
- Servidor de base de datos MySQL
5.5.27.
- Microsoft Access 2010.
Consideraciones.
1. Los tiempos obtenidos en el presente reporte fueron cronometrados de manera manual
y no se tomó en cuenta la notificación de tiempo de respuesta por parte de los
manejadores de bases de datos, debido a que compañeros de la materia, previamente
observaron las inconsistencias en los tiempos notificados comparándolos con los
tiempos registrados por cronometro.
2. Las operaciones de manejo y diseño de bases de datos en Access solo se llevan a
cabo de manera gráfica, ya que los script de Access poseen auto encriptado, mientras
que en MySQL las operaciones se pueden llevar a cabo por medio de una interfaz
gráfica de trabajo (WorkBench), en un servidor web con un administrador web, en la
línea de comando del servidor, por edición de script SQL, etc. Por lo tanto la mayoría
de las operaciones en ambos manejadores serán llevadas por medio de interfaz
gráfica.
4
Bases de datos creadas.
Aquí se muestran las bases de datos creadas, una en Access y la otra en MySQL, con sus
respectivas estructuras, y los datos que contienen para mostrar que ambas bases de datos
consisten en la misma estructura y en los mismos datos, sobre los cuales se realizaron las
consultas.
1. Base de datos creada en Access 2010:
En la Imagen 1 se muestran las tablas creadas y las relaciones establecidas entre sus
campos especificados como claves primarias y foráneas.
Imagen 1 Relaciones entre las tablas de la base de datos plantel en Access
En la Imagen 2 y 3 se muestra como se reconoce la relación que se estableció en la tabla
personas con la tabla operaciones y como los 8000 registros se encuentran relacionados con
los 32000 registros de la tabla operaciones.
5
Imagen 2 Tabla personas
Imagen 3 Tabla operaciones
6
Por último en la Imagen 4 y 5 se muestra como por cada una de las 20 claves primarias de las
materias, se encuentran vinculadas a ciertos números de operaciones hasta sumar miles de
correspondencias en la tabla de operaciones.
Imagen 4 Tabla materias y sus registros
Imagen 5 Tabla materias y sus correspondencias de campos con la tabla operaciones
7
2. Base de datos creada en MySQL:
En la Imagen 6 se muestran las tablas creadas y las relaciones establecidas entre sus
campos especificados como claves primarias y foráneas.
Imagen 6 Relaciones entre las tablas de la base de datos estudiantes en MySQL WorkBench
En la Imagen 7 se muestra la tabla de materias con sus 20 registros en sus respectivos
campos, que por medio de la clave primaria id_materia, se encuentra ligada a la tabla de
operaciones.
8
Imagen 7 Tabla materia con sus registros
En la Imagen 8 se muestra la estructura de la base de datos estudiantes, como la cantidad de
datos almacenados en las tablas y el tamaño de datos ocupados por estas mismas.
Imagen 8 Descripción de la base de datos “plantel_estudiantes” en el servidor web
9
Pruebas realizadas y tiempos registrados.
Operación 1. Buscar a un alumno o persona cualquiera, que exista en los registros. Buscar a
una persona con el nombre “Luis Lopez Ferrer” (Ver Tabla 1).
Access MySQL
Para mostrar el resultado de la consulta se llevo en 0.8 segundos.
Se mostró resultado en alrededor de 0.78 segundos.
Tabla 1 Operación 1
Operación 2. Buscar alumnos con apellido paterno con “A” como “Alzate”, por ejemplo ( Ver
Tabla 2).
Access MySQL
Para arrojar el resultado de la consulta se llevo 1 segundo mostrando 344 resultados.
Se arrojó el resultado en alrededor de 2 segundos mostrando 344 resultados.
Tabla 2 Operación 2
Operación 3. Buscar alumnos con apellido paterno con “M” como “Montoya”, por ejemplo (Ver
Tabla 3).
Access MySQL
Para arrojar el resultado de la consulta se llevo 0.6 segundo mostrando 326 resultados.
Se encontraron los resultados en alrededor de 0.4 segundos pero fueron mostrados los 326 resultados en 5.7 segundos.
Tabla 3 Operación 3
10
Operación 4. Eliminar alumnos con un determinado apellido paterno, todos los alumnos con
el apellido “Murillo”, por ejemplo (Ver Tabla 4).
Access MySQL
La operación no se pudo llevar a cabo, debido a restricciones de las claves primarias referenciadas en las claves foraneas por la actuaización en cascada existente en la tabla de operaciones. El tiempo de respuesta fue de 2 segundos.
La operación no se pudo llevar a cabo debido, a restricciones de las claves primarias referenciadas en las claves foraneas por la actuaización en cascada existente en la tabla de operaciones. El tiempo de respuesta fue de 3 segundos.
Tabla 4 Operación 4
Operación 5. Elegir un apellido que querramos y sustituirlo en algunos de los registro de los
alumnos (Ver Tabla 5).
Access MySQL
Sin contar el tiempo para la edición en linea. El tiempo de respuesta para guardar el cambio fue de 0.8 segundos.
El tiempo de respuesta para completar la operación fue de 0.7 segundos.
Tabla 5 Operación 5
Operación 6. Borrar toda la base de datos (Ver Tabla 6).
Access MySQL
Esta operación no se puede realizar en la interfaz de Access. Si la base de datos se desea eliminar, se debe cerrar la base de datos en la que se esta trabajando, localizar el archivo de base de datos de Access y eliminarlo.
Para llevar a cabo la eliminación de la base de datos el sistema administrador empleo 2.5 segundos.
Tabla 6 Operación 6
Operación 7. Recuperar la base de datos “duplicarla” y cambiarle el nombre por
“plantel_recuperado” (Ver Tabla 7).
11
Access MySQL
Esta operación no se puede realizar en la interfaz de Access. Si la base de datos se desea recuperar o duplicar, esto se puede llevar a cabo de manera manual haciendo operaciones de archivos de Access.
Para llevar a cabo la copia por medio del servidor se utilizaron 8 segundos, para cargar los datos se emplearon 6 segundos y para renombrar la base de datos fueron necesarios 2.5 segundos.
Tabla 7 Operación 7
Operación 8. Crear 2 bases de datos la primera denominada “plantel_1” y la segunda
“plantel_2”, ambas con la misma estructura y cantidad de registros, pero con datos distintos
para evitar la duplicación de datos.
1. Base de datos “plantel_1” (Ver Tablas 8 a 10):
Access MySQL
Para rellenar la tabla de los datos de los alumnos en la base de datos “plantel_1” transcurrieron 4 segundos.
Para rellenar la tabla de los datos de los alumnos en la base de datos “plantel_1” se emplearon 35 segundos.
Tabla 8 Operación 8
Access MySQL
Para importar los datos en la tabla de las materias en la base de datos “plantel_1” transcurrió 0.5 segundos.
Para importar los datos en la tabla de las materias en la base de datos “plantel_1” se emplearon 4 segundos.
Tabla 9 Operación 8
12
Access MySQL
Para importar los datos en la tabla de las operaciones en la base de datos “plantel_1” transcurrieron 6.5 segundos.
Para importar los datos en la tabla de las operaciones en la base de datos “plantel_1” se emplearon 2 minutos con 18 segundos.
Tabla 10 Operación 8
2. Base de datos “plantel_2” (Ver Tablas 11 a 13):
Access MySQL
Para rellenar la tabla de los datos de los alumnos en la base de datos “plantel_1” transcurrieron 2.5 segundos.
Para rellenar la tabla de los datos de los alumnos en la base de datos “plantel_2” se emplearon 33 segundos.
Tabla 11 Operación 8
Access MySQL
Para importar los datos en la tabla de las materias en la base de datos “plantel_2” transcurrió 0.7 segundos.
Para importar los datos en la tabla de las materias en la base de datos “plantel_2” se emplearon 3 segundos.
Tabla 12 Operación 8
13
Access MySQL
Para importar los datos en la tabla de las operaciones en la base de datos “plantel_1” transcurrieron 5.7 segundos.
Para importar los datos en la tabla de las operaciones en la base de datos “plantel_2” se emplearon 2 minutos con 16 segundos.
Tabla 13 Operación 8
Operación 9. Crear una base de datos denominada “plantel_union”, para unir las tablas de las
bases de datos “plantel_1” y “plantel_2” con sus respectivos datos almacenados, para formar
una base de datos donde la tabla de alumnos contenga 16000 registros (id’s de 1,3…15999 y
2,4…16000), la tabla de operaciones contenga 64,000 registros (id´s de 1,2…32000 y
32001…64000) y la tabla de materias contenga 40 registros (id´s de F001 a F040).
Union de las tablas de alumnos de plantel_1 y plantel_2 (Ver Tabla 14).
Access MySQL
Para rellenar la tabla de los datos de los alumnos en la base de datos “plantel_union” transcurrieron 5 segundos.
Para rellenar la tabla de los datos de los alumnos en la base de datos “plantel_union” se emplearon 63 segundos.
Tabla 14 Operación 9
14
Union de las tablas de materias de plantel_1 y plantel_2 (Ver Tabla 15).
Access MySQL
Para importar los datos en la tabla de las materias en la base de datos “plantel_union” transcurrieron 1.3 segundos.
Para importar los datos en la tabla de las materias en la base de datos “plantel_union” se emplearon 5 segundos.
Tabla 15 Operación 9
Union de las tablas de operaciones de plantel_1 y plantel_2 (Ver Tabla 16).
Access MySQL
Para importar los datos en la tabla de las operaciones en la base de datos “plantel_union” transcurrieron 11 segundos.
Para importar los datos en la tabla de las operaciones en la base de datos “plantel_union” se emplearon 4 minutos con 27 segundos.
Tabla 16 Operación 9
15
Conclusión.
Por medio de la descripción que proporciona cada tabla, sobre los tiempos obtenidos en la
ejecución de las operaciones presentadas, se observa que Access muestra un mejor
rendimiento para realizar operaciones con bases de datos de manera gráfica, con lo cual
compensa las limitaciones que posee para realizar búsquedas complejas y para realizar
operaciones complejas con las bases de datos.