Temas a tratar:
a) Bases de datos distribuidas
b) Reglas que se deben considerar en un sistema distribuido (12 reglas)
c) Habeas data.
d) Ley de habeas data.
e) División de hábeas data de acuerdo con Puccinelli.
f) Protección de datos personales
g) Derecho a la intimidad
2.1 INTRODUCCIÓN A LAS
BASES DE DATOS DISTRIBUIDAS
2.1.2
Características de
las BDD
"Los datos deben estar físicamente en más de
un ordenador, es decir, los datos se
encuentran almacenados en distintas sedes."
https://bit.ly/3NocCOR
"Las sedes deben estar interconectadas
mediante una red de computadoras (cada
sede será un nodo de la red). Para realizar el
diseño no se tendrá en cuenta la topología,
tipo y rendimiento de la red, aunque estas
propiedades tengan relevancia en el buen
funcionamiento del sistema."
https://bit.ly/3NocCOR
"Los datos han de estar lógicamente
integrados en una única estructura o esquema
lógico global común. " https://bit.ly/3NocCOR
"Los usuarios han de tener acceso
(recuperación y actualización) a los datos
pertenecientes a la BDD, ya residan éstos en la
misma sede (acceso local) o en otra sede
(acceso remoto). " https://bit.ly/3NocCOR
"Cada nodo o emplazamiento facilita un
entorno para la ejecución de transacciones
tanto locales como globales."
https://bit.ly/3NocCOR
"En una única operación, tanto de consulta
como de actualización, se puede acceder a
datos que se encuentran en más de una sede
sin que el usuario sepa la distribución de los
mismos en las distintas sedes. Es decir, que la
distribución de la información sea
transparente para el usuario."
https://bit.ly/3NocCOR
2.1.3
Ventajas de
las BDD
Plataforma autónoma.
Mejor rendimiento.
Posibilidad de compartir los
datos al tiempo que se
mantiene un cierto grado de
control local.
Mayor fiabilidad y disponibilidad
La naturaleza distribuida de
algunas aplicaciones de
bases de datos
Localización transparente.
Autonomía del
sitio.
Seguridad
mejorada.
2.1.4 Desventajas
de las BDD
Seguridad
Coherencia de
los datos
Administración de
transacciones
Seguimiento
Recuperación
Rendimiento
2.1.1
Definiciones
Sistema de Bases de
Datos Distribuidas
(SBDD).
Sistema de Gestión de
Bases de Datos
Distribuido (SGBDD).
Bases de Datos
Distribuidas.
Red de Computadoras.
Sistema de Computación
Distribuido.
Sistema de Gestión de BD
(SGBD)
Base de Datos (BD)
2.2 SISTEMAS GESTORES DE BASES
DE DATOS DISTRIBUIDAS (SGBDD)
2.2.1 Características y
arquitectura de los SGBDD
"El SGBDD debe contar con funciones de un SGBD
centralizado y además con funciones tales
como:" https://bit.ly/3NocCOR
"Capacidad de recuperación ante caídas de
sitios individuales y fallos de un enlace de
comunicación." https://bit.ly/3NocCOR
"Capacidad de decidir cuál de las copias
de un elemento de información será
accedida." https://bit.ly/3NocCOR
"Capacidad de mantener la consistencia en las réplicas de un
elemento de información." https://bit.ly/3NocCOR
"Capacidad de elaborar estrategias de ejecución para
consultas y transacciones con acceso a datos situados
en nodos diferentes." https://bit.ly/3NocCOR
"Capacidad de rastrear la traza de distribución y
de replicación de los datos en el catálogo de
SGBDD." https://bit.ly/3NocCOR
"Capacidad de acceder a sitios remotos y transmitir
consultas y datos entre diversos sitios a través de una red
de ordenadores." https://bit.ly/3NocCOR
"El SGBDD debe contar con los siguientes componentes
para poder ofrecer estas funcionalidades descritas:"
https://bit.ly/3NocCOR
Procesador de datos locales
Diccionario o directorio global
Procesador de aplicaciones distribuidas
Software y red de
comunicaciones.
2.2.2 Clasificación
de los SGBDD
“Esta clasificación se realiza en base a
tres características: la distribución, la
autonomía y la heterogeneidad del
sistema local." https://bit.ly/3NocCOR
Distribución
“Los datos pueden ser distribuidos entre múltiples bases de datos. Estas
bases de datos pueden estar almacenadas en un único sistema informático o
en varios, distribuidos geográficamente, pero interconectados por un sistema
de comunicación. Los datos pueden ser distribuidos entre múltiples bases de
datos de diferentes maneras. Estos incluyen, en términos relacionales,
particiones de base de datos verticales y horizontales." https://bit.ly/3NocCOR
Autonomía
“Se refiere a la distribución del control, no de los datos. Indica el grado en
el que los SGBDs pueden actuar independientemente y es función de
factores tales como el nivel de intercambio de información entre los
componentes del sistema, la ejecución independiente de transacciones, la
tolerancia a modificaciones respectivas en los datos, etc."
https://bit.ly/3NocCOR
Heterogeneidad
“La heterogeneidad puede referirse a diferentes aspectos, desde
diferencias hardware o en los protocoles de red, hasta variaciones en
los SGBDs propiamente (modelos de datos, lenguaje de manipulación
de datos, protocolos de gestión de transacciones,…)"
https://bit.ly/3NocCOR
2.3 DISEÑO DE
BDD
2.3.3. Fragmentación
2.2.7 Asignación de
fragmentos
2.2.8 Alternativas de
replicación
“La fragmentación es un conjunto de técnicas para
dividir la BD en unidades lógicas, llamadas
fragmentos, cuyo almacenamiento puede asignarse
a los diversos sitios. Estas técnicas se utilizan
durante el proceso de diseño de BDD. La
información concerniente a la fragmentación de los
datos se almacena en un catalogo global del
sistema al que tiene acceso el software cliente
cuando es necesario." https://bit.ly/3NocCOR
Fragmento lógico
“Bloque de datos localizado en algún SGBDD que puede ser
descrito (en términos relacionales) como el resultado de una
proyección y/o una selección de la información contenida en la
BD, de modo que resulten subconjuntos disjuntos de ella. Por
tanto, una vez que la BD ha sido dividida en un conjunto de
fragmentos, todos los datos aparecen en uno y sólo uno de
estos fragmentos. " https://bit.ly/3NocCOR
Fragmento
físico
“Subconjunto de un fragmento lógico
que se almacena completo en un nodo.
Cada uno de los fragmentos físicos de
un fragmento lógico se localizan en uno
o más nodos dependiendo del modelo
de distribución de los datos."
https://bit.ly/3NocCOR
2.2.6.1 Razones para
la fragmentación
“Es útil ya que las aplicaciones de BD suelen
funcionar con vistas, y por ello se pueden
utilizar distintas relaciones en distintos nodos
para formar la unidad distribuida."
https://bit.ly/3NocCOR
“Se consigue una mayor eficiencia dado que
los datos suelen estar almacenados cerca del
nodo que más utiliza dichos datos."
https://bit.ly/3NocCOR
“Permite aumentar el grado de concurrencia
porque la fragmentación de las relaciones
permite que una transacción pueda dividirse
en subconsultas que operan sobre estos
fragmentos." https://bit.ly/3NocCOR
“Aporta una mayor seguridad, dado que los
datos no utilizados por un nodo local no se
almacenan en él y por lo tanto no están al
alcance para personas sin autorización."
https://bit.ly/3NocCOR
2.2.6.2 Requisitos de
información
2.2.6.3 Alternativas de
fragmentación
2.2.6.4 Grado de
fragmentación
2.2.6.5 Reglas de
fragmentación
Completitud:
Reconstrucción
Disyunción
2.2.6.6 Fragmentación vertical
2.2.6.7 Fragmentación
horizontal
2.2.6.8 Fragmentación mixta o
híbrida
2.3.2. Alternativas
de diseño
En todo proceso de diseño hay dos
aproximaciones básicas
la descendente
o Bottom-Up.
“El diseño descendente parte de un ELG y construye varios
ELL definidos a partir de esquemas de fragmentación,
asignación y replicación que determinan la distribución de
los datos en los distintos nodos de la red."
https://bit.ly/3NocCOR
la ascendente o
Top-Down.
“El diseño ascendente se utiliza, cuando se crea un
BDD a partir de varias BBDD locales existentes. Se
parte de varios esquemas lógicos locales (ELL) con
ubicaciones diferentes que se integran en un único
esquema lógico global (ELG)."
https://bit.ly/3NocCOR
2.3.1
DEFINICIONES
Algebra
relacional
“Es un conjunto de operaciones que describen
paso a paso cómo computar una respuesta sobre
las relaciones, tal y como éstas son definidas en el
modelo relacional." https://bit.ly/3NocCOR
JOIN
“La sentencia join en SQL permite combinar registros de dos o
más tablas en una base de datos relacional. Para hacer un join
es necesario que exista un campo que relacione los datos de
cada tabla." https://bit.ly/3NocCOR
SEMI-JOIN
“También conocida como semi-combinación. Opera de la
misma manera que un join, pero la relación resultante sólo
tiene los atributos de la primera tabla." https://bit.ly/3NocCOR
UNION
“La sentencia union en SQL permite combinar los resultados de dos
consultas SQL en una tabla única de todas las filas coincidentes. Las
dos consultas deben tener el mismo número de columnas y tipos de
datos compatibles para unir. Cualquier registro duplicado se elimina
automáticamente si se usa UNION ALL." https://bit.ly/3NocCOR
“En el diseño de las BDD, una cuestión clave es la distribución
de los datos. El encargado de esta tarea es el DBA, el cual
establece en tiempo de diseño el modelo de distribución de
los datos. Esta definición es progresiva, de acuerdo a la
evolución de la BD y al modo en que el SGBD resuelve:"
https://bit.ly/3NocCOR
La distribución de las funciones
La sincronización de las operaciones
La descomposición de las consultas
2.3 CONTROL SEMÁNTICO DE LOS
DATOS
2.4 PROCESAMIENTO DE
CONSULTAS
2.4.1
Definiciones
2.4.2 Descomposición
de consultas globales
2.4.3 Localización
de los datos
2.5 CONTROL DE CONCURRENCIA EN BDD
2.6 CONTROL DE
RECUPERACIÓN
2.7 BASES DE DATOS
DISTRIBUIDAS HETEROGÉNEAS
2.7.1 Tipos de
heterogeneidades
2.7.2 Ventajas de las BBDD en
sistemas heterogéneos
2.7.3 Problemas de BBDD en
sistemas heterogéneos
2.7.4 Integración
de las BBDD
2.7.5 Procesamiento de
consultas en BBDD
heterogéneas