1.2. Análisis de los manejadores de bases de datos

 

1.2. Análisis de los manejadores de bases de datos


Un Sistema Manejador de Bases de Datos (SGBD) o Data Base Management System (DBMS) es una colección de software muy específico, cuya función es servir de interfaz entre la base de datos, el usuario y las distintas aplicaciones utilizadas, permite la creación, gestión y administración de bases de datos. Así como la elección y manejo de las estructuras necesarias para el almacenamiento y búsqueda de la información del modo más eficiente posible.

Lo hace mediante una serie de rutinas de software para permitir su uso de una manera segura, sencilla y ordenada. Se trata, en suma, de un conjunto de programas que realizan tareas de forma interrelacionada para facilitar la construcción y manipulación de bases de datos, adoptando la forma de interfaz entre éstas, las aplicaciones y los mismos usuarios.

Manejadores de bases de datos gratuitos.

MySQL

Es la base de datos de código abierto más popular del mercado. Gracias a su rendimiento probado, a su fiabilidad y a su facilidad de uso, MySQL se ha convertido en la base de datos líder elegida para las aplicaciones basadas en web y utilizada por empresas web de perfil alto.

Gestor de simple instalación que actúa del lado del cliente (servidor) y de código abierto con licencia comercial disponible. Actualmente, pertenece a Oracle Corporation. Gestiona bases de datos relacionales y es multiusuario. Destaca por requerir de poca memoria y procesador para funcionar, dando lugar además a una mayor velocidad en sus operaciones.

Ventajas

  • MySQL es de código abierto
  • Tiene una gran velocidad al realizar operaciones, lo que mejora su rendimiento
  • Facilidad de configuración e instalación
  • Soporta gran variedad de sistemas operativos
  • Su conectividad, velocidad y seguridad hacen de MySQL server altamente apropiado para acceder a bases de datos en internet.

Desventajas

  • Gran porcentaje de las utilidades de MySQL no están documentadas
  • No es intuitivo como otros programas. Ejemplo: Access.




PostgreSQL

Es un sistema de gestión de bases de datos relacional orientado a objetos, ya que incluye características de la orientación a objetos, como puede ser la herencia, tipos de datos, funciones, restricciones, disparadores, reglas e integridad transaccional, liberado bajo la licencia BSD. Su desarrollo no es manejado por una empresa o persona, sino que es dirigido por una comunidad de desarrolladores que trabajan de forma desinteresada, altruista, libre o apoyados por organizaciones comerciales.


Ventajas

  • Su instalación ilimitada
  • Facilidad al administrar 
  • Dispone de flexibilidad para hacer investigación y desarrollo de sistemas sin necesidad de incurrir en costos adicionales

Desventajas

  • Es 3 veces más lento que MySQL
  • La sintaxis de algunos comandos o sentencias no es nada intuitiva
  • Consume muchos recursos de la maquina

 


SQLite

Es una biblioteca escrita en leguaje C que implementa un Sistema de gestión de bases de datos transaccionales SQL autocontenido, sin servidor y sin configuración. No necesita un proceso separado funcionando como servidor ya que lee y escribe directamente sobre archivos que se encuentran en el disco duro. El formato de la base de datos es multiplataforma e indistintamente se puede utilizar el mismo archivo en sistemas de 32 y 64 bits.

A diferencia de los sistemas de gestión de bases de datos cliente-servidor, el motor de SQLite no es un proceso independiente con el que el programa principal se comunica. En lugar de eso, la biblioteca SQLite se enlaza con el programa pasando a ser parte integral del mismo.

Ventajas

  • No requiere una configuración y no necesita uso de servidor (proceso activo para atender peticiones)
  • Es multiplataforma y posee un acceso mucho más rápido

Desventajas

  • SQLite posee deficiencias de la herramienta where, esta limitación está dada por el soporte para clausulas anidadas, al igual que en claves foráneas.


FireBird

Es un sistema de administración de base de datos relacional que trabaja con el lenguaje SQL para manipular datos. Dispone de la mayoría de las instrucciones DDL y DML estándar de SQL. Firebird es muy versátil, puede ejecutarse como servicio o aplicación. Es compatible con Windows y Linux. Entre otras funciones, da soporte completo para procedimientos almacenados, transacciones compatibles con las características ACID y métodos de acceso múltiple (nativo, Python, .NET, etc).

