Está en la página 1de 8

CENTRO DE INVESTIGACIONES Y DESARROLLO FACULTAD DE INGENIERA

Bases de datos con


software libre
Diego Samir Melo Solarte1

Resumen
En el presente artculo ilustra diferentes opciones de Sistemas Gestores de
Bases de Datos, desde la perspectiva del software libre, mostrando un listado
de las diferentes opciones existentes y breves caractersticas de cada uno de
ellos que le permitirn a los desarrolladores de software tener a su
disposicin una gama de opciones ms amplia y econmica. Adems, se
plantea varias caractersticas que se deben tener en cuenta a la hora de
elegir una herramienta para administrar y desarrollar sistemas de informacin.
Por ltimo se realiza una breve comparacin entre PostgreSQL y MySQL
como las herramientas ms comunes dentro del desarrollo WEB.

Hoy en da, todas las empresas ya sean grandes, medianas o pequeas y sin
importar su tipo (acadmicas, comerciales, industriales, etc.) requieren de un
buen sistema de informacin (SI) que de soporte a la toma de decisiones ya
sea a nivel Administrativo, Tctico e incluso el Operativo.
Ahora bien, el trabajo de los desarrolladores est orientado al anlisis, diseo
y construccin de un sistema de informacin acorde a las necesidades de la
empresa, de tal forma que satisfaga en gran medida los requerimientos de
software planteados por una organizacin, adems de las caractersticas
propias de la Ingeniera de Software como son: la escalabilidad, usabilidad,
desempeo, seguridad, disponibilidad, tolerancia a fallos, estabilidad y la
robustez del sistema entre otras. Si se piensa en ello, es muy comn que el
desarrollador oriente sus esfuerzos en buscar una herramienta SGBD2, que
1

Ingeniero
de
Sistemas,
Facultad
mdiego@athenea.umanizales.edu.co

de

Ingeniera,

Universidad

de

Manizales.

Sistema Gestor de Base de Datos (SGBD): se puede definir como todo el conjunto de herramientas
que acompaan al motor de base de datos y permiten a los diferentes tipos de usuarios interactuar con
la BD. recuerde que el motor de BD es la arquitectura lgica o mejor dicho el algoritmo que permite

VENTANA INFORMTICA No. 12 Universidad de Manizales, enero junio / 2005 pp 277-286

- Universidad de Manizales, enero junio / 2005


pueda dar el mejor soporte y la garanta de poder cubrir las exigencias de
funcionamiento y calidad que requiere el sistema.
A la hora de implementar sistemas de informacin de alto desempeo ya
sean OLTP3 o OLAP4, los SGBD elegidos por la mayora de los
desarrolladores son Oracle, Informix o DB2, entre otros. Pero surge un
interrogante. Qu costo implica utilizar una herramienta de este nivel?; tal
vez si se realiza una evaluacin de todas las consideraciones que implica el
desarrollo de un sistema de informacin, se detecta que de todo el
presupuesto del proyecto, la herramienta que sustentar la Base de Datos
BD5, se lleva un porcentaje considerable y no todas las organizaciones o
empresas disponen de una solvencia econmica suficiente como para elegir
un SGBD de los mencionados anteriormente; esto ha llevado a diferentes
grupos desarrolladores, a buscar nuevas alternativas en el mercado que
adems de respaldar un SI, tambin permita cubrir todas las necesidades del
diseo. Como alternativa, las organizaciones de software libre y sus
herramientas se ha convertido en una gran posibilidad de hacer buenos
desarrollos a un menor costo y quiz con muchas ms posibilidades; es muy
alta la oferta que existe de SGBD con software libre, fcilmente se puede
conseguir en Internet SGBD para todos los gustos (Tabla 1), todo depende
de las necesidades que se tenga y la disposicin para evaluar diferentes
alternativas que a continuacin se presentan.

acceder los datos. Los SGBD tambin se conocen como sistemas administradores de BD con su sigla
en ingles DBMS(Data Base Management System).
3

On Line Transaction Processing OLTP: El procesamiento transaccional se realiza para manipular


