50
 SGBDD Prof. Vinicius G. Caldini E-mail: [email protected]

SGBDD - Prof Vinicius v2 2012

Embed Size (px)

Citation preview

SGBDD

Prof. Vinicius G. Caldini E-mail: [email protected]

Sistema de Gerncia de Bancos de Dados Distribudos (SGBDD)2

Nos ltimos 25 anos, sistemas de gerncia de bancos de dados tm representado um papel fundamental para o desenvolvimento de sistemas de informao. Estes sistemas adotaram nos primeiros anos uma arquitetura centralizada, no sentido de que o banco de dados reside em um nico processador central, principalmente por razes de economia de escala e controle dos dados. Por outro lado, o avano das tcnicas e o barateamento dos servios de comunicao de dados tornaram possvel e atrativo migrar para sistemas de informao com uma arquitetura distribuda. Esta evoluo levou naturalmente criao de bancos de dados tambm distribudos, onde a responsabilidade de armazenamento, atualizao e controle dos dados dividida entre vrios locais. A comunidade destes bancos de dados locais deve ser interligada e coordenada por um sistema de gerncia de bancos de dados distribudos (SGBDD) que permita acesso a dados remotos de forma transparente e confivel, mas mantenha a autonomia dos bancos locais.SGBDD

29/05/2012

Sistema de Gerncia de Bancos de Dados Distribudos (SGBDD)3

O desenvolvimento de SGBDDs de uso geral lanou um novo desafio em vrias reas, como processamento de consultas, gerncia de transaes e, em especial, controle de integridade e controle de concorrncia. O propsito deste livro reunir as tcnicas mais relevantes resultantes de pesquisa nestas reas, de forma coerente e acessvel a profissionais e estudantes com interesse em software de base para bancos de dados ou sistemas distribudos em geral.SGBDD

29/05/2012

Arquitetura Genrica para SGBDs Distribudos4

SGBD distribudo pode ser visto como uma federao de SGBDs centralizados, autnomos, chamados de SGBDs locais, que so interligados por uma camada de software chamada de SGBD da rede ou SGBD global ("network data base management system").

SGBDD

29/05/2012

Tipos de SGBDs Distribudos5

SGBD distribudo ser chamado de homogneo (em "software") se os SGBDs locais so semelhantes, caso contrrio ser chamado de heterogneo. homogneo se todos os seus SGBDs locais:1. 2.

oferecem interfaces idnticas ou, pelo menos, da mesma famlia; fornecem os mesmos servios aos usurios em diferentes ns.

SGBDs distribudos homogneos aparecem com mais frequncia quando a aplicao a que se destinam no existia antes. Conversamente, SGBDs distribudos heterogneos surgem usualmente quando h necessidade de integrar sistemas j existentes.SGBDD

29/05/2012

Classes de Usurios de um SGBD Distribudo6

Podem ser grupados em:1. 2.

usurios globais, que observam o banco de dados distribudo como um todo e acessam os dados atravs das interfaces do SGBD global; usurios locais que tm contato apenas com o banco de dados local ao n onde residem e interagem apenas com o SGBD local.

Podem ser classificados em quatro grandes grupos (SGBD centralizado ou distribudo) :1.

2. 3. 4.

o administrador do banco, ("database administrator") responsvel pela definio e manuteno do banco (que naturalmente pode ser uma equipe; por tradio mantivemos aqui o singular); analistas e programadores de aplicao, responsveis pelo desenvolvimento de aplicaes sobre o banco de dados; usurios casuais, como gerentes, que usualmente no so programadores treinados e fazem uso do banco irregularmente; usurios paramtricos, como caixas de banco, que fazem uso do banco de dados atravs de transaes paramtricas pr-programadas.

SGBDD

29/05/2012

REQUISITOS FUNCIONAIS DE UM SGBD DISTRIBUDO7

Independncia Fsica de Dados; Independncia de Localizao e Replicao; Autonomia Local; Interfaces de Muito Alto Nvel; Otimizao Automtica; Reestruturao Lgica do Banco e Suporte a Vises; Segurana dos Dados e Suporte Administrao dos Dados.SGBDD

