Sunteți pe pagina 1din 42

DuocUC

ABD5501 Administración de Base de Datos (OCA DBA) Sem 01 Marzo/2010

01: Introducción a las Bases de


datos

Manuel Pérez Pezoa


manuel.perez.pezoa@gmail.com
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Agenda
 Qué es una base de datos
 Tipos de Bases de Datos
 Ventajas de DBMS v/s Archivos
 Modelos de abstracción en un DBMS
 Consultas en un DBMS
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Introducción
 Hoy dia la mayor parte de la información útil tanto
en la web como en las organizaciones se encuentra
en bancos de datos o bases de datos.
 El éxito (fracaso) de las organizaciones depende de
su habilidad de adquirir datos en forma precisa y
oportuna sobre sus operaciones, de administrar
apropiadamente estos datos, y de la capacidad de
analizarlos y a partir de este análisis, guiar a la
organización.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Introducción
 La información ha crecido en forma exponencial en los
últimos 40 años y esta información se ha transformado
en un activo estratégico a la hora de tomar decisiones.
 Aun cuando no se tenga la capacidad de administrar la
vasta cantidad de información y de encontrar
rápidamente la información que es relevante para una
pregunta dada, a medida que la cantidad de información
aumenta, esta tiende a transformarse en una distracción
y en una desventaja en vez de un activo.
 Esta paradoja conduce la necesidad creciente de
sistemas poderosos y flexibles de administración de
bases de datos.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Definición: Base de Datos


• ES UNA COLECCIÓN DE DATOS, TIPICAMENTE
DESCRIBEN LAS ACTIVIDADES DE UNA
ORGANIZACIÓN. POR EJEMPLO UNA BASE DE DATOS
DE UN INSTITUTO COMO EL DUOC PODRIA
CONTENER INFORMACION DEL SIGUIENTE TIPO:

• ENTIDADES, TALES COMO ALUMNOS, PROFESORES,


CURSOS, SALAS DE CLASES.

• RELACIONES ENTRE ENTIDADES TALES COMO


INSCRIPCIONES DE ALUMNOS EN CURSOS,
PROFESORES QUE DICTAN CURSOS,Y EL USO DE SALAS
PARA CURSOS.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Por que utilizar Bases de Datos?


 Control centralizado
 Se reduce la redundancia
 Puede evitarse la inconsistencia
 Los datos pueden compartirse
 Pueden hacerse cumplir las normas
establecidas
 Pueden aplicarse restricciones de seguridad
 Puede conservarse la integridad (PK, FK, UK,
otras restricciones de integridad)
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Por que utilizar Bases de Datos?


 Pueden equilibrarse requerimientos
contradictorios (aplicaciones OLTP versus
aplicaciones de Gestión)
 Aseguran independencia de la aplicación
sobre como se organizan físicamente los
datos.
 Se independiza la aplicación de los
métodos de acceso a los datos
(Independencia de datos)
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Independencia de los datos


 Las aplicaciones 3GL (COBOL, C y otros)
no son independientes de los datos. La
lógica de la aplicación se mezcla con la
técnica de acceso (acceso secuencial,
acceso por llave A, etc). La aplicación debe
saber que el índice existe, y conocer la
secuencia del archivo, de modo que la
estructura interna de la aplicación se
construirá en base a este conocimiento
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Independencia de los datos


 Se dice que una aplicación es dependiente de los
datos porque es imposible cambiar la estructura de
almacenamiento (la manera como están físicamente
registrados los datos) o la estrategia de acceso (la
manera como se accesan) sin afectar la aplicación
 Las bases de datos modernas proveen
independencia de los datos, en el sentido del punto
anterior. La lógica de la aplicación es independiente
de los métodos de accesos a los datos.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Independencia de los datos


 El DBA debe tener la libertad de modificar la
estructura de almacenamiento o la estrategia
de acceso (o ambas) en respuesta al cambio
de necesidades, sin tener que alterar las
aplicaciones existentes.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Archivos versus DBMS


 PROBLEMA: Una empresa tiene 500GB de
datos de empleados, departamentos,
productos, ventas, etc. Estos datos son
accesados concurrentemente por varios
empleados. Debe ser restringido el acceso a
ciertas partes de los datos (ej: sueldos). Las
consultas deben ser respondidas rápidamente.
Los cambios que se hagan a los datos por
diferentes usuarios deben ser aplicados
consistentemente.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Archivos versus DBMS


 Podemos tratar de resolver el problema de
