Sunteți pe pagina 1din 16

Universidad Veracruzana

Facultad de Administracin L.S.C.A. E.E. Base de Datos Catedrtico: Dr. Carlos Arturo Torres Gastel Investigacin: SMBD (Sistemas Manejadores de Base de Datos)

H. Veracruz, Ver. Septiembre de 2009

ndice

Introduccin
Los Sistemas Manejadores de Base de Datos (SMBD) son un tipo de software que sirven de interfaz entre la base de datos, el usuario y las aplicaciones que lo utilizan. Actualmente en el mercado existe una gran variedad SMBD que comparten un mismo propsito general: manejar de manera clara, sencilla y ordenada un conjunto de datos que posteriormente se convertirn en informacin relevante para una organizacin. Entre las principales funciones de los SMBD se encuentran: 1. Abstraccin de la informacin 2. Independencia 3. Consistencia 4. Seguridad 5. Manejo de Transacciones 6. Tiempo de respuesta Aunque todos los SMBD tienen el mismo propsito, existen caractersticas que los hacen diferentes y, por lo consiguiente, cada uno posee ciertas ventajas sobre los dems. En este trabajo de investigacin se abordan los SMBD que existen en el mercado y se clasificaran de acuerdo a la licencia que posean, esta puede ser: de cdigo libre, propietarios o manejo mediante web. As como una explicacin de las caractersticas que posee cada uno de ellos.

1. Sistema Manejador de Base de Datos (SMBD)


Los sistemas manejadores de base de datos (SGBD), en ingls: DataBase Management System (DBMS), son un tipo de software muy especfico, dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones que la utilizan. El propsito general de los sistemas manejadores de base de datos es el de manejar de manera clara, sencilla y ordenada un conjunto de datos que posteriormente se convertirn en informacin relevante para una organizacin. 1.1. II. Objetivos de los SMBD

III.

IV.

V.

VI.

VII.

Abstraccin de la informacin. Los SMBD ahorran a los usuarios detalles acerca del almacenamiento fsico de los datos. Da lo mismo si una base de datos ocupa uno o cientos de archivos, este hecho se hace transparente al usuario. Independencia. La independencia de los datos consiste en la capacidad de modificar el esquema (fsico o lgico) de una base de datos sin tener que realizar cambios en las aplicaciones que se sirven de ella. Consistencia. En aquellos casos en los que no se ha logrado eliminar la redundancia, ser necesario vigilar que aquella informacin que aparece repetida se actualice de forma coherente, es decir, que todos los datos repetidos se actualicen de forma simultnea. La base de datos representa una realidad determinada que tiene determinadas condiciones, por ejemplo que los menores de edad no pueden tener licencia de conducir. En los SMBD existen herramientas que facilitan la programacin de este tipo de condiciones. Seguridad. La informacin almacenada en una base de datos puede llegar a tener un gran valor. Los SMBD deben garantizar que esta informacin se encuentra segura de permisos a usuarios y grupos de usuarios, que permiten otorgar diversas categoras de permisos. Manejo de Transacciones. Una transaccin es un programa que se ejecuta como una sola operacin. Esto quiere decir que luego de una ejecucin en la que se produce una falla es el mismo que se obtendra si el programa no se hubiera ejecutado. Los SMBD proveen mecanismos para programar las modificaciones de los datos de una forma mucho ms simple que si no se dispusiera de ellos. Tiempo de respuesta. Lgicamente, es deseable minimizar el tiempo que el SMBD tarda en darnos la informacin solicitada y en almacenar los cambios realizados.

En el mercado actual existe una gama diferenciada de productos SMBD, a continuacin se describen algunos, y su clasificacin de acuerdo a la licencia y su fabricante.

2. SMBD de Cdigo Libre


2.1. MySQL MySQL es un sistema manejador de base de datos relacional, multihilo y multiusuario con ms de seis millones de instalaciones.1 Por un lado se ofrece bajo la GNU GPL para cualquier uso compatible con esta licencia, pero para aquellas empresas que quieran incorporarlo en productos privativos deben comprar a la empresa una licencia especfica que les permita este uso. MySQL es propietario y est patrocinado por una empresa privada, que posee el copyright de la mayor parte del cdigo.

