Post on 08-Jul-2015
FUNDAMENTOS DE BASE DE DATOS
Integrantes:
Mora Marquez Luis Omar 07210172
Aguirre Anguiano Javier 0721….
Martínez Martínez Armando Jesús 072101…
Unidad 1
Instituto Tecnológico de Tijuana I.T.T.
Tijuana B.C. 29 Junio 2010
1.1 Definición de base de datos.
La base de datos es un conjunto de información que está almacenada
en forma sistemática, de manera tal que los datos que la conforman
puedan ser utilizados en forma fragmentada cuando sea necesario.
Los datos almacenados pueden ser muy diversos: nombres, números
telefónicos, direcciones, años, etc. Todo depende de la finalidad para
la que sea armada la base de datos .
Tipos de base de datos.
Existen tanto bases estáticas como dinámicas.
Las estáticas son sólo de lectura y que generalmente se
utilizan para almacenar datos históricos que podrán ser
utilizados a lo largo del tiempo.
Las Dinámicas son las que contienen información que puede
ser modificada tanto para actualizar los datos que la integran
como para agregar nuevos. Otra forma en que se clasifican es
según su modelo de administración de los datos.
1.2 Objetivos de los sistemas de bases de datos.
Los objetivos principales de un sistema de base de datos es
disminuir los siguientes aspectos:
• Redundancia e inconsistencia de datos.
Puesto que los archivos que mantienen almacenada la información
son creados por diferentes tipos de programas de aplicación existe la
posibilidad de que si no se controla detalladamente el
almacenamiento, se pueda originar un duplicado de información, es
decir que la misma información sea más de una vez en un dispositivo
de almacenamiento. Esto aumenta los costos de almacenamiento y
acceso a los datos, además de que puede originar la inconsistencia
de los datos - es decir diversas copias de un mismo dato no
concuerdan entre si -, por ejemplo: que se actualiza la dirección de un
cliente en un archivo y que en otros archivos permanezca la anterior.
• Dificultad para tener acceso a los datos.
Un sistema de base de datos debe contemplar un entorno de datos
que le facilite al usuario el manejo de los mismos. Supóngase un
banco, y que uno de los gerentes necesita averiguar los nombres de
todos los clientes que viven dentro del código postal 78733 de la
ciudad. El gerente pide al departamento de procesamiento de datos
que genere la lista correspondiente. Puesto que esta situación no fue
prevista en el diseño del sistema, no existe ninguna aplicación de
consulta que permita este tipo de solicitud, esto ocasiona una
deficiencia del sistema.
• Aislamiento de los datos.
Puesto que los datos están repartidos en varios archivos, y estos no
pueden tener diferentes formatos, es difícil escribir nuevos programas
de aplicación para obtener los datos apropiados.
• Anomalías del acceso concurrente.
Para mejorar el funcionamiento global del sistema y obtener un
tiempo de respuesta más rápido, muchos sistemas permiten que
múltiples usuarios actualicen los datos simultáneamente. En un
entorno así la interacción de actualizaciones concurrentes puede dar
por resultado datos inconsistentes. Para prevenir esta posibilidad
debe mantenerse alguna forma de supervisión en el sistema.
• Problemas de seguridad.
La información de toda empresa es importante, aunque unos datos lo
son más que otros, por tal motivo se debe considerar el control de
acceso a los mismos, no todos los usuarios pueden visualizar alguna
información, por tal motivo para que un sistema de base de datos sea
confiable debe mantener un grado de seguridad que garantice la
autentificación y protección de los datos. En un banco por ejemplo, el
personal de nóminas sólo necesita ver la parte de la base de datos
que tiene información acerca de los distintos empleados del banco y
no a otro tipo de información.
• Problemas de integridad.
Los valores de datos almacenados en la base de datos deben
satisfacer cierto tipo de restricciones de consistencia. Estas
restricciones se hacen cumplir en el sistema añadiendo códigos
apropiados en los diversos programas de aplicación.
1.3 Uso de bases de datos y sus aplicaciones
Las personas son el principal capital de las entidades sin ánimo de
lucro por lo que resulta muy importante que la información sobre éstas
sea accesible y fácil de manejar. De esta manera, nos resultará
sencillo hacer un envío de información por correo a todas las
personas relacionadas con la entidad, dar listados de teléfonos de
los/as voluntarios/as a los responsables de cada sección o seleccionar
a los socios de una misma profesión para que colaboren en una
actividad relacionada con su ocupación.
• A la hora de diseñar una base de datos, conviene "perder" algo
de tiempo en pensar sobre estas cuatro cosas:
• ¿Qué información necesito de cada tipo de persona o entidad?
• ¿Cómo quiero extraer la información una vez introducida?
• ¿Qué campos serán libres y qué campos obligarán a elegir entre
varias opciones (campos cerrados)?
• ¿Cuáles serán las opciones de cada uno de los campos cerrados?
• Definición de base de datos de aplicación.
Al definir una aplicación de Notification Services, puede definir el
nombre de base de datos de aplicación, el esquema para objetos de
aplicación, y si está creando una base de datos nueva, las
especificaciones para la base de datos. La base de datos de
aplicación almacena datos de eventos, suscripciones y notificaciones,
y también metadatos de aplicación.
• Bases de datos de aplicación.
Una aplicación de Notification Services genera y distribuye
notificaciones desde suscripciones y eventos. Los datos de
suscripciones y eventos, y los datos de notificaciones resultantes, se
almacenan en una base de datos. Notification Services también
almacena metadatos de aplicación en esta base de datos.
1.4 Arquitectura de base de datos.
• Arquitectura ANSI
La arquitectura de sistemas de bases de datos de tres esquemas fue
aprobado por la ANSI-SPARC en 1975 como ayuda para conseguir la
separación entre los programas de aplicación y los datos, el manejo de
múltiples vistas por parte de los usuarios y el uso de un catálogo para
almacenar el esquema de la base de datos.
• Nivel interno: Tiene un esquema interno que describe la estructura física de
almacenamiento de base de datos. Emplea un modelo físico de datos y los
únicos datos que existen están realmente en este nivel.
• Nivel conceptual: tiene esquema conceptual. Describe la estructura de toda la
base de datos para una comunidad de usuarios. Oculta los detalles físicos de
almacenamiento y trabaja con elementos lógicos como entidades, atributos y
relaciones.
• Nivel externo o de vistas: tiene varios esquemas externos o vistas de
usuario. Cada esquema describe la visión que tiene de la base de datos a un
grupo de usuarios, ocultando el resto.
• El objetivo de la arquitectura de tres niveles es el de separar los programas de
aplicación de la base de datos física.
1.4.2 Independencia lógica y física de los datos.
Independencia lógica y física de los datos: se refiere a la
capacidad de modificar una definición de esquema en un nivel de la
arquitectura sin que esta modificación afecte al nivel inmediatamente
superior. Para ello un registro externo en un esquema externo no tiene
por qué ser igual a su registro correspondiente en el esquema
conceptual.
1.5 Estructura general de un sistema de base de
datos.
Aunque las bases de datos CDS/ISIS pueden parecerse a simple
vista como un archivo de información, en realidad consisten en varios
archivos lógicamente interrelacionados pero físicamente diferentes. La
administración de los archivos físicos es responsabilidad de CDS/ISIS
y el usuario normalmente no necesita conocer su estructura en detalle
para operar una base de datos. No obstante, algunos conocimientos
básicos sobre los objetivos y funciones de los archivos principales
asociados a una base de datos pueden ayudar a un mejor
entendimiento del sistema.
1.5.1 El gestor de base de datos.
• Un Sistema Gestor de base de datos (SGBD) es un conjunto de
programas que permiten crear y mantener una Base de datos,
asegurando su integridad, confidencialidad y seguridad. Por tanto
debe permitir:
• Definir una base de datos: especificar tipos, estructuras y restricciones
de datos..
• Construir la base de datos: guardar los datos en algún medio
controlado por el mismo SGBD
• Manipular la base de datos: realizar consultas, actualizarla, generar
informes.
• Así se trata de un software de propósito general. Ejemplo de SGBD
son Oracle y SQL Server de Microsoft .
Algunas de las características deseables en un Sistema Gestor de
base de datos SGBD son:
• Control de la redundancia: La redundancia de datos tiene varios
efectos negativos (duplicar el trabajo al actualizar, desperdicia espacio
en disco, puede provocar inconsistencia de datos) aunque a veces es
deseable por cuestiones de rendimiento.
• Restricción de los accesos no autorizados: cada usuario ha de tener
unos permisos de acceso y autorización.
• Cumplimiento de las restricciones de integridad: el SGBD ha de
ofrecer recursos para definir y garantizar el cumplimiento de las
restricciones de integridad.
1.5.2 Los usuarios de la base de datos.
Usuarios de bases de datos
• El usuario de una base de datos es una entidad de seguridad de la
base de datos. Cada usuario de una base de datos es miembro de la
función public.
Usuarios sofisticados
• Los usuarios sofisticados interactúan con el sistema sin escribir
programas. En cambio escriben sus preguntas en un lenguaje de
consultas de base de datos.
Usuarios especializados
• Algunos usuarios sofisticados escriben aplicaciones de base de datos
especializadas que no encajan en el marco tradicional de
procesamiento.
1.5.3 El administrador de la base de datos (DBA).
Persona que toma las decisiones estratégicas y de política con
respecto a la información de la empresa, y el DBA es quién
proporciona el apoyo técnico necesario para poner en práctica esas
decisiones. Por tanto el DBA esta encargado del control general del
sistema en el nivel técnico.
1.5.4 El sistema de comunicación entre los distintos componentes.
API’s:
Es una serie de servicios o funciones que el Sistema Operativo ofrece al
programador, como por ejemplo, imprimir un caracter en pantalla, leer el
teclado, escribir en un fichero de disco, etc. Visto desde la perspectiva del
código máquina, el API aparece como una serie de llamadas es el API aparece
como un conjunto de procedimientos y funciones.
DOS: esta API ofrece los servicios genéricos de todo Sistema Operativo
multitarea, como abrir y cerrar ficheros y colas, leer y escribir en ellos, crear
nuevos THREADS, semáforos, etc.
KBD, VIO y MOU: estas tres APIs dan acceso a los denominados subsistemas,
que son las partes encargadas de virtualizar el acceso a los dispositivos. El API
KBD se encarga de la lectura del teclado, el API MOU del ratón, y el API VIO
del acceso a la pantalla en modo texto. Todo esto se puede hacer también a
través del API DOS, pero el usar los subsistemas da mayor comodidad al
usuario, y mayor rapidez a los programas, a costa de una perdida de
portabilidad del programa. +
WIN: Este API es el que da acceso al Presentation Manager, el gestor de ventanas
de OS/2. Permite crear programas de tipo gráfico.
Midleware:
• Se conoce como midleware a los componentes software que facilitan
el desarrollo de aplicaciones cliente/servidor para que puedan ser
utilizados en plataformas de distintos fabricantes. El sistema básico de
R/3 también conocido como kernel, es el middleware de SAP R/3.
1.6 Arquitectura cliente/servidor .
La arquitectura cliente/servidor es un modelo para el desarrollo de
sistemas de información en el que las transacciones se dividen en
procesos independientes que cooperan entre sí para intercambiar
información, servicios o recursos. Se denomina cliente al proceso que
inicia el diálogo o solicita los recursos y servidor al proceso que
responde a las solicitudes.
Los clientes realizan generalmente funciones como:
•Manejo de la interfaz de usuario.
•Captura y validación de los datos de entrada.
•Generación de consultas e informes sobre las bases de datos.
•Por su parte los servidores realizan, entre otras, las siguientes funciones:
•Gestión de periféricos compartidos.
•Control de accesos concurrentes a bases de datos compartidas.
•Enlaces de comunicaciones con otras redes de área local o extensa.
• 1.6.1 Componentes de aplicaciones.
Una infraestructura Cliente/Servidor consta de tres componentes esenciales,
todos ellos de igual importancia y estrechamente ligados:
• Plataforma Operativa.- Esta deberá soportar todos los modelos de
distribución Cliente/Servidor, todos los servicios de comunicación, y deberá
utilizar, preferentemente, componentes estándar de la industria para los
servicios de distribución. Los desarrollos propios deben coexistir con las
aplicaciones estándar y su integración deberá ser imperceptible para el
usuario. Igualmente, podrán acomodarse programas escritos utilizando
diferentes tecnologías y herramientas.
•
Entorno de Desarrollo de Aplicaciones. - Debe elegirse después de la
plataforma operativa. Un entorno de aplicación incremental, debe posibilitar la
coexistencia de procesos cliente y servidor desarrollados con distintos
lenguajes de programación y/o herramientas, así como utilizar distintas
tecnologías (por ejemplo, lenguaje procedural, lenguaje orientado a objetos,
multimedia), y que han sido puestas en explotación en distintos momentos del
tiempo.
Gestión de Sistemas. - Estas funciones aumentan considerablemente el costo
de una solución, pero no se pueden evitar. Siempre deben adaptarse a las
necesidades de la organización, y al decidir la plataforma operativa y el entorno
de desarrollo, es decir, en las primeras fases de la definición de la solución.
1.6.2 Funciones de componentes.
Es quien inicia el diálogo, el proceso servidor que pasivamente espera a que
lleguen peticiones de servicio y el middleware que corresponde a la interfaz
que provee la conectividad entre el cliente y el servidor para poder intercambiar
mensajes.
• Nivel de Presentación: Agrupa a todos los elementos asociados al
componente Cliente.
• Nivel de Aplicación: Agrupa a todos los elementos asociados al componente
Servidor.
• Nivel de comunicación: Agrupa a todos los elementos que hacen posible la
comunicación entre los componentes Cliente y servidor.
• Nivel de base de datos: Agrupa a todas las actividades asociadas al acceso
de los datos.
Cliente
El cliente es el proceso que permite al usuario formular los
requerimientos y pasarlos al servidor, se le conoce con el término
front-end. Este normalmente maneja todas las funciones relacionadas
con la manipulación y despliegue de datos, por lo que están
desarrollados sobre plataformas que permiten construir interfaces
gráficas de usuario (GUI), además de acceder a los servicios
distribuidos en cualquier parte de la red.
Las funciones que lleva a cabo el proceso cliente son los
siguientes puntos:
• Administrar la interfaz de usuario.
• Interactuar con el usuario.
• Procesar la lógica de la aplicación y hacer validaciones locales.
• Generar requerimientos de bases de datos.
• Recibir resultados del servidor.
• Formatear resultados.
Servidor
Es el proceso encargado de atender a múltiples clientes que hacen
peticiones de algún recurso administrado por él. Al proceso servidor
se lo conoce con el término back-end. El servidor normalmente
maneja todas las funciones relacionadas con la mayoría de las reglas
del negocio y los recursos de datos.
Las funciones que lleva a cabo el proceso servidor son los
siguientes puntos:
• Aceptar los requerimientos de bases de datos que hacen los clientes.
• Procesar requerimientos de bases de datos.
• Formatear datos para trasmitirlos a los clientes.
• Procesar la lógica de la aplicación y realizar validaciones a nivel de
bases de datos.
1.7 Componentes de un gestor de base de datos.
Datos. Los datos son la Base de Datos propiamente dicha.
Hardware. El hardware se refiere a los dispositivos de almacenamiento en donde reside la
base de datos, así como a los dispositivos periféricos (unidad de control, canales de
comunicación, etc.) necesarios para su uso.
Software. Está constituido por un conjunto de programas que se conoce como Sistema
Manejador de Base de Datos (DMBS: Data Base Management System). Este sistema
maneja todas las solicitudes formuladas por los usuarios a la base de datos.
Usuarios. Existen tres clases de usuarios relacionados con una Base de Datos:
El programador de aplicaciones. Es quien crea programas de aplicación que utilizan la
base de datos.
El usuario final. Es quien accesa la Base de Datos por medio de un lenguaje de consulta o
de programas de aplicación.
El administrador de la Base de Datos. Es quien se encarga del control general del
Sistema de Base de Datos.
1.7.1 Estructura general.
Un sistema de base de datos se encuentra dividido en módulos cada
uno de los cuales controla una parte de la responsabilidad total de
sistema. En la mayoría de los casos, el sistema operativo proporciona
únicamente los servicios más básicos y el sistema de la base de datos
debe partir de esa base y controlar además el manejo correcto de los
datos. Así el diseño de un sistema de base de datos debe incluir la
interfaz entre el sistema de base de datos y el sistema operativo.
1.7.2 Funciones.
• Las funciones de un sistema de base de datos, son:
• Gestor de archivos.
• Gestiona la asignación de espacio en la memoria del disco y
• de las estructuras de datos usadas para representar información.
• Manejador de base de datos.
• Sirve de interfaz entre los datos y los programas de aplicación.
• Procesador de consultas.
• Compilador de DDL.
• Convierte las proposiciones DDL en un conjunto de tablas
• que contienen metadatos, estas se almacenan en el diccionario de datos.
• Archivo de datos.
• En él se encuentran almacenados físicamente los datos de una
• organización.
• Diccionario de datos.
• Contiene la información referente a la estructura de la base
• de datos.
• Índices.
• Permiten un rápido acceso a registros que contienen valores específicos.
• Bibliografías.
www.yudy.8m.com/Sistemasmanejador.htm
berzal.freeservers.com/freeware/dbms/spanish.html
http://www.lafacu.com/apuntes/informatica/base_datos/default.
htm#Introducción
http://www.dbinternet.com.ar/metodo.htm
http://www.uas.mx/cursoswebct/Progsist/material.htm
http://www.programacionfacil.com/basic/cuatro4.htm
http://www.yudy.8m.com/Sistemasmanejador.htm
http://elizabethpeguero.8m.com/Eliza.htm