![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhL3M_vTgfgM4oNKpY6gIwZwjtFadeS5qnemQWnoCUzkqiGD7RapK8urfKadKWh7UKQfQHN3dIq7vD00P-cwGsQ1sbJxMWXGejYECfXZuyBBNhKbLSyskEGIJksaYQONuba96ZDG0d9B_N/s320/database.jpg)
1.2 En este capítulo
se han descrito las diferentes ventajas principales de un sistema gestor de
bases de datos. ¿Cuáles son los dos inconvenientes?
1.3 Explíquese la
diferencia entre independencia de datos física y lógica.
1.4 Lístense las
cinco responsabilidades del sistema gestor de la base de datos. Para cada
responsabilidad explíquense los problemas que ocurrirían si no se realizara esa
función.
1.5 ¿Cuáles son las
cinco funciones principales del administrador de la base de datos?
1.6 Lístense siete
lenguajes de programación que sean procedimentales y dos que sean no procedimentales.
¿Qué grupo es más fácil de aprender a usar? Explíquese la respuesta.
1.7 Lístense los
seis pasos principales que se deberían dar en la realización de una base de
datos para una empresa particular.
2 . Del libro en
formato pdf “Korth & Silberschaft - Fundamentos de Bases de Datos” el cual
ustedes tienen, tomen la figura de la pagina 35 y describan cada uno de los
elementos del gráfico.
3 . en postgresql realizar las tablas de la
página 29, poblándolas con sus datos.
1.1
ü SGBD:
·
proporcionar una forma de almacenar y
recuperar la información de una base de datos de manera que sea tanto práctica
como eficiente.
·
se diseñan para gestionar grandes cantidades
de información.
ü PROCESAMIENTO DE ARCHIVOS:
·
Los registros permanentes son almacenados en
varios archivos y se escriben diferentes programas de aplicación para extraer
registros y para añadir registros a los archivos adecuados.
·
Redundancia e inconsistencia de datos: Debido a que
los archivos y programas de aplicación son creados por diferentes
programadores, los diversos archivos tienen probablemente diferentes formatos y
los programas pueden estar escritos en diferentes lenguajes.
·
inconsistencia de datos: Es decir, las
diversas copias de los mismos datos pueden no coincidir.
·
Dificultad en el
acceso a los datos
·
Aislamiento de datos: Debido a que
los datos están dispersos en varios archivos, y los archivos pueden estar en
diferentes formatos, es difícil escribir nuevos programas de aplicación para
recuperar los datos apropiados.
·
Problemas de integridad: Los valores
de los datos almacenados en la base de datos deben satisfacer ciertos tipos de restricciones de consistencia.
·
Problemas de atomicidad: Un sistema de
un computador, como cualquier otro dispositivo mecánico o eléctrico, está
sujeto a fallo.
·
Anomalías en el acceso concurrente. Conforme se
ha ido mejorando el conjunto de ejecución de los sistemas y ha sido posible una
respuesta en tiempo más rápida, muchos sistemas han ido permitiendo a múltiples
usuarios actualizar los datos simultáneamente.
·
Problemas de seguridad. No todos los
usuarios de un sistema de bases de datos deberían poder acceder a todos los
datos.
1.2
- 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.
- 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.
1.3
La Independencia lógica De Datos: debe permitir una cierta
independencia entre los datos vistos por las aplicaciones y la estructura
lógica de ellos en la realidad. Soporté de la evolución de los datos y que cada
grupo de trabajo vea esos datos como cada grupo lo desea.
LOGICA
|
FISICA
|
Es la capacidad de modificar el
esquema conceptual sin tener que alterar los esquemas externos ni los
programas de aplicación. Se puede modificar el esquema conceptual para
ampliar la base de datos o para reducirla.
|
Es la capacidad de modificar el
esquema interno sin tener que alterar el esquema conceptual (o los externos).
Se refiere sólo a la separación
entre las aplicaciones y las estructuras físicas de almacenamiento, es más
fácil de conseguir que la independencia lógica.
|
1.4
• Atomicidad: Claramente
es esencial que, o bien tanto el cargo como el abono tengan lugar, o bien no
ocurra ninguno. Es decir, la transferencia de fondos debe ocurrir por completo
o no ocurrir en absoluto.
• Durabilidad: Finalmente, tras la ejecución correcta de la transferencia de fondos, los nuevos valores de las cuentas A y B deben persistir, a pesar de la posibilidad de fallo del sistema.
• Consistencia: La ejecución de la transferencia de fondos preserve la consistencia de la base de datos. Es decir, el valor de la suma A + B se debe preservar.
• Recuperación de fallos: Detectar los fallos del sistema y restaurar la base de datos al estado que existía antes de que ocurriera el fallo.
• Evitar duplicidad de información
1.5
·
Definición del esquema.
·
Definición de la estructura
y del método de acción.
·
Modificación del esquema y
de la organización física.
·
Concesión de autorización
para el acceso a los datos.
·
Mantenimiento rutinario.
1.6
- ADA
- ALGOL
- BASIC
- JAVA
- PASCAL
- PHP
- RUBY
Procedimentales
son mas fáciles de manejar permiten especificar datos que se deben actualizar
mediante sentencias sencillas.
1.6
- complejidad
- tamaño
- costo de instalacion
- la independencia de datos es minima
- es necesario escribir programas complejos de aplicacion para responder a cualquier tipo de consultas de datos,por simple que esta sea.
1.7
·
Determinar la finalidad de
la base de datos.
·
Determinar los campos
necesarios de la base de datos.
·
Determinar las tablas que se
necesitan en la base de datos.
·
Determinar a qué tabla
pertenece cada campo.
·
Identificar el campo o los
campos con valores únicos en cada registro.
·
Determinar las relaciones
entre las tablas.
·
Perfeccionar el diseño.
·
Introducir datos y crear
otros objetos de la base de datos.
2.
• Usuarios normales. Son usuarios
no sofisticados que interactúan con el sistema mediante la invocación de alguno
de los programas de aplicación permanentes que se ha escrito previamente.
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1Bon4COWycL8ujz1ZbRd5aht2kQHrOKVj7KjzN17WO9zszQA6R262IlQPe7BXoxNmpQE_-0OnqtxcALNI-p8Zh0U2G02JpcyFKT6gwkfBVhVJKUXNPvFCm8GCNCxdcYiZQpH60tYfqehY/s320/bases-de-datos-emails-espana.jpg)
• Los usuarios
sofisticados interactúan
con el sistema sin programas escritos. En su lugar, ellos forman sus consultas
en un lenguaje de consulta de bases de datos. Cada una de estas consultas se
envía al procesador de consultas, cuya función es transformar
instrucciones LMD a instrucciones que el gestor de almacenamiento entienda.
• Administrador de la
base de datos Una de las principales razones de usar SGBDs es tener un
control centralizado tanto de los datos como de los programas que
acceden a esos datos.
La persona que tiene
este control central sobre el sistema se llama administrador de la
base de datos (ABD). Las funciones del ABD incluyen las siguientes:
• Definición del
esquema. El
ABD crea el esquema original de la base de datos escribiendo un conjunto de
instrucciones de definición de datos en el LDD.
• Definición de la
estructura y del método de acceso.
• Modificación del
esquema y de la organización física. Los ABD realizan cambios en el esquema
y en la organización física para reflejar las necesidades cambiantes
de la organización, o para alterar la organización física para mejorar
el rendimiento.
• Concesión de
autorización para el acceso a los datos. La concesión de
diferentes tipos de autorización permite al administrador de la base de
datos determinar a qué partes de la base de datos puede acceder
cada usuario. La información de autorización se mantiene en una
estructura del sistema especial que el sistema de base de datos consulta
cuando se intenta el acceso a los datos en el sistema.
• Mantenimiento
rutinario. Algunos
ejemplos de actividades rutinarias de mantenimiento del administrado de la base
de datos 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 como
inundaciones.
Ø Asegurarse de
que haya suficiente espacio libre en disco para las operaciones normales y
aumentar el espacio en disco según sea necesario.
Ø Supervisión
de los trabajos que se ejecuten en la base de datos y asegurarse de que el
rendimiento no se degrada por tareas muy costosas iniciadas por algunos
usuarios.
• Gestor de
autorización e integridad, que comprueba que se satisfagan las
restricciones de integridad y la autorización de los usuarios para acceder a
los datos.
• Gestor de
transacciones,
que asegura que la base de datos quede en un estado consistente (correcto) a
pesar de los fallos del sistema, y que las ejecuciones de transacciones concurrentes
ocurran si conflictos.
• Gestor de archivos, que
gestiona la reserva de espacio de almacenamiento de disco y las estructuras de
datos usadas para representar la información almacenada en disco.
• Gestor de memoria
intermedia,
que es responsable de traer los datos del disco de almacenamiento a memoria
principal y decidir qué datos tratar en memoria caché. El gestor de memoria intermedia
es una parte crítica del sistema de bases de datos, ya que permite que la base
de datos maneje tamaños de datos que son mucho mayores que el tamaño de la
memoria principal. El gestor de almacenamiento implementa varias estructuras de
datos como parte de la implementación física del sistema:
• Archivos de datos, que
almacenan la base de datos en sí.
• Diccionario de
datos,
que almacena metadatos acerca de la estructura de la base de datos, en
particular, el esquema de la base de datos.
• Índices, que proporcionan
acceso rápido a elementos de datos que tienen valores particulares.
Procesador de
consultas
Los componentes del
procesador de consultas incluyen:
• Intérprete del LDD, que
interpreta las instrucciones del LDD y registra las definiciones en el diccionario
de datos.
• Compilador del LMD, que traduce
las instrucciones del LMD en un lenguaje de consultas a un plan de evaluación
que consiste en instrucciones de bajo nivel que entiende el motor de evaluación
de consultas.
Una consulta se puede
traducir habitualmente en varios planes de ejecución alternativos que
proporcionan el mismo resultado. El compilador del LMD también realiza optimización
de consultas, es decir, elige el plan de evaluación de menor coste de entre
todas las alternativas.
• Motor de evaluación
de consultas,
que ejecuta las instrucciones de bajo nivel generadas por el compilador del LMD.
3.
3.1
-- Table: cliente
-- DROP TABLE cliente;
CREATE TABLE cliente
(
id integer,
nombre character(80),
calle character(80),
cuidad
character(80)
)
WITH (
OIDS=FALSE
);
ALTER TABLE cliente
OWNER TO postgres;
insert into cliente values
(19283746 , 'González', 'Arenal', 'La Granja');
insert into cliente
values (01928374 , 'Gómez' , 'Carretas', 'Cerceda');
insert into cliente
values (67789901 , 'López' , 'Mayor Peguerinos');
insert into cliente
values (18273609 , 'Abril' , 'Preciados', 'Valsaín');
insert into cliente
values (32112312 , 'Santos' , 'Mayor', 'Peguerinos');
insert into cliente
values (33666999 , 'Rupérez' , 'Ramblas', 'León');
insert into cliente
values (01928374 , 'Gómez' , 'Carretas', 'Cerceda');
3.2
-- Table: cuenta
-- DROP TABLE cuenta;
CREATE TABLE cuenta
(
cuenta character varying(10),
saldo integer
)
WITH (
OIDS=FALSE
);
ALTER TABLE cuenta
OWNER TO postgres;
insert into cuenta values ('C-101', 500);
insert into cuenta values ('C-215', 700);
insert into cuenta values ('C-102', 400);
insert into cuenta values ('C-305', 350);
insert into cuenta values ('C-201', 900);
insert into cuenta values ('C-217', 750);
insert into cuenta values ('C-222', 700);
3.3
-- Table: impositor
-- DROP TABLE impositor;
CREATE TABLE impositor
(
"id-cliente" integer,
"numero cuenta"
character varying(10)
)
WITH (
OIDS=FALSE
);
ALTER TABLE impositor
OWNER TO postgres;
insert into impositor values (19283746, 'C-101');
insert into impositor values (19283746, 'C-201');
insert into impositor values (01928374, 'C-215');
insert into impositor values (67789901, 'C-102');
insert into impositor values (18273609, 'C-305');
insert into impositor values (32112312, 'C-217');
insert into impositor values (33666999, 'C-222');
insert into impositor values (01928374, 'C-201');