29/05/2012

ESPECIFICAO DAS INTERFACES DE UM SGBD DISTRIBUDO8

Interfaces Globais e Locais:1.2.

as interfaces globais, oferecidas pelo SGBD global aos usurios globais; as interfaces locais, oferecidas pelos SGBDs locais aos usurios locais.

Especificao das Interfaces, tradicionalmente um SGBD centralizado oferece:1. 2. 3.

4.

uma linguagem de definio de dados (LDD) usada para definir novos bancos de dados; uma ou mais linguagens de manipulao de dados (LMDs) usadas para recuperar e modificar os dados armazenados no banco; opcionalmente, uma linguagem de gerao de relatrios (LGR) que, como o nome indica, apropriada para extrair relatrios do banco de dados; utilitrios para manuteno do banco.SGBDD

29/05/2012

PRINCIPAIS FUNES DE UM SGBD DISTRIBUDO9

As principais funes de um SGBD (centralizado ou distribudo) podem ser grupadas em sete grandes mdulos:1. 2. 3. 4. 5. 6. 7.

Armazenamento do Diretrio de Dados Armazenamento do Banco de Dados Processamento de Comandos da Linguagem de Manipulao de Dados Gerncia de Transaes Controle de Integridade Controle de Concorrncia Controle de Acesso ao BancoSGBDD

29/05/2012

Refinamento da Arquitetura de um SGBD Distribudo10

De acordo com a arquitetura genrica adotada, um SGBD distribudo consiste de uma coleo de SGBDs locais interligados pelo SGBD global. O SGBD global pode, por sua vez, ser refinado em trs grandes componentes:1.

2. 3.

diretrio de dados global (DDG): contm a descrio do banco de dados distribudo. O critrio usado para sua distribuio/duplicao crucial para a performance do sistema; gerente de transaes (GT): interpreta e controla o processamento de consultas e transaes acessando o BDD; gerente de dados (GD): interface com o SGBD local, fazendo as tradues necessrias no caso de sistemas heterogneos.

Cada SGBD local possui tambm um diretrio de dados local descrevendo o banco de dados local. Cada n da rede conter ento um SGBD local e uma cpia do SGBD global, caso armazene parte do banco, ou apenas o gerente de transaes, caso no armazene parte do banco.SGBDD

29/05/2012

Ciclo de um Comando Distribudo11

SGBDD

29/05/2012

1 - Armazenamento do Diretrio de Dados12

Diretrio de dados global, que descreve o banco de dados distribudo e usado pelas cpias do SGBD global, e um diretrio local para cada SGBD local, descrevendo o banco local. O diretrio contm, inicialmente, apenas informao sobre as suas prprias estruturas e outras transaes e usurios especiais. A descrio de novos bancos de dados ento acrescentada ao diretrio como resultado do processamento de comandos da LDD; novos usurios so catalogados atravs de comandos de autorizao da LDD; e novas transaes so acrescentadas tambm atravs de comandos especiais de catalogao.

* LDD- linguagem de definio de dadosSGBDD

29/05/2012

2 - Armazenamento do Banco de Dados13

A funo de armazenamento do banco de dados se refere s estruturas de arquivo, mtodos de acesso, tcnicas de compresso, etc., oferecidas como opes para organizao fsica dos dados em memria secundria. Esta uma funo dos SGBDs locais j que, uma vez definidos os critrios de distribuio do banco, o problema de armazenamento fsico puramente local. As opes de armazenamento oferecidas pelo SGBD tornam-se aparentes sob forma de comandos especiais da LDD usados para descrio da organizao fsica do banco de dados. Esta parte da linguagem , s vezes, denominada de linguagem de definio interna de dados. A arquitetura do subsistema de armazenamento pode ser dividida em dois nveis:1. 2.

O nvel mais baixo, que chamaremos de nvel fsico, consiste de uma coleo de mtodos de acesso primrios; O segundo nvel do subsistema de armazenamento, que chamaremos de nvel interno ou lgico, pode ser encarado como um SGBD independente

SGBDD