Nombre Desarrollador ltima versin estable Codificacin Sistema Operativo Licencia Sitio web

Ficha de descripcin tcnica MySQL Sun Microsystems (hasta febrero de 2008 MySQL AB) 5.1.38 (1 de septiembre de 2009) C y C++ Multiplataforma GPL o uso comercial www.mysql.com

2.1.1.

Caractersticas

Soporte a multiplataforma. Procedimientos almacenados. Disparadores (triggers). Cursores. Vistas actualizables. Soporte a VARCHAR. INFORMATION_SCHEMA Modo Strict Soporte X/Open XA de transacciones distribuidas; transaccin en dos fases como parte de esto, utilizando el motor InnoDB de Oracle. Motores de almacenamiento independientes (MyISAM para lecturas rpidas, InnoDB para transacciones e integridad referencial). Transacciones con los motores de almacenamiento InnoDB, BDB Y Cluster; puntos de recuperacin (savepoints) con InnoDB. Soporte para SSL. Query caching. Sub-SELECTs (o SELECTs anidados).

MySQL AB desde enero de 2008 una subsidiaria de Sun Microsystems y sta a su vez de Oracle Corporation desde abril de 2009 desarrolla MySQL como software libre en un esquema de licenciamiento dual.

Rplica con un maestro por esclavo, varios esclavos por maestro, sin soporte automtico para mltiples maestros por esclavo. Indexing y buscando campos de texto completos usando el motor de almacenamiento MyISAM. Embedded database library. Soporte completo para Unicode. Conforme a las reglas ACID usando los motores InnoDB, BDB y Cluster. Shared-nothing clustering through MySQL Cluster. 2.1.3. Aplicaciones

MySQL es muy utilizado en aplicaciones web, como Drupal o phpBB, en plataformas (Linux/Windows-Apache-MySQL-PHP/Perl/Python), y por herramientas de seguimiento de errores como Bugzilla). Su popularidad como aplicacin web est muy ligada a PHP, que a menudo aparece en combinacin con MySQL. MySQL es una base de datos muy rpida en la lectura cuando utiliza el motor no transaccional MyISAM, pero puede provocar problemas de integridad en entornos de alta concurrencia en la modificacin. En aplicaciones web hay baja concurrencia en la modificacin de datos y en cambio el entorno es intensivo en lectura de datos, lo que hace a MySQL ideal para este tipo de aplicaciones.

2.2.

PostgreSQL

PostgreSQL es un sistema manejador de base de datos relacional orientada a objetos de software libre, publicado bajo la licencia BSD. Como muchos otros proyectos open source, el desarrollo de PostgreSQL no es manejado por una sola compaa sino que es dirigido por una comunidad de desarrolladores y organizaciones comerciales las cuales trabajan en su desarrollo. Dicha comunidad es denominada el PGDG (PostgreSQL Global Development Group).

Nombre Desarrollador ltima versin estable Codificacin Licencia Sistema Operativo Sitio web

Ficha de descripcin tcnica PostgreSQL PostgreSQL Global Development Group 8.4 (1 de julio de 2009) BSD Multiplataforma www.postgresql.org

2.2.1.

Caractersticas

Alta concurrencia. Mediante un sistema denominado MVCC (Acceso concurrente multiversin, por sus siglas en ingls) PostgreSQL permite