poco volumen de informacin y alto nivel de concurrencia, tal es el caso de los sistemas bancarios,
donde una consignacin es una transaccin que solo necesita Nmero de Cuenta y Valor a consignar.

On Line Analitical Process OLAP: El Procesamiento Analtico esta orientado a solo consultas basadas
el estudio de grandes volmenes de informacin histrica y donde la operacin es lenta, las consultas
realizadas en una BD OLAP tienen un alto nivel de complejidad y no son predecibles
5

Bases de Datos (BD): Coleccin de datos almacenados en un dispositivo informtico no voltil, los
datos deben estar disponibles en todo momento para actualizaciones, adiciones, borrados y consultas,
esttos datos siempre deben mantener su integridad y coherencia. Es muy comn encontrar personas
que hablan de bases de datos cuando se refieren a un listado, pero no hay que confundir el producto
de una base de datos con la misma base de datos, por ejemplo: un directorio telefnico, no es una
base de datos ya que en l no se podr ni actualizar, ni borrar y mucho menos agregar datos

CENTRO DE INVESTIGACIONES Y DESARROLLO FACULTAD DE INGENIERA

Tabla 1.
Listado de algunos SGBD que se inclinan por la filosofa del software libre
Nombre

Generalidades

Interfaces

Sistema Operativo

mSQL

Mini SQL o MSQL es un ligero C, ESL, Tcl, Perl, Python,


motor de bases de datos orientado NextSTEP, X11 y SQL
principalmente a trabajar en como lenguaje de consulta
maquinas de poca velocidad

MySQL

Quizs el SGBD ms popular hoy SQL92, ODBC, C, Perl, BSDOS, SunOS, Solaris,
Linux, IRIX, AIX, OSF1,
en da para WEB, su principal JAVA, C++, Python
BSD/OS,
FreeBSD,
caracterstica es la velocidad
Windows
aunque
carece
de
grandes
posibilidades de administracin.

University
INGRES

SGBD que parte del uso bsico que QUEL, EQUEL


tena
el
antiguo
INGRES
Corporation, aunque no tiene todas
las
bondades
del
producto
comercial actual

SunOS, Linux

Qddb

Se basa en la versin comercial de Tcl/Tk, SQL


Qddb, su principal caracterstica es
la velocidad aunque no tiene un
amplio soporte en el tipo de datos.

Ultrix, OSF/1, BSD/386,


Linux, SunOS, Solaris.

Exodus

Un SGBD orientado a objetos, GNU E, C++


permite el manejo de transacciones
y
la
construccin
de
BD
distribuidas, no soporta SQL

MIPS/Ultrix, SPARC/SunOS,
HP 7xx/HP-UX, Linux

SunOS, Solaris, HP-UX,


AIX, Linux, FreeBSD-2,
SCO, SVR4, NeXT, Cray
Unicos, OSF/1, Ultrix.

Berkely DB De la misma familia de Postgres, es dbm, ndbm, hsearch, DB Linux, MacOS X, QNX,
un SGBD de alto desempeo, 1.85
UNIX, VxWorks y Windows.
rpido y una de las grandes
ventajas es que permite una
buenahttps://athenea.umanizales.e
du.co/mail2/src/webmail.php puesta
a punto para cada caso de negocio.
PostgreSQ Un
SGBD
objeto
relacional
L
orientado principalmente a bases
de datos grandes, tiene muy buen
soporte
de
administracin
y
auditoria
Ozone

SQL, C API, C++ API, Tcl Linux, Solaris, Digital Unix,


API, Perl5 API, Python BSD, Windows
API,
WWW
Gateway,
JDBC driver, X11

Es un nuevo SGBD orientado a JAVA, XML


objetos cuya objetivo principal es
soportar desarrollos WEB

Cualquiera que soporte la


maquina virtual de java

Los anteriormente listados, no son los nicos SGBD; desde el punto de vista
acadmico o comercial, se han desarrollado otros, quizs no tan comunes o
difundidos como los anteriores pero que hacen parte de la gran oferta que se
puede encontrar en la familia del software libre, como lo muestra la Tabla 2.

