Está en la página 1de 6

linux en la empresa

Cómo ahorrar dinero con Linux

Microsoft SQL Server,


MySQL y PostgreSQL
Santiago Gómez Ruiz
La elección de un gestor de bases de datos en una empresa no es algo ni mucho menos trivial. De
partida, puede llegar a ser una inversión tanto en hardware como en software muy cuantiosa, pero
no sólo eso, además va a condicionar de manera determinante los desarrollos de aplicaciones que
tengan que interactuar con el mismo. Un SGBD, o Sistema Gestor de Bases de Datos crea un entorno
operativo que depende directamente de sus características, y en la mayoría de los casos, se convierte
en el centro del entramado informático de la empresa.

D
e un modo simplificado, un SGBD (o DBMS • Lenguaje de definición de datos (DDL), que permite
linux@software.com.pl

en inglés) es una plataforma de software crear y alterar las estructuras en las que la informa-
que almacena los datos que se le introduz- ción se almacena;
can, debiendo garantizar principalmente su • Lenguaje de manipulación de datos (DML), que per-
disponibilidad, su seguridad y su integridad. Esto significa mite insertar, modificar, consultar y eliminar conteni-
que es un conjunto de programas que permiten el almace- dos de la base de datos;
namiento de información, velando porque se pueda dispo- • Lenguaje de control de datos (DCL), que gestiona el
ner de ella en cualquier momento, que la información sea acceso a los datos desde el punto de vista de la segu-
correcta desde un punto de vista lógico y que sólo pueda ridad (usuarios), como desde el punto de vista de la
ser accedida por las personas adecuadas. integridad (concurrencia).
Y de un modo más directo, el SGBD es el guardián de
los datos de la empresa. Ni más ni menos. De ahí que sea En este artículo se revisarán tres gestores: Microsoft SQL
trascendental su correcta elección. Server, MySQL y PostgreSQL. Los dos últimos son mul-
Los productos que se analizan a continuación están tiplataforma, se encuentran implementaciones para varios
creados en torno a un estándar en lenguajes de bases de da-
tos, el SQL (Structured Query Language), proveniente del SE-
QUEL (Structured English QUEry Language). Este último fue Sobre el autor
desarrollado durante la década de los 70 e implementado
Santiago Gómez Ruiz es Director de Proyectos de Pro-
experimentalmente, ya que las máquinas comerciales de la
talia, una consultoría española especializada en implan-
época no tenían la suficiente potencia de cálculo como para
tación y migración de Software Libre en entornos em-
ejecutar con rendimiento aceptable las operaciones del len-
presariales, docentes e institucionales.
guaje. El lenguaje SQL se divide en tres sublenguajes:

52 Linux+ 4/2007
linux en la empresa
Cómo ahorrar dinero con Linux