que mientras un proceso escribe en una tabla, otros accedan a la misma tabla sin necesidad de bloqueos. Cada usuario obtiene una visin consistente de lo ltimo a lo que se le hizo commit. Esta estrategia es superior al uso de bloqueos por tabla o por filas comn en otras bases, eliminando la necesidad del uso de bloqueos explcitos. Amplia variedad de tipos nativos. PostgreSQL provee nativamente soporte para: Nmeros de precisin arbitraria. Texto de largo ilimitado. Figuras geomtricas (con una variedad de funciones asociadas). Direcciones IP (IPv4 e IPv6). Bloques de direcciones estilo CIDR. Direcciones MAC. Arrays. Adicionalmente los usuarios pueden crear sus propios tipos de datos, los que pueden ser por completo indexables gracias a la infraestructura GiST de PostgreSQL. Claves ajenas. Tambin denominadas llaves ajenas o Claves Forneas (foreign keys). Disparadores (triggers): Un disparador o trigger se define en una accin especfica basada en algo ocurrente dentro de la base de datos. En PostgreSQL esto significa la ejecucin de un procedimiento almacenado basado en una determinada accin sobre una tabla especfica.

2.3.

Firebird

Firebird es un sistema manejador de base de datos relacional (o RDBMS) (Lenguaje consultas: SQL) de cdigo abierto, basado en la versin 6 de Interbase, cuyo cdigo fue liberado por Borland en 2000. Su cdigo fue reescrito de C a C++. El proyecto se desarrolla activamente y el 18 de abril de 2008 fue liberada la versin 2.1.

Nombre Desarrollador ltima versin estable Codificacin Sistema Operativo Licencia Sitio web

Ficha de descripcin tcnica Firebird Firebird Project 2.1.0 (18 de abril de 2008) C++ Multiplataforma IPL, IDPL www.firebirdsql.org www.firebird.com.mx

2.3.1.

Caractersticas

Es multiplataforma, y actualmente puede ejecutarse en los sistemas operativos: Linux, HP-UX, FreeBSD, Mac OS, Solaris y Microsoft Windows. Ejecutable pequeo, con requerimientos de hardware bajos. Arquitectura Cliente/Servidor sobre protocolo TCP/IP y otros (embedded). Soporte de transacciones ACID y claves forneas. Es medianamente escalable. Buena seguridad basada en usuarios/roles. Diferentes arquitecturas, entre ellas el Firebird incrustado (embedded server) que permite ejecutar aplicaciones mono-usuario en ordenadores sin instalar el software Firebird. Bases de datos de slo lectura, para aplicaciones que corran desde dispositivos sin capacidad de escritura, como cd-roms. Existencia de controladores ODBC, OLEDB, JDBC, PHP, Perl, .net, etc. Requisitos de administracin bajos, siendo considerada como una base de datos libre de mantenimiento, al margen de la realizacin de copias de seguridad. Pleno soporte del estndar SQL-92, tanto de sintaxis como de tipos de datos. Completo lenguaje para la escritura de disparadores y procedimientos almacenados denominado PSQL. Capacidad de almacenar elementos BLOB (Binary Large Objects). Soporte de User-Defined Functions (UDFs).

2.4.

SQLite

SQLite es un sistema manejador de bases de datos relacional compatible con ACID, y que est contenida en una relativamente pequea (~225 kB ) biblioteca en C. SQLite es un proyecto de dominio pblico creado por D. Richard Hipp. La biblioteca SQLite se enlaza con el programa pasando a ser parte integral del mismo. El programa utiliza la funcionalidad de SQLite a travs de llamadas simples a subrutinas y funciones. Esto reduce la latencia en el acceso a la base de datos, debido a que las llamadas a funciones son ms eficientes que la comunicacin entre procesos. El conjunto de la base de datos (definiciones, tablas, ndices, y los propios datos), son guardados como un slo fichero estndar en la mquina host. Este diseo simple se logra bloqueando todo el fichero de base de datos al principio de cada transaccin. En su versin 3, SQLite permite bases de datos de hasta 2 Terabytes de tamao, y tambin permite la inclusin de campos tipo BLOB.

Nombre Desarrollador ltima versin estable Codificacin Sistema Operativo Licencia Sitio web

Ficha de descripcin tcnica SQLite D. Richard Hipp 3.6.16 (27 de junio de 2009) C Multiplataforma Dominio pblico www.sqlite.org

2.4.1.

Caractersticas