administración de datos por medio de una
colección de archivos. Desventajas de esta
alternativa?
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Archivos versus DBMS


 Desventajas de esta alternativa?
◦ Probablemente no tengamos 500GB de memoria principal
para mantener toda la base de datos. Por lo tanto debemos
guardar los datos en disco y cargar en memoria los datos
relevantes a medida que se requiera su procesamiento.
◦ Debemos tener un método de identificar cada item de
datos
◦ La seguridad de sistema operativo no es suficientemente
flexible para reforzar las políticas de seguridad en las cuales
diferentes usuarios tienen diferentes permisos para
acceder a diferentes subconjuntos de datos.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Archivos versus DBMS


 Desventajas de esta alternativa?
◦ Debemos escribir pequeños programas para responder a
cada consulta de usuario. Estos programas serán complejos
debido al tamaño de volumen de datos a accesar.
◦ Debemos proteger datos de cambios inconsistentes
realizados por diferentes usuarios en forma concurrente. Si
se programa teniendo en cuenta este factor se producirán
programas de alta complejidad.
◦ Debemos asegurar que los datos de recuperen en un
estado consistente si se cae el sistema en medio de un
proceso o transacción.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Qué es un DBMS
 Un DBMS (Database Managament System) es un
software diseñado para asistir en la manipulación y
utilización de grandes colecciones de datos.
 La necesidad de estos sistemas ha crecido
rápidamente.
 La alternativa al uso de DBMS se encuentra en los
lenguajes de tercera generación (COBOL, C, ETC)
en que se deben codificar aplicaciones especificas
para administrar los datos. Naturalmente esto hoy
día es muy inconveniente y peligroso y no se justifica
desde un punto de vista económico.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Modelos de Bases de Datos


 Flat model (spreadsheet)
 Hierarchical model
 Network model
 Relational model (el modelo dominante en la
actualidad y el que veremos en el curso)
 Object Oriented Model
 Ver mas detalle en
http://en.wikipedia.org/wiki/Database
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

El modelo Relacional
 Ver apuntes “Conceptos de Modelamiento de
Datos” subidos a TopClass para mayor
profundización.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Niveles de abstracción en un DBMS


Esquema Externo 1 Esquema Externo 2 Esquema Externo 3

Esquema Conceptual

Esquema Físico

DISCO
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Esquema Conceptual (Esquema Lógico)


 Describe los datos almacenados en términos de modelo de datos del DBMS. En
un DBMS relacional (RDBMS) el esquema conceptual describe todas las
relaciones (tablas) que están almacenadas en base de datos.
 En el caso del modelo de un INSTITUTO como el DUOC, se tienen las siguientes
relaciones (tablas) del ESQUEMA CONCEPTUAL:
◦ ESTUDIANTES(eid: integer, nombre: string, rut: string, fecha nacimiento: date)
◦ PROFESOR (pid: integer,pnombre: string, rut: string, fecha nacimiento: date, sueldo
integer)
◦ CURSOS(cid: integer, cnombre: string, creditos: integer)
◦ SALAS(sid: integer, direccion: string, capacidad: integer)
◦ INSCRIPCIONES(cid: integer, eid: integer, nota: real)
◦ ENSEÑA(pid: integer, cid: integer)
◦ ASIGNACION_SALA(cid: integer, sid: integer, dia_semana: integer,
bloque_horario_desde: integer, bloque_horario_hasta: integer)
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Esquema Físico
 Especifica detalles adicionales del almacenamiento
de datos, tales como la organización de archivo
usada, y las estructuras de datos auxiliares usadas
para realizar recuperaciones rápidas (índices, cluster,
etc, histogramas)
 El esquema físico resume como se mapean las
relaciones del ESQUEMA CONCEPTUAL a
unidades de almacenamiento secundario, tales como
discos o cintas.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Esquema Físico (cont.)


 Ejemplo de Esquema Físico
