PresentaciónT2-BasesDeDatosDistribuidas

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 41

TECNOLÓGICO NACIONAL DE MÉXICO

INSTITUTO TECNOLÓGICO DE APIZACO


INGENIERÍA EN TECNOLOGÍAS DE LA INFORMACIÓN Y
COMUNICACIONES
BASES DE DATOS DISTRIBUIDAS
“DISEÑO DE BASES DE DATOS DISTRIBUIDAS”
NÚM. EQUIPO: 4
UXUE TENOCH BECERRIL SILVA - 22371059
ANA CRISTINA SÁNCHEZ ORDOÑES - 22370800
KENNETH MONTIEL PAREDES - 22370758
ANDREA MEZA FLORENTINO - C21371234
NICOLÁS ALONZO GUTIÉRREZ
17 DE SEPTIEMBRE DE 2024
Índice
Diseño de Bases de Datos Distribuidas
- Introducción___________________3

- Introducción___________________3
01 Consideraciones de diseño______4

01 Consideraciones de diseño______4
02 Niveles de Transparencia______14

02 Niveles de Transparencia______14
03 Fragmentación de Datos________21

03 Fragmentación de Datos________21
04 Distribución de Datos_________26

04 Distribución de Datos_________26
05 Diccionario de Datos__________31

05 Diccionario de Datos__________31
06 Conclusión____________________36

06 Conclusión____________________36
07 Referencias___________________38

07 Referencias___________________38
Introducción
En esta presentación revisaremos los aspectos clave
del Diseño de Bases de Datos Distribuidas, como las
consideraciones de diseño, los niveles de
transparencia para simplificar el acceso a los datos, la
fragmentación y distribución de datos para optimizar
el rendimiento, y la importancia del diccionario de
datos para gestionar la estructura de la base.
01
Diseño de Bases de Datos Distribuidas

Consideraciones
de diseño
¿Qué incluye?

El diseño es un proceso complejo que requiere una


planificación exhaustiva para garantizar que el
sistema sea eficiente, escalable y fiable. Donde se
puede incluir: objetivo y alcance, estrategias de
diseño, seguridad y privacidad, performance y
escalabilidad.
Objetivo y alcance

• Requisitos del usuario


Es fundamental conocer las necesidades específicas de los usuarios
finales, como los tipos de consultas que realizarán, los volúmenes de
datos que manejarán y los niveles de concurrencia esperados. (Connolly,
2005).
Objetivo y alcance
• Integración con Otros
Sistemas
En muchos casos, las bases de datos distribuidas deben integrarse con
otros sistemas, como aplicaciones empresariales, sistemas de gestión de
recursos y servicios web. Esto requiere una planificación cuidadosa para
asegurar que los datos puedan ser intercambiados de manera fluida y
segura (Connolly, 2005).
Estrategias de Diseño

• Modelo de datos
Debe ser cuidadosamente diseñado para reflejar la estructura y las
relaciones de los datos en el sistema distribuido. Esto incluye decidir si
se utilizarán esquemas relacionales, orientados a objetos o basados en
documentos, dependiendo de los requisitos del sistema (Bell, 1992).
Estrategias de Diseño
• Arquitectura del sistema
Se deben considerar diferentes arquitecturas, como la arquitectura
cliente-servidor, la arquitectura de base de datos federada o la
arquitectura basada en middleware. Cada una tiene sus propias ventajas
y desventajas en términos de rendimiento, escalabilidad y complejidad
(Bell, 1992).
Seguridad y Privacidad

• Controles de acceso
Implementar mecanismos de autenticación y autorización para asegurar
que solo los usuarios autorizados puedan acceder a los datos. Esto puede
incluir el uso de políticas de acceso basadas en roles y el cifrado de
contraseñas (Date, 2011).
Seguridad y Privacidad

• Cifrado de datos
Protege los datos durante el tránsito y en reposo mediante técnicas de
cifrado. Esto asegura que los datos no puedan ser leídos o modificados
por usuarios no autorizados (Date, 2001).
Performance y
Escalabilidad
• Optimización de Consultas
Implementar técnicas para mejorar el rendimiento de las consultas,
como el uso de índices, vistas materializadas y particionamiento de
tablas. Esto puede reducir el tiempo de respuesta y mejorar la eficiencia
del sistema (Connolly, 2005).
Performance y
Escalabilidad

