sgbd

18
SISTEMAS GESTORES DE BASES DE DATOS Los sistemas de gestión de bases de datos o mejor conocidos como SGBD (en inglés database management system , abreviado DBMS ). Los sistemas de Gestión de Bases de Datos, son aplicaciones que permiten a los usuarios definir, crear y mantener la base de datos y proporciona un acceso controlado a la misma. Los SGBD es la aplicación que interactúa con los usuarios de los programas de aplicación y la base de datos. OBJETIVOS DE UN SGBD Definir la Base de Datos mediante el Lenguaje de Definición de Datos, el cual permite especificar la estructura, tipo de datos y las restricciones sobre los datos, almacenándolo todo en la base de datos. Separar la descripción y manipulación de la data, permitiendo un mayor entendimiento de los objetos, además de flexibilidad de consulta y actualización de los datos. Permitir la inserción, eliminación, actualización, consulta de los datos mediante el Lenguaje de Manejo de Datos, lo que permite resolver el problema que presentan los sistemas de archivos, donde hay que trabajar con un conjunto fijo de consultas o la necesidad de tener muchos programas de aplicaciones. Existen dos tipos de programas de Manejo de Datos, los cuales se diferencian por la forma en que acceden a los datos. Lenguajes procedurales: manipulan la base de datos registro a registro y se deben especificar las operaciones a realizar para obtener los datos resultado. Lenguajes no procedurales: manipulan la base de datos en conjuntos de registros y se especifican qué datos deben obtenerse como resultado sin plantear las forma de hacerlo. El lenguaje no procedural más utilizado es SQL (Structure Query Languaje) que se ha convertido en un estándar y el lenguaje por defecto de los SGBD relacionales. Proporcionar acceso controlado a la base de datos.

Upload: camila-maldonado-borda

Post on 10-Aug-2015

37 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SGBD

SISTEMAS GESTORES DE BASES DE DATOS

Los sistemas de gestión de bases de datos o mejor conocidos como SGBD (en inglés database management system, abreviado DBMS). Los sistemas de Gestión de Bases de Datos, son aplicaciones que permiten a los usuarios definir, crear y mantener la base de datos y proporciona un acceso controlado a la misma. Los SGBD es la aplicación que interactúa con los usuarios de los programas de aplicación y la base de datos.

OBJETIVOS DE UN SGBD Definir la Base de Datos mediante el Lenguaje de Definición de Datos, el cual permite

especificar la estructura, tipo de datos y las restricciones sobre los datos, almacenándolo todo en la base de datos.

Separar la descripción y manipulación de la data, permitiendo un mayor entendimiento de los objetos, además de flexibilidad de consulta y actualización de los datos.

Permitir la inserción, eliminación, actualización, consulta de los datos mediante el Lenguaje de Manejo de Datos, lo que permite resolver el problema que presentan los sistemas de archivos, donde hay que trabajar con un conjunto fijo de consultas o la necesidad de tener muchos programas de aplicaciones. Existen dos tipos de programas de Manejo de Datos, los cuales se diferencian por la forma en que acceden a los datos.• Lenguajes procedurales: manipulan la base de datos registro a registro y se deben especificar las operaciones a realizar para obtener los datos resultado.• Lenguajes no procedurales: manipulan la base de datos en conjuntos de registros y se especifican qué datos deben obtenerse como resultado sin plantear las forma de hacerlo. El lenguaje no procedural más utilizado es SQL (Structure Query Languaje) que se ha convertido en un estándar y el lenguaje por defecto de los SGBD relacionales.

Proporcionar acceso controlado a la base de datos.• Seguridad: los usuarios no autorizados no pueden acceder a la base de datos.• Integridad: mantiene la integridad y consistencia de la base de datos.• Control de Recurrencia: permite el acceso compartido a la base de datos.• Control de Recuperación: restablece la base de datos después de producirse un fallo de software o hardware.• Diccionario de datos o Catálogo: contiene la descripción de los datos de la base de datos y es accesible por el usuario.

Gestionar la estructura física de los datos y su almacenamiento, proporcionando eficiencia en las operaciones de la base de datos y el acceso al medio de almacenamiento.