◦ Almacenar todas las relaciones como archivos de registros
no ordenados. (Un archivo en un DBMS es ya sea una
colección de registros o una colección de páginas o
bloques). En sistemas operativos se representan como una
cadena de caracteres. En el caso de ORACLE la unidad
básica de input/ouput es el bloque cuyo tamaño es variable
de acuerdo a las necesidades del sistema.
◦ Crear índices (ver nota) sobre la primera columna de las
relaciones ESTUDIANTES, PROFESORES, CURSOS, sobre
la columna sueldo de PROFESORES y la columna
capacidad de la relación SALAS.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Esquema Externo
 Los esquemas externos, permiten
personalizar el acceso a los datos a nivel de
usuario individual o grupos de usuarios.
Cualquier base de datos tiene un esquema
conceptual y un esquema físico, porque existe
solo un conjunto de relaciones, pero puede
tener muchos esquemas externos, cada uno
ajustado a un grupo particular de usuarios.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Esquema Externo
 Cada ESQUEMA EXTERNO consiste en una colección de
una o más vistas (*) y relaciones del esquema conceptual.
 El diseño de esquema externo es guiado por los
requerimientos del usuario final. Por ejemplo, podríamos
querer permitir a los estudiantes consultar los nombres de
los profesores que dictan cursos, como también la cantidad
de alumnos inscritos en el curso.
◦ INFO_CURSO(cid: integer, pnombre: string,
cantidad_inscritos:integer)

◦ Qué problema se generaría si hubiéramos incluido la


relación anterior como parte del esquema conceptual?
Explique.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Independencia de los Datos


 Como ya se ha explicado el uso de DBMS ofrece
independencia de los datos.Vale decir, en teoría, los
programas de la aplicación están aislados de los
cambios en la forma en que los datos son
estructurados y almacenados. Muchas veces los
programadores se las arreglan para romper esta
ventaja de los DBMS ☺
 La independencia se logra a través del uso de tres
(3) niveles de abstracción de datos; en particular el
esquema conceptual y el esquema externo provee
distintos beneficios en esta área.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Independencia de los Datos


 Las relaciones en el Esquema Externo (relaciones vistas), se
generan a pedido desde las relaciones del esquema conceptual. Por
ejemplo supongamos que la relacion PROFESORES es reemplazada
por las siguientes relaciones:
◦ PROFESORES-PUBLICO (pid: integer, pnombre: string, escuela:
integer)
◦ PROFESORES-PRIVADO (pid: integer, sueldo: integer)
 La información confidencial ha sido ubicada en una relación
separada de la información pública.
 La relación vista INFO_CURSO puede ser redefinida en base a las
relaciones PROFESORES-PUBLICO y PROFESORES-PRIVADO,
que en conjunto tienen toda la información de profesores, por lo
que los usuarios que consultaban INFO_CURSO seguirán
teniendo los mismos resultados que antes.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Consultas en un DBMS
 ¿Cual es el nombre del estudiante con id=12?
 ¿Cuál es el sueldo promedio de los profesores con
apellido PEREZ?
 ¿Cuál es el sueldo promedio de los profesores que
dictan el curso DABF750?
 ¿Cuántos estudiantes están inscritos en el curso
ABD5501?
 ¿Qué porcentaje de estudiantes sacaron una nota
superior a 5?
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Consultas en un DBMS
 Estas preguntas que involucran datos
almacenados en un DBMS se llaman consultas o
queries. Un DBMS posee un lenguaje
especializado para hacer consultas. En el caso de
las bases de datos relacionales este lenguaje es el
SQL (Structured Query Language). Una
característica muy poderosa del modelo
relacional es que soporta poderosos lenguajes de
consulta.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Consultas en un DBMS
 El cálculo relacional es un lenguaje formal de
consulta basado en lógica matemática, y las
consultas en este lenguaje tienen un significado
preciso e intuitivo.
 El álgebra relacional es otro lenguaje formal de
consulta basado en una colección de operadores
para manipular relaciones (tablas), que es
equivalente en poder al cálculo.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Las Propiedades ACID


 En bases de datos se denomina ACID a un conjunto de
características necesarias para que una serie de instrucciones
puedan ser consideradas como una transacción Así pues, si
un sistema de gestión de Base de Datos es ACID compliant
quiere decir que el mismo cuenta con las funcionalidades
necesarias para que sus transacciones tengan las
características ACID.
 En concreto ACID es un acrónimo de Atomicity,
