Está en la página 1de 18

Fecha de entrega: Jueves 18 de febrero de 2021

Bases de Datos Avanzadas

Práctica 4 - Bases de Datos Distribuidas

Docente:

Profesor: Leandro Fondeur Gil

Estudiantes:
Julio Antigua Fabian 2019-8669
Junior Garcia Luciano 2019-6954
Junior Carpenter Vazquez 2019-7065
Keily Rodriguez Martínez 2019-8465
Kelvin Hernandez Gonzalez 2019-8680
Lizandro Galan Dominici 2019-8727

Práctica 4 - Bases de Datos Distribuidas


1. Mencione tres características de los sistemas distribuidos de bases de datos
- Pueden tener un grado sustancial de independencia mutua.
- La distribución de los datos es causa de muchas dificultades en el procesamiento de las
transacciones y de las consultas.
- Transparencia de los datos; Permite que los usuarios de estos sistemas no se preocupen
en conocer la ubicación física de todos los datos ni el modo en el que se puede tener acceso a
ellos en un sitio local concreto

2. Hable acerca de las bases de datos distribuidas homogéneas

Para que un sistema de base de datos distribuido sea homogéneo, las estructuras de datos
deben ser idénticas o compatibles en cada ubicación. En las bases de datos distribuidas
homogéneas todos los sitios tienen un software semejante al de sistemas gestores de bases de
datos, son conscientes de la existencia de los demás sitios y acuerdan cooperar en el
procesamiento de las solicitudes de los usuarios. En estos sistemas los sitios locales renuncian a
una parte de su autonomía en cuanto a su derecho a modificar los esquemas o el software del
sistema gestor de bases de datos.

3. Qué son las bases de datos distribuidas heterogéneas?

Las bases de datos distribuidas heterogéneas son aquellas en donde sitios diferentes
utilizan diferentes gestores de bases de datos, siendo cada uno autónomo; puede que
utilicen esquemas y software de gestión de sistemas de bases de datos diferentes.

4. Qué es una réplica?

Es una técnica mediante la cual copiamos de forma exacta en otra ubicación una
instancia de la base de datos. Actualmente existen en la red multitud de aplicaciones y
de sistemas que tienen por debajo una base de datos que sigue el modelo cliente-
servidor.

5. Qué es una fragmentación?

Fragmentación: el sistema divide la base de datos en varios fragmentos y guarda cada fragmento
en un sitio diferente. También existen híbridas, donde se conjugan ambos aspectos.

6. En qué consiste una réplica completa


Una replicación de base de datos es una técnica mediante la cual copiamos de forma
exacta en otra ubicación una instancia de la base de datos. ... Actualmente existen en la
red multitud de aplicaciones y de sistemas que tienen por debajo una base de datos que
sigue el modelo cliente-servidor.

7. Qué son los mensajes persistentes

Son mensajes que tienen garantizada su entrega al destinatario exactamente una sola vez,
independientemente de los fallos
8. Qué son los flujos de trabajo?

Los flujos de trabajo son un conjunto de secuencias u de procesos por los que atraviesa una
parte del trabajo, desde su inicio hasta su finalización ósea es el método que estableces para
lograr concluir tus actividades.

9. Qué es un reloj lógico

– Genera la marca temporal local única.

– Puede implementarse como un contador que se incremente después de generar una


nueva marca temporal local.

Realice los siguientes ejercicios luego de estudiar el documento Les09-Manipulating


Data.ppt:
El departamento de recursos humanos desea que cree sentencias SQL para insertar,
actualizar, suprimir datos de empleados. Como prototipo, utiliza la tabla MY_EMPLOYEE,
antes de proporcionarle las sentencias al departamento de recursos humanos.
Cree la tabla MY_EMPLOYEE ejecutando la siguiente instrucción en SQL Developer:
CREATE TABLE my_employee (id NUMBER(4) CONSTRAINT my_employee_id_nn NOT
NULL, last_name VARCHAR2(25), first_name VARCHAR2(25), userid VARCHAR2(8),
salary NUMBER(9,2));

ID LAST_NAME FIRST_NAME USERID SALARY

1 Patel Ralph rpatel 900

2 Dancs Betty bdancs 850

3 Biri Ben bbiri 1200


4 Newman Chad cnewman 780

5 Ropeburn Audrey aropebur 1650

1. Cree una sentencia INSERT para agregar la primera fila de datos a la tabla
MY_EMPLOYEE a partir de los datos de ejemplo suministrados más arriba. No incluya
de manera explícita los nombres de las columnas en la cláusula INSERT. No introduzca
aún todas las filas.

2. Rellene la tabla MY_EMPLOYEE con la segunda fila de datos de ejemplo de la lista


anterior. Esta vez, incluya los nombres de las columnas explícitamente en la cláusula
INSERT.

3. Escriba una sentencia INSERT para cargar las dos filas siguientes de datos de
ejemplo anterior en la tabla MY_EMPLOYEE. Concatene la primera letra del primer
nombre y los primeros siete caracteres del apellido para producir el identificador de
usuario. Use variables de substitución para lograr lo requerido.
insert into my_employee values (1,'Patel', 'Ralph', 'rpatel', 895);

