Pasado, Presente y Futuro de las Bases de Datos

Publicado en

“Lo que fue innovador ha sido replicado. La tecnología parece haber llegado a su límite. ¿Qué nueva funcionalidad se puede adicionar en el software que se usa en mi empresa?.”

La perspectiva anterior me parece incorrecta. Por ejemplo, hace una década había quienes aseguraban que las bases de datos eran tecnología “madura”, pero hoy es una de las áreas del cómputo que presentan mayor dinamismo. Analicemos su historia y perspectivas a futuro.

Antecedentes

En 1960 apareció una primera generación de base de datos para permitir el intercambio de información entre sistemas. La memoria RAM y el espacio de almacenamiento eran extremadamente restringidos. Para cambiar de administrador de base de datos, era necesario reescribir la aplicación debido a la variedad de lenguajes y características. Fue un modelo tan cerrado que hoy hay empresas que continúan dependiendo de productos como IMS de IBM, IDMS y DATACOM de CA, DMS II de UNISYS y Adabas de Software AG.

En la búsqueda de una nueva forma de acceder datos que fuera independiente de la aplicación, se aplicaron modelos matemáticos para crear un paradigma relacional. System /R de IBM fue la primera implementación de la propuesta del Dr. E. F. Codd. Se generaron distintas propuestas para un lenguaje de consulta universal, tales como SQL, DLL y DML. Triunfó el primero, que no gustaba a los puristas pero era más sencillo. En ese momento la memoria RAM continuaba siendo costosa y había un solo microprocesador. Teradata, Sequent y Tandem crearon configuraciones de hardware para mayor capacidad. En los noventas llegó el almacenamiento en red y mejoras incrementales con procesadores de 64 bits.

Actualidad

Las economías alrededor del cómputo han cambiado gracias a los avances en hardware. Son comunes los servidores con múltiples procesadores/núcleos, los sistemas de 4 y 8 vías son accesibles, la memoria es mucho más económica, los discos duros son de mayor capacidad y mucho menor costo.

Aún así, esta tercera generación de gestores de base de datos opera básicamente de la misma forma que la anterior, aunque los efectos de escalabilidad, desempeño, administración y ahorro en costo son dramáticamente mayores gracias a los avances de la tecnología.

Futuro cercano

En los últimos años se han estado gestando innovaciones que poco a poco han ido permeando a los sistemas de base de datos. Aquí algunos de los más significativos:

  • Base de datos en memoria. La forma en que los datos están organizados y se manejan es totalmente diferente. Se usan estructuras de datos simples, se eliminan problemas de transferencia de información. Una operación se puede ejecutar de 20 a 200 veces más rápido que en sistemas convencionales. El acceso óptimo es en forma de interfaz de programación (APIs). Sybase, Oracle, Four Js y otros ofrecen algunas de estas capacidades.
  • Almacenamiento columnar. Para análisis estadístico, como almacenes de datos, es posible almacenar columnas en lugar de renglones, reduciendo la entrada y salida en forma significativa.
  • Almacenamiento no relacional. Para agregar grandes cantidades de datos y realizar operaciones de búsqueda ha aparecido éste modelo. BigTable de Google, SimpleDB de Amazon y Azure Storage de Microsoft son ejemplos. Algunos proveen funcionalidad para administrar documentos XML, como Tierlogic, Tamino, XMS. Los sistemas tradicionales incluyendo a Oracle, IBM y Microsoft han extendido sus productos a tipos de datos geográficos y no-estructurados.
  • La nube. Ofrece por primera vez la verdadera posibilidad de almacenamiento ilimitado. Bases de datos en data centers internos pueden “extenderse” a operar en centros de datos públicos. Microsoft SQL Azure es el mejor ejemplo.
  • Appliances. Para bases de datos de múltiples Terabytes, la “escalabilidad de un solo sistema” continuará siendo más económica que la nube. Las aplicaciones de misión crítica requieren cada vez más empaquetar hardware, software y una arquitectura preconfigurada a una carga específica de trabajo. Desde sistemas de 8 procesadores hasta contenedores con miles de servidores preconfigurados a la medida.
  • Sensores y tiempo real. En el mundo de los sistemas embebidos que manejan tecnologías como RFID y eventos en Internet, se hace necesario analizar la información y tomar acción en memoria y antes de almacenar datos. StreamInsight es una nueva característica en la reciente liberación de Microsoft SQL Server 2008 “R2”.

Con certeza veremos la aparición de una nueva generación de sistemas de base de datos durante los siguientes 3 años, y la gran batalla que la misma conllevará. Lo popular y lo gratuito está bien, pero ahí no está la innovación ni las nuevas oportunidades.

Bio

Luis Daniel Soto Maldonado labora en la división de negocio de servidores y herramientas de Microsoft Corp. @luisdanielsoto