29/05/2012

3 - Processamento de Comandos da Linguagem de Manipulao de Dados14

Em um SGBD distribudo, o processamento de comandos subdividido nas seguintes fases:1.

2.

3. 4.

anlise sinttica: inclui a traduo dos nomes das estruturas do banco de dados para uma forma interna com auxlio do diretrio de dados; otimizao: seleciona um plano de execuo para o comando; distribuio do plano de execuo; execuo dos subcomandos pelos SGBDs locais e criao do resultado final.SGBDD

29/05/2012

4 - Gerncia de Transaes15

As funes de gerncia de transaes so:1. 2. 3.

implementar o conceito de transao; gerenciar as atividades e recursos do sistema; monitorizar o incio e trmino das atividades do sistema.

SGBDD

29/05/2012

5 - Controle de Concorrncia16

Controle de concorrncia visa a garantir que, em toda execuo simultnea de um grupo de transaes, cada uma seja executada como se fosse a nica do sistema. Isto significa que, em uma execuo concorrente, transaes no devem gerar interferncias que levem anomalias de sincronizao. As anomalias mais comumente encontradas so perda de atualizaes, perda de consistncia do banco e acesso a dados inconsistentes.SGBDD

29/05/2012

6 - Controle de Integridade17

Controle de integridade enderea os seguintes problemas:1.

2.

3.

implementar o cancelamento, recuperao e trmino de transaes; trazer o banco de dados, em caso de falhas, a um estado consistente que reflita apenas o efeito de todas as transaes j concludas; recuperar regies danificadas do banco de dados.

SGBDD

29/05/2012

7 - Controle de Acesso ao Banco18

O objetivo da funo de controle de acesso implementar mecanismos que garantam a segurana dos dados armazenados no banco, permitindo que informao seja lida ou modificada apenas por usurios autorizados.

SGBDD

29/05/2012

ESPECIFICAO DE BANCOS DE DADOS DISTRIBUDOS19

Descrio de Bancos de Dados Centralizados:

A descrio de um banco de dados centralizado usualmente est dividida em trs nveis: conceitual ou lgico, interno ou fsico e externo

SGBDD

29/05/2012

ESPECIFICAO DE BANCOS DE DADOS DISTRIBUDOS20

Descrio de Bancos de Dados Distribudos

A descrio de um banco de dados distribudo, refletindo os requisitos de que a localizao e replicao dos dados deve ser transparente aos usurios do BDD e de que o sistemas locais devem manter sua autonomia, apresentada a seguir:

SGBDD

29/05/2012

Um Exemplo da Descrio de Bancos de Dados Distribudos21

O banco de dados usado como exemplo refere-se a fornecedores, com nmero, nome e cidade-sede; peas, com cdigo e nome; e fornecimentos relacionando um fornecedor a cada pea que fornece e indicando a quantidade fornecida. Assumindo que o banco descrito no modelo relacional, o esquema conceitual seria:

SGBDD

29/05/2012

Um Exemplo da Descrio de Bancos de Dados Distribudos22

Poderamos definir dois esquemas externos globais da seguinte forma:

SGBDD

29/05/2012

Um Exemplo da Descrio de Bancos de Dados Distribudos23

Poderamos definir dois esquemas externos globais da seguinte forma:

Nota: lgebra relacional ser usada para indicar mapeamentos neste exemplo; a operao de juno natural ser indicada pelo smbolo '*' e as operaes de projeo e seleo sero denotadas da forma usual, ou seja, R[X] indicar a projeo de R na lista de atributos X e R[B], onde B uma qualificao, SGBDD 29/05/2012 indicar uma seleo das tuplas de R que satisfazem B.

Um Exemplo da Descrio de Bancos de Dados Distribudos24

