Title: Bases de datos distribuidas
1Bases de datos distribuidas
- IES Virgen del Espino
- DAW2
2Definición
- Un sistema de Bases de Datos Distribuida (SBDD)
es un sistema en el cual - Existen múltiples sitios de bases de datos
- Los sitios están ligados por un sistema de
comunicaciones - Un usuario en cualquier sitio puede acceder a los
datos en cualquier parte de la red exactamente
como si estos fueran accedidos de forma local.
3Componentes
- Los principales factores que distinguen un SBDD
de un sistema centralizado son los siguientes - Hay múltiples computadores, llamados sitios o
nodos. - Estos sitios deben de estar comunicados por medio
de algún tipo de red para transmitir datos y
órdenes entre los sitios
4Operaciones
- LOCALES
- Aquellas que un nodo realiza sobre su propia base
de datos. Son las consultas más deseables porque
los datos están en el mismo nodo. - GLOBALES
- Aquellas en las que un nodo accede a la
información de otro - Es el principal objetivo de las bases de datos
distribuidas - Son las operaciones más complejas por factores de
riesgo como la seguridad o el tráfico en la red
5Ventajas de las BBDD Distribuidas
- Compartir información y control sobre los datos
- Disponibilidad de información
- Permite romper barreras geográficas
- Es mas barata una red de muchos equipos pequeños
que pocos servidores grandes - Se pueden modificar, agregar o quitar sistemas de
la base de datos - Un departamento puede controlar los datos que le
pertenecen
6Inconvenientes de las BBDD Distribuidas
- Dependencia total de la red de comunicaciones
- Seguridad de la información
- Coste del desarrollo del software
- La complejidad y la infraestructura necesaria
implica que se necesite una mayor necesidad de
personal cualificado - Diseño de la base de datos compleja
- Falta de experiencia
7Ejemplo Queremos los nombres de los empleados
con sueldo mayor de 20000. Los datos están en un
ordenador remoto (BBDD Distribuidas)
SELECT r.n,r.s FROM dblink (host192.168.32.101
dbnameusuario port5432 userchema
passwordlalala',SELECT nombre,salario FROM
templa') AS r(n varchar(50),s integer) WHERE
r.sgt20000 ORDER BY 2
192.168.32.101
Nodo local
Nodo remoto
8SELECT r.n,r.s FROM dblink (host192.168.32.101
dbnameusuario port5432 userchema
passwordlalala , SELECT nombre,salario FROM
templa ) AS r(n varchar(50),s integer) WHERE
r.sgt20000 ORDER BY 2
Ojo a la coma y a los paréntesis!
Parámetros de acceso al nodo remoto
Consulta ejecutada en el nodo remoto
Nombre de la tabla virtual y de los campos en el
nodo local
9Dblink (1)
La tabla templa del nodo remoto
10Dblink (2)
Es filtrada por la consulta SELECT
11Dblink (3)
Es transmitida por la red de comunicaciones
12Dblink (4)
Y recogida por el nodo local en una TABLA
VIRTUAL llamada r
13Cómo instalar las funciones de dblink?
- Versiones anteriores a la 9
- Ejecutar el script que se encuentra en
- C\ProgramFiles\PostgreSQL\8.X\share\contrib\dblin
k.sql - Versiones igual o superior a la 9
- CREATE EXTENSION dblink