- Universidad de Manizales, enero junio / 2005


Tabla 2.
Otros SGBD
SGBD
Beagle SQL
MOOD-SX Material's Object-Oriented
Database
Cbase
LEAP
DBX Database XML
Requiem
DiamondBase
ConceptBase
FireBird
GNU SQL
YOODA (Yet another Object Oriented
Database)
Onyx
XORM
TdbEngine SQL Server
OCELOT

DIRECCIN
www.beaglesql.org
mood.mech.hi-tech.ac.jp/mood/mood-sx.html
www.cbase.com
leap.sourceforge.net
sourceforge.net/projects/dbxsqlxmldbms/
www.ptf.com/ptf/products/UNIX/current/0045.0.html
www.csse.monash.edu.au/~darrenp/diamondbase.html
www-i5.informatik.rwth-aachen.de/CBdoc/cbflyer.html
firebird.sourceforge.net
www.ispras.ru/~kml/gss
www.ptf.com/ptf/products/UNIX/current/0047.0.html#0
www.ptf.com/ptf/products/UNIX/current/0037.0.html
sourceforge.net/projects/xorm
sourceforge.net/projects/tdbsql
sourceforge.net/projects/ocelot

http://www.jepstone.net/directory/index.cgi/Databases/Database_Servers
http://www.iam.unibe.ch/~scg/Archive/Software/FreeDB/FreeDB.list.html
PostgreSQL y MySQL son los SGBD de mayor representacin dentro del
mundo de Software Libre, principalmente por su alta integracin con
herramientas de programacin WEB como PHP6 o JAVA7. al confrontarlas,
surgen varias inquietudes, entre ellas las ms frecuentes son: cul es
mejor? o tambin la pregunta que se hace todos los DBA8 a la hora de
implementar un sistema de informacin: qu SGBD debo escoger, MySQL o
PostgreSQL?.
Pues bien, desde un punto de vista objetivo, hacer la comparacin de
PostgreSQL y MySQL se podra considerar inadecuado; ya que si se realiza
una pequea analoga, sera como comparar un camin, frente a una
tractomula, cada uno fue desarrollado con un propsito y un tipo de servicio
diferente. Esto de paso permite responder la segunda inquietud, cul
escoger?, bien cuando el DBA se responda para qu lo necesita y que
resultados espera, podr elegir fcilmente entre un SGBD u otro.
A continuacin se plantean algunos puntos de comparacin, no con el fin de
determinar cual SGBD es mejor, sino para ayudar a los analistas,
6

Preintrprete de Hipertexto PHP: Lenguaje de programacin de alto nivel, orientado a la WEB


http://www.php.net

JAVA: Lenguaje de programacin orientado a objetos, desarrollado por SUN Microsystem, sus
principales caractersticas son: portabilidad, seguridad y multitarea. http://www.sun.com

Administrador de Bases de Datos DBA: son los encargados de velar por el correcto funcionamiento
de la BD, en trminos generales, son las personas que garantizan que la BD que soporta al Sistema de
Informacin esta disponible en cualquier momento para cualquier usuario que desee usar el Sistema.

CENTRO DE INVESTIGACIONES Y DESARROLLO FACULTAD DE INGENIERA

diseadores y desarrolladores a tomar una decisin, de acuerdo a las


necesidades propias del SI y las caractersticas que cada SGBD tenga.
Caracterstica

MySQL

Definicin de Esquema

Relacional

Objeto / Relacional

SQL92

SQL92 y SQL99

SQL para Consulas


Herramientas
Administracion Grafica

PostgreSQL

de PhpMyAdmin, perlDBDmysql y PgAccess y herramientas que


herramientas que soporten java o soporten java o jdbc
jdbc

Tipos de Datos Soportados

en la versin 4. soporta
aproximadamente 27 tipos de
datos entre carcter, numricos y
fecha

Procedimientos almacenados

No
tiene
soporte
procedimientos almacenados

en la versin 7.4 soporta 62


tipos de datos entre carcter,
numricos, fecha y otros de tipo
administrativo como aclitem,
oid, xid etc.
10

