o que é banco de dados distribuído_ _ imasters

7
28/7/2014 O que é Banco de Dados Distribuído? | iMasters http://imasters.com.br/banco-de-dados/o-que-e-banco-de-dados-distribuido/ 1/7 Portal Fórum 7Masters Ferramentas Cursos online Agenda Revista iMasters InterCon Faça Login Faça sua busca Você está aqui: Tweetar 14 5 BANCO DE DADOS O que é Banco de Dados Distribuído? 08 de outubro de 2013 por Luiz Garetti Rosário A necessidade de manipular e gerenciar grandes quantidades de dados de maneira confiável, junto com o interesse em descentralizar a informação, fez com que fossem impulsionados os estudos e desenvolvimentos na área de banco de dados distribuídos (BDD). Diferente do banco de dados convencional, também conhecido como centralizado, no qual toda a massa de dados fica em um único local, no BDD, os dados ficam distribuídos em diversos servidores, e esses servidores podem estar fisicamente próximos ou, em alguns casos, geograficamente distantes. Arquitetura de Banco de Dados Centralizado Como os dados nesse ambiente muitas vezes estão replicados entre servidores, além de melhorar a eficiência no desempenho, consegue prover uma melhora na segurança dos dados em caso de desastres, pois não existe mais um único ponto de falha. 40 Like Share CURSOS RELACIONADOS ÚLTIMAS NOTÍCIAS 25/07 ÀS 05H40 Ao completar um ano, Chromecast registra 400 milhões de transmissões 25/07 ÀS 04H35 Lógica de Programação – Primeiros passos DESIGN & UX FRONT-END DEV BD MOBILE MARKETING GESTÃO APIS SEARCH INFRA TECH E-COMMERCE ANALYTICS

Upload: gilmarinacio

Post on 23-Nov-2015

14 views

Category:

Documents


0 download