Proporcionar un mecanismo de vistas, que permita a cada usuario tener su propia vista o visión de la base de datos. El lenguaje de definición nos permite definir las vistas como subconjuntos de la base de datos, permitiendo:• Proporcionar un nivel de seguridad excluyendo datos para que no sean vistos por determinados usuarios.• Permiten que los usuarios vean los datos en el formato deseado.

Page 2: SGBD

• Una vista representa una imagen consistente y permanente de la base de datos, aún cuando a la base de datos se le hagan cambios en su estructura.

Eliminar la redundancia de datos, establecer una mínima duplicidad en los datos y minimizar el espacio en disco utilizado.

Proveer interfaces procedimentales y no procedimentales, permitiendo la manipulación por usuarios interactivos y programadores.

Independizar la estructura de la organización lógica de los datos (Independencia física).

Independizar la descripción lógica de la Base de datos y las descripciones particulares de los diferentes puntos de vistas de los usuarios.

Permitir una fácil administración de los datos.

VENTAJAS DE LOS SGBDINTEGRACIÓN DE LOS DATOS• Control sobre la redundancia de datos: Los sistemas de archivos almacenan varias

copias de los mismos datos en archivos distintos. Esto hace que se desperdicie espacio de almacenamiento, además de provocar la falta de consistencia de datos. En los sistemas de bases de datos todos estos archivos están integrados, por lo que no se almacenan varias copias de los mismos datos. Sin embargo, en una base de datos no se puede eliminar la redundancia completamente, ya que en ocasiones es necesaria para modelar las relaciones entre los datos, o bien es necesaria para mejorar las prestaciones.

• Consistencia de datos: Eliminando o controlando las redundancias de datos se reduce en gran medida el riesgo de que haya inconsistencias. Si un dato está almacenado una sola vez, cualquier actualización se debe realizar sólo una vez, y está disponible para todos los usuarios inmediatamente. Si un dato está duplicado y el sistema conoce esta redundancia, el propio sistema puede encargarse de garantizar que todas las copias se mantienen consistentes. Desgraciadamente, no todos los SGBD de hoy en día se encargan de mantener automáticamente la consistencia.

• Más información sobre la misma cantidad de datos: Al estar todos los datos integrados, se puede extraer información adicional sobre los mismos.

• Compartición de datos: En los sistemas de archivos, los archivos pertenecen a las personas o a los departamentos que los utilizan. Pero en los sistemas de bases de datos, la base de datos pertenece a la empresa y puede ser compartida por todos los usuarios que estén autorizados. Además, las nuevas aplicaciones que se vayan creando pueden utilizar los datos de la base de datos existente.

• Mantenimiento de estándares: Gracias a la integración es más fácil respetar los estándares necesarios, tanto los establecidos a nivel de la empresa como los nacionales e internacionales. Estos estándares pueden establecerse sobre el formato de los datos para facilitar su intercambio, pueden ser estándares de documentación, procedimientos de actualización y también reglas de acceso.

EXISTENCIA DE LOS SGBD

Page 3: SGBD

• Mejora en la integridad de datos: La integridad de la base de datos se refiere a la validez y la consistencia de los datos almacenados. Normalmente, la integridad se expresa mediante restricciones o reglas que no se pueden violar. Estas restricciones se pueden aplicar tanto a los datos, como a sus relaciones, y es el SGBD quien se debe encargar de mantenerlas.

• Mejora en la seguridad: Los SGBD permiten mantener la seguridad mediante el establecimiento de claves para identificar al personal autorizado a utilizar la base de datos. Las autorizaciones se pueden realizar a nivel de operaciones, de modo que un usuario puede estar autorizado a consultar ciertos datos pero no a actualizarlos, por ejemplo.

• Mejora en la accesibilidad a los datos: Muchos SGBD proporcionan lenguajes de consultas o generadores de informes que permiten al usuario hacer cualquier tipo de consulta sobre los datos, sin que sea necesario que un programador escriba una aplicación que realice tal tarea.