Assumindo que o sistema homogneo e distribudo em apenas dois ns, os esquemas conceituais locais e a distribuio do esquema conceitual global seriam ento descritos da forma abaixo (o primeiro n conter todos os fornecedores com sede em Passa Trs, todos os fornecimentos em que esto envolvidos e o nome e cdigo das peas; o segundo n conter o resto dos fornecedores e seus fornecimentos, alm do cdigo, cor e peso das peas.

SGBDD

29/05/2012

PROJETO DE BANCOS DE DADOS DISTRIBUDOS25

Em primeiro lugar, o projeto do esquema conceitual global e o dos esquemas externos globais inteiramente semelhante ao caso centralizado, j que o banco de dados distribudo dever se comportar como centralizado perante os usurios globais. Alm disto, o projeto dos esquemas internos locais tambm idntico ao de bancos centralizados, exceto que a carga imposta por acessos remotos aos dados locais tambm deve ser levada em considerao. Portanto, o problema bsico de projeto de bancos de dados distribudos reside no projeto dos esquemas conceituais locais, pois estes refletem a estratgia de distribuio do banco.SGBDD

29/05/2012

As estratgias de distribuio26

As estratgias de distribuio so classificadas em particionamento e replicao. Seja D uma estrutura (lgica) de dados do esquema conceitual global. Dizemos que D particionada verticalmente (ou estruturalmente) quando D mapeada em duas ou mais estruturas (lgicas) de dados que no so idnticas a D e que pertencem a diferentes esquemas conceituais locais. Dizemos que D particionada horizontalmente (ou particionada por ocorrncia) quando D mapeada em estruturas idnticas a D e pertencentes a dois ou mais esquemas conceituais locais de tal forma que o mapeamento define um particionamento (no sentido matemtico) do conjunto de dados associado a D. No exemplo da seo anterior, FORNECEDORES foi particionada horizontalmente em FORNECEDORES1 e FORNECEDORES2, o mesmo acontecendo com FORNECIMENTO. J PECAS foi particionada verticalmente em PECAS1 e PECAS2. Dizemos que D replicada quando D mapeada em duas ou mais estruturas (lgicas) dedados idnticas a D e pertencentes a diferentes esquemas conceituais locais de tal forma que o apeamento de D em cada uma destas estruturas sempre a identidade. Ou seja, existiro cpias idnticas do conjunto de dados associado a D armazenadas em dois ou mais ns. A replicao total quando cada banco de dados local contm uma cpia completa do banco.Caso contrrio a replicao parcial.

SGBDD

29/05/2012

Porqu fragmentar?27

Vantagens: Utilizao: Aplicaes que trabalham com subconjuntos e no com a relao completa; Eficincia: Os dados so armazenados onde so utilizados mais frequentemente; Paralelismo: As transaes podem ser divididas em diversas consultas (subconsultas), que operam sobre os fragmentos; Segurana: Dados no necessrios localmente no so armazenados e no esto disponveis para utilizadores no autorizados. Desvantagens: Desempenho, Integridade.SGBDD

29/05/2012

Vantagens e Desvantagens da replicao28

Vantagens: Melhoramento da disponibilidade e da fiabilidade dos dados; Paralelismo (tratamento de parte dos dados em n); Aumenta o desempenho de queries globais; Reduo dos dados a transferir. Desvantagens: Custo de manter uma consistncia mtua; Aumento do custo de atualizaes (mais lentas); Aumento da complexidade do controlo da concorrncia.SGBDD

29/05/2012

Independncia de dados29

O desenvolvimento do DBMS(database management system) ajudou a atingir plenamente a independncia de dados (transparncia) Fornecer centralizada e controlada manuteno de dados e acesso Aplicao imune a organizao de arquivos fsicos e lgico

SGBDD

29/05/2012

Independncia de dados30

Sistema de banco de dados distribudo a unio do que parecem ser dois diametralmente opostos abordagens para processamento de dados: sistemas de banco de dados e redes de computadoresAs redes de computadores promover um modo de trabalho que vai contra a centralizao Questes-chave para entender essa combinao O objetivo mais importante da tecnologia DB a centralizao no integrao A integrao possvel, sem centralizao, ou seja, integrao de bases de dados e rede no significa centralizao (na verdade, muito pelo contrrio)

Objetivo dos sistemas de banco de dados distribudos: a integrao de dados e distribuio de dados transparncia

SGBDD

29/05/2012

Controle Semntico de dados31

View management Security control(Controle de Segurana) Integrity control(Controle de Integridade) Controle de dados semntico normalmente inclui o gerenciamento de visualizao, controle, segurana e controle de integridade semntica. Informalmente, essas funes devem garantir que os usurios autorizados realizar correta operaes no banco de dados, que contribuem para a manuteno da integridade da base de dados. Em RDBMS o controle de dados semntico pode ser alcanado de maneira uniforme

Views, as restries de segurana e restries de integridade semntica podem ser definidas como regras que o sistema aplica automaticamenteSGBDD

29/05/2012

Controle Semntico de dados32

Definio de Views em DDBMS semelhante de DBMS centralizado No entanto, um View em um DDBMS pode ser derivado de relaes fragmentadas armazenados em lugares diferentes.

SGBDD

29/05/2012

Segurana de Dados33

A segurana de dados protege os dados contra acesso no autorizadas e tem dois aspectos:

Proteo de dados; Controle de autorizao.

Proteo de dados impede usurios no autorizados a compreenso do contedo fsico do de dados. Controle de autorizao deve garantir que somente usurios autorizados a realizar operaes a que eles esto autorizados a realizar no banco de dados. Controle de autorizao, em SGBD(D) mais complicado que em sistemas operacionais, pois: - Em um sistema de arquivos: objetos de dados so arquivos - Em um SGBD: objetos de dados so Views, (fragmentos de) relaes, tuplas, atributosSGBDD

29/05/2012

Segurana de Dados34

Os privilgios so armazenados no diretrio / catalog, conceitualmente como uma matriz.

SGBDD

29/05/2012

Segurana de Dados35

Problemas adicionais de controle de autorizao em um ambiente distribudo a partir do fato de que objetos e sujeitos so distribudos: Autenticao

de usurio remoto. Managmenet de regras de autorizao distribudos. Manipulao de Views e de grupos de usurios.

SGBDD

29/05/2012

Restries de Integridade Semntica36

Um banco de dados dito para ser consistente se preencherem um conjunto de restries, chamado semntica restries de integridade Controlo de integridade semntica evoludo a partir de procedural methods(em que os controles foram incorporado em programas de aplicao) para mtodos declarativas

Evitar o problema da dependncia de dados, redundncia de cdigo, e mau desempenho do procedural methodsSGBDD

29/05/2012

O que a verificao semntica?37

Regras de semntica especificam como vlidas as referncias externas feitas. Assim, a verificao da semntica verifica que as referncias a objetos de banco de dados e variveis de host so vlidos e que os tipos de dados variveis de host esto corretas. Por exemplo, as seguintes declaraes SQL incorporadas contem erros de semntica: EXEC SQL DELETE FROM empp WHERE deptno = 20; -- non existent table, EMPP EXEC SQL SELECT * FROM emp WHERE ename = :emp_name; -- undeclared host variable, emp_nameSGBDD

29/05/2012

Gerencia de transaes38

As regras de integridade definidas no banco de dados constituem uma poderosa ferramenta para a manuteno da consistncia de dados, impedindo a atualizao de dados que no sigam as regras definidas. Outro recurso importante para a manuteno de consistncia de dados refere-se definio de transaes de atualizao. Por default, cada comando de atualizao (INSERT, DELETE ou UPDATE) encarado como uma nica transao. A SQL fornece suporte para a definio de transaes atravs do agrupamento de vrios comandos de atualizao. Uma transao pode ser constituda por uma ou mais operaes de acesso base de dados. Todas as operaes devem ser bem sucedidas, caso contrrio os efeitos da transao devem ser revertidos

SGBDD

29/05/2012

Gerencia de transaes39

Uma transao bem-sucedida termina quando um comando COMMIT executado. O comando COMMIT finaliza e efetiva todas as alteraes feitas na base de dados durante a transao. Se uma transao aborta antes de o comando COMMIT ser executado, a transao deve ser desfeita, isto , todas as mudanas feitas durante a transao devem ser desconsideradas. O processo de recuperao automtica que permite desfazer as alteraes feitas contra a base chamado ROLLBACK. O ROLLBACK reverte os efeitos de uma transao como se ela nunca tivesse existido.SGBDD

29/05/2012

Gerencia de transaes40

Quando um dado acessado por uma transao, o perigo de interferncia de outras transaes acessarem o mesmo dado constante. O gerenciamento de LOCKS ajuda a prevenir isto. H, normalmente, independente da nomenclatura dada por fornecedores de SGBDs, dois nveis de locks importantes:

locks exclusivos: ou XLOCKS, usados para garantir o uso de um determinado dado por um nico usurio. especialmente utilizado em casos de atualizaes. locks compartilhados: ou SLOCKS, usados para permitir que mais de um usurio acesse o mesmo dado ao mesmo tempo. especialmente utilizado em casos de pesquisa em tela, por exemplo. Os SLOCKS garantem que um usurio possa consultar (e somente consultar) um dado se houver outros usurios acessando o mesmo dado para consulta.

SGBDD

29/05/2012

Gerencia de transaes41

Gerenciadores de Banco de dados OLTP(On-line Transaction Processing)

Os Gerenciadores de banco de dados OLTP ou transacionais permitem que os dados armazenados em um banco de dados permaneam disponveis 24 horas por dia. Estes Gerenciadores possuem arquitetura complexa e bastante sofisticada que garante a integridade transacional das operaes efetuadas contra a base de dados. Adotam a filosofia all-or-nothing pela qual uma transao s efetivada contra a base ao se alcanar a instruo COMMIT. Este procedimento garante que processos longos de modificao do estado da base jamais sejam efetivados parcialmente. Da mesma forma, este gerenciadores permitem que seja feito bachup do seu contedo de maneira transparente para que est usando os dados armazenados, no sendo necessrio desativar o servidor de dados.

SGBDD

29/05/2012

Gerencia de transaes42

Log de TransaesO

Log de transaes, embora possa ser encontrado tambm em SGBDs OLTP. Normalmente trata-se de um arquivo que registra todo o desenvolvimento de cada transao ocorrida ou em curso. Sua importncia est na capacitao de efetuao de rollcks e rollforwords, que possibilitam desfazer e refazer transaes.

SGBDD

29/05/2012

Gerencia de transaes43

Falhas

Os bancos de dados esto sujeitos a diversas causas de falhas:queda do fornecimento de energia; falhas de hardware; falhas ou sabotagem de operao; etc.

Aps ocorrida uma falha, j na reinicializao do banco de dados, o SGBD deve possuir ferramentas que possibilitem verificar que um encerramento anormal ocorreu e determinar as providncias a se tomarSGBDD

29/05/2012

Gerencia de transaes44

ROLLFORWORD

Quando da reinicializao de um banco de dados aps uma falha, algumas transaes podem ter sido perdidas na memria, embora um comando Commit j tenha sido emitido. Isto quer dizer que no log de transaes a transao considerada completa. No entanto, os efeitos no foram registrados em definitivo na base de dados. Isto quer dizer que esta transao deve ser completada novamente. Usando o log de transaes o SGDB "sabe" que partes da transao ainda no foram gravados em definitivo. As etapas que ainda faltam ser gravadas so ento executadas at ser encontrado o comando COMMIT gravado no log de transaes. A este processo chamamos refazer a transao ou rollfoward. Diferente do rollback, que pode ser executado por uma aplicao ou no processo de reinicializao do banco de dados, o rollfoward pode ser apenas executado quando do processo de reinicializao do banco de dados.SGBDD

29/05/2012

Gerencia de transaes45

SYNCPOINT

Embora algumas SGDBs permitam que cada transao completada seja imediatamente gravada na base, este no sem dvida o melhor meio de se efetivar transaes, devido sobrecarga de gravao contra o banco, o que ocasiona uma queda de performance considervel. Cada operao que constitui uma transao pode ser mantida em memria (gerenciada por paginadores, cache managers, etc) e registrada contra o log de transaes, sendo gravada contra a base em intervalos de tempo pr-determinados. Quando terminado o intervalo, todos os efeitos da alteraes mantidos em memria so gravados efetivamente contra a base, sem prejuzo do gerenciamento de lock em curso. A este "alarme" que permite disparar a efetivaes contra a base chamamos syncpoint. Os syncpoints sincronizam log de transaes, base de dados e memria.

SGBDD

29/05/2012

Gerencia de transaes46

TWO-PHASE COMMIT

Uma das principais caractersticas, e tambm das que apresentam maior dificuldade de implementao plena, para BD distribudos o COMMIT de duas fases ou two-phase commit (TPC). Imagine uma transao sobre um banco de dados distribudo que atualize tabelas de 3 ou 4 mquinas. O que aconteceria transao se uma das mquinas que teve alguma tabela j atualizada sasse do ar enquanto a transao prosseguia at certo ponto quando ento um rollfoward fosse solicitado por qualquer razo? Ao tentar desfazer a parte da transao ocorrida sobre o equipamento em falha poderia acontecer de no serem revertidos os efeitos da transao sobre os dados daquele equipamento, mas dos demais sim. Isto colocaria o banco numa situao de exceo, ou erro transacional, ou ainda de falha da integridade transacional. Para evitar este problema, e da mesma forma garantir que quando uma transao emita um COMMIT, todos os gerenciadores envolvidos efetuem as partes da transao com que esto envolvidos, faz-se necessrio emitir um COMMIT para cada gerenciador. A transao s ser efetivamente "commitada" no caso de todos os gerenciadores envolvidos responderem OK solicitao.

SGBDD

29/05/2012

Controle de concorrncia distribuda47

Controle de concorrncia usado para garantir a consistncia e o isolamento de transaes Protocolos de controle de concorrncia garantem a serializao no processamento de transaes Protocolos

de bloqueio: controlam o acesso ao BD, bloqueando os dados que esto sendo usados Protocolos com base em timestamps: associam marcas de tempo s operaes de leitura e escrita Protocolos de validao: efetuam testes de validao dos dados antes das operaes de escritaSGBDD

29/05/2012

Controle de concorrncia distribuda48

Concorrncia em BDs Distribudos Controle de concorrncia essencial em BDDs preciso garantir a consistncia e o isolamento, apesar da fragmentao e da replicao dos dados Devemos evitar deadlocks distribudos, que so ainda mais difceis de detectar e recuperar Os protocolos de controle de concorrncia so modificados para trabalhar em BDs distribudos Bloqueio nico (Centralizado) Um site funciona como gerenciador de locks, que administra todos os pedidos de bloqueio de dados simples, mas sujeito a falhas, e pouco escalvelSGBDD

29/05/2012

Interoperabilidade de Banco de dados49

No processo de automao da integrao dos sistemas, muitas das tcnicas para resolver a heterogeneidade semntica ou lgica de um sistema de integrao baseiam-se em arquiteturas ou frameworks derivados dos conceitos bsicos de SGBD. Alm disso, para diminuir a heterogeneidade, tecnologias de modelos globais com representaes dos diversos sistemas que compem o ambiente; ambientes de integrao que fazem do processo uma rica interface onde usurios criam esquemas para a interoperao de sistemas como se fossem programadores; padres da indstria do software como: JDBC, ODBC e outros, os quais ajudam no mapeamento do modelo global fonte de dados; e finalmente a disposio do sistema integrado sobre uma interface de uso comum e largamente utilizada na Internet so de fundamental importncia para a reduo da heterogeneidade e o crescimento da interoperao dos sistemas

SGBDD

29/05/2012

Interoperabilidade de Banco de dados50

A maioria das metodologias de interoperabilidade so baseadas em arquiteturas ou frameworks que oferecem uma forma genrica para atingir a interoperao. Apesar da possibilidade de construo de sistemas personalizados que deem suporte interoperao, as arquiteturas de interoperabilidade so variaes de tcnicas bsicas dos SGBD. As arquiteturas utilizam vises, modelos de dados e interfaces, alm de novas implementaes de tcnicas de atualizao de dados e recuperao de informaes.SGBDD

29/05/2012