de Triggers

y Funciones

Elementos adicionales (Vistas, No soporta Vistas, no soporta soporta vistas, dominios, tipos
Sinnimos, Secuencias, etc. ) sinnimos, pero si soporta de objetos nuevos, secuencias,
algunas secuencias.
reglas, no soporta sinnimos
Backup en Caliente

mysql_dump

pg_dump

Integridad de Datos

No tiene soporte de constraint

Buen manejo de constraint

Joins

No tiene soporte

Soporta, natual join, inner join,


cross
join
sin
ningn
inconveniente, adems permite
manejar
subconsultas
con
unin,
interseccin
y
excepciones.

Recursos

Bajo consumo de recursos como el


consumo
de
memoria
memora RAM y hardware
aumenta aproximadamente en
25% ms que MySQL

Interfaz bsica de comandos

mysql

psql

PHP

buena integracin con php

Buena integracin con php, en


las
ltimas
versiones
ha
aumentado el soporte de
funciones.

Rendimiento

alta velocidad

Buena velocidad pero menor


que la ofrecida por mysql

En resumen, PostgreSQL y MySQL tienen muy buen soporte web,


actualmente es para lo que ms se les utiliza, aunque si se piensa en
desarrollar aplicaciones WEB, donde el factor principal es la velocidad, se
puede inclinar por MySQL ya que este es ms rpido debido a que no hace
ningn tipo de control y/o auditora; mientras, si el objetivo es desarrollar una
9

Struct Query Language SQL: el lenguaje de consulta estructurado es una herramienta estndar
dentro de las interfaces existentes para interactuar con una BD.

10

Triggers: se denominan disparadores, su principal objetivo es ejecutar algn procedimiento en el


momento que ocurra un evento en la BD o tabla asociada a l.

- Universidad de Manizales, enero junio / 2005


aplicacin a la medida donde predomine la estabilidad, integridad y seguridad
del sistema, la orientacin es PostreSQL. Tenga en cuenta que PostgreSQL
es un SGBD de alto desempeo orientado a la construccin de SI
distribuidos, Clusters11, o Mineras de informacin, es decir esta orientado al
manejo de grandes volmenes de informacin, y MySQL esta orientado a la
realizacin de transacciones rpidas con el fin de agilizar la respuesta de una
WEB.
Un DBA cul elegira?. Bien, para ello se requieren evaluar algunos factores
importantes que involucra el desarrollo de cualquier sistema de informacin,
entre los cuales se tienen:

Factores Tcnicos:
Es necesario determinar el tipo de sistema de informacin a construir,
Cliente/Servidor, Distribuido, Data Mining, entre otros.
La Interfaz de usuario a usar.
Tipos de Lenguaje que puede soportar un SGBD.
La disponibilidad de hardware.

Factores Econmicos
Costo de licenciamiento
Costo de desarrollo e implementacin
Determinar el costo de capacitacin
Costo de operacin

Otros factores:
La seguridad de los datos
Estabilidad
Velocidad
Mecanismos de respaldo
Mecanismos de Control
Cantidad de Peticiones
Mecanismos de seguridad

Por ltimo, se requiere un anlisis minucioso que permita determinar la


relacin costo/beneficio12
11

Cluster: tipo de arquitectura paralela distribuida que consiste de un conjunto de computadores


independientes interconectados operando de forma conjunta como un nico recurso computacional Sin
embargo, cada computador puede utilizarse de forma independiente o separada.
http://www.ac.uma.es/educacion/cursos/informatica/ArqDist/pdfs/05-ClustersBW.pdf

12

costo/beneficio Valorizacin de evaluacin que relaciona las utilidades en el capital invertido o el


valor de la produccin con los recursos empleados y el beneficio generado.
http://www.definicion.org/costo-beneficio

CENTRO DE INVESTIGACIONES Y DESARROLLO FACULTAD DE INGENIERA

Evaluando la alternativas del software libre, se puede encontrar SGBD que