Ventajas

  • Firebird es una base de datos ligera y sencilla de instalar.
    Solo un ejecutable autoinstalable o un script según plataforma.
  • No consume grandes recursos en el servidor.
  • Es rápida y potente. (Ver Límites Firebird).
  • Tiene un tipo de licencia similar a MPL (Mozilla Public License), que
    permite su uso de forma gratuita y con una distribución muy poco restrictiva.
  • Se pueden usar librerías externas que mejoran la operativa de Firebird.
  • Existe un driver ODBC para Firebird.
    ODBC Firebird
  • Existen multitud de componentes para distintos lenguajes de programación para
    conectar con Firebird de forma nativa o indirecta.

Desventajas:

  • Una desventaja de BD es que ya fue descontinuada y que solamente puede acceder a bases de datos de FireBird/Interbase 6 con el dialecto 1 de SQL
  • Solo lo manipulan los más osados del lenguaje SQL



MariaDB

Es un sistema de gestión de bases de datos derivado de MySQL con licencia GPL (General Public License). Es desarrollado por Michael (Monty) Widenius —fundador de MySQL, la fundación MariaDB y la comunidad de desarrolladores de software libre.

Introduce dos motores de almacenamiento nuevos, uno llamado Aria que reemplaza a MyISAM y otro llamado XtraDB —en sustitución de InnoDB—. Tiene una alta compatibilidad con MySQL ya que posee las mismas órdenes, interfaces, API y bibliotecas, siendo su objetivo poder cambiar un servidor por otro directamente.

Este SGBD surge a raíz de la compra de Sun Microsystems compañía que había comprado previamente MySQL AB por parte de Oracle. MariaDB es una bifurcación directa de MySQL que asegura la existencia de una versión de este producto con licencia GPL. Widenius decidió crear esta variante porque estaba convencido de que el único interés de Oracle en MySQL era reducir la competencia que MySQL suponía para el mayor proveedor de bases de datos relacionales del mundo, que es Oracle.

Ventajas

  • Nuevos motores de almacenamiento, para la mayoría de usuarios lo interesante es Aria, que viene a reemplazar a MyISAM y también tenemos a XtraDB que reemplaza a InnoDB.
  • Mejora de velocidad sobre todo en consultas complejas
  • Se añaden nuevas tablas al sistema para almacenar estadisticas que nos pueden ayudar a optimizar la base de datos
  • El sistema para manejar las conexiones se ha mejorado

Desventajas

  • Uno de los escasísimos casos de incompatibilidad con MariaDB
  • El tener que desinstalar MySQL e instalar MariaDB (la migración de datos es muy sencilla).

 


MongoDB

Es un sistema de base de datos NoSQL orientado a documentos de código abierto. En lugar de guardar los datos en tablas, tal y como se hace en las bases de datos relacionales, MongoDB guarda estructuras de datos BSON (una especificación similar a JSON) con un esquema dinámico, haciendo que la integración de los datos en ciertas aplicaciones sea más fácil y rápida.

MongoDB es una base de datos adecuado para su uso en producción y con múltiples funcionalidades. Esta base de datos se utiliza mucho en la industria, contando con implantaciones en empresas como MTV Network,Craiglist, BCI o Foursquare.

El código binario está disponible para los sistemas operativos Windows, Linux, OS X y Solaris.

Ventajas

  • Su instalación ilimitada
  • Facilidad al administrar 
  • Dispone de flexibilidad para hacer investigación y desarrollo de sistemas sin necesidad de incurrir en costos adicionales

Desventajas

  • Es 3 veces más lento que MySQL
  • La sintaxis de algunos comandos o sentencias no es nada intuitiva
  • Consume muchos recursos de la maquina


 Cassandra

Apache cassandra es un sistema de administración de bases de datos distribuidas de fuente abierta y gratuita diseñado para manejar grandes cantidades de datos en muchos servidores de productos básicos. Proporciona un mecanismo para almacenar y recuperar datos que no sean las relaciones tabulares utilizadas en bases de datos relacionales.

Ventajas

  • Está orientado a columnas familias
  • Tolerante a fallos, ya que replica los datos de forma automática a múltiples nodos
  • Almacenamiento de los datos tipo column family

Desventajas

  • No está orientada a transacciones, el cual es su factor más débil.
  • Este tipo de sistemas no se recomienda para transacciones y altas concurrencias, debido a la forma de almacenamiento de datos columna a columna


Redis

Redis es un almacén de estructura de datos en memoria de código abierto, utilizado como base de datos, cache y agente de mensaje.

Redis admite estructuras de datos tales como cadenas, hashes, listas, hiperlogalos, etc.

Ventajas

  • La principal ventaja de Redis es su velocidad. Guarda los datos en RAM, por lo que cuando el microprocesador le pide un dato, lo busca en la RAM sin tocar el disco duro

