20
Base de Datos Distribuida TIPOS DE DISTRIBUCION BASICAMENTE SON 3 TIPOS DE DISTRIBUCION DE DATOS: CENTRALIZADO DUPLICADO DIVIDIDA.

BDatos Distribuida

Embed Size (px)

DESCRIPTION

BD

Citation preview

  • Base de Datos DistribuidaTIPOS DE DISTRIBUCION

    BASICAMENTE SON 3 TIPOS DE DISTRIBUCION DE DATOS:

    CENTRALIZADODUPLICADODIVIDIDA.

  • Base de Datos Distribuida

    Centralizada

    Dividida

    Duplicada

    ABC

    BC

    A

    ABC

    ABC

    LIMA

    AREQUIPA

    AREQUIPA

    LIMA

    LIMA

  • Base de Datos Distribuida

    En Conclusin

    Una Base de Datos Distribuida es, una base de datos construida sobre una red computacional y no por el contrario en una mquina aislada. La informacin que constituye la base de datos esta almacenada en diferentes sitios en la red,y las aplicaciones que se ejecutan accedan datos en distintos sitios.

    Una Base de Datos Distribuida entonces es una coleccin de datos que pertenecen lgicamente a un slo sistema, pero se encuentra fsicamente esparcido en varios "sitios" de la red. Un sistema de base de datos distribuidas se compone de un conjunto de sitios, conectados entre s mediante algn tipo de red de comunicaciones

  • Base de Datos DistribuidaUn sistema distribuido resulta engaosamente complejo, ante los problemas y complejidades que se puedan presentar, as como diversas tcnicas para evitar algunos de ellos.La fig. siguiente nos puede ayudar a la hora de tomar decisiones sobre distribucin de datos.

  • Base de Datos DistribuidaEn resumen a medida que una organizacin tiende a (A)bases de datos mayores con (B)numerosas copias de datos y (C) menores tiempos de respuesta actualizacin, la organizacin tiende, asimis-mo, hacia un entorno de mayor complejidad.

    ABC

    Una

    Grande

    VOLUMEN DE DATOS

    COPIAS DE DATOS

    Muchas

    Horas

    TIEMPO DE RESPUESTA DE ACTUALIZACION

    Pequeo

    Segundos

    Complejidad de Distribucin

  • ABC

    Una

    Grande

    VOLUMEN DE DATOS

    COPIAS DE DATOS

    Muchas

    Horas

    TIEMPO DE RESPUESTA DE ACTUALIZACION

    Pequeo

    Segundos

    Complejidad de Distribucin

  • Base de Datos DistribuidaSiempre que sea posible, se debe evitar la complejidad por diversas razones como :Riesgo superior de fallos del sistemaInconsistencia de datosCostos crecientes, etc.

    Si una organizacin est interesada en este tipo de entorno distribuido, deber estudiar a fondo el tema de la complejidad que se le plantea.

  • Base de Datos Distribuida

    50

    150

    150

    50

    1

    2

    3

    4

    1

    3

    A

    2

    4

    B

    n

    = Numeracin secuencial de sucesos

    (a) Actualizacin Prdida

    Lee 50

    Lee 50

    Suma 100 y escribe

    Suma 100 y escribe

  • SIN BLOQUEO

    1, 2 leen50.001,2 suman50 + 100 = 150.001, 2 graban150.00

  • Base de Datos Distribuida

    150

    Suceso Valor del dato

    150

    250

    1

    2

    Copia maestra

    1

    C

    A

    2

    B

    n

    = Numeracin secuencial de sucesos

    (b) Bases de datos inconsistentes

    Copialocal

    Lee 150

    Conflicto

    = Error descubierto y corregido

  • Base de Datos Distribuida

    50

    150

    150

    50

    1

    2

    3

    4

    1

    3

    A

    2

    4

    B

    n

    = Numeracin secuencial de sucesos

    (c) Actualizacin Prdida

    250

    5

    Bloqueo de datoy lectura

    Lectura y espera

    Recupera 150 de la base de datos actualizada

    Suma 100 y escribe

    5

    Suma 100 y escribe

    Y libera dato

    Suceso valor del dato

  • CON BLOQUEO

    1 lee y bloquea 2 (espera lectura)50.001 suma 50 + 100 = 150.001 graba 150.001 libera 22 lee 150.002 suma 150.00 + 100 = 250.002 graba 250.00

  • Base de Datos DistribuidaLos bloqueos ofrecen buenos resultados cuando se trabaja con base de datos centralizadas. Sin embargo en un entorno distribuido, puede darse la circunstancia de que unos puntos bloqueen a otros impidiendo de esta forma que se completen las distintas transacciones. La situacin de bloqueo mutuo, conocido como abrazo mortal se muestra en la sgte. imagen

  • Base de Datos DistribuidaLos puntos A y B quieren actualizar los datos Y, Z respectivamente; para ello, el punto A bloquea el dato Y con respecto a B, y B bloquea el elemento Z con respecto a A. Para completar sus transacciones, ambos puntos necesitan datos de las otras base de datos que en ese instante se encuentran bloqueadas. As pues ninguna de las dos transacciones puede seguir adelante y ambos puntos resultan bloqueados en el denominado abrazo mortal.

    Una

    Grande

    VOLUMEN DE DATOS

    COPIAS DE DATOS

    Muchas

    Horas

    TIEMPO DE RESPUESTA DE ACTUALIZACION

    Pequeo

    Segundos

    Complejidad de Distribucin

    50

    150

    150

    50

    1

    2

    3

    4

    1

    3

    A

    2

    4

    B

    n

    = Numeracin secuencial de sucesos

    (a) Actualizacin Prdida

    150

    Suceso Valor del dato

    150

    250

    1

    2

    Copia maestra

    1

    C

    A

    2

    B

    n

    = Numeracin secuencial de sucesos

    (b) Bases de datos inconsistentes

    Lee 50

    Lee 50

    Suma 100 y escribe

    Suma 100 y escribe

    Copialocal

    Lee 150

    Conflicto

    = Error descubierto y corregido

    50

    150

    150

    50

    1

    2

    3

    4

    1

    3

    A

    2

    4

    B

    n

    = Numeracin secuencial de sucesos

    (c) Actualizacin Prdida

    250

    5

    Bloqueo de datoy lectura

    Lectura y espera

    Recupera 150 de la base de datos actualizada

    Suma 100 y escribe

    5

    Suma 100 y escribe

    Y libera dato

    Suceso valor del dato

    1

    3

    4

    2

    Registro deDatos Y

    Registro de datos Z

    Bloquea Y

    Lee Z

    Lee Y

    Bloquea Z

    A

    B

    Abrazo Mortal

  • Base de Datos Distribuida

    Una

    Grande

    VOLUMEN DE DATOS

    COPIAS DE DATOS

    Muchas

    Horas

    TIEMPO DE RESPUESTA DE ACTUALIZACION

    Pequeo

    Segundos

    Complejidad de Distribucin

    50

    150

    150

    50

    1

    2

    3

    4

    1

    3

    A

    2

    4

    B

    n

    = Numeracin secuencial de sucesos

    (a) Actualizacin Prdida

    150

    Suceso Valor del dato

    150

    250

    1

    2

    Copia maestra

    1

    C

    A

    2

    B

    n

    = Numeracin secuencial de sucesos

    (b) Bases de datos inconsistentes

    Lee 50

    Lee 50

    Suma 100 y escribe

    Suma 100 y escribe

    Copialocal

    Lee 150

    Conflicto

    = Error descubierto y corregido

    50

    150

    150

    50

    1

    2

    3

    4

    1

    3

    A

    2

    4

    B

    n

    = Numeracin secuencial de sucesos

    (c) Actualizacin Prdida

    250

    5

    Bloqueo de datoy lectura

    Lectura y espera

    Recupera 150 de la base de datos actualizada

    Suma 100 y escribe

    5

    Suma 100 y escribe

    Y libera dato

    Suceso valor del dato

    1

    3

    4

    2

    Registro deDatos Y

    Registro de datos Z

    Bloquea Y

    Lee Z

    Lee Y

    Bloquea Z

    A

    B

    Abrazo Mortal

  • Base de Datos DistribuidaEs evidente que no se debe permitir que tenga lugar una situacin de abrazo mortal y que el sistema debe ser capaz de detectar, analizar y resolver el problema.

  • Base de Datos DistribuidaEl Bloqueo es una tcnica muy empleada con el fin de obtener consistencia de datos. Cuando est tcnica se lleva a cabo de una forma adecuada con una planificacin seriable, se puede mantener la integridad de la base de datos, en la sgte. Imagen Lima ejecuta una transaccin de actualizar dos bases de datos duplicadas que se encuentran en Arequipa y Trujillo. Para ello se debe intercambiar entre los puntos de red los siguientes mensajes :

  • Suceso 1: Lima enva mensajes de peticin de bloqueo a Arequipa y Trujillo.Suceso 2: Arequipa y Trujillo envan MSG de peticin de bloqueo concedida a Lima(caso de haberse aceptado la peticin).Suceso 3: Lima transmite la transaccin de actualizacin.Suceso 4: Arequipa y Trujillo actualizan la base de datos y transmiten a Lima el resultado de la actualizacin.Suceso 5: Lima recibe el resultado de la actualizacin y transmite un MSG para liberar el bloqueo.

    Un algoritmo de bloqueo tpico requiere 5(n-1) mensajes entre puntos de la red para llevar a cabo una transaccin de actualizacin entre puntos distribuidos

  • Una

    Grande

    VOLUMEN DE DATOS

    COPIAS DE DATOS

    Muchas

    Horas

    TIEMPO DE RESPUESTA DE ACTUALIZACION

    Pequeo

    Segundos

    Complejidad de Distribucin

    50

    150

    150

    50

    1

    2

    3

    4

    1

    3

    A

    2

    4

    B

    n

    = Numeracin secuencial de sucesos

    (a) Actualizacin Prdida

    150

    Suceso Valor del dato

    150

    250

    1

    2

    Copia maestra

    1

    C

    A

    2

    B

    n

    = Numeracin secuencial de sucesos

    (b) Bases de datos inconsistentes

    Lee 50

    Lee 50

    Suma 100 y escribe

    Suma 100 y escribe

    Copialocal

    Lee 150

    Conflicto

    = Error descubierto y corregido

    50

    150

    150

    50

    1

    2

    3

    4

    1

    3

    A

    2

    4

    B

    n

    = Numeracin secuencial de sucesos

    (c) Actualizacin Prdida

    250

    5

    Bloqueo de datoy lectura

    Lectura y espera

    Recupera 150 de la base de datos actualizada

    Suma 100 y escribe

    5

    Suma 100 y escribe

    Y libera dato

    Suceso valor del dato

    1

    3

    4

    2

    Registro deDatos Y

    Registro de datos Z

    Bloquea Y

    Lee Z

    Lee Y

    Bloquea Z

    A

    B

    Abrazo Mortal

    Trujillo

    Arequipa

    LIma

    1

    1

    2

    3

    4

    5

    3

    5

    2

    4

    XYZ

    XYZ

    XYZ

    n

    = Numeracin secuencial de sucesos

    1

    2

    3

    4

    5

    = Peticin de Bloqueo

    = Peticin de bloqueo concedida

    = Actualizacin

    = resultado de la actualizacin

    = Liberacin de bloqueo

    Encabezamiento de recuperacin y Actualizacin

  • Base de Datos DistribuidaEl encabezamiento inherente a el proceso es tan slo la punta de un iceberg; cada uno de los mensajes requiere mensajes de control de enlace de datos(CED) para asegurar que los mensajes de la base de datos se reciben correctamente.

    ********************