• Mejora en la productividad: A nivel básico, el SGBD proporciona todas las rutinas de manejo de archivos típicas de los programas de aplicación. El hecho de disponer de estas funciones permite al programador centrarse mejor en la función específica requerida por los usuarios, sin tener que preocuparse de los detalles de implementación de bajo nivel.

• Mejora en el mantenimiento gracias a la independencia de datos: Los SGBD separan las descripciones de los datos de las aplicaciones. Esto es lo que se conoce como independencia de datos, gracias a la cual se simplifica el mantenimiento de las aplicaciones que acceden a la base de datos.

• Aumento de la concurrencia: La mayoría de los SGBD gestionan el acceso concurrente a la base de datos y garantizan que no ocurran problemas en el acceso de múltiples usuarios.

• Mejora en los servicios de copias de seguridad y de recuperación ante fallos: Los SGBD actuales funcionan de modo que se minimiza la cantidad de trabajo perdido cuando se produce un fallo.

INCONVENIENTES DE LOS SGBD• Complejidad: Los SGBD son conjuntos de programas muy complejos con una gran

funcionalidad. Es preciso comprender muy bien esta funcionalidad para poder sacar un buen partido de ellos.

• Tamaño: Los SGBD son programas complejos y muy extensos que requieren una gran cantidad de espacio en disco y de memoria para trabajar de forma eficiente.

• Coste económico del SGBD: El coste de un SGBD varía dependiendo del entorno y de la funcionalidad que ofrece. Además, hay que pagar una cuota anual de mantenimiento que suele ser un porcentaje del precio del SGBD.

• Costo del equipamiento adicional: Tanto el SGBD, como la propia base de datos, pueden hacer que sea necesario adquirir más espacio de almacenamiento. Además, para alcanzar las prestaciones deseadas, es posible que sea necesario adquirir una máquina con más prestaciones o una máquina que se dedique solamente al SGBD.

Page 4: SGBD

• Costo de la conversión: En algunas ocasiones, el costo del SGBD y el costo del equipo informático que sea necesario adquirir para su buen funcionamiento, es insignificante comparado al coste de convertir la aplicación actual en un sistema de bases de datos. Este coste incluye el coste de enseñar a la plantilla a utilizar estos sistemas y, probablemente, el costo del personal especializado para ayudar a realizar la conversión y poner en marcha el sistema.

• Prestaciones: Los SGBD están escritos para ser más generales y ser útiles en muchas aplicaciones, lo que puede hacer que algunas de ellas no sean tan rápidas como en los sistemas de archivos.

• Vulnerable a los fallos: El hecho de que todo esté centralizado en el SGBD hace que el sistema sea más vulnerable ante los fallos que puedan producirse.

Algunos de los SGBD más conocidos son: SQL, DB2, SLQ/DS, ORACLE, INGRES, INFORMIX, SYBASE, PARADOX, DBASE, ACCESS, FOXPRO, R, RM/T y RM/V2.

Page 5: SGBD
Page 6: SGBD

Cuadro Comparativo distintos SGBD

SGBD Requisitos Caracteristicas Ventajas DesventajasOracle        En memoria:

El requisito de memoria mínima es de 512 MB.

       Espacio en disco:El tamaño recomendado es de al menos 10 GB. Nota: Como mínimo se necesitan 4 GB.

       Para x86: compatibilidad con varios sistemas operativos.Si va a instalar Oracle Solaris en un sistema basado en x86 que cuenta con más de un sistema operativo, durante el proceso de instalación puede crear particiones en el disco

       Es una herramienta de administración gráfica que es mucho más intuitiva y cómoda de utilizar.

       Ayuda a analizar datos y efectuar recomendaciones para mejorar el rendimiento del manejo  de datos que se encuentran almacenados.

       Apoya en el diseño y optimización de modelos de datos.

       Apoya en la definición de estándares de diseño y nomenclatura de objetos.

       Algunas de las ventajas es que es como el motor de base de datos relacional y es el más utilizado a nivel mundial.

       Tiene un aceptable soporte

       Es la base de datos con más orientación a internet.

       Algunos fallos en por lo tanto varias versiones con correcciones.

       Un inconveniente es el precio.

       Problema de ajustes.

