Un sistema gestor de base de datos se define como el conjunto de programas que administran y gestionan la información contenida en una base de datos. Ayuda a realizar las siguientes acciones:
- Definición
de los datos
- Mantenimiento
de la integridad de los datos dentro de la base de datos
- Control
de la seguridad y privacidad de los datos
- Manipulación
de los datos
Un sistema gestor de base de datos está compuesto
de:
El gestor de la base de datos
El gestor de la base de datos
Se trata de un conjunto de programas no visibles al usuario final que se encargan de la privacidad, la integridad, la seguridad de los datos y la interacción con el sistema operativo. Proporciona una interfaz entre los datos, los programas que los manejan y los usuarios finales.
Cualquier operación que el usuario hace contra la base de datos está
controlada por el gestor.
El gestor almacena una descripción de datos en lo que llamamos
diccionario de datos, así como los usuarios permitidos y los permisos.
Tiene que haber un usuario administrador encargado de centralizar todas
estas tareas.
Diccionario de datos
Es una base de datos donde se guardan todas las propiedades de la base
de datos, descripción de la estructura, relaciones entre los datos, etc.
El diccionario debe contener:
- La descripción externa, conceptual e interna de la base de datos
- Las restricciones sobre los datos
- El acceso a los datos
- Las descripciones de las cuentas de usuario
- Los permisos de los usuarios
- Los esquemas externos de cada programa
El administrador de la base de datos
Las principales tareas de un administrador son:
- La definición del esquema lógico y físico de la base de datos
- La definición de las vistas de usuario
- La asignación y edición de permisos para los usuarios
- Mantenimiento y seguimiento de la seguridad en la base de datos
- Mantenimiento general del sistema gestor de base de datos
Un sistema gestor de base de datos debe proporcionar una serie de
lenguajes para la definición y manipulación de la base de datos. Estos
lenguajes son los siguientes:
- Lenguaje de definición de datos (DDL). Para definir los esquemas de
la base de datos
- Lenguaje de manipulación de datos (DML). Para manipular los datos
de la base de datos
- Lenguaje de control de datos (DCL). Para la administración de
usuarios y seguridad en la base de datos.
Requisitos de un SGBD.
Los requisitos de hardware para correr un SGBD son los siguientes:
·
Costo de software y hardware: Además del
coste de comprar el software, probablemente haya que ampliar o subir de versión
el hardware para que el programa pueda almacenarse y funcione correctamente,
además, si no, el sistema podría degradarse y los tiempos de respuesta subir
drásticamente por la sobrecarga que añade el SGBD al tener que implementar la
segundad, integridad y datos compartidos Recordemos que estamos hablando de
SGBD grandes, no por supuesto de los de ordenadores personales.
·
Coste de migración de aplicaciones: Un
coste adicional, también, es la migración de las aplicaciones para pasar a un
entorno integrado.
·
Las operaciones de respaldo y recuperación de los datos encaso de fallo son complejas, debido al acceso
concurrente de múltiples usuarios.
·
Criticidad del SGBD: La centralización
también significa que los datos de la organización, están almacenados en un
único lugar, en la base de datos, con lo que cualquier fallo de seguridad u
operación del SGBD puede afectar a toda la organización (sistemas distribuidos
y compartidos).
Niveles de un SGBD.
Hay
tres niveles en un SGBD:
·
Nivel interno: (gestor)se encarga de cómo almacenar los ficheros
Es la representación más cercana al almacenamiento físico de los datos.
Permite describirlo tal y como están almacenados. Este nivel se describe
mediante el esquema interno. En este nivel se describen los ficheros que
contienen información, su organización, ubicación, forma de acceso a sus
registros, su longitud, campos que lo componen, índices, etc.
·
Nivel lógico: (programas)controla la gestión de los datos
No se tiene en cuenta la organización física ni los métodos de acceso.
Existe un esquema conceptual
·
Nivel externo: (usuarios)realiza el diseño de la base, su
apariencia y forma
Es el nivel más cercano al usuario. Representa la visión individual de
un usuario o grupo de usuarios de la base de datos. En él se describe la parte
de los datos que interesa a un usuario o grupo de usuarios.
Herramientas de Gestión.
Todos los SGBD disponen de herramientas de gestión para poder
crear las bases de datos, manipularlas, modificar su diseño, crear usuarios,
asignar permisos, etc… Estas herramientas suelen estar solo disponibles para
los administradores de la base de datos; es decir, para aquellos usuarios
especializados en mantener la base de datos en perfecto estado.
Herramientas de programación.
Muchos SGBD ofrecen la posibilidad de crear las aplicaciones
que utilizarán los usuarios para acceder a la base de datos, cuando estos
usuarios no pueden (o no deben) trabajar directamente con el SGBD.
Lenguajes.
Los SGBD proporcionan unos lenguajes de trabajo para poder
acceder a los datos, y también para poder efectuar algunas tareas de gestión.
Estos lenguajes pueden clasificarse en:
·
Lenguajes de definición (LDD): Son
aquellos que se usan para crear la base de datos o modificar su estructura una
vez creada.
·
Lenguajes de control (LCD): Que sirven para realizar
la gestión de usuarios, dar y retirar permisos, realizar tareas de seguridad,
etc..
· Lenguajes de manipulación (LMD): Son
los que permiten trabajar con los datos, haciendo consultas, altas, bajas,
modificaciones, entre otros. Algunos textos diferencian entre los lenguajes de
manipulación (LM) y los de consulta (LC).
SQL: Es un lenguaje declarativo de 4ª Generación de acceso a
bases de datos relacionales que permite especificar diversos tipos de
operaciones sobre las mismas.
Tipos de SGBD según el modelo utilizado.
A
continuación mostramos una lista de los SGBD más comúnmente usados,
distinguiendo entre los SGBD libres y los comerciales.
Ejemplos de SGBD libres:
|
Ejemplos de SGBD
comerciales:
|
•
PostgreSQL
• MySQL
|
• Oracle
• DB2, Informix (IBM)
• dBase (dBI)
• Paradox (Borland)
• SQL-Server (MS)
•
Access (MS)
•
FoxPro (MS)
|
Arquitectura Cliente/Servidor.
Una arquitectura es un conjunto de reglas, definiciones, términos y
modelos que se emplean para producir un producto.
La arquitectura Cliente/Servidor agrupa conjuntos de elementos que efectúan procesos distribuidos y computo cooperativo.
Beneficios:
·
Mejor aprovechamiento de la potencia de cómputo
(Reparte el trabajo).
·
Reduce el tráfico en la Red.
·
Opera bajo sistemas abiertos.
·
Permite el uso de interfaces gráficas variadas y
versátiles.
¿Qué es el Cliente?
Conjunto de Software y Hardware que invoca los servicios de uno o varios
servidores.
Características:
·
El Cliente oculta al Servidor y la Red.
·
Detecta e intercepta peticiones de otras
aplicaciones y puede redirigirlas.
·
Dedicado a la cesión del usuario ( Inicia...Termina
).
·
El método más común por el que se solicitan los
servicios es a través de RPC (Remote Procedure Calls).
Funciones Comunes del Cliente:
·
Mantener y procesar todo el dialogo con el usuario.
·
Manejo de pantallas.
·
Menús e interpretación de comandos.
·
Entrada de datos y validación.
·
Procesamiento de ayudas.
·
Recuperación de errores.
¿Qué es el Servidor?
Conjunto de Hardware y Software que responde a los requerimientos de un
cliente.
Tipos Comunes de Servidores:
·
Servidor de Archivos.
·
Servidor de Bases de Datos (SQL, CBASE, ORACLE,
INFORMIX).
·
Servidor de Comunicaciones
·
Servidor de Impresión.
·
Servidor de Terminal.
·
Servidor de Aplicaciones.
Funciones Comunes del Servidor:
·
Acceso, almacenamiento y organización de datos.
·
Actualización de datos almacenados.
·
Administración de recursos compartidos.
·
Ejecución de toda la lógica para procesar una
transacción.
·
Procesamiento común de elementos del servidor
(Datos, capacidad de CPU, almacenamiento en disco, capacidad de impresión,
manejo de memoria y comunicación).
Red de comunicación.
Es todo aquel conjunto de elementos basados en hardware y software que
permite establecer un enlace entre los clientes y los servidores, se clasifican
por su tamaño LAN, MAN y WAN.
Características de la comunicación:
A través de este medio, el cliente debe localizar e iniciar la
comunicación con el servidor.
No se utiliza la metodología de compartición de archivos, ya que todos
los accesos a la información se llevan a cabo a través de peticiones por medio
de comunicación.
Debido a que los programas de manejo y control de información ( Archivos
y bases de datos solo se envían y reciben los resultados de las operaciones
(Tráfico igual a Datos leídos o escritos).
Debido a la flexibilidad de establecer sesiones con múltiples servidores
y manejo de información en varias bases de datos (en sitios remotos es
requerido el uso de estilos transaccionales y cooperativos).
Bases de datos distribuidas.
Una base de datos distribuida es un conjunto de múltiples bases de datos
lógicamente relacionadas las cuales se encuentran distribuidas en diferentes
espacios lógicos e interconectados por una red de comunicaciones.
Dichas base de datos distribuida tienen la capacidad de realizar
procesamiento autónomo, esto permite realizar operaciones locales o
distribuidas. Un sistema de Bases de Datos Distribuida (SBDD) es un sistema en
el cual múltiples sitios de bases de datos están ligados por un sistema de
comunicaciones de tal forma que, un usuario en cualquier sitio puede acceder
los datos en cualquier parte de la red exactamente como si estos fueran
accedidos de forma local.
Un sistema distribuido de bases de datos se almacenan en varias
computadoras. Los principales factores que distinguen un SBDD de un sistema
centralizado son los siguientes:
- Hay múltiples computadores, llamados sitios o nodos.
- Estos sitios deben de estar comunicados por medio de algún tipo de
red de comunicaciones para transmitir datos y órdenes entre los sitios.
CUESTIONARIO
No hay comentarios:
Publicar un comentario
Nota: solo los miembros de este blog pueden publicar comentarios.