Desventajas

  • Aun así, la gran velocidad y el guardarlo en memoria RAM hace que nos encontremos con la desventaja de Redis que se traduce en no poder guardar tablas enteras ni muchos datos.




 

Manejadores de bases de datos de pago.

Oracle

Es uno de los sistemas de gestión de base de datos relacional más fiable y usado. Pertenece a Oracle Corporation y se desarrolló en 1977. Está construido alrededor de un marco en el que se puede acceder directamente a los objetos a partir del lenguaje de consulta SQL. Oracle es una arquitectura escalable y muy utilizada por las empresas. Tiene su propio componente de red para que pueda haber comunicación a través de las redes. Se ejecuta en casi todas las plataformas (Windows, Unix, Linux, MAC OS…). La principal y peculiar característica de Oracle es que, su arquitectura, se divide entre la lógica y la física. A grandes rasgos, esto permite una mayor flexibilidad en las redes de datos y, a la vez, robustez en la estructura de los datos.

Ventajas

  • Oracle es el motor de base de datos objeto-relacional más usado a nivel mundial
  • Puede ejecutarse en todas las plataformas
  • Permite el uso de particiones para mejorar su eficiencia, de replicación e incluso ciertas versiones admiten la administración de bases de datos distribuidas 
  • Oracle es la base de datos con más orientación a internet.

Desventajas

  • Se encuentran muchas versiones desde su lanzamiento original de versión 8 con varias versiones posteriores con correcciones, hasta su estabilidad en la versión 8.0.3. El motivo de estos errores fue, al parecer, la remodelación del sistema de almacenamiento por causa de la introducción de extensiones orientadas a objetos.
  • Su mayor inconveniente es su precio. Incluso las licencias de personas Oracle son excesivamente caras.

Microsoft SQL Server

Es un sistema de manejo de bases de datos del modelo relacional, desarrollado por la empresa Microsoft. El lenguaje de desarrollo utilizado (por línea de comandos o mediante la interfaz gráfica de Management Studio) es Transact-SQL (TSQL), una implementación del estándar ANSI del lenguaje SQL, utilizado para manipular y recuperar datos (DML), crear tablas y definir relaciones entre ellas (DDL). Integra un conjunto de programas que añaden características, como pueden ser el tratamiento de errores y excepciones, procesamiento de datos, extracción de datos directos de Web, uso de distintos lenguajes de programación, etc… y más características que hacen de SQL Server un gestor muy completo. Además, destaca por su carácter administrativo tanto en sus funciones y seguridad como en la flexibilidad de las bases de datos.

Ventajas

  • Es muy útil para manejar y obtener datos de la red
  • Compatibilidad con la mayoría de las tareas administrativas de SQL Server.
  • Al trabajar una red social, permite agregar más servidores de SQL Server y visualizar las bases de datos de otra persona.

Desventajas

  • La acapararían de memoria RAM para instalaciones y manejo de software
  • Contiene muchas restricciones entre ellas
  • Bloqueos a nivel de pagina
  • Un tamaño fijo y demasiado pequeño al trabajar en la hoja

 


DB2

Es un producto de base de datos de IBM. Sistema de gestión de base de datos relacional, diseñado para almacenar, analizar y recuperar los datos de manera eficiente.

DB2 posee monitor grafico el cual posibilita observar el tiempo de ejecución de una sentencia SQL y corregir detalles para documentar el rendimiento, así como gestionar tanto datos relacionales convencionales como datos XML.

Ventajas

  • DB2 permite agilizar el tiempo de respuesta de una consulta
  • Recuperación utilizando accesos de solo índices
  • Posee tablas de resumen, tablas replicadas, uniones hash entre otras.

Desventajas

  • Lentitud al crear y ejecutar consultas
  • Utiliza mucha memoria RAM.

 

 


Microsoft Access

Microsoft Access es parte del conjunto de aplicaciones de Microsoft Office, es un sistema de administración de bases de datos que combina el motor de base de datos Microsoft jet relacional con una interfaz gráfica de usuario y herramientas de desarrollo software.

Microsoft Access almacena datos en su propio formato basado en el motor de bases de datos de Access jet. También importa o vincula directamente a datos almacenados en otras aplicaciones y bases de datos.

Ventajas

  • Otorga capacidades para aprovechar la información sin necesidad de ser un experto en bases de datos
  • A través de bases de datos web recién agregados, Access amplia la eficacia de los datos, facilita el seguimiento, creación de informes y el uso de compartido con otros usuarios

Desventajas

  • No es funcional para bases de datos de gran calibre (en cuanto al volumen de datos o usuarios).
  • Su mayor inconveniente es que no es multiplataforma, pues solo se encuentra para sistema operativo de Microsoft.

Comentarios