Explora Libros electrónicos
Categorías
Explora Audiolibros
Categorías
Explora Revistas
Categorías
Explora Documentos
Categorías
1
UNIVERSIDAD PRIVADA TELESUP
Prefacio
datos.
2
UNIVERSIDAD PRIVADA TELESUP
INTEGRIDAD Y
ADMINISTRADOR BASE DE DATOS SEGURIDAD DE ARQUITECTURA,
DE BASE DE RELACIONADOS LA ANÁLISIS DE BD Y
INFORMACIÓN SQL
DATOS
Consulta estructurado
Funciones del
SQL Análisis del diseño
administrador de Privilegios
base de datos en SQL de la base de datos
3
UNIVERSIDAD PRIVADA TELESUP
Índice del Contenido
I. PREFACIO 02
II. DESARROLLO DE LOS CONTENIDOS 03 - 143
UNIDAD DE APRENDIZAJE 1: ADMINISTRADOR DE BASE DE DATOS 05-34
1. Introducción 06
a. Presentación y contextualización 06
b. Competencia 06
c. Capacidades 06
d. Actitudes 06
e. Ideas básicas y contenido 06
2. Desarrollo de los temas 07-33
a. Tema 01: Sistemas de base de datos 07
b. Tema 02: Sistemas de información 14
c. Tema 03: Funciones del administrador de base de datos 22
d. Tema 04: Sistema gestor de base de datos 27
3. Lecturas recomendadas 34
4. Actividades y ejercicios 34
5. Autoevaluación 35
6. Resumen 37
UNIDAD DE APRENDIZAJE 2: BASE DE DATOS RELACIONADOS 38-76
1. Introducción 39
a. Presentación y contextualización 39
b. Competencia 39
c. Capacidades 39
d. Actitudes 39
e. Ideas básicas y contenido 39
2. Desarrollo de los temas 40-71
a. Tema 01: Modelo de datos 40
b. Tema 02: Manipulación de Base de Datos 47
c. Tema 03: Lenguaje de consulta estructurado SQL 54
d. Tema 04: Diseño de base de datos relacionales 64
3. Lecturas recomendadas 72
4. Actividades 72
5. Autoevaluación 74
6. Resumen 76
UNIDAD DE APRENDIZAJE 3: INTEGRIDAD Y SEGURIDAD DE LA INFORMACIÓN 77-105
1. Introducción 78
a. Presentación y contextualización 78
b. Competencia 78
c. Capacidades 78
d. Actitudes 78
e. Ideas básicas y contenido 78
2. Desarrollo de los temas 79-101
a. Tema 01: Estructura de un sistema de base de datos 79
b. Tema 02: Restricciones de los dominios 84
c. Tema 03: Privilegios en SQL 90
d. Tema 04: Cifrado y autenticación 96
3. Lecturas recomendadas 102
4. Actividades 102
5. Autoevaluación 103
6. Resumen 105
UNIDAD DE APRENDIZAJE 4: ARQUITECTURA Y ANÁLISIS DE BASE DE DATOS 106-143
1. Introducción 107
a. Presentación y contextualización 107
b. Competencia 107
c. Capacidades 107
d. Actitudes 107
e. Ideas básicas y contenido 107
2. Desarrollo de los temas 108-135
a. Tema 01: Gestión de transacciones 108
b. Tema 02: Arquitectura de los sistemas de base de datos 116
c. Tema 03: Análisis del diseño de la base de datos 116
d. Tema 04: Oracle,DB2 de IBM, SQL server, ASE de SYbase 131
3. Lecturas recomendadas 136
4. Actividades 136
5. Autoevaluación 137
6. Resumen 139
III. GLOSARIO 140
IV. FUENTES DE INFORMACIÓN 142
V. SOLUCIONARIO 143
4
UNIVERSIDAD PRIVADA TELESUP
5
UNIVERSIDAD PRIVADA TELESUP
Introducción
a) Presentación y contextualización
Los temas que se tratan en la presente unidad temática, tiene por finalidad que el
estudiante comprenda qué es una base de datos, los sistemas de información, las
funciones de un administrador de base de datos y los conceptos sobre los
sistemas gestores de bases de datos.
b) Competencia
Analiza los sistemas de base de datos y reconoce las funciones de un
administrador de base de datos.
c) Capacidades
d) Actitudes
6
UNIVERSIDAD PRIVADA TELESUP
Sistema
TEMA 1
de Base
de
Datos
Competencia:
Analizar la estructura de una base de datos.
7
UNIVERSIDAD PRIVADA TELESUP
Desarrollo de los Temas
Tema 01: Sistema de Base de Datos
BASE DE DATOS
8
UNIVERSIDAD PRIVADA TELESUP
Un Sistema de Bases de Datos (SBD) es una serie de recursos para manejar grandes
volúmenes de información.
Los elementos de un sistema de base de datos son los mismos que los de un sistema de
Información.
Hardware.
Máquinas en las que se almacenan las bases de datos. Incorporan
unidades de almacenamiento masivo para este fin.
Software.
Es el sistema gestor de bases de datos. La aplicación que permite el
manejo de la base de datos.
Datos.
Incluyen los datos que se necesitan almacenar y los metadatos que son
datos que sirven para describir lo que se almacena en la base de datos.
Usuarios.
Personas que manipulan los datos del sistema.
Usuarios Finales.
Aquellos que utilizan datos de la base
de datos para su trabajo cotidiano que
no tiene por qué tener que ver con la
informática. Normalmente no utilizan la
base de datos directamente, sino que
utilizan aplicaciones creadas para ellos
a fin de facilitar la manipulación de los
datos.
Estos usuarios sólo acceden a ciertos datos.
9
UNIVERSIDAD PRIVADA TELESUP
Datos.
Incluyen los datos que se necesitan almacenar y los metadatos que son
datos que sirven para describir lo que se almacena en la base de datos.
Administradores.
También llamados DBA (Data Base Administrador), se encargan de
gestionar las bases de datos. Hay que tener en cuenta que las necesidades
de los usuarios son muy diferentes en función del tipo de usuario que sean:
a los Finales les interesa la facilidad de uso, a los Desarrolladores la
potencia y flexibilidad de los lenguajes incorporados del sistema de Bases
de datos, a los Administradores herramientas de gestión avanzada para la
base de datos.
10
UNIVERSIDAD PRIVADA TELESUP
11
UNIVERSIDAD PRIVADA TELESUP
En el caso de los Sistemas de Base de datos, se añade una tercera vista, que es la
vista conceptual. Esa vista se sitúa entre la física y la externa. Se habla pues en
Bases de datos de la utilización de tres esquemas para representar los datos.
ESQUEMA FÍSICO.
ESQUEMA CONCEPTUAL.
ESQUEMA EXTERNO.
ESQUEMA FÍSICO
Representa la forma en la que están almacenados los datos. Esta visión solo la
requiere el administrador. Este la necesita para poder gestionar más
eficientemente la base de datos. En este esquema es donde aparecen las
unidades de disco, archivos y carpetas del Sistema.
ESQUEMA CONCEPTUAL
12
UNIVERSIDAD PRIVADA TELESUP
Esquema EXTERNO.
Se trata de la visión de los datos que poseen los usuarios finales. Esa visión es
la que obtienen a través de las aplicaciones.
Las aplicaciones creadas por los desarrolladores abstraen la realidad conceptual
de modo que el usuario no conoce las relaciones entre los datos, como tampoco
conoce todos los datos que realmente se almacenan. Realmente cada aplicación
produce un esquema externo diferente (aunque algunos pueden coincidir) o
vistas de usuario. El conjunto de todas las vistas de usuario es lo que se
denomina esquema externo global.
13
UNIVERSIDAD PRIVADA TELESUP
Sistemas TEMA 2
de
Información
Competencia:
14
UNIVERSIDAD PRIVADA TELESUP
Cada programa almacena y utiliza sus propios datos de forma un tanto caótica. La
ventaja que tenía este sistema, es que los procesos eran independientes por lo que
la modificación de uno no afectaba al resto.
15
UNIVERSIDAD PRIVADA TELESUP
En este tipo de sistemas los datos se centralizan en una base de datos común a
todas las aplicaciones. En esos sistemas los datos se almacenan en una única
estructura lógica que es utilizable por las aplicaciones.
16
UNIVERSIDAD PRIVADA TELESUP
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.
17
UNIVERSIDAD PRIVADA TELESUP
18
UNIVERSIDAD PRIVADA TELESUP
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.
19
UNIVERSIDAD PRIVADA TELESUP
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.
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.
20
UNIVERSIDAD PRIVADA TELESUP
21
UNIVERSIDAD PRIVADA TELESUP
Funciones del
TEMA 3
Administrador
de Base
de Datos
Competencia:
Reconocer y analizar las funciones del
administrador de base de datos.
22
UNIVERSIDAD PRIVADA TELESUP
Hemos visto en el tema anterior las funciones del administrador de base de datos,
y vamos a detallarlas un poco más.
23
UNIVERSIDAD PRIVADA TELESUP
Pruebas de productos.
Gestión de
Usuarios
Creación baja
Gestión de privilegios
Recursos
Asignación de tablespaces, espacio en HD
Actualización de parámetros del sistema
Backup y recuperación
24
UNIVERSIDAD PRIVADA TELESUP
Cargas de datos
Crear y modificar programas de carga
Ejecutar programas de carga
Monitoreo
Accesos de usuarios
Rendimiento de los procesos
Crecimiento de archivos
Creación de estadísticas. Crear y modificar
programas de estadísticas.
Optimización, mejoras de rendimiento.
MANTENIMIENTO RUTINARIO
25
UNIVERSIDAD PRIVADA TELESUP
Administrar objetos de bases de datos, tales como tablas, índices, vistas, etc.
26
UNIVERSIDAD PRIVADA TELESUP
Sistema
TEMA 4
Gestor de
Base de
Datos
Competencia:
27
UNIVERSIDAD PRIVADA TELESUP
28
UNIVERSIDAD PRIVADA TELESUP
29
UNIVERSIDAD PRIVADA TELESUP
30
UNIVERSIDAD PRIVADA TELESUP
♦ Estructura interna
♦ Estructura conceptual
♦ Estructura externa
Estructura multicapa
Un SGBD está en realidad formado por varias capas que actúan como interfaces
entre el usuario y los datos. El propio ANSI/X3/SPARC
introdujo una mejora de su modelo en 1988 a través de un
grupo de trabajo llamado UFTG (User Facilities Task
Group, grupo de trabajo para las facilidades de usuario).
Este modelo toma como objeto principal, al usuario habitual de la base de datos y
orienta el funcionamiento de la base de datos de modo que este usuario ignora el
funcionamiento externo.
Desde esta óptica para llegar a los datos hay que pasar una serie de capas que
poco a poco van entrando más en la realidad física de la base de datos.
31
UNIVERSIDAD PRIVADA TELESUP
Monousuario
Multiusuario
También puede clasificarse según el número de sitios en los que está distribuida
la base de datos:
32
UNIVERSIDAD PRIVADA TELESUP
Los sistemas gestores de bases de datos relacionales SGBDR tales como Oracle,
MySQL, SQL Server, Postgre SQL, Informix, entre otros, permiten ejecutar las
tareas que se mencionan a continuación, de una forma entendible y
razonablemente sencilla:
33
UNIVERSIDAD PRIVADA TELESUP
Lecturas Recomendadas
BASE DE DATOS
http://es.wikipedia.org/wiki/Sistema_de_gesti%C3%B3n_de_bases_de_datos
SISTEMA DE INFORMACIÓN
http://www.slideshare.net/Mr.joanxd/tipos-de-sistemas-de-informacion-1534197
Actividades y Ejercicios
34
UNIVERSIDAD PRIVADA TELESUP
Autoevaluación
1. De las siguientes alternativas, cuál forma parte de una base de datos
a) Vendedor
b) Pagina Web
c) Cliente
d) Internet
e) Enlazadores
a) Hardware
b) El usuario
c) El dinero
d) El software
e) Los datos
35
UNIVERSIDAD PRIVADA TELESUP
a) Completo
b) Procesal
c) Relacional
d) Almacenador
e) Relativo
36
UNIVERSIDAD PRIVADA TELESUP
Resumen
UNIDAD DE APRENDIZAJE I:
Las funciones del administrador de una base de datos son las siguientes:
Definición del esquema de Bases de Datos, Definición de la estructura y del
método de acceso, Modificación del esquema y de la organización física,
Mantenimiento de la Base Datos, Concesión De Autorización Para El Acceso A
Los Datos, Mantenimiento Rutinario.
Un sistema gestor de base de datos es una agrupación de programas que sirven para
definir construir y manipular una base de datos, los objetivos de un SGBD son:
Abstracción de la información, Independencia de los datos, Consistencia
(eliminar redundancia), seguridad, manejo de transacciones, minimizar el tiempo
que toma proporcionar la información solicitada y en guardar los cambios
realizados.
También contiene estructuras estas se dividen en 3:
Estructura Interna, estructura conceptual, estructura externa.
37
UNIVERSIDAD PRIVADA TELESUP
38
UNIVERSIDAD PRIVADA TELESUP
Introducción
a) Presentación y contextualización
Los temas que se tratan en la presente unidad temática, tiene por finalidad que el
estudiante comprenda los conceptos relacionados con definición, manipulación y
diseño de base de datos.
b) Competencia
Analiza los modelos de datos y reconoce el buen diseño de base de datos
usando lenguaje SQL.
c) Capacidades
d) Actitudes
39
UNIVERSIDAD PRIVADA TELESUP
Modelo TEMA 1
de
Datos
Competencia:
40
UNIVERSIDAD PRIVADA TELESUP
Desarrollo de los Temas
Tema 01: Modelo de Datos
Entidades y Relaciones
41
UNIVERSIDAD PRIVADA TELESUP
Entidad.- Objeto del mundo real sobre el que queremos almacenar información
(Ej: una persona). Las entidades están compuestas de atributos que son los datos
que definen el objeto (para la entidad persona serían DNI, nombre,
apellidos, dirección).
De entre los atributos habrá uno o un conjunto de ellos que no se
repite; a este atributo o conjunto de atributos se le llama clave de
la entidad, (para la entidad persona una clave seria DNI). En
toda entidad siempre hay al menos una clave que en el peor
de los casos estará formada por todos los atributos de la
tabla. Ya que puede haber varias claves y necesitamos
elegir una, lo haremos atendiendo a estas normas:
Que sea mínima, ya que será muy utilizada por el gestor de base de datos.
Relación.- Asociación entre entidades, sin existencia propia en el mundo real que
estamos modelando, pero necesaria para reflejar las interacciones existentes
entre entidades. Las relaciones pueden ser de tres tipos:
42
UNIVERSIDAD PRIVADA TELESUP
Modelo Relacional
43
UNIVERSIDAD PRIVADA TELESUP
El modelo relacional se
encuentra a un
nivel de
abstracción inferior
al modelo de datos
E-R. Los diseños de
bases de datos a
menudo se realizan en el
modelo E-R, y después se
44
UNIVERSIDAD PRIVADA TELESUP
45
UNIVERSIDAD PRIVADA TELESUP
Las bases de datos relacionales están constituidas por una o más tablas que
contienen la información ordenada de una forma organizada. Cumplen las
siguientes leyes básicas:
Manipulación
46
UNIVERSIDAD PRIVADA TELESUP
TEMA 2
de
Base de
Datos
Competencia:
Analizar cómo se definen los procesos y se
manipulan los datos.
47
UNIVERSIDAD PRIVADA TELESUP
Manipulación de datos
48
UNIVERSIDAD PRIVADA TELESUP
El lenguaje SQL
El SQL es un lenguaje de acceso a bases de datos que explota la flexibilidad y
potencia de los sistemas relacionales permitiendo gran variedad de operaciones
sobre los mismos. Es un lenguaje declarativo de alto nivel o de no procedimiento,
que gracias a su fuerte base teórica y su orientación al manejo de conjuntos de
registros, y no a registros individuales, permite una alta productividad en
codificación. De esta forma una sola sentencia puede equivaler a uno o más
programas que utilizasen un lenguaje de bajo nivel orientado a registro.
Optimización, como suele ser común en los lenguajes de acceso a bases de datos
de alto nivel, el SQL es un lenguaje declarativo. O sea, que especifica qué es lo
que se quiere y no cómo conseguirlo, por lo que una sentencia no establece
explícitamente una orden de ejecución. El orden de ejecución interno de una
sentencia puede afectar gravemente a la eficiencia del SGBD, por lo que se hace
necesario que este lleve a cabo una optimización antes de la ejecución de la
misma.
49
UNIVERSIDAD PRIVADA TELESUP
La Sentencia “Insert”
Una sentencia INSERT de SQL agrega uno o más registros a una (y solo una)
tabla en una base de datos relacional.
Forma básica
Ejemplo:
INSERT INTO agenda. Telefónica (nombre, número) VALUES (`Roberto
Fernández`, `4886850`)
Cuando se especifican todos los valores de una tabla, se puede utilizar la
sentencia acortada.
INSERT INTO tabla VALUES (valor1, [valor2,…])
Ejemplo (asumiendo que `nombre` y `número` son las únicas columnas de la tabla
` agenda_telefonica`):
50
UNIVERSIDAD PRIVADA TELESUP
Truncate.
Un lenguaje de definición de datos (Data Definition Language,
DDL por sus siglas en inglés) es un lenguaje proporcionado
por el sistema de gestión de base de datos que permite a
los usuarios de la misma llevar a cabo las tareas de
definición de las estructuras que almacenarán los datos, así
como de los procedimientos o funciones que permitan
consultarlos.
51
UNIVERSIDAD PRIVADA TELESUP
52
UNIVERSIDAD PRIVADA TELESUP
Los sistemas de gestión de base de datos con soporte SQL más utilizados son,
por orden alfabético:
DB2 MySQL
Firebird Oracle
Informix Postgre SQL
Interbase SQL Server
Sysbase ASE
53
UNIVERSIDAD PRIVADA TELESUP
Lenguaje de
TEMA 3
Consulta
Estructurado
(SQL)
Competencia:
Reconocer comandos del lenguaje de
consulta estructurado, SQL.
54
UNIVERSIDAD PRIVADA TELESUP
55
UNIVERSIDAD PRIVADA TELESUP
Comandos
56
UNIVERSIDAD PRIVADA TELESUP
Cláusulas
COMANDO DESCRIPCIÓN
FROM Utilizada para especificar la tabla de la cual se van a
seleccionar los registros.
WHERE Utilizada para especificar las condiciones que deben reunir los
registros que se van a seleccionar.
Operadores Lógicos
OPERADOR USO
AND Es el “y” lógico. Evalúa dos condiciones y devuelve un
valor de verdad solo si ambas son ciertas.
57
UNIVERSIDAD PRIVADA TELESUP
Funciones de Agregado
COMANDO DESCRIPCIÓN
AVG Utilizada para calcular el promedio de los valores de un campo
determinado.
COUNT Utilizada para devolver el número de registros de la selección.
SUM Utilizada para devolver la suma de todos los valores de un
campo determinado.
MAX Utilizada para devolver el valor más alto de un campo
especificado.
MIN Utilizada para devolver el valor más bajo de un campo
especificado.
Definición de vistas
Una vista de base de datos es un resultado de una consulta SQL de una o varias
tablas; también se le puede considerar una tabla virtual. Las
vistas tienen la misma estructura que una tabla: filas y
columnas. La única diferencia es que solo se almacena de
ellas la definición, no los datos. Los datos que se recuperan
mediante una consulta a una vista se presentarán igual que
los de una tabla. De hecho, si no se sabe qué se está
trabajando con una vista, nada hace suponer que es así. Al
igual que sucede con una tabla, se pueden insertar, actualizar, borrar y
seleccionar datos en una vista. Aunque siempre es posible seleccionar datos de
una vista, en algunas condiciones existen restricciones para realizar el resto de las
operaciones sobre vistas. Una vista se especifica a través de una expresión de
consulta (una sentencia SELECT) que la calcula y que puede realizarse sobre una
o más tablas. Sobre un conjunto de tablas relacionales se puede trabajar con un
número cualquiera de vistas. La mayoría de los SGBD soportan la creación y
manipulación de vistas.
58
UNIVERSIDAD PRIVADA TELESUP
Transacciones
Control de transacciones.
Debido a que en las operaciones
normales con la base de datos puede
corromper la información, todas las bases de datos tienen un sistema de control
de transacción.
59
UNIVERSIDAD PRIVADA TELESUP
60
UNIVERSIDAD PRIVADA TELESUP
61
UNIVERSIDAD PRIVADA TELESUP
Consultas
Ejemplo: Obtener todos los nombres de los clientes que tienen préstamo en la
sucursal principal.
||
|| Principal || P.ALL. _X ||
62
UNIVERSIDAD PRIVADA TELESUP
|| _X ||
|| P._Y || ====
63
UNIVERSIDAD PRIVADA TELESUP
Diseño
Base de TEMA 4
Datos de
Relacionales
Competencia:
64
UNIVERSIDAD PRIVADA TELESUP
65
UNIVERSIDAD PRIVADA TELESUP
Para establecer una relación entre dos tablas es necesario incluir, en forma de
columna, en una de ellas la clave primaria de la otra. A esta columna se le
llama clave secundaria.
Estos dos conceptos --clave primaria y secundaria-- son los más importantes en el
diseño de bases de datos. Es importante dedicarles tiempo, para entender bien en
qué consisten y cómo funcionan.
66
UNIVERSIDAD PRIVADA TELESUP
Es preciso admitir la presencia de valores nulos en una relación de este tipo para
poder mantener en la base, coches sin propietarios o personas que no tienen
coches. Si muchos de los atributos no se aplican a todas las tablas de la relación,
acabaremos con un gran número de nulos en esas tablas. Esto puede originar un
considerable desperdicio de espacio de almacenamiento Ej.: Si solo el 10% de los
empleados tiene oficinas. Individuales, no se justificará incluir un atributo
NUM_OFIC en la relación EMPLEADO; más bien, podríamos crear una relación
OFICINAS_EMPL (DNIEMP, NUM_OFIC) contenga exclusivamente tablas para
los empleados con oficinas individuales).
67
UNIVERSIDAD PRIVADA TELESUP
68
UNIVERSIDAD PRIVADA TELESUP
69
UNIVERSIDAD PRIVADA TELESUP
FIS-1A Vázquez, N.
MUS-1 Hurtado, R
QUIM-2B Pardo, L.
QUIM-1ª Pardo, L.
MUS-5 Hurtado, R
ARTE-3A Hurtado, R
70
UNIVERSIDAD PRIVADA TELESUP
Tabla profesores
PROFESOR OFICINA
M11
Vázquez, N.
Hurtado, R M22
Pardo, L. CT2
Características
71
UNIVERSIDAD PRIVADA TELESUP
Lecturas Recomendadas
MODELOS DE BASE DE DATOS
http://es.wikipedia.org/wiki/Modelo_de_base_de_datos
TUTORIAL DE SQL
http://www.maestrosdelweb.com/editorial/tutsql1/
Actividades y Ejercicios
72
UNIVERSIDAD PRIVADA TELESUP
Actividades y Ejercicios
73
UNIVERSIDAD PRIVADA TELESUP
Autoevaluación
1. Un modelo de datos es:
4. Sql es:
74
UNIVERSIDAD PRIVADA TELESUP
8. Las transacciones:
10. Uno de los defectos de una base de datos mal diseñada es:
75
UNIVERSIDAD PRIVADA TELESUP
Resumen
UNIDAD DE APRENDIZAJE II:
76
UNIVERSIDAD PRIVADA TELESUP
77
UNIVERSIDAD PRIVADA TELESUP
Introducción
a) Presentación y contextualización
b) Competencia
Reconoce y aplica diferentes esquemas o métodos para salvaguardar la
información de una base de datos.
c) Capacidades
d) Actitudes
78
UNIVERSIDAD PRIVADA TELESUP
Estructura
TEMA 1
de un Sistema
de Base de
Datos
Competencia:
79
UNIVERSIDAD PRIVADA TELESUP
Desarrollo de los Temas
Tema 01: Estructura de un Sistema de Base de
Datos
Gestor de Almacenamiento
Proporciona la interfaz entre los datos de bajo nivel en la base de datos y los
programas de aplicación y consultas emitidas al sistema. Es responsable de la
interacción con el gestor de archivos para realizar el almacenamiento, recuperación y
actualización de los datos en la base de datos.
80
UNIVERSIDAD PRIVADA TELESUP
Índices, permiten un rápido acceso a registros que contienen valores específicos. Una
forma gráfica de representar los componentes antes mencionados y la relación que
existe entre ellos sería la siguiente.
81
UNIVERSIDAD PRIVADA TELESUP
Declaración de claves:
La estipulación de que ciertos atributos pueden formar una clave para un conjunto de
entidades determinado.
82
UNIVERSIDAD PRIVADA TELESUP
83
UNIVERSIDAD PRIVADA TELESUP
Restricciones
TEMA 2
de los
Dominios
Competencia:
Reconocer e identificar las restricciones de
dominio.
84
UNIVERSIDAD PRIVADA TELESUP
Tipos de Dominios
Es posible que varios atributos tengan el mismo dominio. Por ejemplo los atributos
nombre-cliente y nombre-empleado podrían tener el mismo dominio, el conjunto de
nombre de todas las personas. Sin embargo los dominios de saldo y nombre-sucursal
deben ser distintos, quizá este menos claro si nombre-cliente y nombre-sucursal
deben tener el mismo dominio.
85
UNIVERSIDAD PRIVADA TELESUP
Valores Nulos
86
UNIVERSIDAD PRIVADA TELESUP
Integridad Referencial
A menudo se desea asegurar que un valor que aparece en una relación para un
conjunto de atributos determinado aparezca también en otra relación para un cierto
conjunto de atributos. Esta condición se denomina integridad referencial.
Disparadores
Un disparador es una orden que el sistema ejecuta de manera automática como efecto
secundario de la modificación de la base de datos. Para diseñar un mecanismo
disparador hay que cumplir dos requisitos:
La base de datos almacena disparadores como si fuesen datos normales, por lo que
son persistentes y accesibles para todas las operaciones de la base de datos.
Los disparadores son mecanismos útiles para alertar a los usuarios o para realizar de
manera automática ciertas tareas cuando se cumplen determinadas condiciones.
87
UNIVERSIDAD PRIVADA TELESUP
Violaciones de la seguridad
Entre las formas de acceso malintencionado se
encuentran:
La lectura no autorizada de los datos (robo de
información).
La modificación no autorizada de los datos.
La destrucción no autorizada de los datos.
88
UNIVERSIDAD PRIVADA TELESUP
Sistema operativo
Independientemente de lo seguro que pueda ser el sistema de bases de datos, la
debilidad de la seguridad del sistema operativo puede servir como medio para el
acceso no autorizado a la base de datos.
Red
Dado que casi todos los sistemas de bases de datos permiten el acceso remoto
mediante terminales redes, la seguridad en el nivel del software de la red es tan
importante como la seguridad física, tanto en Internet como en las redes privadas
de las empresas.
89
UNIVERSIDAD PRIVADA TELESUP
Privilegios TEMA 3
en SQL
Competencia:
90
UNIVERSIDAD PRIVADA TELESUP
Autorización en SQL
Autorizaciones y vistas
91
UNIVERSIDAD PRIVADA TELESUP
Privilegios en SQL
La autorización update e
insert puede concederse
sobre todos los atributos
de la relación o solo
sobre algunos. La lista
de atributos sobre los
que se va a conceder la
autorización opcionalmente aparece entre paréntesis justo después de la palabra clave
update o insert. Si se omite la lista de atributos se concede sobre todos los atributos
de la relación.
92
UNIVERSIDAD PRIVADA TELESUP
En un principio puede parecer que no hay ningún motivo para evitar que los usuarios
creen claves externas que hagan referencia a otra relación.
Sin embargo, hay que recordar que las restricciones de las claves externas pueden
limitar las operaciones de borrado y de actualización sobre la relación a la que hacen
referencia. El privilegio “all privileges” puede utilizarse como una forma abreviada de
todos los privilegios que se pueden conceder. De manera parecida, el nombre de
usuario público hace referencia a todos los usuarios presentes y futuros del sistema.
Concesión de Privilegios
Un usuario al que se le ha concedido una autorización puede ser autorizado a
transmitirla a otros usuarios. Sin embargo, hay que tener cuidado con el modo en que
se hace, para poder asegurar que la misma pueda retirarse en el futuro. La
transmisión de la autorización de un usuario a otro puede representarse mediante un
grafo. Los nodos de este grafo son los usuarios.
Un arco Ui → Uj indica que el usuario Ui concede una autorización a Uj. La raíz de
todos los grafos será el administrador de la base de datos. Un usuario tiene
autorización si y solo si hay un camino desde el administrador de la base de datos
hasta el nodo que representa a ese usuario Esto se hace así para evitar que un par de
usuarios eludan las reglas de retirada de autorizaciones concediéndose autorización
mutuamente.
93
UNIVERSIDAD PRIVADA TELESUP
Papeles o Roles
Los papeles o roles son una forma de simplificar la asignación de autorizaciones a los
usuarios. Las autorizaciones se conceden a los papeles, de igual modo que se
conceden a usuarios individuales. En la base de datos se crea un conjunto de papeles.
Se concede uno o varios papeles a cada usuario de la base de datos.
Una alternativa similar, pero menos preferible, sería crear un identificador de usuario
cajero y permitir que cada cajero se conectase a la base de datos usando este
identificador. El problema con este esquema es que no sería posible identificar
exactamente al cajero que ha realizado una determinada transacción, conduciendo a
problemas de seguridad.
Se pueden conceder privilegios a los papeles al igual que a los usuarios, como se
ilustra en la siguiente instrucción.
Los papeles se pueden asignar a los usuarios, así como a otros papeles, como
muestran estas instrucciones.
94
UNIVERSIDAD PRIVADA TELESUP
Nótese que esto puede generar una cadena de papeles. Los privilegios efectivos
consisten en todos los privilegios concedidos directamente más los concedidos
indirectamente. Debido a esto, la retirada de un privilegio a un usuario o papel puede
hacer que otros usuarios o papeles también lo pierdan. Este comportamiento se
denomina retirada en cadena.
95
UNIVERSIDAD PRIVADA TELESUP
Cifrado TEMA 4
y
Autenticación
Competencia:
96
UNIVERSIDAD PRIVADA TELESUP
Cifrado
Para información extremadamente reservada es necesario cifrar los datos. Los datos
cifrados no se pueden leer a menos que el lector sepa la manera de descifrarlos. El
cifrado también forma la base de los buenos esquemas para la autenticación de
usuarios en una base de datos.
Técnicas de cifrado
Es relativamente sencillo para los usuarios autorizados cifrar y descifrar los datos. El
esquema de cifrado no depende de lo poco conocido que sea el algoritmo, sino más
bien de un parámetro del algoritmo denominado clave de cifrado. Es extremadamente
difícil para un intruso determinar la clave de cifrado.
97
UNIVERSIDAD PRIVADA TELESUP
Las claves públicas, como su nombre indica, son de dominio público: cualquiera puede
verlas. La clave privada, por el contrario, solo es conocida por el usuario al que
pertenece. Si el usuario U1 desea guardar datos cifrados, los cifra utilizando su clave
publica C1. Descifrarlos requiere la clave privada D1 (Que solo él conoce). Como la
clave de cifrado de cada usuario es pública es posible intercambiar información de
manera segura.
Autenticación
La autenticación se refiere a la tarea de verificar la identidad de una persona o
software que se conecte a una base de datos. La forma más simple consiste en una
contraseña o password que se debe presentar cuando se abra una conexión a la base
de datos. Sin embargo, el uso de contraseñas tiene algunos inconvenientes,
especialmente en una red.
98
UNIVERSIDAD PRIVADA TELESUP
La ventaja de este sistema es que las contraseñas no circulen por la red. Los sistemas
de clave pública también se pueden usar para cifrar en un sistema de
desafío/respuesta. Se cifra la cadena de desafío usando la clave pública del usuario y
se le envía a este. El usuario descifra la cadena con su clave privada y devuelve el
resultado al sistema de bases de datos. El sistema de bases de datos comprueba
entonces la respuesta.
99
UNIVERSIDAD PRIVADA TELESUP
No obstante, la información del saldo de la cuenta se repite para cada persona titular
de la cuenta, y la aplicación debe actualizar todas las copias, siempre que se actualice
el saldo de la cuenta.
100
UNIVERSIDAD PRIVADA TELESUP
Order ID Total
101
UNIVERSIDAD PRIVADA TELESUP
Lecturas Recomendadas
ESTRUCTURA DE UN SISTEMA DE BASE DE DATOS
http://www.slideshare.net/CATOGA/18-estructura-de-un-sistema-de-base-de-datos
PRIVILEGIOS EN SQL
http://www.desarrolloweb.com/manuales/9/
SQL
www.mat.uson.mx/lcota/SQL%20(introd_1).doc
Actividades y Ejercicios
1. Elabora una lista de cinco mecanismos que se pueden realizar para proteger
los datos de su definición, existencia, consistencia e integridad,
independientemente de la persona que los accede. Envíalo a través de
"Mecanismo de Identidad".
2. Realiza una lista de cinco organizaciones diferentes que hacen uso del cifrado
para proteger sus bases de datos. Utiliza “Cinco Organizaciones” para
realizar la actividad.
3. Describe el uso de cinco sentencias en SQL que permiten los privilegios, vistas
y cifrados para acceder a la información de una base de datos. Ingresa a
"Sentencias en SQL" para realizar la actividad.
4.
102
UNIVERSIDAD PRIVADA TELESUP
Autoevaluación
1) ¿Cuántos son los componentes del gestor de almacenamiento?
a. 2
b. 5
c. 4
d. 6
e. 7
4) Un disparador es :
103
UNIVERSIDAD PRIVADA TELESUP
a. Seleccionar información.
b. Leer información.
c. Borrar información.
d. Añadir información.
e. Modificar información.
a. Repetitivo
b. Normalizado
c. Inseguro
d. No Normalizado
e. Seguro
104
UNIVERSIDAD PRIVADA TELESUP
Resumen
UNIDAD DE APRENDIZAJE III:
Autorización SQL permite realizar (o no) determinadas operaciones sobre los datos,
como pueden ser la lectura, inserción, modificación y borrado de la información en la
base de datos. Los datos cifrados no se pueden leer a menos que el lector sepa la
manera de descifrarlos. El cifrado también forma la base de los buenos esquemas
para la autenticación de usuarios en una base de datos. La autenticación se refiere a
la tarea de verificar la identidad de una persona o software que se conecte a una
base de datos. La norma SQL incluye los privilegios delete, insert, select y update.
105
UNIVERSIDAD PRIVADA TELESUP
106
UNIVERSIDAD PRIVADA TELESUP
Introducción
a) Presentación y contextualización
Los temas que se tratan en la presente unidad temática, tiene por finalidad el
análisis de la base de datos, el estudio de su arquitectura y de los principales
gestores de bases de datos
b) Competencia
c) Capacidades
d) Actitudes
107
UNIVERSIDAD PRIVADA TELESUP
Gestión TEMA 1
de
Transacciones
Competencia:
Evaluar las transacciones utilizando
protocolos basados en bloqueos
108
UNIVERSIDAD PRIVADA TELESUP
Desarrollo de los Temas
Tema 01: Gestión de Transacciones
Concepto de Transacción
Una transacción es una acción o serie de acciones, llevada a cabo por un único
usuario programa o aplicación, que accede al contenido de la base de datos o lo
modifica.
Es una unidad lógica que lleva la base de datos de un estado coherente a otro.
Pueden ser la unidad de concurrencia o recuperación.
Las transacciones son importantes debido a que
indican las actividades que se realizan en la base de
datos.
Representan eventos del mundo real,
como registrar un inmueble para
ponerlo en alquiler, concertar una
visita con un cliente a un inmueble,
dar de alta un nuevo empleado o
registrar un nuevo cliente. Hacen que
la base de datos sea un reflejo de la realidad.
Estados de transacción
109
UNIVERSIDAD PRIVADA TELESUP
Programación
Crear Conexión
Abrir Conexión
(Openconnection)
Iniciar Transacción
(Begin Transaction)
setAutoCommit(0/false)
Queries...
(Insert, Select, Update,
Delete...)
-Error
(Abort Transaction) rollback
Procesar resultados
(Print, a= , b= )
Asegurar Transacción
(End Transaction) commit
Cerrar Conexión
(Closeconnection)
Notas:
110
UNIVERSIDAD PRIVADA TELESUP
Además, una vez ejecutada con éxito una transacción, sus efectos deben persistir
en la base de datos:
Un fallo en el sistema no debe tener como consecuencia que la base de datos se
olvide de una transacción que haya completado con éxito, Esta propiedad se
denomina durabilidad.
Transacciones
Control de concurrencia
111
UNIVERSIDAD PRIVADA TELESUP
Es decir, todos los esquemas que se presentan aquí aseguran que las
planificaciones son secuenciales.
SET AUTOCOMMIT = {0 | 1}
Si el modo de autocommit está en apagadado SET AUTOCOMMIT = 0, entonces
se asume que la misma transacción continúa hasta que se realice un COMMIT o
un ROLLBACK. Donde un commit actualizará por default el modo de autocommit
que está encendido, de manera que cada operación es considerada una
transacción y todo cambio se va reflejando automáticamente en la base de datos.
112
UNIVERSIDAD PRIVADA TELESUP
113
UNIVERSIDAD PRIVADA TELESUP
Bloqueos
114
UNIVERSIDAD PRIVADA TELESUP
Sistema de recuperación
Una computadora, al igual que cualquier otro dispositivo eléctrico o mecánico, está
sujeta a fallos. Estos se producen por diferentes motivos como:
Fallos de disco, cortes de corriente, errores en el software, un incendio en la
habitación de la computadora o incluso sabotaje.
En cada uno de estos casos puede perderse información.
Por tanto, el sistema de bases de datos debe realizar con anticipación acciones
que garanticen que las propiedades de atomicidad y durabilidad de las
transacciones, se preservan a pesar de tales fallos.
Una parte integral de un sistema de bases de datos es un esquema de
recuperación, el cual es responsable de la restauración de la base de datos al
estado consistente previo al fallo.
El esquema de recuperación también debe proporcionar alta disponibilidad; esto
es, debe minimizar el tiempo durante el que la base de datos no se puede usar
después de un fallo.
115
UNIVERSIDAD PRIVADA TELESUP
Arquitectura
de los
TEMA 2
Sistemas de
Bases de Datos
Competencia:
116
UNIVERSIDAD PRIVADA TELESUP
117
UNIVERSIDAD PRIVADA TELESUP
118
UNIVERSIDAD PRIVADA TELESUP
119
UNIVERSIDAD PRIVADA TELESUP
Rendimiento de Ingeniería
120
UNIVERSIDAD PRIVADA TELESUP
El primer paso para afinar los procesos de la base de datos, es detectar los
cuellos de botella; estos regularmente tienen el síntoma de prolongados tiempos
de ejecución. El siguiente paso es analizar el query y su plan de consulta, de aquí
se desprende las actividades necesarias para optimizar el proceso:
Optimizar el query
Crear un índice
Cargar parcialmente la tabla o tablas a memoria
Cargar el índice a memoria
Cambiar el esquema de bloqueos
Particionar la tabla
Considerar un rediseño de la base de datos.
121
UNIVERSIDAD PRIVADA TELESUP
122
UNIVERSIDAD PRIVADA TELESUP
123
UNIVERSIDAD PRIVADA TELESUP
124
UNIVERSIDAD PRIVADA TELESUP
Identificación de Necesidades
Es el primer paso del análisis del sistema, en este proceso el Analista se reúne
con el cliente y/o usuario (un representante institucional,
departamental o cliente particular), e identifican las
metas globales, se analizan las perspectivas del
cliente, sus necesidades y requerimientos, sobre la
planificación temporal y presupuestal, líneas de
mercadeo y otros puntos que puedan ayudar a la
identificación y desarrollo del proyecto.
Esquemas de bloqueos
125
UNIVERSIDAD PRIVADA TELESUP
Bloqueo de páginas
Quizá una explicación más satisfactoria del bloqueo por páginas sea que los
registros en el modelo MDB no ocupan todo el espacio destinado a los campos de
Texto, es decir, se ocupan tantos bytes como caracteres escritos, junto a una
variable tipo Byte que indica el número de caracteres
(entre 0 y la longitud del campo en la estructura).
Mientras que en bases de datos como FoxPro,
los campos de texto se escriben con un tamaño
discreto dado por la longitud del campo, así el
tamaño del registro se puede "medir", y por lo
tanto cuánta porción binaria se bloqueará.
126
UNIVERSIDAD PRIVADA TELESUP
Parámetro Bloqueos
CONSTANTE ACCIÓN
127
UNIVERSIDAD PRIVADA TELESUP
Bloqueo exclusivo
Para abrir una base de datos en modo exclusivo o compartido, utilice el método
OpenDatabase para abrir la base de datos, especificando un valor True o False
(predeterminado) respectivamente para el argumento Options. Ejemplo:
Public Function OpenDatabaseSure( _
db As Database, _
DBFile As String, _
Exclusive As Boolean, _
ReadOnly As Boolean _
) As Boolean
On Error GoTo OpenDatabaseSureErr
Set db = OpenDatabase(DBFile, Exclusive, ReadOnly)
OpenDatabaseSure = True
Exit Function
OpenDatabaseSureErr:
MsgBox "No puede abrir la Base de Datos " + DBFile
+vbCrLf+vbCrLf+ _
"Mensaje de sistema:" + vbCrLf + Error$
OpenDatabaseSure = False
'//Posibles mensajes:
'3033: Sin permiso
'3343: Base de Datos corrupta
'3044: Trayectoria no válida
'3024: Archivo no encontrado
'...
End Function
128
UNIVERSIDAD PRIVADA TELESUP
Oracle
129
UNIVERSIDAD PRIVADA TELESUP
Soporte de transacciones,
Estabilidad
Escalabilidad
Soporte multiplataforma.
130
UNIVERSIDAD PRIVADA TELESUP
Oracle,
TEMA 4
DB2 de IBM,
SQL server,
ASE de SYbase
Competencia:
131
UNIVERSIDAD PRIVADA TELESUP
132
UNIVERSIDAD PRIVADA TELESUP
DB2 de IBM
Sriram Padmanabhan
IMB T. J. Watson Research Center
133
UNIVERSIDAD PRIVADA TELESUP
OS/390
VM
AS/400
resto de plataformas.
Los elementos comunes en todas estas bases de código son interfaces externas
(en concreto el lenguaje de definición de datos (LDD) y SQL) y herramientas
básicas tales como administración. Sin embargo, existen diferencias como
resultado de diferentes historias de desarrollo para las bases de código.
134
UNIVERSIDAD PRIVADA TELESUP
ASE de SYbase
Sybase fue fundada en 1984, afuera de la casa del señor Epstein's en
Berkeley, CA.
135
UNIVERSIDAD PRIVADA TELESUP
Lecturas Recomendadas
Lecturas Recomendadas
ESTRUCTURA DE UN SISTEMA DE BASE DE DATOS
http://www.slideshare.net/CATOGA/18-estructura-de-un-sistema-de-base-de-datos
www.slideshare.net/MonjeOneble/formas-normales
SQL SERVER
http://es.wikipedia.org/wiki/Microsoft_SQL_Server
Actividades y Ejercicios
136
UNIVERSIDAD PRIVADA TELESUP
Autoevaluación
1. Las transacciones, registran:
a. Las actividades que se realizan sobre la base de datos
b. Los datos que se transfieren
c. La base de datos y sus transacciones
d. Los datos modificados
e. Los procesos ejecutados en una vista
5. Un perfilador es :
a. Una herramienta para estudiar perfiles
b. Un herramienta de análisis de rendimiento
c. Un conjunto de perfiles de datos
d. Un esquema de arquitectura de datos
e. Un análisis de perfiles
137
UNIVERSIDAD PRIVADA TELESUP
138
UNIVERSIDAD PRIVADA TELESUP
Resumen
UNIDAD DE APRENDIZAJE IV:
Una transacción es una acción o serie de acciones, llevada a cabo por un único
usuario programa o aplicación, que accede al contenido de la base de datos o lo
modifica. Las transacciones son importantes debido a que indican las actividades que
se realizan en la base de datos. En los sistemas de bases de datos en los que se
ejecutan varias transacciones, se utilizan protocolos basados en bloqueos que evitan
actualizaciones erróneas de los datos almacenados en la base de datos
139
UNIVERSIDAD PRIVADA TELESUP
Glosario
BASE DE DATOS (BD): una base de datos (cuya abreviatura es bd) es una entidad
en la cual se pueden almacenar datos de manera estructurada, con la menor
redundancia posible.
MODELO RELACIONAL: Modelo de menor nivel. Usa una colección de tablas para
representar tanto los datos como las relaciones entre los datos. Su simplicidad
conceptual ha conducido a su adopción general; actualmente, una vasta mayoría
de productos de bases de datos se basan en el modelo relacional.
140
UNIVERSIDAD PRIVADA TELESUP
141
UNIVERSIDAD PRIVADA TELESUP
Fuentes de Información
BIBLIOGRÁFICAS:
ELECTRÓNICAS:
VIDEOS
142
UNIVERSIDAD PRIVADA TELESUP
Solucionario
1. C
1. C
2. C
2. C
3. E
3. A
4. C
4. C
5. A
5. B
6. E
6. C
7. E
7. E
8. B
8. C 9. A
9. E 10. D
10. C
1. A
1. C
2. A
2. C
3. A 3. A
4. D 4. A
5. B 5. B
6. B 6. C
7. C 7. C
8. D 8. C
9. D 9. B
10. D
10. E
143