La biblioteca implementa la mayor parte del estndar SQL-92, incluyendo transacciones de base de datos atmicas, consistencia de base de datos, aislamiento, y durabilidad (ACID), triggers y la mayor parte de las consultas complejas. SQLite usa un sistema de tipos inusual. En lugar de asignar un tipo a una columna como en la mayor parte de los sistemas de bases de datos SQL, los tipos se asignan a los valores individuales. Por ejemplo, se puede insertar un string en una columna de tipo entero (a pesar de que SQLite tratar en primera instancia de convertir la cadena en un entero). Existe un programa independiente de nombre sqlite que puede ser utilizado para consultar y gestionar los ficheros de base de datos SQLite. Tambin sirve como ejemplo para la escritura de aplicaciones utilizando la biblioteca SQLite.

2.5.

Apache Derby

Apache Derby es un sistema manejador de base de datos relacional escrito en Java que puede ser embebido en aplicaciones Java y utilizado para procesos de transacciones online. Tiene un tamao de 2 MB de espacio en disco. Inicialmente distribuido como IBM Cloudscape, Apache Derby es un proyecto open source licenciado bajo la Apache 2.0 License. Actualmente se distribuye como Sun Java DB.

Nombre Desarrollador ltima versin estable Codificacin Sistema Operativo Licencia Sitio web

Ficha de descripcin tcnica Apache derby Apache Software Foundation 10.4.2.0 (5 de septiembre de 2008) Multiplataforma Apache license 2.0

2.5.1.

Caractersticas

APIs para JDBC y SQL. Soporta todas las caractersticas de SQL92 y la mayora de SQL99. La sintaxis SQL usada proviene de IBM DB2. Su cdigo mide alrededor de 2000KB comprimido. Soporta cifrado completo, roles y permisos. Adems posee SQL SCHEMAS para separar la informacin en una nica base de datos y control completo de usuarios. Soporta internamente procedures, cifrado y compresin. Trae soporte multilenguaje y localizaciones especficas. A partir de la versin 10.4 trae un sistema simple de replicacin maestroesclavo. Transacciones y recuperacin ante errores ACID. Posee tres productos asociados a la marca: o Derby Embedded Database Engine: El motor propiamente dicho. o Derby Network Server: Permite convertir Derby en una base de datos que sigue el modelo cliente-servidor tradicional. o Database Utilities: Un paquete de utilidades.

3.
3.1.

SMBD propietarios
Visual FoxPro

Visual FoxPro es un lenguaje de programacin orientado a objetos y procedural, un Sistema Manejador de Bases de datos o Database Management System (DBMS), y desde la versin 7.0, un Sistema administrador de bases de datos relacionales, producido por Microsoft.

3.1.1.

Caractersticas

Visual FoxPro ofrece a los desarrolladores un conjunto de herramientas para crear aplicaciones de bases de datos para el escritorio, entornos cliente/servidor, tablet PC o para la Web. Capacidades poderosas y muy veloces para el manejo de datos nativos y remotos. Flexibilidad para crear todo tipo de soluciones de bases de datos. Lenguaje de Programacin Orientado a objetos. Utilizacin de Sentencias SQL en forma nativa. Poderoso manejo de vistas y cursores y control completo de estructuras relacionales.

Su propio manejador de base de datos incorporado. Sin embargo, tambin puede conectarse con servidores de base de datos, tales como Oracle, Microsoft SQL Server o MySQL. Cuenta con un motor de generacin de informes renovado y muy flexible para soluciones ms robustas. Desde la versin 9.0, amplio soporte de XML, tanto como fuente de datos (por ej., servicios Web basados en XML) como por generar reports en formato XML. Desde la versin 7.0, soporte de la tecnologa IntelliSense de Microsoft Hay un movimiento MasFoxPro que est haciendo presin para que Microsoft contine, o deje el Visual FoxPro como cdigo abierto para que otra gente pueda seguir evolucionndolo.

3.2.

Access

Microsoft Access es un programa Sistema manejador de base de datos relacional creado y modificado por Microsoft para uso personal de pequeas organizaciones. Es un componente de la suite Microsoft Office aunque no se incluye en el paquete "bsico". Una posibilidad adicional es la de crear ficheros con bases de datos que pueden ser consultados por otros programas. Dentro de un sistema de informacin entrara dentro de la categora de manejador y no en la de Ofimtica como algunos creen.