Consistency, Isolation and Durability: (Atomicidad,
Consistencia, Aislamiento y Durabilidad en español).
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Las Propiedades ACID


 Atomicidad. Cada transacción del usuario debe
tratarse de forma atómica. O se ejecuta todo o
nada. En todo sistema la información es muy
importante y no es posible realizar una transacción
a medias. Una transacción se ejecuta exactamente
una vez y tiene carácter “atómico” (de subdivisión),
es, decir, el trabajo se realiza en su totalidad o no se
realiza en ningún caso.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Las Propiedades ACID


 Consistencia. Las transacciones han de cumplir las
restricciones definidas dentro la base de datos. Si no
las pueden cumplir, se evita su ejecución. De esta
forma se conserva la integridad y coherencia de los
datos.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Las Propiedades ACID


 Aislamiento. Una transacción es una unidad de
aislamiento, permitiendo que transacciones
concurrentes se comporten como si cada una fuera
una única transacción que se ejecuta en el sistema.
Las transacciones alcanzan el nivel más alto de
aislamiento cuando se pueden serializar. En este
nivel, los resultados obtenidos de un conjunto de
transacciones concurrentes son idénticos a los
obtenidos mediante la ejecución en serie de las
transacciones.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Las Propiedades ACID


 Durabilidad. Una vez se ha completado la
transacción, los resultados de la misma han de ser
permanentes y sobrevivir a posibles caídas del
sistema o la base de datos.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Las Propiedades ACID


 Una transacción es un conjunto de procesos que
se ejecutan uno después del otro, este conjunto de
procesos que deben ejecutarse una sola vez en
forma completa, si algún subproceso falla, lo
realizado anteriormente debe reversarse para que
los datos no se alteren, a este comportamiento se lo
denomina Todo o nada.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Componentes principales de una BD


a) 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.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Componentes principales de una BD


b) 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.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

Componentes principales de una BD


c) Usuarios
Existen tres clases de usuarios relacionados con una Base de
Datos:
• El programador de aplicaciones, quien crea programas de
aplicación que utilizan la base de datos.
• El usuario final, 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 (DBA DataBase
Administrator), quien se encarga del control general del
Sistema de Base de Datos.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

El administrador de la BD
El DBA es la persona encargada de definir y controlar
las bases de datos corporativas, además proporciona
asesoría a los usuarios y ejecutivos que la requieran.
Las principales funciones del administrador son:
• La estructura de la base de datos en el sentido de
determinar que información va a ser necesario
almacenar en la misma, después de haber analizado
los requerimientos de los usuarios.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

El administrador de la BD
• Los estándares por los que se va a regir la organización en
cuanto a documentación de la base de datos, metodologías
de diseño de la misma.
• La estrategia de transición del sistema existente al nuevo
sistema de información soportado en una base de datos. El
DBA deberá decidir sobre la posible puesta en marcha en
paralelo del nuevo sistema con el antiguo, las fases de
implantación del mismo, los controles necesarios. Todas estas
decisiones habrán de tomarse en función de los objetivos
marcados y de forma que se cause el mínimo trastorno a los
usuarios.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

El administrador de la BD
 • Los permisos de explotación y uso, es decir, establecer la
normativa necesaria para la utilización de la base de datos, el
modo de solicitar el acceso a la misma, su actualización, etc.
 • Los aspectos relativos a la seguridad, incluidos los
procedimientos de control y las auditorias.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

El administrador de la BD
• Mantenimiento rutinario. Algunos ejemplos de actividades
rutinarias que el administrador de la base de datos debe revisar
que se cumplan son:
• Copia de seguridad periódica de la base de datos, bien sobre cinta o
sobre servidores remotos, para prevenir la pérdida de datos en
caso de desastres o imprevistos.
• Asegurarse de que exista suficiente espacio libre en el disco duro
para las operaciones normales y aumentar el espacio en el disco
en caso de ser necesario.
• Supervisión del los trabajos que se ejecuten sobre la base de datos
y sobre todo asegurarse que el rendimiento no se degrade por
tareas muy costosas realizadas por algunos usuarios.
DuocUC
ABD5501 Administración de Base de Datos (OCA DBA) Marzo/2010

El administrador de la BD
Para que el DBA pueda cumplir con todas estas funciones deberá
interactuar contodo el personal de la organización como se explica en la
figura:

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