Mysql Requisitos para Windows:

       Windows basado en NT (NT, 2000, XP, 2003)

       Soporte para protocolo TCP/IP.

       Espacio en

       Interioridades y portabilidad

       Funciona en diferentes plataformas.

       Aprovecha la potencia de sistemas multiprocesador, gracias a su

       MySQL es OpenSource.Esto significa que es posible para cualquiera usar y modificar el software.

       El servidor de bases de datos relacionales

       Hay limitaciones con lo que se puede hacer con el soporte para disparadores.

       Los privilegios para una tabla no se eliminan

Page 7: SGBD

disco generalmente se recomienda un mínimo de 200 megabytes.

       Mínimo un AMD a 400 Mhz, y MUCHA memoria RAM, por ejemplo 512 Mb para empezar.

implementación multihilo.

       Dispone de API's en gran cantidad de lenguajes (C, C++, Java, PHP, etc).

       Condición de open source de MySQL hace que la utilización sea gratuita y se puede modificar con total libertad

MySQL es muy rápido, fiable y fácil de usar.

       MySQL posee un buen control de acceso de usuarios y seguridad en los datos.

       Gran portabilidad entre distintos sistemas o plataformas.

automáticamente cuando se borra una tabla.

INFORMIX        Windows 2000, XP Profesional o 2003 Server.

       128Mb de RAM (mínimo) 256Mb (recomendado).

       La suma de la RAM y el archivo de intercambio debe ser de 256Mb (mínimo)

       Disco destino con sistema de archivos NTFS.

       276Mb de espacio en disco para el servidor de bases de datos.

       Dispone de herramientas graficas

       Gestiona múltiples bases de datos remotas de una única consola donde se muestran gráficamente tanto la base de datos, como los objetos que contiene (tablas, índices y procedimientos).

       Utiliza plataforma NT y UNIX

       Capacidad de relación de datos de múltiples lugares físicos

       Opción de conectar datos relacionales de páginas web

       Hace la conversión de tipos automáticamente.No se tiene que indicar que tipo de conversión hacer.

       Informix ocupa menos memoria y recursos.

       Si no se colocan algunos valores añade nulo automáticamente.

       Reduce costos de administración.

       Es compatible con otros sistemas.

       No tiene soporte para objetos grandes binarios( BLOBs).

       No tiene soporte para datos VARCHAR

SQL Server        Procesador de 500 megahertz (MHz) o superior (se recomienda 1 gigahertz o

        Facilidad de instalación, distribución y utilización.

       posee una gran variedad de herramientas administrativas.

       Puede ser útil para manejar y obtener datos de la red de redes.

       Ofrece una

       bloqueo a nivel de página.

       Enorme cantidad de memoria RAM

Page 8: SGBD

superior).       Puede

ejecutarse en distintas versiones en sistemas operativos.

       Entre distintas versiones se recomienda en Memoria 512 MB (se recomienda 1 GB o más)

       Puede utilizarse el mismo motor de base de datos a través de distintas plataformas.

       Incluye herramientas para extraer y analizar datos resumidos para el proceso analítico en línea.

potente forma de unir SQL e Internet.

       Seguridad.

que utiliza para la instalación y utilización del software.

       Es que si lo quieres para prácticas no te va hacer útil porque en él se prohíben muchas cosas tiene restricciones en lo particular me parase más viable usar MySQL.

DB2        Procesadores Intel y AMD x86 (Intel Pentium, Intel Xeon y AMD) de 32 bits.

       Procesadores EM64T x64 (AMD64 e Intel de 64 bits).

       Permite el manejo de objetos grandes, definición de datos y funciones por parte del usuario.

       Cuenta con un monitor gráfico permite corregir detalles para aumentar el rendimiento.

       Permite agilizar el tiempo de respuestas de esta consulta.

       Recuperación utilizando accesos de sólo índices.

       utiliza una combinación de seguridad externa y control interno de acceso a proteger datos.

Se tiene que ver con las aplicaciones que se tienen desarrolladas y las que se van a implementar.Ya es cuestión del hardware que vamos a utilizar para poder utilizar este mismo.

