Las Bases de datos en la actualidad y sus tendencias

Los sistemas gestores de bases de datos son la herramienta más adecuada para almacenar los datos en un sistema de información debido a sus características de seguridad, recuperación ante fallos, gestión centralizada, estandarización del lenguaje de consulta y funcionalidad avanzada. En este artículo se analizarán algunas ideas acerca de estos importantes componentes de los SIG en la actualidad y sobre las tendencias de las bases de datos.

“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 parece incorrecta. Por ejemplo, hace un poco más de una década había quienes aseguraban que las bases de datos eran tecnología “madura”, pero hoy es una de las áreas que presentan mayor dinamismo.

Actualidad
Las economías 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.

Aun 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 mayores gracias a los avances de la tecnología.

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

  • 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. Almacén de archivos de forma centralizada en un equipo controlado por usted. Sincronización de los datos por todos los dispositivos. Permanece en línea sin conexión. Multiplataforma. Control automático de versiones. Facilidad de compartir con tus amigos tus aplicaciones favoritas. Copia de seguridad automática. Cifrado de datos Sync con aplicaciones del escritorio KDE, Integración perfecta con el escritorio, Plugins de MediaPlayer, fotogalería, Catcher RSS y más. 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 liberación de Microsoft SQL Server 2008 “R2”.

Tendencias de futuro alrededor de las Bases de Datos

En cuanto al futuro de las Bases de Datos hay dos tendencias que suenan con mucha fuerza entre los expertos del sector.

En primer lugar, cabe hacer referencia a su tipología, en la actualidad. Las Bases de Datos relacionales o  SQL son las más utilizadas, pero presentan varias desventajas como que son muy rígidas o que impiden un crecimiento constante del archivo. Por su parte las NoSQL se postulan como alternativa en el futuro más inmediato.

Sin embargo, hay dos grandes inconvenientes que hacen que las Bases de Datos NoSQL o no relacionales no avancen al ritmo que deberían, y ambos están relacionados con la formación de las personas que las utilizan.

  • El primer inconveniente es que muchos expertos se muestran reacios a utilizarlas, en muchas ocasiones, porque no conocen todas las posibilidades que ofrecen; el segundo (relacionado con el primero) es que este tipo de Bases de Datos tienen una gran diversidad, y hay que tener conocimientos sobre todas ellas para saber cuál es la adecuada para cada caso ( es imprescindible tener muy definido el tipo de proyecto al que se asociará, la cantidad esperada de usuarios y la tecnología que se va a utilizar para el desarrollo).

En este aspecto, hay defensores y detractores de cada tipo;  los defensores de las Bases de Datos SQL apuestan por la estructuración que ofrece esta tipología, ya que consideran que las NoSQL carecen de estructura. Esta creencia es falsa, y se debe principalmente a la desinformación: las NoSQL sí que poseen una estructura definida denominada schema-free, la diferencia es que es más flexible que la que poseen las SQL o relacionales.

Si se habla de NoSQL no se puede dejar de mencionar el notable afán de Facebook por utilizar motores de bases de datos como Cassandra y RocksDB, y el uso de NoSQL en otras redes sociales como Twitter y Linkedin, que indican que todo apunta hacia servicios que usen repositorios datos con NoSQL únicamente.

Pero aquí hay dos aspectos que son importantes: El primero es la resistencia al

cambio pues se piensa que los motores de bases de datos no pueden resolver muchos problemas de la vida real (cabe señalar que la mayoría de los proyectos no usan ni el 50% de las bondades que ofrece SQL), un ejemplo concreto radica en los nuevos desarrollos, muchos piensan que con NoSQL no se garantiza la integridad de los datos, o la consistencia, pero hay métodos para poder hacer esto con bases de datos documentales por nombrar alguna.

El origen de este problema, es tomar el tema de NoSQL desde un punto de vista SQL: es como comparar un automóvil con un helicóptero, ambos sirven para transportarse hasta la ciudad, pero el funcionamiento de cada uno de ellos no es similar, pilotar un helicóptero pensando que es automóvil es un grave error.

El segundo gran problema es la diversidad de tipos de NoSQL que existen: clave/valor, documentos, grafos, tabular, entre otras. Las personas se confunden y abruman al tener que decidir cuál usar. Esa elección puede ser errada. Siempre será una apuesta muy fuerte saber si tu proyecto se alineará adecuadamente con el tipo de base de datos que se ha elegido.

Para hacer esta elección es recomendable tener claro lo siguiente:

  • Qué tipo de proyecto se hará, si es para Internet o para el uso en intranet.
  • Cuál es la cantidad esperada de usuarios y si muchas de las funciones deben hacer uso de las transacciones complejas, o si, de lo contrario son escrituras y lecturas manejadas desde el software.
  • Qué tecnología se va a usar para el desarrollo (si usa Django por ejemplo, lo recomendable es usar BD Relacional, ya que es más natural el manejo de los datos en aplicaciones hechas en ese framework).

Con esos tres puntos claro se puede ver en el catálogo de opciones qué base de datos se adapta más a lo que se busca.

Además de la evolución del tipo de Bases de Datos también hay que tener en cuenta los cambios en cuanto a manipulación de las mismas, dada la creciente importancia que tienen en la vida cotidiana los dispositivos móviles como smartphones y tablets. El cambio de dispositivos en el que se manejan las Bases de Datos, ya obligan a que se simplifiquen las interfaces y se facilite el uso de estos sistemas lo que mejorará su rendimiento para ampliar su campo de uso, por ejemplo, en el sector médico o militar que requieren de un acceso más inmediato.

Resumen

Una base de datos constituye un sistema que permite un manejo adecuado de la información, garantizando la seguridad e integridad de los datos y permitiendo el acceso a distintos usuarios de forma transparente.

En la actualidad, se emplean mucho más base de datos relacionales, que son adaptadas para poder almacenar datos espaciales y poder realizar operaciones sobre ellos. Los SGBD extensibles representan la última tendencia, y en ellos puede integrarse plenamente la información geográfica de forma óptima. La nube hoy es la mayor tendencia a seguir por las ventajas que proporciona, pero aun así el éxito está en saber seleccionar adecuadamente el tipo de base de datos a utilizar según la finalidad que se persiga.

Sin embargo, teniendo la cantidad de modelos de negocio que sólo operan en internet (como podría ser productos actuales como los ofrecidos por googleiTunesStoreamazonebayyyouTubeskype… y productos futuros como joost –servicio que promete revolucionar la televisión por ip-) y cuyas necesidades son enormes se mostraran soluciones basadas en la virtualización, el uso de tecnologías grid, automatización de la creación de los metadatos para realizar querys sobre los mismos directamente y por supuesto, la aplicación de las técnicas que se están desarrollando para la web semántica aplicadas a los modelos de bases de datos para optimizar las búsquedas.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

17 + diecisiete =