• Balanceo de Carga
Distribuir la carga de trabajo entre varios nodos para evitar la sobrecarga
de cualquier nodo individual. Esto puede implicar el uso de algoritmos
de balanceo de carga y técnicas de cache para mejorar la respuesta del
sistema (Connolly, 2005).
02

Niveles de
Transparencia
Niveles de
Transparencia
La transparencia se puede entender como la separación de la
semántica de alto nivel de un sistema de los aspectos de
bajo nivel relacionados a la implementación de este. Un
nivel de transparencia adecuado permite ocultar los detalles
de implementación a las capas de alto nivel de un sistema y
a otros usuarios (I.E.S. San Vicente, s.f.).
Tipos de Transparencia

Localización Fragmentación

Replicación Acceso
Transparencia de
Localización

• Métodos de Implementación
Utilizar servicios de descubrimiento de servicios y enrutamiento de
consultas para ocultar la ubicación física de los datos. Los usuarios
envían solicitudes sin saber en qué nodo se encuentran los datos, y el
sistema se encarga de dirigir la solicitud al nodo correcto (Connolly,
2005).
Transparencia de
Replicación

• Protocolos de Replicación
Implementar protocolos para garantizar que todas las copias de los datos
estén sincronizadas. Esto incluye técnicas de replicación síncrona y
asíncrona, cada una con sus propios beneficios y compromisos en
términos de consistencia y rendimiento (Rob, 2004).
Transparencia de
Fragmentación

• Esquemas de fragmentación
Diseñar esquemas de fragmentación que permitan al sistema manejar la
distribución de datos de manera eficiente. Esto incluye la planificación
de cómo los datos se dividen y se distribuyen entre los nodos para
optimizar el rendimiento (Date, 2001).
Transparencia de
Acceso

• Interfaces Uniformes
Proporcionar una interfaz de usuario que permita el acceso a los datos
sin preocuparse por la complejidad del sistema subyacente. Esto puede
incluir el uso de consultas SQL estándar y API de acceso a datos
(LIHectorTorres, 2010).
03

Fragmentación de
Datos
¿Qué es?
La fragmentación es un tipo de partición distribuida e
independiente, a menudo asociada con el escalamiento en
múltiples servidores o nodos. Ambos implican dividir un
conjunto de datos grande en piezas más pequeñas y
manejables, pero la diferencia clave radica en sus objetivos y
en la escala a la que operan (Pure Storage, s.f.).
Fragmentación
Horizontal
Divide una tabla en subtablas basadas en un subconjunto de
las filas. Por ejemplo, una tabla de empleados puede ser
fragmentada horizontalmente para almacenar empleados de
diferentes departamentos en diferentes fragmentos
(Marqués, 2001; UV, 2017).
Fragmentación
Vertical
Divide una tabla en subtablas basadas en un subconjunto de
las columnas. Por ejemplo, una tabla de productos puede
ser fragmentada verticalmente para almacenar información
básica en una subtabla y detalles extensivos en otra. (Rob,
2004; LIHectorTorres, 2010).
Fragmentación Mixta
Combina fragmentación horizontal y vertical para optimizar
aún más la distribución y el acceso a los datos. Este
enfoque permite una mayor flexibilidad y puede adaptarse
mejor a patrones de acceso específicos y a las necesidades
del sistema (Connolly, 2005; IESSanVicente, n.d.).
04

Distribución de
Datos
¿Qué es?
La distribución de datos implica la creación de copias de
datos para su diseminación entre dos o más geodatabases o
servicios. La distribución de datos mejora su
disponibilidad y soluciona problemas como la contención
del servidor y el acceso lento a través de la red a un
servidor central.
Basada en
Fragmentación
Los fragmentos de datos se colocan en diferentes nodos
según criterios específicos, como la carga del nodo o la
ubicación geográfica. Esto permite una mejor gestión
del rendimiento y asegura que los datos estén cerca de
los usuarios que los necesitan (Date, 2001; ITPN, n.d.).
Estrategias

Existen varias estrategias para distribuir datos, como la


distribución aleatoria, basada en rango o basada en
hash. La estrategia seleccionada depende de factores
como el tipo de consulta y la carga esperada. Estas
ayudan a equilibrar la carga entre los nodos y optimizar
el rendimiento (Connolly, 2005; UV, 2017).
Políticas