PostgreSQL        GNU make (gmake).

       Un compilador ISO/ANSI C. GCC el compilador por defecto en Linux funciona perfectamente.

       Biblioteca GNU Readline.

       Se destaca por su amplísima lista de prestaciones que lo hacen capaz de competir con cualquier SGBD comercial.

       Está desarrollado en C.

       Cuenta con un rico conjunto de tipos de datos, permitiendo además su

No soporta tablespaces para definir dónde almacenar la base de datos, el esquema, los índices, etc.El soporte a orientación a objetos es una simple extensión no un soporte

Page 9: SGBD

extensión mediante tipos y operadores definidos y programados por el usuario.

       Es altamente confiable en cuanto a estabilidad se refiere.

completo.

Introducción:

Los SGBD, son un tipo de software muy específico, dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones que lo utilizan. Hay tres tipos:

   SGBD libre (PostGreSQL, Firebird...).

   SGBD no libres (MySQL, dBase, Microsoft Access.. .).

   SGBD no libres y gratuitos (Microsoft SQL Server Compact Edition Basica...).

ORACLE – HISTORIA

  Surge a finales de los años 70, bajo el nombre de Sotfware a partir de un estudio sobre SGBD de George Koch. Computer World definió este estudio como uno de los más completos jamás escrito sobre Base de Datos.

  Esto se debía a que usaba la filosofía de las Bases de Datos Relacionales, algo que por aquella época era todavía desconocido.

  La tecnología Oracle se encuentra prácticamente en todas las industrias alrededor del mundo, y en la actualidad encabeza la lista de los SGBD más usados.

ORACLE – CARACTERÍSTICAS

Es un SGBDR desarrollado por Oracle Corporation, que es considerado como uno de los SGBD más completos, destacando:

  Su soporte de transacciones

   Su estabilidad

   Su escalabilidad

   Su soporte multiplataforma

Su dominio en el mercado de servidores empresariales ha sido casi total hasta hace poco.

MySQL – HISTORIA

Page 10: SGBD

MySQL surgió alrededor de la década del 90, Michael Windenis comenzó a usar mSQL para conectar tablas usando sus propias rutinas de bajo nivel (ISAM). Tras unas primeras pruebas, llegó a la conclusión de que mSQL no era lo bastante flexible ni rápido para lo que necesitaba, por lo que tuvo que desarrollar nuevas funciones. Esto resulto en una interfaz SQL a su base de datos, totalmente compatible a mSQL.

El origen del nombre MySQL no se sabe con certeza de donde proviene

MySQL – CARACTERÍSTICAS

  Aprovecha la potencia de los sistemas multiprocesador, gracias a su impletación multihilo.

  Soporta gran cantidad de tipos de datos para las columnas

  Dispone de API’s en gran cantidad de lenguajes (C, C++, Java, PHP etc)

  Gran portabilidad entre sistemas, puede trabajar en distintas performas y Sistemas Operativos (GNU/Linux, Mac OS X y Windows entre otros)

  Soporta hasta 32 índices por tablas

  Gestión de usuarios y passwords, manteniendo un nivel muy bueno de seguridad en los datos.

PostGreSQL – HISTORIA

  PostGreSQL ha tenido una larga evolución, la cual se inicia en 1980 con el proyecto Ingres, en 1986 se publicaron varios papers que describían las bases del sistema, y dos años más tarde ya se contaba con una versión utilizable.

  La primera versión se publica en el año 1989 y en 1990 la segunda. A los años siguientes se publica la tercera que añadía la capacidad de múltiples motores de almacenamiento. En 1993 se produce un aumento importante de usuarios, y al año siguiente se publica la versión 4, el proyecto termina y el grupo se disuelve.

PostGreSQL – CARACTERÍSTICAS

  Vistas (Es un resultado de una consulta SQL de una o varias tablas, también se le puede considerar una tabla virtual).

  Integridad Transaccional.

  Herencia de tablas.

  Tipos de datos y operaciones geométricas.

  Soporte para transacciones distribuidas. Permite a PostGreSQL, integrarse en un sistema distribuido formado por varios recursos.

Conforme al grado de competencia:

FACTORES ORACLE MySOL POSTGRESQLDisponibilidad Media, por