sistemas operativos, incluyendo GNU/Linux tuación que he experimentado yo perso- por debajo de la interfaz gráfica? Esto es una
y Windows. Por el contrario, Microsoft SQL nalmente), exija un reinicio del sistema cuestión subjetiva, y cada administrador de-
Server sólo funciona sobre Windows. Nuestra no ayuda a mejorar la disponibilidad; berá valorar su peso en la decisión.
instalación será modesta, 25 puestos de tra- • Los tiempos de mantenimiento son eleva- El precio de Microsoft Windows 2003
bajo. dísimos, en parte causados por el defi- Server STD es de 490,24 € , más 4 paquetes de
Se parte de la premisa de que se trata de ciente sistema de ficheros utilizado, NTFS, 5 licencias para uso de los puestos de traba-
una nueva instalación, sin ningún producto que obliga a defragmentar los sistemas jo: 457,36 * 4 = 1.829,44 €, sumando un total
anterior instalado y por lo tanto, sin gastos de archivo muy frecuentemente. Casi ca- de 2319,68 euros.
de migración, que serían muy variables. La da actualización del sistema operativo En cuanto al sistema operativo GNU/Li-
segunda parte de este artículo trata de cómo obliga a reiniciar el sistema. nux Debian 3.1 Sarge, es un sistema operativo
sería un proceso de migración. de código abierto, y totalmente libre y gra-
El que se evalúen estos tres SGBD no sig- En cuanto a la seguridad, y aún con un buen tuito, que se puede descargar de la página
nifica que sean los únicos o necesariamente los antivirus actualizado, nada puede detener principal del proyecto (http://www.debian.org)
mejores para un propósito determinado. Hay a un virus lo suficientemente reciente como o desde cualquiera de sus mirrors.
productos magníficos como Oracle y DB2, am- para no constar en las bases de datos de nues- La estabilidad de Debian es legendaria.
bos cerrados y de un precio considerablemente tro antivirus. La cantidad de vulnerabilidades Salvo errores de hardware y lógicamente apa-
alto. Lamentablemente, todos los SGBD del gravísimas que han afectado a los sistemas gones, la probabilidad de tener que reiniciar
mercado no caben en este artículo. operativos de Microsoft, y que en alguna oca- un servidor basado en Debian es remotísima.
Esto es importante, porque independien- sión, como con los virus Sasser y Blaster, han La modularidad propia del sistema permite
temente de las características propias de cada llenado telediarios, no animan a confiar en la actualizarlo sin tener que reiniciar, ya que el
SGBD, éste a su vez va a correr sobre un sis- seguridad del sistema. mismo actualizador detiene el servicio que
tema operativo, beneficiándose de sus puntos En cuanto al rendimiento, es más pobre sea necesario, lo actualiza y vuelve a iniciarlo,
fuertes y viéndose perjudicado por sus debili- que el resto de los sistemas operativos. Si a es- en apenas un segundo.
dades. Por muy potente que sea un determi- to le añadimos la muy intensa carga de tra- La seguridad de Debian es la propia de
nado aplicativo, si se implementa sobre un bajo del antivirus y la imposibilidad de des- la mayoría de las distribuciones de GNU/Li-
sistema operativo pobre, el resultado no puede activar la sesión gráfica, que es una auténtica nux, salvo casos exóticos como Linspire. Po-
ser excepcionalmente bueno. devoradora de recursos, el rendimiento se ve líticas conservadoras de seguridad, perfecta
Por lo tanto, el primer extremo a consi- muy seriamente mermado. delimitación de los usos del administrador
derar será el sistema operativo a elegir para En consecuencia, y por si todo lo anterior y el usuario y perfecta compartimentación
hospedar a nuestro SGBD. Consideraremos fuese poco, Microsoft Windows 2003 Server de los directorios que cada uno puede utilizar
GNU/Linux Debian 3.1 Sarge por una parte, es muy exigente en cuanto a hardware. y su grado de utilización permiten al admi-
y Microsoft Windows 2003 Server STD por Finalmente, habría que hacer una consi- nistrador de un servidor basado en Linux
otra. deración final sobre este sistema operativo de dormir tranquilo por las noches.
Microsoft Windows 2003 Server (www. código cerrado: ¿es prudente confiar todos Los virus no son un problema en Linux.
microsoft.com/spain/windowsserver2003/default. los datos de nuestra empresa a un sistema Salvo experimentos en laboratorio, en los que
mspx) es probablemente el sistema operativo operativo que sólo Microsoft sabe lo que hace expresamente se abren vulnerabilidades en el
más estable y seguro de Microsoft. Lamentable-
mente, eso no es mucho. Tanto en estabilidad
como en seguridad deja mucho que desear,
de hecho, la puesta en producción de una
máquina con Windows nos va a obligar a la
adquisición de un software antivirus.
En cuanto a la estabilidad, un problema
endémico de todos los sistemas operativos de
Microsoft son sus bajas tasas de disponibili-
dad. Esto se debe fundamentalmente a dos
motivos:

• Los sistemas se quedan colgados con una


facilidad alarmante. Cada cuelgue y su
posterior reinicio significan que se ha per-
dido tiempo, pero que además es posible
que se haya perdido trabajo sin consoli-
dar en los archivos. En un contexto de ba-
ses de datos, esto puede causar graves in-
consistencias. El hecho de que cualquier
alteración mínima en el hardware, hasta
a veces en el más periférico (por ejemplo,
simplemente al insertar un pendrive, si- Figura 1. Administración de una base de datos mediante la herramienta MySQL Administrator

www.lpmagazine.org 53
linux en la empresa
Cómo ahorrar dinero con Linux

sistema, y posteriormente se aprovechan, o in- faz es clara e intuitiva y viene acompañado de clientes de la base de datos, o por fallos de
cluso extravagancias como emular un virus una suite de utilidades bastante completa. programación en los mismos clientes.
de Windows con privilegios de administra- La herramienta de administración de Otra característica incluida en Microsoft
dor. En conclusión, incluso provocándolo Microsoft SQL Server (Microsoft SQL Server SQL Server son los procedimientos almace-
expresamente, es muy difícil hacer funcionar Enterprise Manager) muestra la habitual dis- nados (stored procedures). Estos procesos se
un virus para Linux. posición de este tipo de aplicativos de Micro- ejecutan a petición de las aplicaciones cliente
Vaya, que si lo que queremos es fastidiar soft, esto es, un árbol a la izquierda donde se y tienen que estar escritos en lenguajes com-
nuestra máquina, es más fácil meterle fuego. muestra cada objeto clasificado por su tipo, prensibles por el motor de base de datos, por
Una ventaja común a todas las distribucio- y un panel a la derecha donde se modifican ejemplo, y tratándose de Microsoft SQL Ser-
nes de GNU/Linux es que son altamente per- las propiedades de dicho objeto. Esta dis- ver, se podrían escribir en .NET.
sonalizables. Esto significa que se puede des- posición permite acceder fácilmente a cual- Las ventajas de los procedimientos al-
cargar al sistema de todo lo que no se necesi- quier objeto de la base de datos, detener y re- macenados son las mismas que las de los dis-
ta, incluyendo el sistema gráfico, dejando so- iniciar el servicio y utilizar las utilidades in- paradores: rendimiento y mantenibilidad. Un
lamente las funcionalidades que se van a uti- cluidas. uso eficaz de ambos elementos permite la
lizar. Lo anterior redunda en que el sistema Dentro de estas utilidades, aparte de bas- creación de clientes de la base de datos lige-
sea más liviano y más rápido, resumiendo, tante detallados programas de mantenimien- ros, fáciles de depurar y de escribir y libres
aumenta el rendimiento. to, podemos encontrar importadores/expor- de errores. Operaciones tediosas y propensas
De hecho, la interfaz gráfica se puede dejar tadores de datos y demás herramientas acce- a pequeños errores, como las validaciones de
desactivada, o se pueden instalar interfaces sorias al propio SGBD. campo, se pueden implementar en base a dis-
gráficas sencillas e increíblemente ligeras, co- Microsoft SQL Server posee disparadores paradores, y otras operaciones complejas co-
mo Fluxbox, Xfce o Enlightenment, que apenas (triggers). Los disparadores son procedimien- mo ajustes de stock en una facturación se pro-
impactan en los recursos. Yo personalmente tos que se ejecutan cuando ocurre un evento gramarán una sola vez, garantizando su va-
suelo dejarla desactivada, y sólo la utilizo por determinado, por ejemplo, que se inserte, mo- lidez independientemente del cliente utiliza-
comodidad en algunos casos, ya que realmen- difique o elimine un registro. De esta manera, do.
te, ¿para qué necesita un servidor la interfaz parte de la lógica de la aplicación la realiza la Si bien la interfaz de usuario es muy bue-
gráfica la mayoría de su tiempo? base de datos. na y sobre el papel tiene muchas funcionali-
Como se ha comentado, la licencia de La utilización de disparadores es muy dades, Microsoft SQL Server adolece también
GNU/Linux Debian 3.1 Sarge es gratuita y su conveniente tanto por rendimiento como por de serios problemas. Las pruebas de rendi-
descarga libre: precio 0€. mantenibilidad de las aplicaciones cliente. Por miento nunca son definitivas, los escenarios
A estas alturas, la comparativa perjudica rendimiento, porque el proceso se ejecuta en de ejecución son tan variopintos que cual-
a Microsoft SQL Server, ya que únicamente el mismo servidor, evitando el trasiego de quier productor de un SGBD puede acondi-
puede ejecutarse sobre Windows. consultas SQL y datos entre cliente y servi- cionar la prueba a un escenario propicio a su
Microsoft SQL Server (https://www.micro- dor. Por mantenibilidad porque de esta for- producto. Eso es posible hasta con Microsoft
soft.com/latam/sql/) en sí es un buen producto, ma, esta lógica es independiente de la aplica- SQL Server, el producto de los tres evaluados
probablemente de los mejor acabados por Mi- ción, lo que asegura que la implementación con peor rendimiento en general, según la
crosoft. Su instalación es sencillísima, su inter- de la lógica no se vea alterada por diferentes experiencia común de los administradores.
Aunque se puedan encontrar estudios sufra-
gados por Microsoft que demuestran que en
un determinado ambiente ejecutando una
determinada consulta con un hardware muy
concreto Microsoft SQL Server puede superar
a sus competidores en cuanto a rendimiento,
la regla general es que es el SGBD más lento
para la gran mayoría de las tareas. El hecho
de que sólo pueda ejecutarse en el sistema
operativo más pobre en rendimiento de los
dos considerados tampoco ayuda.
Otro aspecto que no favorece a Microsoft
SQL Server es la estabilidad. Sus tablas tien-
den a corromperse fácilmente, permitiendo
la duplicación de claves únicas y desastres
de ese tipo. Es importante incluir una recons-
trucción de tablas en el programa de manteni-
miento diario de la base de datos para evitar
su degeneración.
De manera similar a Microsoft 2003 Ser-
ver, Microsoft SQL Server funciona en un
sistema de licencias en el cual se paga por el
Figura 2. Administración de una base de datos de MySQL mediante Webmin servidor, y luego por cada puesto que se sirve

54 Linux+ 4/2007
linux en la empresa
Cómo ahorrar dinero con Linux

de él. En nuestro caso, el precio por imple-


mentar nuestra solución de base de datos con
Microsoft SQL Server con 25 clientes sería de
6.411,90€. Además, hay que tener en cuenta
que al funcionar solamente sobre el sistema
operativo de Microsoft, habría que añadir el
importe de la licencia del servidor y los clien-
tes, con lo que el precio final, sólo en licencias,
sería de 8.731,58€ (no es un error tipográfico).
MySQL AB (www.mysql.com/) es una em-
presa sueca que lleva desde 1995 desarrollan-
do el SGBD homónimo. El My que antecede
al nombre de todos los productos de esta
compañía coincide con el nombre de la hija
de uno de los fundadores, Monty Widenius, lo
que ha llevado a pensar que es el origen del
nombre de los productos.
El servidor de bases de datos MySQL es
de código abierto. Se distribuye en dos ver-
siones, una comercial, de pago y que incluye
soporte, y otra gratuita, basada en el soporte
de la comunidad. Hay que decir que este so-
porte comunitario es extensísimo. Figura 3. Administración de una base de datos PostgreSQL mediante Webmin, obsérvese la similitud de los
Este producto parece orientado a las ne- interfaces
cesidades de una organización media. Du- lenguaje y su aptitud para tareas de este tipo, dulo de MySQL para Webmin permite el con-
rante mucho tiempo, un argumento muy es- es decir, muchas lecturas simultáneas, pocas trol detallado del gestor de bases de datos des-
crito en los foros que tratan el tema es si lo escrituras proporcionalmente, y accesos más de cualquier parte del mundo con un simple
que quieres es velocidad, usa MySQL, si lo que bien simples a los datos. En estos entornos, navegador, sin depender de ningún software
quieres son funcionalidades, usa PostgreSQL. Eso MySQL simplemente no tiene rival hoy en ni ningún sistema operativo específico.
hoy en día no es tan cierto. Si bien MySQL ha día. PhpMyAdmin es otra herramienta de ad-
destacado por su velocidad en operaciones Además de un potente interfaz en modo ministración web de MySQL de mucho éxito.
de lectura (no tanto en escritura) y se le han consola, MySQL cuenta con diversas herra- Es más completa y aún más fácil de usar que
echado en falta funcionalidades, la versión 5 mientas de administración, siendo tres los el correspondiente módulo de Webmin. Su
(actualmente la versión en producción) del más populares: MySQL Administrator (desa- desventaja se podría considerar que no está
SGBD incuye muchas de estas funcionalida- rrollado por la misma empresa), phpMyAd- integrada en Webmin, junto al resto de las
des, incluyendo disparadores y procedimien- min (www.phpmyadmin.net) y el módulo de utilidades de administración del sistema, su
tos almacenados. Por otra parte, la optimiza- administración de MySQL para Webmin. principal ventaja respecto a este último es que
ción de PostgreSQL en cuanto a velocidad los MySQL Administrator es una utilidad es un interfaz totalmente pensado para MyS-
ha dejado muy cerca, de hecho, en entornos muy completa que permite la administración QL y por lo tanto, mejor adaptado y potente.
multiprocesador, PostgreSQL escala mucho de las bases de datos instaladas en el sistema. MySQL es un SGBD altamente configura-
mejor que MySQL. Puede conectarse a cualquier servidor, con las ble es sus parámetros físicos, ya que permite
Uno de los puntos fuertes de MySQL lógicas medidas de seguridad. De un modo elegir el tipo de tabla para cada una de las
es su facilidad de uso y la documentación gráfico permite crear y modificar bases de que componen la base de datos, desde tablas
existente. Está tan extendido, que gran can- datos, tablas, relaciones, usuarios, programar orientadas a la lectura rápida y alojadas ente-
tidad de plataformas web están construidas tareas de mantenimiento, copias de seguri- ramente en RAM, hasta diferentes tipos de es-
contando con MySQL. Estas son las llamadas dad, sincronizar varios servidores, ajustar los tructura de organización de ficheros. Del mis-
plataformas LAMP (Linux+Apache+MySQL parámetros del servidor, etc. Es decir, que tie- mo modo, parámetros muy internos como el
+PHP), que utilizan Linux como sistema ope- ne poco que envidiar a Microsoft SQL Server tamaño y uso de los búferes y la organización
rativo, Apache como servidor web, MySQL Enterprise Manager. de la memoria están accesibles al administra-
como base de datos y PHP como lenguaje de Webmin (www.webmin.com) es una plata- dor. De esta forma, un administrador puede
las páginas. forma web de administración de equipos muy constantemente ir ajustando el rendimiento
Muchos de los gestores de contenidos popular entre administradores, ya que con un de las bases de datos tabla a tabla, conforme
que se utilizan hoy en día están basados en navegador se tiene un interfaz unificado para el volumen de los datos va evolucionando.
este modelo, como PHPNuke, Drupal, Post- controlar cada aspecto de un servidor, inclu- Con un administrador cuidadoso, se pueden
Nuke, Joomla! y Mambo, y aunque desconoz- yendo instalación y desinstalación de hard- alcanzar grandes rendimientos.
co las cifras, la combinación de estos gestores ware, administración de discos y particiones, MySQL es multiplataforma, se puede ins-
agrupará a una mayoría abrumadora de ges- de servicios, usuarios y casi cada cosa que se talar igualmente sobre Windows que sobre
tores de contenido actualmente en línea. Este pueda imaginar. Webmin es una herramienta GNU/Linux. De hecho, según la wikipedia,
hecho demuestra la fiabilidad y rapidez del deliciosa para cualquier administrador. El mó- MySQL funciona sobre múltiples plataformas,

www.lpmagazine.org 55
linux en la empresa
Cómo ahorrar dinero con Linux

incluyendo AIX, BSD, FreeBSD, HP-UX, GNU/ Desde siempre, PostgreSQL ha estado lisis anteriores son simples orientaciones. Pa-
Linux, Mac OS X, NetBSD, Novell Netware, arropado por la fama de ser un producto muy ra tener una idea más detallada de todas
OpenBSD, OS/2 Warp, QNX, SGI IRIX, Sola- profesional, completo y serio, aunque no ex- y cada una de las características que poseen
ris, SunOS, SCO OpenServer, SCO UnixWare, cesivamente rápido comparado con MySQL. y las que no poseen cada uno de estos tres
Tru64, Windows 95, Windows 98, Windows NT, Como expuse antes, eso ya no es cierto. Post- productos, una buena idea es visitar esta com-
Windows 2000, Windows XP, Windows Vista greSQL es tremendamente eficiente, sobre parativa de la página de MySQL: http://dev.
y otras versiones de Windows. También existe todo en entornos multiprocesador y MySQL mysql.com/tech-resources/features.html.
MySQL para OpenVMS. Si fuese necesario un se le ha acercado mucho en funcionalidades. La comparativa, a pesar de estar alojada
ejemplo de lo que es multiplataforma, sería Si MySQL ha ocupado el nicho de las ap- en la página de MySQL es más que razonable-
difícil encontrar uno mejor. licaciones web y aquellas con un moderado mente objetiva, y podrá ayudar a determinar,
Como se ha comentado antes, MySQL se tamaño, PostgreSQL es la elección tradicional basado en las necesidades concretas, el SGBD
puede descargar libremente desde la web del para aplicaciones serias, de la dimensión de ser- que mejor se ajuste a nuestras necesidades.
fabricante, bien como código fuente, bien en vidores de dominios raíz de DNS, y de em- Otra historia es intentar encontrar una
forma de binarios. Además, la gran mayoría presas con volúmenes realmente grandes de comparativa de rendimiento. Como ya expuse
de las distribuciones de Linux incorporan en datos. De todas formas, cada vez este uso viene anteriormente, son infinitos los escenarios de
sus repositorios los paquetes precompilados siendo determinado más por la tradición y las desempeño posibles, y siempre habrá algún
y configurados para instalarse sobre la mar- herramientas existentes que han surgido al- escenario que beneficie particularmente a un
cha limpiamente. Para Windows, sólo hay rededor de este tipo de proyectos que por la SGBD (consecuentemente, hay casi infinitas
que descargarse el instalador de la página de imposibilidad de usar MySQL en un proyecto comparativas de rendimiento con casi infi-
MySQL AB. realmente grande, o una excesiva complejidad nitos resultados contradictorios). La opinión
La versión con soporte oscila en precio de PostgreSQL. de quien sufra cada uno de estos productos
entre los 595$ y 4995$, dependiendo del nivel Porque la desventaja clásica que se aduce puede orientar mucho más que cualquier ben-
de soporte ofrecido por la empresa creadora al hablar de PostgreSQL es la complejidad, al chmark.
del producto. Se puede obtener soporte de ser más grande es más complicado. Realmente Resumiendo, las conclusiones serían:
otras muchas empresas a precios muy dife- no tiene por qué ser así. Además del clásico
rentes. interfaz de consola, existen utilidades libres e • Windows + Microsoft SQL Server: 8.731,
El soporte para cada uno de estos pro- igualmente multiplataforma para la adminis- 58€: Recomendable si por alguna razón el
ductos requiere una cualificación muy pare- tración de servidores PostgreSQL. software a utilizar no puede funcionar con
cida, ya que tanto conceptualmente como en Tres ejemplos a considerar podrían ser otra plataforma. Es muy caro, menos es-
sus interfaces son muy parecidos y la curva pgAdmin III (www.pgadmin.org/), Pg Access table, menos eficiente, menos seguro y no
de aprendizaje es mínima. Por lo tanto, no se (www.pgaccess.org/) y phpPgAdmin (http://php- aporta nada fundamental que no aporte
tienen en cuenta los gastos de administración pgadmin.sourceforge.net/). Las dos primeras herra- cualquier otra opción;
y mantenimiento, que serían prácticamente mientas siguen el esquema del árbol de objetos • Windows + MySQL/PostgreSQL: 2319,
los mismos. a la izquierda y el panel de propiedades a la de- 68€: Si el gestor de bases de datos es libre
recha, y permiten la gestión de usuarios y gru- y multiplataforma, la única razón para
Precio de MySQL 0 € pos, uno de los temas complejos de Postgre- utilizar un sistema operativo propietario,
PostgreSQL (www.postgresql.org/) es un SG- SQL. Son aplicaciones gráficas intuitivas a la caro e inestable es que sea necesario para
BD que hunde sus raíces en los desarrollos altura de las correspondientes a los dos SGBD cualquier otra cosa además de soportar
de la Universidad de Berkeley, como tantas anteriormente evaluados. En cuanto a phpPg- la base de datos. Parece un poco absurdo
otras magníficas creaciones de software. El Admin, es la contrapartida funcional a phpM- a priori;
proyecto nace con el nombre de Ingres, y tras yAdmin, aunque manteniendo la estructura tí- • GNU/Linux Debian 3.1 Sarge+ MySQL: 0€:
una primera descontinuación por parte de pica de árbol a la izquierda y panel a la derecha, Solución estable, gratuita, rápida y segu-
su creador, Michael Stonebraker, el proyec- un producto muy profesional. ra. Muy recomendable para desarrollos
to se retoma como un proyecto post-Ingres. Además, también existe un módulo de medios, ya que hay mucha documenta-
El resultado es llamado entonces Postgres. Webmin para PostgreSQL, lo que aporta ción al respecto. Es conveniente revisar
Tras unos años de desarrollo en el seno de idénticas ventajas que su homólogo para My- las funcionalidades necesarias para nues-
la Universidad, el proyecto se estabiliza y se SQL. tra aplicación, y verificar que todas son cu-
abandona por parte de ésta. En ese momento Al ser un producto abierto y gratuito, biertas por MySQL. Especialmente indi-
(1993), y gracias a su licencia libre, se retomay al igual que con MySQL, también se pueden cado para aplicaciones web;
por la comunidad convirtiéndose ya en Post- descargar de la página de PostgreSQL tanto • GNU/Linux Debian 3.1 Sarge + Postgre-
greSQL. fuentes como binarios y ejecutables para Win- SQL: 0€: Marco ideal para desarrollos gran
Por lo tanto, a diferencia de los dos ante- dows. Por supuesto, también están disponi- des y con un tratamiento de datos exten-
riores, no hay una compañía tras el producto, bles paquetes preconfigurados en los repo- sivo. La combinación es estable, gratuita,
es creado y mantenido exclusivamente por sitorios de las principales distribuciones de segura y muy potente.
la comunidad. Eso no quiere decir que no GNU/Linux.
haya soporte comercial, en la misma página Haciendo este tipo de análisis se entiende
del proyecto se puede acceder a multitud de Precio de PostgreSQL: 0 € perfectamente la política de Microsoft de ce-
empresas que ofrecen soporte de pago para Los sistemas gestores de bases de datos son rrar formatos y provocar incompatibilidades:
el producto. piezas de software tan complejas que los aná- es la única manera de mantener sus produc-

56 Linux+ 4/2007
linux en la empresa
Cómo ahorrar dinero con Linux

El siguiente paso es copiar los contenidos


de las tablas desde el origen al destino. Este
procedimiento en sí no debe ser complicado.
A continuación, se deben reproducir las re-
laciones de forma que funcionen exactamente
igual en el sistema de origen y el destino. De-
finir correctamente los índices, y ajustar los pa-
rámetros que afecten al rendimiento de cada
tabla.
Finalmente, habrá que migrar los scripts,
esto es, procedimientos almacenados y dispa-
radores, verificando que uno a uno funcione
y adaptando o reescribiendo el código.
Supuestamente en este punto ya debería
de funcionar perfectamente, se conecta el
cliente a la base de datos nueva y se prueban
a fondo las funcionalidades de la aplicación.
Para este paso es un factor de ayuda muy im-
portante a efectos de depuración el contar con
el código fuente de la aplicación cliente, de
forma que se pueda controlar perfectamente
qué estaba pidiendo la aplicación a la base de
Figura 4. Administración de una base de datos PostgreSQL mediante PgAccess datos en el momento en que surgió el fallo. Es
tos en el mercado, puesto que individualmen- • ¿Qué coste va a tener la migración de los posible que haya que ajustar distintos pará-
te suelen ser poco recomendables. datos? Esta es la pregunta más difícil de metros o incluso que modificar ligeramente el
Cambiar un SGBD por otro no es una responder. código de la aplicación cliente.
tarea trivial. En primer lugar, hay que tener Si se verifica el correcto funcionamiento de
muy buenas razones para hacerlo. Las mi- Existen muchas herramientas de migración la aplicación cliente, es el momento de pasar a la
graciones suelen ser de propietario a libre, y entre distintos SGBD. Sorprendentemente, implementación en la instalación real. Por muy
antes siquiera de proponer la migración, hay Microsoft ha dotado a su SQL Server de una documentado y probado que esté el proceso, el
que tener claros ciertos conceptos. Es normal herramienta de exportación bastante buena mundo real está lleno de amargos sinsabores,
asumir el cargo de una instalación y encon- que facilita la tarea, pero además se pueden lo que aconseja realizar la migración en fin de
trarse con que la misma está implantada so- utilizar distintas aplicaciones de migración semana, o en el espacio de tiempo más largo de
bre Windows. Eso en principio no es motivo gratuitas que aportan diferentes grados de que se disponga entre los períodos de uso de la
suficiente para migrarla antes de hacer ciertas inteligencia al migrar. Pero aunque son útiles aplicación, y asegurarse siempre de que pode-
consideraciones: en la migración de bases de datos sencillas, mos dar marcha atrás y dejar la instalación tal
con tipos de datos poco complicados y poco como estaba mientras volvemos al laboratorio
• ¿Están mínimamente amortizadas las relevantes en sí, no pueden sustituir el cono- a investigar cual ha sido el fallo. Raramente se
licencias? Si bien no es una considera- cimiento del administrador sobre las caracte- sobrepasan dos intentos hasta que el sistema
ción técnica, que el nuevo administrador rísticas de los datos que van a ser necesarias. funciona de forma fluida. No obstante, los pri-
proponga tirar a la basura una millonada Porque migrar una base de datos no es co- meros días de utilización, incluso con toda una
en licencias casi por estrenar no es una piar unas tablas de un formato a otro. Es muy batería de pruebas a las espaldas, hay que estar
buena forma de empezar a hacer amigos. recomendable disponer de una instalación pa- muy vigilante, intentando anticiparse a prob-
Aunque consideraciones de rendimiento, ralela con al menos un servidor y un cliente pa- lemas que puedan surgir, que es la mejor ma-
disponibilidad y seguridad lo aconsejen, ra estudiar la migración. En este laboratorio, se nera de solucionarlos. Siendo cuidadosos y de-
si la situación no es escandalosamente documentarán todos los pasos hasta lograr la jando a un lado las prisas y los plazos se puede
crítica, normalmente la empresa optará migración exitosa, de modo que al aplicarlo a la lograr una migración exitosa. Idealmente, los
por aguantar un tiempo el sistema pro- instalación real, los problemas sean mínimos o usuarios saldrán el viernes a disfrutar del fin
pietario recién implantado que cambiar ninguno. En primer lugar, es muy conveniente de semana, y el lunes volverán al trabajo, y sólo
a uno libre. estudiar los tipos de datos que soportan tanto notarán que su aplicación funciona más rápido
• ¿Cuántas horas de trabajo efectivo se el SGBD origen como el destino, y establecer un y no se cuelga. La dirección de la empresa notará
están perdiendo por utilizar un sistema mapeo de tipos, tabla por tabla. Si es posible, a corto plazo un aumento de la productividad
operativo inseguro? Eso es un argumen- generar las tablas vacías en el SGBD destino y a medio plazo un descenso en los gastos deri-
to muy pesado. con los tipos de datos correctos para nuestra vados del mantenimiento informático.
• ¿Qué riesgos de seguridad se están co- aplicación. Mucho ojo con los tipos de datos Y el informático sentirá que ha hecho un
rriendo con una instalación de ese tipo? El numéricos, de tipo fecha y booleanos, suelen buen trabajo, que ha optimizado costes, evi-
peso de este argumento es proporcional dar sorpresas. También hay que estudiar el tado riesgos a su empresa y facilitado la vida
a la confidencialidad o valor de los datos comportamiento de los valores nulos y autoin- a los usuarios. Y ese es un sentimiento de satis-
almacenados. crementales en ambos sistemas. facción difícilmente igualable.

www.lpmagazine.org 57

También podría gustarte