Definen cómo se manejan los datos en los nodos y


cómo se sincronizan las copias replicadas. Incluyen
para la gestión de conflictos y la consistencia de los
datos, y pueden utilizar técnicas como consenso y
sincronización (Bell, 1992; LIHectorTorres, 2010).
05

Diccionario de
Datos
Definición

Es una base de datos que contiene descripciones


detalladas de todos los elementos de datos, incluyendo
las tablas, columnas, índices, y relaciones. Sirve como
referencia para el diseño y la gestión de la base de datos
(Rob, 2004; ITPN, n.d.).
Contenido

Incluye información sobre la estructura de las tablas,


los tipos de datos de cada columna, las restricciones y
las claves primarias. Es esencial para diseñar consultas
y para la administración general de la base de datos
(Date, 2001; UV, 2017).
Actualización y
Mantenimiento
Necesario mantener el diccionario de datos actualizado
para reflejar los cambios en la estructura de la base de
datos. Incluye la adición de nuevas tablas, la
modificación de columnas existentes y la eliminación de
datos obsoletos (Marqués, 2001; IESSanVicente, n.d.).
Acceso y
Seguridad
Deben implementarse controles de acceso para proteger
la integridad del diccionario de datos. Solo los usuarios
autorizados deben tener permiso para realizar cambios,
y se deben aplicar políticas de seguridad para evitar la
corrupción de datos (Connolly, 2005; LIHectorTorres,
2010).
06

Conclusión
Conclusión
El diseño de bases de datos distribuidas permite
gestionar datos eficientemente en múltiples
ubicaciones. Una correcta implementación de la
fragmentación, distribución y niveles de transparencia
es clave para asegurar el rendimiento y la seguridad.
Además, el uso del diccionario de datos facilita la
administración del sistema, contribuyendo al éxito en
entornos organizacionales distribuidos.
07

Referencias
Referencias
Bell, D. (1992). Distributed database systems. Addison-Wesley.

Connolly, T. M. (2005). Sistemas de bases de datos: Un enfoque práctico para


diseño, implementación y gestión (4ta ed.). Pearson Educación.

Date, C. J. (2001). Introducción a los sistemas de bases de datos (7ma ed.).


Pearson Educación.

ESRI. (s.f.). Introducción a los datos distribuidos. ArcGIS Pro. Recuperado el 16


de septiembre de 2024, de https://pro.arcgis.com/es/pro-
app/latest/help/data/geodatabases/overview/introduction-to-distributed-
data.htm#:~:text=La%20distribuci%C3%B3n%20de%20datos%20implica,red%20
a%20un%20servidor%20central.
Referencias
Instituto Tecnológico de Pachuca. (s.f.). Unidad II: Diseño de bases de datos
distribuidas. Recuperado de
http://www.itpn.mx/recursositics/5semestre/basededatosdistribuidas/Unidad%20II.
pdf

I.E.S. San Vicente. (s.f.). Bases de datos distribuidas. Recuperado de


https://iessanvicente.com/colaboraciones/BBDDdistribuidas.pdf

Marqués, M. (2001). Apuntes de ficheros y bases de datos. Universitat Jaume I.


Recuperado el 13 de noviembre de 2007, de
http://www3.uji.es/~mmarques/f47/apun/apun.html

Meneses, E. (2017). Base de datos avanzadas: Clase 12, Repaso. Universidad


Veracruzana. Recuperado de
https://www.uv.mx/personal/ermeneses/files/2017/03/BDAClase12-Repaso.pdf
Referencias
Pure Storage. (s.f.). ¿Qué es la fragmentación de bases de datos (Sharding)? Pure
Storage. Recuperado el 16 de septiembre de 2024, de
https://www.purestorage.com/es/knowledge/what-is-database-
sharding.html#:~:text=La%20fragmentaci%C3%B3n%20es%20un%20tipo,escala
%20a%20la%20que%20operan.

Rob, P. (2004). Sistemas de bases de datos: Diseño, implementación y


administración (5ta ed.). Thomson.

Torres, H. (2010). Bases de datos distribuidas. Recuperado de


https://lihectortorres.wordpress.com/wp-
content/uploads/2010/09/base_de_datos_distribuidas.pdf

También podría gustarte