Bases de Datos

Introducción

Las bases de datos son programas especializados en el manejo, organización y gestión de datos de cualquier tipo, de una manera segura y protegida. Estos programas permiten el acceso simultáneo de muchos usuarios a la vez resolviendo los conflictos que puedan surgir entre las operaciones de cada uno de ellos, y gestionando los permisos y derechos que tiene cada uno de ellos. Adicionalmente permite la realización de copias de seguridad que permiten recuperar los datos en el caso de una situación catastrófica.

Normalmente, las bases de datos, no son utilizadas directamente por los usuarios.El usuario habitual de las bases de datos son aplicaciones informáticas. El usuario final accede a la aplicación y, la aplicación, es la que accede a la base de datos. Por esa razón, la mayoría de las bases de datos, no cuidan demasiado la presentación visual de los datos. Contemplan que, los únicos que acceden directamente, son técnicos especializados, y la aplicación por supuesto.

Entonces, por qué la aplicación no gestiona sus propios datos, por qué es necesario un software adicional. La razón es que conseguir desarrollar una gestión de datos tan eficaz, rápida, versátil y segura, alargaría años el desarrollo de la aplicación. Cualquier desarrollador, hoy en día, no se plantea realizar el desarrollo de una nueva aplicación sin una base de datos. Aunque la aplicación no esté muy bien depurada sabe que, por lo menos los datos, estarán bien gestionados y protegidos

Tipos de Bases de Datos

Sin entrar en clasificaciones muy exhaustivas hay dos grandes grupos de bases de datos:

SQL

Son las bases de datos de toda la vida y las más utlizadas. Se denominan también bases de datos relacionales. Todas utilizan un lenguajes estándar, el lenguaje SQL que, aunque con algunos matices, es igual en todas ellas. Esto permite que cualquier profesional pueda trabajar en cualquiera de ellas con un periodo de adaptación corto. Dentro de este grupo se encuentran las bases de datos Oracle, MySQL, MariaDB, SQLServer, PostgreSQL. Dentro de este grupo hay una base de datos muy interesante llamada Hive. Está base de datos es big data permitiendo el almacenamiento de cantidades ingentes de datos.

No SQL

Este grupo no es muy uniforme. Cada base de datos tiene una peculiaridades concretas, un lenguaje propietario y una arquitectura particular. En este grupo se encuentran bases de datos como MongoDB, Cassandra, Elasticsearch, CouchDB. El principal inconveniente es la busqueda de profesionales. Al ser muy diferentes entre ellas, los profesionales con experiencia, son difíciles de encontrar.

Bases de Datos en Cloud

Actualmente, las bases de datos, son el mayor valor añadido de un cloud o nube. Por ejemplo: SQLServer es el mayor valor añadido de Azure, los dos de Microsoft. Oracle y MySQL son a su vez el mayor valor añadido de Oracle Cloud. Google Cloud ofrece Firebase como base de datos NoSQL en la nube. Puestos a desarrollar una aplicación en la nube, mejor elegir la bases de datos «patrocinada» por dicha nube. Por otro lado, al elegir una nube para nuestra aplicación, mejor elegir la nube que ofrece la base de datos que queremos.