Resumen
en las consultas tipo Lenguaje de Manipulacin de Datos, (DML, por sus siglas en ingls); se
especifican las transacciones SELECT entre Oracle DB 12c y Microsoft (MS) SQL Server 2014.
Cada Sistema de Gestin de Base de Datos (SGBD, por sus siglas en espaol) posee ventajas y
desventajas. La base de datos y consultas realizadas son tomadas de acuerdo a un proyecto, para
demostrar el rendimiento en los SGBD recientes. Las pruebas estn dirigidas para examinar el
rendimiento en las consultas mencionadas con tres niveles de dificultad entre estos dos sistemas.
Se realiza una evaluacin comparativa en las consultas SELECT cara a cara entre estos dos
sistemas, los resultados necesitan una diferencia a nivel de consultas que lidera Microsoft SQL
Palabras Clave: Oracle DB, MS SQL Server, bases de datos, consultas, rendimiento.
Abstract
Manipulation Language (DML) queries; SELECT transactions are specified between Oracle DB
12c and Microsoft (MS) SQL Server 2014. Each Database Management System (DBMS) has
advantages and disadvantages. The database and queries are taken according to a project, to
demonstrate the performance in the recent DBMS. The tests are aimed at examining performance
in the mentioned queries with three levels of difficulty between these two systems. A
benchmarking is performed on SELECT face-to-face queries between these two systems, the
results need a query-level difference that leads Microsoft SQL Server versus Oracle DB 12c.
Introduccin
problemas de optimizacin y desempeo debido a que los tiempos de respuesta no satisfacen las
expectativas del usuario (Moreno, Olarte,2012, pp 6-17). Una de las posibles causas de lo
siglas en ingls) es un lenguaje de consulta que permite el acceso a las bases de datos
relacionales, para lo cual se pueden especificar diversos tipos de operaciones (Meza, 2015). SQL
proporciona dos lenguajes: un lenguaje de definicin de datos DDL (Data Definition Language,
por sus siglas en ingls), que permite especificar el esquema de una base de datos a travs de
lenguaje de manipulacin de datos DML, el cual permite expresar operaciones sobre los datos,
Al tomar una decisin sobre qu sistema elegir es necesario seleccionar cul es ptimo y el
que ofrece mayores garantas en cuanto a rendimiento, tambin es importante elegir cual es ms
(DBMS, por sus siglas en ingls) se caracteriza por un conjunto de diversas caractersticas
funcionales y no funcionales y las especificaciones, cada uno con sus ventajas y desventajas, una
de las cuales es el rendimiento el determina qu tan rpido un DBMS puede procesar y ejecutar
consultas (Bassil, 2012). De esta manera cada empresa necesita realizar un estudio entre el costo
y rendimiento para establecer cul SGBD se acomoda a sus necesidades, por esto muchas
empresas de desarrollo de software estn creando y produciendo sistemas los cuales cuestan
entre cero dlares en el caso de los SGBD (Sivakumar, Software Engg, 2011).
Cabe mencionar que a nivel de consulta query (por su vocablo en ingls) existen algunos
inconvenientes relacionados con el nivel de complejidad o dificultad que puede alcanzar las
sentencias en su estructuracin que dado el uso inapropiado de una o varias consultas
dependiendo la experiencia del programador. Esto ltimo puede ser originado por las siguientes
causas: por la cantidad de tablas necesarias para resolver un query, por la cantidad de
restricciones necesarias para filtrar los datos y por la combinacin de columnas que haya que
El mal uso de las clusulas de la sentencia SELECT para consultar una base de datos es
la razn principal por la cual un query no puede resolverse en mximo 3 segundos; la sentencia
SELECT es aquella que se utiliza para elegir de una tabla, un subconjunto de filas que cumplan
con determinadas condiciones. (p. 51). De acuerdo a lo anterior se entiende que el mal uso en
una consulta query entrega un rendimiento insuficiente, y por ende, el mal uso que se le da en la
consulta. Se recomienda que el usuario primero conozca la arquitectura del SGBD, la sintaxis y
las tcnicas para las sentencias y as aprovechar el mximo rendimiento del sistema
En este artculo se hace una comparacin y anlisis de rendimiento, ya que cada sistema
tiene sus pros y contras. La base de datos de Oracle ayuda a lograr resultados fiables, es flexible,
segura y rentable para administrar la informacin y aplicaciones; por otro lado, ofrece un alto
rendimiento y escalabilidad (p. 2). Adems, posee muy buen desempeo en rendimiento y su uso
menos complejo en consultas, maneja un optimizador interno que le permite definir un plan de
ejecucin para una consulta. (Moreno, Romero, Restrepo, 2005, p. 2). Mientras MS SQL Server
alternativa de Microsoft a otros potentes sistemas de gestores de base de datos. (Moreano, 2014).
Los tipos de datos de MS SQL Server son compatibles con la mayora de tipos de datos de
Oracle DB, DB2 y MySQL Sistemas de Gestin de Base de Datos Relacional (RDBMS, por sus
siglas en ingles). Se pueden utilizar los mismos formatos para crear y almacenar datos en las
diferentes bases de datos existentes (Martn, Mata, Manuel, Labrada, Leyva, 2016). En general,
Oracle como Microsoft son soluciones disponibles slo con la edicin empresarial de los
2006). Por consiguiente, las empresas deben comparar los costos de mejoras en el rendimiento
para determinar la viabilidad de migrar a una mejor arquitectura (Ionu HRUBARU, Marin
FOTACHE . (2017).
El principal problema que se presenta en estas dos bases de datos seleccionadas de acuerdo
objetivo es determinar qu sistema de gestin de bases de datos obtiene mejor rendimiento en las
consultas.
Metodologa
Se realiza una comparacin en los dos SGBD ejecutando diferentes consultas DML
rendimiento de los SGBD desde las consultas. En consecuencia, los datos obtenidos permiten
descubrir diferencias y evaluar los resultados obtenidos, permitiendo interpretar y mostrar los
Desarrollo practico.
El equipo usado para las pruebas de rendimiento para los dos sistemas a usar corresponde a
tems Especificaciones
Tipo x64-Based-PC
Memoria RAM 6 GB
las siguientes consultas SELECT para verificar el estrs en los tres tipos de niveles que se describen
en la Tabla 2, a continuacin se muestran los niveles de dificultad: alta, media y baja junto con la
query.
Media
Baja
2 asc
MEDIA 4 2 2 1 asc
1 desc
BAJA 2 1 1 1 desc
De acuerdo a la Tabla 3 estructuran las siguientes sentencias SELECT para realizar la prueba
Se seleccion una base de datos ya creada para realizar la prueba de rendimiento (Judith,
Roger, 2007). La base de datos usada para la prueba de rendimiento es un modelo de bases
sido escogido para realizar las pruebas, el cual se aplican para que permitan medir el
(Judith, Roger,2007).
Las tablas estn en el siguiente detalle, el modelo relacional de la base de datos a usar se
muestra en la figura 2:
resultados de insercin:
Como se muestra en la tabla 2 estas consultas se ejecutan para realizar las pruebas con los
Cada sistema de gestor de bases de datos posee su propio gestor de tiempos para cada tiempo
Para estas pruebas de rendimiento que se realizaron fue muy importante aplicar de acuerdo a la
efecto de la cach de memoria, Para la insercin de las filas se tuvo que codificar teniendo
insercin de miles de filas en las tablas. En SQL Server, la insercin de 500000 filas en cada una
de las 6 tablas de la base de datos, demor casi 9 minutos. Y en Oracle se demor casi 8 minutos.
Server en milisegundos:
tabla 5.
promedio total en cada uno de los sistemas, y cargando filas desde 1000 hasta finalizar con
A continuacin, se presenta una serie de pruebas de rendimiento entre los dos SGBD Oracle DB
12c y MS SQL Server. En las pruebas para tratar de garantizar en lo posible igualdad de
condiciones en la plataforma de pruebas, que se verific segn los sitios oficiales tanto de Oracle
y Ms SQL Server, se hicieron 3 pruebas en consultas se cargaron 6 tablas con los tamaos 1000,
5000, 10000, 50000 y 500000 filas, y se tom el tiempo de ejecucin sobre los tres niveles en que
se realizaron las pruebas, baja, media, y alta, especficamente se realizaron mediciones y grficas.
consulta teniendo en cuenta el nivel de complejidad definida como alta (Tabla 2).
Luego de las operaciones de consultas que se analizaron, se obtienen los resultados de la Figura
detallado en color rojo, aplicada en SQL Server. Los resultados registrados y analizados
favorecieron a SQL Server; a continuacin, se muestran los grficos sobre los resultados
Grafica 3. Comparativo, niveles de rendimiento en los dos sistemas Oracle DB y SQL server
Grafica 4. Comparativo, niveles de rendimiento en los dos sistemas Oracle DB y SQL server
respuesta en milisegundos que tardaron los dos SGBD Oracle DB 12c y MS SQL Server 2014.
De acuerdo a las lecturas tomadas se analiz lo siguiente: se procede a verificar los datos y
consulta hasta punto de inflexin de 300500 filas, sin embargo, MS SQL Server 2014 despus de
este punto se obtiene un mayor desempeo en la consulta despus de 400000 filas obteniendo un
tiempo en la consulta hasta las 300000 filas consultadas. En el punto de inflexin MS SQL Server
sigue obteniendo un mejor tiempo de respuesta superndolo despus de 400000 filas en la consulta.
El ultimo comportamiento en la dificultad baja Oracle DB 12c obtiene muy desempeo en
la mayora de las consultas. En la consulta de 500000 filas solo por una pequea diferencia de 112
despus de 300500 filas en dificultad alta y en 300000 filas en dificultad media, por tanto, MS
SQL Server 2014 obtiene un mejor desempeo en la consulta mayor a 400000 filas. En la dificultad
baja, Oracle DB 12c escasamente sobrepasa el nivel de consultas en 500000 filas frente a MS SQL
Entonces el sistema gestor base de datos MS SQL Server 2014 resultara ser el sistema ms rpido
en tiempos de respuesta en exceso de consulta de datos despus de 300500 filas. Por tanto, en la
consulta mxima de 500000 filas MS SQL Server 2014 sobrepasa en 1330 filas consultadas en la
Para ir finalizando, analizando los tres comportamientos de acuerdo a cada dificultad de las
consultas realizadas MS SQL Server 2014 obtiene un mejor desempeo en el tiempo de la consulta
dificultad alta y media, sin embargo, Oracle DB 12c obtuvo muy buen desempeo en la dificultad
Es muy importante continuar las pruebas realizadas con los dems SGBD ya que permite evaluar
los tiempos de respuesta en las consultas en estos sistemas. Cabe aclarar que en las pruebas se
SGBD, sin embargo, posen anlisis y resultados desactualizados. Por consecuencia se realizaron
pruebas en base a estas nuevas versiones. En las comparaciones de que se obtienen resultados
mediante datos y grficos en la consulta SELECT que se aplicaron en los gestores de base de
datos Oracle DB 12c y MS SQL Server 2014 los resultados finales, donde se describe que MS
SQL Server 2014 obtiene un promedio de respuesta a la consulta SELECT ms ptimo en mayor
carga en consulta de datos que Oracle DB 12c en dificultad alta despus de 300500 filas
Las pruebas se realizaron sin ninguna alteracin para mostrar el desempeo de cada sistema, su
instalacin fue predeterminada sin programas de terceros. Las pruebas realizadas podran
desempearse mucho mejor en sistemas ms recientes en cuanto a hardware como una CPU de 2
GHz de arquitectura x64, cuatro ncleos o superior, sistemas AMD Opteron o Intel Xeon,
recientes y lograr precisar resultados ms concisos y detallados para obtener diferencias en cada
preprint arXiv:1205.2889.
Cuervo, M. C., & Sarmiento, J. C. D. (2006). Comparacin de los motores de base de datos
Hernndez, A. P., & Gonzlez, C. R. J. Propuesta de tutorial interactivo en lnea para apoyar la
Ionu HRUBARU, Marin FOTACHE . (2017, enero). On the Performance of Three In-Memory
Data Systems for On Line Analytical Processing . Informatica Economica , vol. 21, pp. 5-
15. .
Judith, P., & Roger, S. (2007). Modelo de base de datos para Estructuras Planas (Tesis de
Martn Pea, N., Mata, M., Manuel, M., Labrada Quiala, R., & Leyva Jerez, G. R. (2016).
Proceso de rplica de datos con Microsoft SQL Server para el Replicador de Datos Reko.
Moreno, F. J., & Olarte, J. W. (2012). ndices de Tres Estrellas: un caso de estudio en Oracle y
Saikia, A., Joy, S., & Dhondup Dolma, R. M. (2015). R, Comparative Performance Analysis of
Environment.
Sandro, M., & Roger, S. (2007). Comparacion del Rendimiento de MS SQl Server, Oracle y
Sivakumar, Software Engg. (2011, octubre). SWOT Analysis of the Oracle standard and MS-