dependencia de la empresa

Alta Alta

Formación Administrador

Alta y cara formación FP y cursos más baratos

FP y cursos más baratos

Page 11: SGBD

Licencia y coste Comercial GNU GLP BSDSeguridad y Fiabilidad

Alta Media Media

Peso en memoria Alta Baja BajaPopularidad Alta Media Baja

Volumen de datos Alta Media MediaSeguridad y copias

de seguridadAlta Media Media

 Cuadro comparativo entre SGBD

SISTEMAS GESTORES DE BASES DE DATOS (SGBD)

NOMBRE DEL SGBD

CARACTERÍSTICAS Y PROPIEDADES

REQUERIMIENTOS DE HARDWARE

PLATAFORMA

PostgreSQL

Alta concurrencia, además provee nativamente

números de precisión arbitraria, texto de largo

ilimitado, figuras geométricas, direcciones

IP, etc.

Al igual que en la mayoría de los SGBD

este consume una gran cantidad de recursos, 2GB RAM, disco duro

superior a 4 GB, procesador de 2GHz.

Multiplataforma (Windows, Mac, Unix, Linux, etc.)

MySQL

Es relacional, multihilo y multiusuario, posee un amplio subconjunto de

ANSI SQL 99, procedimientos almacenados,

disparadores, soporte para SSL.

Consumidor medio de recursos

(afortunadamente las PC de hoy tienen

capacidades gigantescas).

Multiplataforma

Firebird

Arquitectura Cliente/ Servidor sobre protocolo

TCP/IP, soporte de transacciones ACID,

versión autoejecutable.

Bajos de requerimientos de hardware, contrario a

los otros.Multiplataforma

Interbase

Bases de datos en ficheros independientes, soporta el

ANSI de SQL, distintos protocolos de red,

arquitectura multigeneracional.

Bajo consumo de recursos (cuando mucho

256 de RAM, procesador no tan veloz,

aproximadamente 40 MB en disco.)

Linux, Microsoft Windows y Solaris

Page 12: SGBD

Oracle Database

Eliminación de redundancia ociosa del centro de datos,

precio muy elevado, reducción del BDA del

riesgo de cambio.

A diferencia del anterior requiere alto consumo

de recursos.Multiplataforma

Microsoft SQL Server

Soporte de transacciones, estabilidad, seguridad, soporta procedimientos almacenados, permite

trabajar en modo cliente-servidor.

Requiere una gran cantidad de recursos, (2

GB de RAM para trabajar a gusto y sin

preocupaciones, procesador de

preferencia Dual Core).

Microsoft Windows

Adaptive Server Enterprise (ASE)

Técnicas de particionamiento semántico de tablas que aumentan la velocidad de acceso a los datos, columnas cifradas,

arquitectura VSA de Sybase, conexiones

seguras de SSL, conectividad cliente-

servidor.

Consumidor medio de recursos

(afortunadamente las PC de hoy tienen

capacidades gigantescas).

Windows, Linux, Sun Solaris, IBM AIX, HP-UX, Mac

OS, Silicon Graphics IRIX

Informix

Ejecución de múltiples hilos y procesadores virtuales que trabajan en paralelo,

incluye de forma integrada el servidor Netscape

FaxTrap, encriptación en integridad de mensajes,

incluye volcado de seguridad, etc.

Recursos mínimos Multiplataforma

Apache Derby

APIs para JDBC y SQL, su código mide alrededor de

2000 KB comprimido, soporta cifrados completos,

es multilenguaje, transacciones y

recuperaciones ante errores ACID.

Recursos mínimos (512 de RAM, etc.)

Multiplataforma

Page 13: SGBD

DBMan

Personalización y servicios de apoyo, proceso de

instalación automatizado basado en la web, puede ser alimentados por otros

SGBD como MySQL, Oracle, etc.

Recursos mínimos Multiplataforma

Conclusión:

Hay que tener en cuenta que no existe el peor o mejor SGBD, simplemente existe el más o menos adecuado para cada caso, pues depende de las necesidades de cada negocio en el que se necesite tener bases de datos.y tambien depende mucho de las plataformas y su compatibilidad con cada SGBD