TRANSCRIPT

  • 28/7/2014 O que Banco de Dados Distribudo? | iMasters

    http://imasters.com.br/banco-de-dados/o-que-e-banco-de-dados-distribuido/ 1/7

    Portal Frum 7Masters Ferramentas Cursos online Agenda Revista iMasters InterCon Faa Login

    Faa sua busca

    Voc est aqui:

    Tweetar 14 5

    BANCO DE DADOS

    O que Banco de DadosDistribudo?

    08 de outubro de 2013 por Luiz Garetti Rosrio

    A necessidade de manipular e gerenciar grandes quantidades de dados de maneira

    confivel, junto com o interesse em descentralizar a informao, fez com que fossem

    impulsionados os estudos e desenvolvimentos na rea de banco de dados distribudos

    (BDD).

    Diferente do banco de dados convencional, tambm conhecido como centralizado, no

    qual toda a massa de dados fica em um nico local, no BDD, os dados ficam distribudos

    em diversos servidores, e esses servidores podem estar fisicamente prximos ou, em

    alguns casos, geograficamente distantes.

    Arquitetura de Banco de Dados Centralizado

    Como os dados nesse ambiente muitas vezes esto replicados entre servidores, alm

    de melhorar a eficincia no desempenho, consegue prover uma melhora na segurana

    dos dados em caso de desastres, pois no existe mais um nico ponto de falha.

    40Like Share

    CURSOS RELACIONADOS

    LTIMAS NOTCIAS

    25/07 S 05H40

    Ao completar um ano,Chromecast registra 400 milhesde transmisses

    25/07 S 04H35

    Lgica de Programao Primeirospassos

    DESIGN & UX FRONT-END DEV BD MOBILE MARKETING GESTO APIS SEARCH INFRA TECH E-COMMERCE ANALYTICS

  • 28/7/2014 O que Banco de Dados Distribudo? | iMasters

    http://imasters.com.br/banco-de-dados/o-que-e-banco-de-dados-distribuido/ 2/7

    Arquitetura de Banco de Dados Distribuda

    A arquitetura de BDD totalmente transparente para os usurios que utilizam

    aplicaes nessa arquitetura distribuda, ou seja, para o usurio, os dados esto

    centralizados em um nico servidor, mas na verdade eles podem estar espalhados,

    distribudos em vrios locais fisicamente separados.

    Arquitetura de Banco de Dados Distribudo

    Na implementao desse ambiente distribudo, existem vrios desafios, e manter a

    consistncia dos dados certamente est entre os mais importantes e complexos.

    Garantir que os dados esto consistentes altamente complexo, pois uma nica

    transao pode manipular dados em diversos servidores. Para exemplificar, imagine

    uma instituio financeira na qual o banco de dados est distribudo em trs grandes

    cidades brasileiras So Paulo, Braslia e Rio de Janeiro -, e transaes distribudas

    entre esses servidores so executadas o dia todo para armazenar informaes e

    movimentaes de seus clientes.

    Agora imagine a situao em que o cliente Jos sacou R$ 1.000,00 de sua conta

    corrente, e essa movimentao deve ser replicada para todos os servidores envolvidos

    na transao; caso contrario, o saldo de Jos ficar inconsistente, gerando informaes

    diferentes em determinado servidor.

    Site afirma que Google comprouTwitch, que deve integrar jogosao YouTube

    25/07 S 04H00

    Instagram pode ganhar recursopara concorrer com Snapchat

    25/07 S 03H40

    Oracle Linux 7 disponibilizadopara download

    25/07 S 02H30

    Vendas de tablets registram altade 11% no mundo todo

    TODAS AS NOTCIAS

    Find us on Facebook

    iMasters

    101,197 people like iMasters.

    Facebook social plugin

    Like

  • 28/7/2014 O que Banco de Dados Distribudo? | iMasters

    http://imasters.com.br/banco-de-dados/o-que-e-banco-de-dados-distribuido/ 3/7

    Isso pode causar grandes transtornos, pois teoricamente o usurio acessa os dados em

    servidores de acordo com a localidade, diminuindo assim a latncia e retornando o

    resultado com mais rapidez, ou seja, se o usurio est acessando sua conta em So

    Paulo, o sistema busca os dados nos servidores de So Paulo, e assim por diante.

    Como no exemplo acima Jos sacou R$ 1.000,00 de sua conta, imagine se ele estivesse

    em So Paulo e essa informao no fosse replicada para o servidor de Braslia? No

    servidor de So Paulo, ele estaria com determinado saldo e em Braslia com R$

    1.000,00 a mais em sua conta.

    Esse um dos exemplos, mas poderia ser o estoque de um produto que foi vendido

    porm no foi executada baixa em todos os servidores envolvidos na transao,

    gerando informaes falsas sobre a quantidade em estoque desse produto. Claro que

    esse ambiente s um exemplo simples para demonstrar a consistncia dos dados.

    A fim de garantir toda essa segurana e confiabilidade dos dados, o BDD preserva as

    propriedades ACID,onde:

    A Atomicidade: Indica que a transao deve ter todas as suas aes concludas

    ou no. Caso todas as aes da transao sejam terminadas com sucesso, ento

    executado o Commit na transao inteira; caso contrrio, a transao inteira deve

    ser revertida, Rollback.

    C Consistncia: A execuo de uma transao isolada preserva a consistncia do

    banco de dados.

    I Isolamento: Cada transao no toma conhecimento de outras transaes

    concorrentes.

    D Durabilidade: Depois que transao for completada com sucesso (Commit), as

    mudanas que ela faz no banco de dados persistem.

    Protocolos de efetivao

    Em ambiente distribudo, podem existir transaes locais e globais. Transaes locais

    seriam aquelas que iniciam e terminam no mesmo n, no afetando outros servidores

    para realizar determinada transao. J as globais seriam aquelas que iniciam em

    determinado n e terminam em outro n, ou iniciam e terminam no mesmo n, porm no

    meio da transao foi necessrio acessar outro n para realizar alguma operao,

    afetando assim outro servidor em algum momento do processamento.

    Os protocolos de efetivao garantem integridade de transao distribuda que atinge

    mais de um servidor, fazendo com que a transao s seja efetuada (Commit) ou

    abortada (Rollback) quando todos os servidores entram em um acordo.

    Two-Phase Commit

    O protocolo de efetivao Two-Phase Commit composto por duas fases, em que todos

    os servidores envolvidos na transao T entram em acordo se efetivaram (Commit) ou

    abortaram (Rollback) a transao.

    Theree-Phase Commit

    O protocolo Theree-Phase Commit uma continuao do protocolo de duas fases em

    que adicionada uma terceira fase que busca a diminuio de falhas do coordenador.

    Com a implementao da terceira fase, a troca de dados entre coordenador e

    gerenciadores de transao aumenta o grau de complexidade e proporciona um maior

    trafego na rede (overhead).

    Vantagens na utilizao de BDD

    A confiabilidade assim como a disponibilidade visam ao funcionamento do sistema

    mesmo com falhas, mas sem violar a consistncia do banco de dados.

    Autonomia local, um departamento pode controlar seus dados (j que o mais

    familiarizado com eles).

    O aumento de desempenho uma vantagem em um sistema de banco de dados

    distribudos, a consulta pode ser subdividida e realizada paralelamente.

    Maior disponibilidade uma falha em um banco de dados afetar somente um

    fragmento, em vez do banco de dados inteiro.

  • 28/7/2014 O que Banco de Dados Distribudo? | iMasters

    http://imasters.com.br/banco-de-dados/o-que-e-banco-de-dados-distribuido/ 4/7

    VB .NET Selecionando registrosentre um intervalo dedatas no SQL Server

    .NET, Banco de Dados,Visual Basic

    Comente!

    Vdeo Cassandra #7Masters

    Banco de Dados

    1 comentrio

    Office 2013 Comousar o Geoflow noExcel 2013

    Anlise de Dados, Bancode Dados,Desenvolvimento

    Comente!

    Falha em um servidor

    Desvantagens na utilizao de BDD

    A complexidade dos problemas uma desvantagem, porque os problemas so mais

    complexos do que em bancos de dados centralizados, pois alm de haver os

    problemas que so comuns em banco de dados centralizados, que normalmente

    ocorrem nos servidores locais, haver os problemas que surgem com a comunicao

    entre esses servidores locais.

    Implantao mais cara o aumento da complexidade e uma infraestrutura mais

    extensa significam custo extra de trabalho.

    Falta de padres ainda no h metodologias e ferramentas para ajudar usurios a

    converterem um SGBD centralizado para um SGBD distribudo.

    Com o crescente avano tecnolgico em comunicao de dados, BDD passou a ser uma

    possibilidade para trabalhar com banco de dados em grande escala, possibilitando a

    distribuio geogrfica (WAN). Como foi demonstrado, existem algumas desvantagens

    devido complexidade e aos custos, mas com certeza os pontos positivos as superam.

    Essa rea muito ampla, demanda muito estudo e, consequentemente, vrios pontos

    de duvidas interessantes, pois a construo de uma arquitetura como essa envolve

    vrios departamentos, como infraestrutura, segurana da informao e banco de dados.

    Bons estudos e at a prxima.

    Artigos relacionados

    Luiz Garetti Rosrio

    Graduado em Cincia da Computao pela Universidade Paulista,possui artigos publicados em grandes eventos na rea de Banco deDados com foco em Alta Disponibilidade e Distribuio Geogrficados Dados. Apaixonado por Banco de Dados e Motocicletas, profissional certificado Microsoft e atual como DBA SQL Server eSybase.

    Pgina do autor Email

  • 28/7/2014 O que Banco de Dados Distribudo? | iMasters

    http://imasters.com.br/banco-de-dados/o-que-e-banco-de-dados-distribuido/ 5/7

    COMENTE TAMBM

    Leia os ltimos artigos publicados por Luiz Garetti Rosrio

    Mais de um arquivo de log (.ldf) no SQL Server?

    Buffer Pool, Maximum e Minimum Server Memory no SQL Server

    Escovando bit com operadores KEY Lookup e RID Lookup

    Como e por que as estatsticas influenciam no desempenho do SQLServer? Parte 02

    Como e por que as estatsticas influenciam no desempenho do SQLServer? Parte 01

    11 COMENTRIOS

    Jackson MoratoExcelente!Seria interessante tambm um exemplo de implementao e as ferramentasdisponveis para os bancos de dados mia utilizados

    H 10 meses Responder

    Luiz Garetti RosrioOl Jackson, Obrigado.Quando se fala em BDD podemos pensar em dois modos. Homogneoonde todos SGBDS so do mesmo fabricante, por exemplo, SQLServer da Microsoft ou pode ser Heterogneo onde existem SGBDSdiferentes no conjunto geral que engloba todo o BDD.Sobre as ferramentas mais utilizadas, a grande maioria dos casos queconheo so feitos atravs do Linked Server onde o MSDTC coordenaas transaes distribudas. Se tiver interesse, me passe seu e-mailque te encaminho alguns materiais que documentam a implementaona pratica de um BDD.Abraos

    H 10 meses Responder

    EderBoa noite.Gostaria de saber se voc tem o email do felipe maciel e se poderia passar paramim, pois estou fazendo um tcc sobre replicao de dados e achei o artigo dele,mas o odbc do mysql que ele usou no estou conseguindo achar para instalar, poissaiu uma verso mais recente, s que ela da problema na hora de configurar. Sevoc puder fazer isto por mim eu agradeo, e ser que voc pode me passar algunsmateriais de BDD.Obrigado

    H 10 meses Responder

    Luiz Garetti RosrioBoa Tarde Eder,No tenho o e-mail do Felipe.Me mande o artigo dele sobre Replicao do MySQL, que te ajudo asolucionar o problema.

    H 10 meses Responder

    Luiz Garetti RosrioMeu e-mail [email protected] aproveito e te envio alguns materiais sobre BDD tambm.Abraos

    H 10 meses Responder

    Paulo Victornico comentrio que posso dizer que o post bem instrutivo. Me interessamoutras contribuies a esse respeito ;)

    H 10 meses Responder

    Luiz Garetti RosrioOl Paulo, Blz?Obrigado.A ideia deste artigo realmente era demonstrar o que o BDD e osprincipais conceitos.Irei publicar alguns artigos mais avanados sobre esse tema.Grande Abrao.

    H 10 meses Responder

  • 28/7/2014 O que Banco de Dados Distribudo? | iMasters

    http://imasters.com.br/banco-de-dados/o-que-e-banco-de-dados-distribuido/ 6/7

    thiano limaLi seu comentrio sobre uma ferramente para SQL Server, voc tem conhecimento de algo paraOracle?

    H 9 meses Responder

    Luiz Garetti RosrioOl Thiano, blz?J utilizei o Mecanismo de replicao do SQL Server para distribuirdados em servidores Oracle. Porem o Oracle s pode ser assinante eno consegue publicar.Mas atravs do Linked Server possvel criar essa replicao entreOracle e SQL Server. Sendo assim, Tanto Oracle como o SQL Serverpodem enviar e receber transaes, com isso criando a distribuiodos dados entre eles.Segue alguns link:http://msdn.microsoft.com/en-us/library/ms152481.aspxhttp://imasters.com.br/banco-de-dados/sql-server/linked-server-pra-que-serve-e-quando-utilizar/Estou disposio.Abs

    H 9 meses Responder

    Rodrigo SantosOl Luiz.,Poderia me indicar alguma ideia de TCC relacionado a BDD.Estou cursando Sistemas de informao e preciso encontrar um tema para TCC,pois prximo semestre irei pagar TCC1.E poderia por favor me enviar esses materiais sobre BDD que voc enviou para osoutros rapazes.Desde j agradeo, abrao.

    H 9 meses Responder

    Luiz Garetti RosrioOl Rodrigo,Op vamos l, um assunto bem interessante, seria voc fazer umaavaliao de desempenho em BDD. Criando um ambiente comalgumas maquinas e distribuindo o BD entre elas, Com isso vocpoderia aplicar lotes de transaes no banco, (por exemplo, 1 milhode transaes) e avaliar quantas transaes so feitas por segundo.Com isso voc poderia criar alguns fatores, como Qtd de Usuario, Qtdde Transaes, Qtd de host e assim por diante.Me passa seu e-mail, que te envio os materiais..Outra ideia, Seria fazer um comparativo entre BDD e BD local..comparando Desempenho, Complexidade, Custos.. Etc..Abraos

    H 9 meses Responder

    QUAL A SUA OPINIO?

    Escreva seu comentrio aqui...

    TwitterSiga o perfil do iMasters

    LinkedInCadastre-se no grupo iMasters

    gitHubCdigos iMasters DEV

    RSSAssine os feeds

  • 28/7/2014 O que Banco de Dados Distribudo? | iMasters

    http://imasters.com.br/banco-de-dados/o-que-e-banco-de-dados-distribuido/ 7/7

    SOCIAL MEDIA

    [email protected]

    NEWSLETTER

    Fique por dentro de todas as novidades,

    eventos, cursos, contedos exclusivos e

    muito mais.

    Seu nome

    Seu e-mail

    ENVIAR

    Sobre o iMasters

    Poltica de Privacidade

    Fale conosco

    iMasters Expert (english blog)

    Copyright 2014 Todos os direitos reservados