Nombre Desarrollador ltima versin estable Codificacin Sistema Operativo Licencia Sitio web

Ficha de descripcin tcnica Microsoft Access Microsoft Multiplataforma Privada www.microsoft.com

3.3.

Microsoft SQL Server

Microsoft SQL Server es un sistema manejador de bases de datos relacionales (SGBD) basado en el lenguaje Transact-SQL, y especficamente en Sybase IQ, capaz de poner a disposicin de muchos usuarios grandes cantidades de datos de manera simultnea. Microsoft SQL Server constituye la alternativa de Microsoft a otros potentes sistemas manejadores de bases de datos como son Oracle, Sybase ASE, PostgreSQL, Interbase, Firebird o MySQL.

Nombre Desarrollador ltima versin estable Codificacin Sistema Operativo Licencia Sitio web

Ficha de descripcin tcnica Microsoft SQL Server Microsoft 10.00.1600.22 (2 de agosto de 2008) Transact-SQL y Sybase IQ Microsoft Windows Microsoft EULA www.microsoft.com/sql/

3.3.1.

Caractersticas Soporte de transacciones. Escalabilidad, estabilidad y seguridad. Soporta procedimientos almacenados. Incluye un potente entorno grfico de administracin, que permite el uso de comandos DDL y DML grficamente. Permite trabajar en modo cliente-servidor, donde la informacin y datos se alojan en el servidor y las terminales o clientes de la red slo acceden a la informacin. Permite administrar informacin de otros servidores de datos. Incluye una versin reducida, llamada MSDE con el mismo motor de base de datos pero orientado a proyectos ms pequeos, que en sus versines 2005 y 2008 pasa a ser el SQL Express Edition, que se distribuye en forma gratuita. Para el desarrollo de aplicaciones ms complejas (tres o ms capas), Microsoft SQL Server incluye interfaces de acceso para varias plataformas de desarrollo, entre ellas .NET, pero el servidor slo est disponible para Sistemas Operativos Windows. La nueva base de datos contiene mayor seguridad, integracin con PowerShell, remueve La consola configuracin del rea expuesta (consola para configurar seguridad), tiene correctores de sintaxis del lenguaje Transact-SQL e intellisence (una carcteristica del visual studio que permite a la base de datos sugerir objetos existentes mientras uno escribe la mitad de la palabra).

3.4.

Oracle

Oracle es un sistema manejador de base de datos relacional (o RDBMS por el acrnimo en ingls de Relational Data Base Management System), desarrollado por Oracle Corporation.

Nombre Desarrollador ltima versin estable Codificacin Sistema Operativo Licencia Sitio web

Ficha de descripcin tcnica Oracle DataBase Oracle Corporation 11g Release 1 (2007) Multiplataforma Privada www.oracle.com

3.4.1.

Caractersticas

Se considera a Oracle como uno de los sistemas de bases de datos ms completos destacando: Soporte de transacciones. Estabilidad. Escalabilidad. Soporte multiplataforma.

Ha sido criticada por algunos especialistas la seguridad de la plataforma, y las polticas de suministro de parches de seguridad, modificadas a comienzos de 2005 y que incrementan el nivel de exposicin de los usuarios. En los parches de actualizacin provistos durante el primer semestre de 2005 fueron corregidas 22 vulnerabilidades pblicamente conocidas, algunas de ellas con una antigedad de ms de 2 aos.

Aunque su dominio en el mercado de servidores empresariales ha sido casi total hasta hace poco, recientemente sufre la competencia del Microsoft SQL Server de Microsoft y de la oferta de otros RDBMS con licencia libre como PostgreSQL, MySql o Firebird. Las ltimas versiones de Oracle han sido certificadas para poder trabajar bajo GNU/Linux. Oracle a partir de la versin 10g Release 2, cuenta con 6 ediciones: Oracle Database Enterprise Edition (EE). Oracle Database Standard Edition (SE). Oracle Database Standard Edition One (SE1). Oracle Database Express Edition (XE). Oracle Database Personal Edition (PE). Oracle Database Lite Edition (LE).