4. Confirme las adiciones a la tabla.


Select * from my employees;

5. Haga permanentes las adiciones de datos.

Commit;

6. Cambie el apellido del empleado 3 a Drexler.


7. Cambie el salario a 1,000 dólares a todos los empleados que tengan un salario
inferior a 900 dólares

8. Verifique los cambios en la tabla.

9. Suprima a Betty Dancs de la tabla MY_EMPLOYEE.


DELETE

FROM my_employee

WHERE FIRST_NAME = 'Betty' AND LAST_NAME = 'Dancs';

10. Confirme los cambios en la tabla.


Select * from my employees;

11. Valide todos los cambios pendientes.


Commit;

12. Rellene la tabla con las últimas filas de datos de ejemplo.

13. Confirme la adición a la tabla.

14. Marque un punto intermedio en el procesamiento de la transacción.


15. Vacíe toda la tabla.

select * from my_employee;

16. Confirme que la tabla está vacía.


Select * from my employees;

17. Deseche la operación DELETE más reciente sin descartar la operación INSERT
anterior.
Rollback to addons;
18. Confirme que la nueva fila sigue intacta.

19. Haga permanente la adición de datos.

Realice los siguientes ejercicios luego de estudiar el documento Les10-DDL


Statements.ppt:

Tabla 1:
Column Name ID NAME

Key Type Primary key

Nulls/Unique

FK Table

FK Column

Data type NUMBER VARCHAR2

Length 7 25

Tabla 2:
Column Name ID LAST_NAME FIRST_NAME DEPT_ID
Key Type

Nulls/Unique

FK Table DEPT

FK Column ID

Data type NUMBER VARCHAR2 VARCHAR2 NUMBER

Length 7 25 25 7

1. Cree la tabla DEPT basándose en el gráfico de instancia de tabla "Tabla 1".


Confirme que la tabla se ha creado.
2. Rellene la tabla DEPT con datos de la tabla DEPARTMENTS. Incluya sólo las
columnas que necesite.
INSERT INTO dept

SELECT department_id, department_name

FROM departments;

3. Cree la tabla EMP basada en el gráfico de instancia de tabla "Tabla 2". Confirme
que la tabla se ha creado.

4. Cree la tabla EMPLOYEES2 basándose en la estructura de la tabla EMPLOYEES.


Incluya sólo las columnas EMPLOYEE_ID, FIRST_NAME, LAST_NAME, SALARY y
DEPARTMENT_ID. Nombre las columnas en la nueva tabla ID, FIRST_NAME,
LAST_NAME, SALARY y DEPT_ID, respectivamente. Use sub-consulta para crear la
tabla.
create table EMPLOYEES2 AS (SELECT id AS EMPLOYEE_ID, first_name AS FIRST_NAME,

last_name AS LAST_NAME,userid AS DEPT_ID, salary AS SALARY

FROM my_employee);

5. Borre la tabla EMP.


Realice los siguientes ejercicios luego de estudiar el documento Les11-Other Schema
Objets.ppt:
1. El personal del departamento de recursos humanos quiere ocultar parte de los
datos de la tabla EMPLOYEES. Quieren una vista denominada EMPLOYEES_VU
basada en los números de empleado, los nombres de los empleados y los números de
departamento de la tabla EMPLOYEES. Quieren que la cabecera para el nombre de
empleado sea EMPLOYEE.

2. Confirme que la vista funciona. Muestre el contenido de la vista EMPLOYEES_VU.


3. Mediante la vista EMPLOYEES_VU, escriba una consulta para el departamento de
recursos humanos que muestre todos los nombres de empleados y los números de
departamento.
SELECT last_name, department_id, department_name

FROM employees

JOIN departments

USING (department_id);

4. El departamento 50 necesita acceder a los datos de sus empleados. Cree una vista
denominada DEPT50 que contenga los números de los empleados, los apellidos de los
empleados y los números de departamento de todos los empleados del departamento
50. Le han pedido que etiquete las columnas de la vista como EMPNO, EMPLOYEE y
DEPTNO. Por motivos de seguridad, no permita que se reasigne a un empleado a otro
departamento a través de la vista.
5. Muestre la estructura y el contenido de la vista DEPT50.
DESCRIBE dept50

SELECT *

FROM dept50;

6. Pruebe la vista. Intente reasignar a Matos al departamento 80.

7. Necesita una secuencia que se pueda utilizar con la columna de clave primaria de
la tabla DEPT. La secuencia debe comenzar en 200 y tener un valor máximo de 1.000.
Haga que los incrementos de secuencia sean de 5 en 5. Ponga a la secuencia el
nombre DEPT_ID_SEQ.
8. Para probar la secuencia, inserte dos filas en la tabla DEPT. Asegúrese de utilizar la
secuencia que creó para la columna ID. Agregue dos departamentos: Education y
Administration. Confirme las adiciones.
9. Cree un índice no único en la columna DEPT_ID de la tabla DEPT.

CREATE INDEX dept_name_idx ON dept (NAME);

10. Cree un sinónimo para la tabla EMPLOYEES. Póngale el nombre EMP.

También podría gustarte