MOTORES
DE PERSISTENCIA.
Dr. Vicent-Ramon Palasí Lallana.
Gerente General de Aurum Solutions.
http://www.aurumsol.com
Agosto 2003
Es
generalmente sabido que una aplicación informática
consta de dos componentes principales que colaboran para
llevar a cabo la funcionalidad que el usuario desea. El primero
de estos componentes es la base de datos, que guarda la información
necesaria para operar la aplicación, en forma de datos
en disco. El segundo de estos componentes es el programa
propiamente dicho, que recupera esos datos de la base de
datos, realiza los cálculos necesarios y presenta
los resultados deseados al usuario.
Figura 1. Arquitectura de una
aplicación informática
Para
que estos dos componentes puedan funcionar juntos deben
poder comunicarse intercambiando datos, como se observa en
la figura 1. En otras palabras, deben ser compatibles.
Sin embargo,
durante los últimos treinta años la evolución
de estos dos componentes ha sido divergente, de forma que
cada vez se ha hecho más difícil que colaboren
en una misma aplicación.
Así, desde los años 70 a la actualidad, las
bases de datos utilizan un modelo teórico llamado “relacional”,
que se ha convertido en un estándar y que es utilizado
en la práctica totalidad de aplicaciones de software.
En
cambio, los programas han usado, desde los años
80, un modelo llamado “orientado a objetos”,
que difiere en mucho del modelo relacional y que se ha extendido
cada vez más. Es por ello que aparece un conflicto
a la hora de reunir estos dos componentes en una aplicación,
ya que cada uno responde a diferente modelo y forma de operar.
Cada componente maneja los datos con un formato diferente.
Metafóricamente,
podríamos
afirmar que el programa y la base de datos hablan idiomas
diferentes
y,
por lo tanto,
la comunicación entre ellos resulta difícil.
Este
artículo comienza con una descripción
de los dos modelos mencionados y de las diferencias que dificultan
su combinación en una sola aplicación. A continuación,
se exploran las diferentes soluciones a este problema y se
acaba concluyendo que la mejor manera de resolverlo es usando
un motor de persistencia. El artículo finaliza indicando
los nombres de los motores de persistencia más usados,
con el fin de que el lector pueda elegir el que más
se adapta a sus necesidades.
|