La nica edicin gratuita es la Express Edition, que es compatible con las dems ediciones de Oracle Database 10gR2 y Oracle Database 11g.

3.5.

PervasiveSQL

Motor de base de datos embebible que sustenta la integridad de los datos, el alto rendimiento, flexibilidad, escalabilidad y un bajo coste total de propiedad. Ha crecido en el tiempo desde las races del motor Btrieve, del cual an se mantiene el soporte tcnico para sus libreras API. An en la ltima versin lanzada se garantiza la compatibilidad de funcionamiento con todas las versiones anteriores incluso con Btrieve 6.15 capacidad de lectura de archivos Btrieve 5.x. Esto significa que la reciente versin de PSQL es compatible con aplicaciones y datos creados hace ms de diez aos.

3.5.1.

Caractersticas

Rendimiento de Btrieve - API transactional para un acceso ms rpido a los datos. Optimizador de SQL - proporciona un mayor rendimiento SQL. ODBC, JDBC, ADO / OLE DB y PDAC. Turbo Write Accelerator - maximiza la eficacia de las E/S del disco. Compatibilidad retroactiva completa - aplicaciones y bases de datos heredadas. Capacidad de incrustacin: Biblioteca de desarrollo de clase. Caja de herramientas de instalacin completa. Operaciones continuas. Tecnologa de reconexin automtica. Evita problemas menores de red porque es capaz de reconectar perfectamente puestos de trabajo a un motor de servidor cuando se produce un error en la red. Parmetros dinmicos en plataformas cruzadas - no es necesario volver a actualizar el entorno de la base de datos en cada plataforma. Integridad en plataformas cruzadas - el comportamiento igual en todas las versiones y plataformas simplifica la distribucin y administracin en plataformas cruzadas. Independencia de versin de servidor y cliente - Simplifica de forma extraordinaria las tareas de distribucin 3.6. Sybase ASE

Conclusiones / comentarios
Debido a las funciones que realizan los sistemas manejadores de base de datos juegan un papel fundamental en campo de los negocios. Ya que pueden realizar mltiples transacciones, esto es, de acuerdo al SMBD que se utilice. Y aunque unos realicen las mismas funciones siempre habr diferencias en cuanto al tiempo de ejecucin de dicha actividad. Aunque todos los SMBD deben de cumplir objetivos como: abstraccin de la informacin, independencia, consistencia, manejo de transacciones, seguridad y tiempo de respuesta. Hay algunos que cumplen estos objetivos al cien porciento, por ejemplo: MySQL, Firebird, Oracle (versin actual), Microsoft SQL Server y postgre. Pero a diferencia de los anteriores, existen otros que no los cumplen completamente, como: Oracle (en una de sus versiones se detectaron 22 fallas de vulnerabilidad para lo cual tuvieron que actualizarlo con un parche). En nuestra opinin los SMBD ms sobresalientes y ocupados se encuentran en el mercado actual son: Oracle y Microsoft SQL Server. Hay una gran rivalidad entre estos dos SMBD, porque los dos unos potentes manejadores de transacciones y los que ms demanda tienen por las empresas, debido a que lo que ellas buscan es la integridad y seguridad de la informacin que ellas poseen. Adems de que el tiempo en que se realizan las transacciones es muy corto y rpido.

Existe sitios en la web de algunos SMBD que ofrecen versiones gratuitas o acadmicas, esto con el fin de que las instituciones utilicen el SMBD a manera de prueba y respectivamente despus de utilizar el sistema manejador se reporten las fallas o errores que tenga, para poder corregirlos y actualizarlos, para versiones ms actualizadas. Proponemos el estudio de los siguientes SMBD en sus versiones gratuitas: Oracle Microsoft SQL Server Firebird MySQL

Bibliografa

www.wikipedia.com www.sql.com

S-ar putea să vă placă și