se ajusten a cualquier necesidad que involucran los factores tcnicos; en los
factores econmicos se podr obtener una muy buena reduccin de costos
ya que el software libre por lo general es muy econmico y en muchas
ocasiones tiende a cero, para el caso, MySQL y PostgreSQL se los consigue
de manera gratuita en cualquier distribucin de Linux o en la red.
Algunos DBA's consideran que el dinero que se ahorra en el licenciamiento,
se hace necesario invertirlo en capacitacin, pero hay que tener en cuenta
que quin desarrolla el SI es conocedor de las diferentes herramientas y en
los usuarios finales no es necesario invertir, ya que para ellos existen sus
propias interfaces, totalmente transparentes para el manejo e interaccin con
la BD.
Las BD con software libre claramente se ve que son una muy buena opcin,
pero, por qu existe desconfianza para usar esta tecnologa?.
Generalmente, las personas argumentan que no usan software libre simple y
llanamente porque no hay soporte, porque el cdigo fuente lo conoce todo el
mundo y es peligroso, lo barato puede salir caro; en fin, varios argumentos
que producen desconfianza y temor pero la razn primordial es el
desconocimiento lo cual ha llevado a generar juicios si fundamento y de
paso justificar el miedo que produce probar algo nuevo.

El soporte si lo existe, basta con adquirir cualquier distribucin de Linux


(Debian, Suse, RedHat, entre otras), adems si existe inconveniente,
fcilmente se podr recurrir a Internet y en cuestin de horas alguna
persona en el mundo le facilitar ayuda.

Lo del cdigo abierto es la esencia de GNU13, es decir del software Libre,


y en vez de ser un riesgo se convierte en una fortaleza ya que cualquier
usuario, como en este caso los desarrolladores, pueden adecuar la
herramienta de acuerdo a las necesidades mejorando en cierta forma el
desempeo de un Sistema de Informacin; ahora bien, esto es lo que ha
permitido que la aparicin de bugs14 sea rpidamente corregida y esa
correccin rpidamente difundida por la red.

Por ltimo el ahorro obtenido en el software libre no puede ser juzgado


como riesgo, sino como una oportunidad de hacer viable un proyecto de
software.

El software libre existe y con l los SGBD libres, siendo estos, herramientas
13

GNU: Nombre otorgado por la Free Sosftware Fundation a todo software que se distribuye con su
cdigo fuente y que el usuario puede adecuarlo de acuerdo a sus necesidades. http://www.gnu.org

14

Bugs: Denominacin dada a los diferentes agujeros de seguridad encontrados en un software.

- Universidad de Manizales, enero junio / 2005


que ofrecen una diferente pero excelente alternativa para poder construir
sistemas de informacin a muy bajo costo, con igual o mejor desempeo y
dinamismo que los soportados en herramientas propietarias.

Bibliografa
DE MIGUEL Adoracin.; et. al. Fundamentos y modelos de bases de datos,
Alfaomega, Mxico, 1999.
ULLMAN Jefrey, WIDOM Jennifer; Introduccin a los sistemas de bases de
datos, Prentice Hall, Mxico, 1999.
PIATTINI Mario G; Anlisis y diseo detallado de aplicaciones informticas
de gestin, Alfaomega, Mxico, 2000.
University of California at Berkeley Computer Science Department,
PostgreSQL, On Line, California USA, 2005, (http://www.postgresql.org/)
About History. Disponible en: http://www.postgresql.org/about/history
Mysql AB Founders, The World's Most Popular Open Source Database, On
Line, Octubre 12 2001, (http://www.mysql.com) About. Disponible en
http://www.mysql.com/company/
FirebirdSQL Foundation, Relational Database for the New Millenium, On Line,
2005, (http://firebird.sourceforge.net/) documentation history. Disponible en:
http://firebird.sourceforge.net/index.php?op=history
Open Source Development Network, On Line, 2005, (http://sourceforge.net)
opcin about souceforge.net, busquedas SGBD, DBMS.
Hughes Technologies, The home of Mini SQL (mSQL), On Line, Febrero 3 de
2005, (http://http://www.hughes.com.au/) products Mini SQ. Disponible en:
http://www.hughes.com.au/products/msql/

También podría gustarte