Gerenciamento de Dados em Sistemas Par-a-par
|
|
- Maria dos Santos Irene de Oliveira Branco
- 5 Há anos
- Visualizações:
Transcrição
1 Gerenciamento de Dados em Sistemas Par-a-par Rebeca Schroeder Freitas UFPR Vidal Martins - PUCPR ERBD 2011 Novo Hamburgo/RS
2 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Motivação Processamento compartilhado Comunicação ICQ Compartilhamento de dados Napster Gnutella Kazaa Gerenciamento de dados distribuídos ActiveXML Edutella Piazza PIER Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 2
3 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Motivação Características dos sistemas par-a-par (P2P) Sistemas distribuídos, cooperativos, de larga escala e heterogêneos Operam sobre uma rede lógica (overlay network) sobreposta a uma rede física (normalmente, Internet) Os nós são autônomos, podendo conectar ou desconectar a qualquer momento A rede sofre mudanças frequentes Os nós oferecem recursos e recebem recursos em troca Os nós não são confiáveis Não há controle centralizado Alta escalabilidade sem depender de servidores robustos Cada nodo pode suportar a mesma funcionalidade, ser cliente e servidor, e comunicar com qualquer outro nodo da rede Normalmente, os nodos não compartilham um schema global Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 3
4 Agenda Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Redes par-a-par (P2P) Fundamentos de replicação de dados Replicação de dados em sistemas P2P Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 4
5 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Redes par-a-par Introdução Tipos de redes P2P Não estruturada Estruturada Super-peer Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 5
6 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes par-a-par Apresentam diferentes graus de distribuição Possuem diferentes topologias A distribuição e a topologia da rede P2P afetam as propriedades não funcionais dos sistemas P2P Tolerância a falhas Autoajuste Desempenho Escalabilidade Segurança Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 6
7 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes P2P não estruturadas A rede é criada de maneira não determinística O local onde os dados são armazenados é independente da topologia da rede Cada nodo conhece seus vizinhos, mas não sabe os recursos que eles possuem Mecanismos de busca variados Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 7
8 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes P2P não estruturadas Mecanismo de busca simples e caro Propagação de consultas na rede até que o dado desejado seja encontrado (flooding) Mecanismo de busca sofisticado e eficiente Random walks múltiplos e paralelos: cada nodo escolhe um vizinho aleatoriamente e propaga a consulta para ele Seleção de vizinhos para repassar a consulta com base em histórico recente e índices locais Adaptação dinâmica da topologia da rede Índices de roteamento que fornecem uma lista de vizinhos mais prováveis de estarem na direção do dado procurado Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 8
9 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes P2P não estruturadas Exemplos de sistemas P2P suportados por redes P2P não estruturadas Gnutella Kazaa FreeHaven Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 9
10 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes P2P não estruturadas Gnutella Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 1 0
11 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes P2P não estruturadas Aspectos positivos Expressividade das consultas: busca por palavras-chave, consulta no estilo SQL, etc. Alta tolerância a falhas: os nós fornecem funcionalidade igual e replicam dados Autonomia: cada nodo é livre para decidir qual dado armazenar Principais problemas Escalabilidade Resultados incompletos para consultas Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 11
12 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes P2P estruturadas Surgiram para resolver o problema de falta de escalabilidade das redes não estruturadas Estratégia Controle rigoroso da topologia da rede Armazenamento dos dados em locais precisamente determinados Mapeamento entre os dados e suas localizações por meio de tabela de roteamento distribuída A principal representante desta classe de rede P2P é a DHT (Distributed Hash Table) Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 12
13 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes P2P estruturadas DHT Fornece uma interface com as seguintes primitivas put (key, value) get (key) delete(key) Cada nodo é responsável por armazenar os valores (values) correspondentes a um certo intervalo de chaves (keys) Cada nodo conhece alguns nodos vizinhos Cada nodo mantém uma tabela de roteamento que associa os identificadores dos seus vizinhos aos endereços correspondentes Operações de acesso a dados ocorrem em duas etapas Lookup: encontra o nodo n que armazena o objeto requisitado Comunicação direta com n Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 13
14 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes P2P estruturadas Exemplos de sistemas P2P suportados por redes P2P estruturadas Chord CAN Tapestry Pastry PIER OceanStore P-Grid (árvore distribuída) Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 14
15 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes P2P estruturadas Chord successor(k) = (n + 2 i-1 ) mod 2 m Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 15
16 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes P2P estruturadas CAN Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 16
17 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes P2P estruturadas Tapestry Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 17
18 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes P2P estruturadas Pastry Os identificadores dos nós são ordenados em um círculo como os identificadores da rede Chord A localização dos dados também é similar ao Chord Pastry leva em conta a latência entre os nós para estabelecer as vizinhanças (nós fisicamente próximos se tornam vizinhos na rede P2P) Para rotear uma mensagem que procura a chave k, cada nodo repassa a mensagem para o seu vizinho cujo identificador é mais parecido com k (similar ao Tapestry) Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 18
19 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes P2P estruturadas OceanStore Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 19
20 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes P2P estruturadas P-Grid Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 20
21 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes P2P estruturadas Aspectos positivos Roteamento eficiente das consultas O(log N), onde N é o número de nós da rede Principais problemas Autonomia limitada Cada nodo tem de armazenar os valores que correspondem ao seu intervalo de chaves Inicialmente, as consultas eram limitadas a busca por valor exato de palavras-chave Já existem soluções para consulta por intervalo de valores e consultas com junções Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 21
22 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes super-peer Redes P2P estruturadas e não-estruturadas são consideradas puras porque todos os peers têm a mesma funcionalidade Redes super-peer são hibridas entre sistemas cliente-servidor e redes P2P puras Alguns peers (super-peers) atuam como servidores e realizam funções complexas, como: indexação, processamento de consulta, controle de acesso e gerenciamento de metadados Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 22
23 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes super-peer Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 23
24 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes super-peer Exemplos de sistemas P2P suportados por redes super-peer Napster Publius Edutella JXTA Gnutella (uma das versões) Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 24
25 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Introdução Redes não estruturadas Redes estruturadas Redes super-peer Redes super-peer Aspectos positivos Eficiência Qualidade de serviço (resultados completos para pesquisas, tempo de resposta, controle de acesso, etc.) Principais problemas Autonomia limitada (login em super-peer específico) Baixa tolerância a falhas Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 25
26 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Resumo Requisitos Não estruturada Estruturada Super-peer Autonomia Alta Baixa Moderada Expressividade das consultas Alta Baixa Alta Eficiência Baixa Alta Alta QoS Baixa Alta Alta Tolerância a falhas Alta Alta Baixa Segurança Baixa Baixa Alta Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 26
27 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Fundamentos de replicação de dados Single-master vs multi-master Replicação total vs replicação parcial Propagação síncrona vs propagação assíncrona Propagação assíncrona otimista Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 27
28 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Single-master vs multi-master Replicação total vs replicação parcial Propagação síncrona vs propagação assíncrona Propagação assíncrona otimista Single-master vs Multi-master Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 28
29 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Single-master vs multi-master Replicação total vs replicação parcial Propagação síncrona vs propagação assíncrona Propagação assíncrona otimista Single-master vs Multi-master Single-master Multi-master Principal diferença Uma cópia primária Múltiplas cópias primárias Sinônimo Master/Slave Update anywhere Controle de concorrência distribuído Não se aplica Coordenação, Reconciliação Valores atualizados em Cópia primária Cópia desconhecida Modelo de atualização Centralizado Distribuído Bloqueio da atualização Queda do site mestre Queda de todos os sites Possível gargalo Sim Não Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 29
30 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Single-master vs multi-master Replicação total vs replicação parcial Propagação síncrona vs propagação assíncrona Propagação assíncrona otimista Replicação total vs Replicação parcial Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 30
31 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Single-master vs multi-master Replicação total vs replicação parcial Propagação síncrona vs propagação assíncrona Propagação assíncrona otimista Replicação total vs Replicação parcial Replicação total Replicação parcial Principal diferença Todos os sites mantêm cópias de todos os objetos copartilhados Balanceamento de carga Simples Complexo Disponibilidade Máxima Menor Espaço de armazenamento Pode ser caro Reduzido Custos de comunicação Pode ser caro Reduzido Cada site mantém uma cópia de um subconjunto dos objetos compartilhados Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 31
32 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Single-master vs multi-master Replicação total vs replicação parcial Propagação síncrona vs propagação assíncrona Propagação assíncrona otimista Propagação síncrona vs Propagação assíncrona Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 32
33 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Single-master vs multi-master Replicação total vs replicação parcial Propagação síncrona vs propagação assíncrona Propagação assíncrona otimista Propagação assíncrona Abordagens não otimistas Objetivo: prover one-copy-serializability Premissas A rede provê FIFO reliable multicast Existe um limite máximo (Max) no tempo necessário para propagar uma mensagem de um nodo a outro A diferença entre 2 relógios corretos não é maior que ε Uma transação é propagada em no máximo Max + ε unidades de tempo Assegura-se ordem total sem coordenação entre os sites Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 33
34 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Single-master vs multi-master Replicação total vs replicação parcial Propagação síncrona vs propagação assíncrona Propagação assíncrona otimista Propagação assíncrona Abordagens otimistas Não pretende prover one-copy-serializability Assume que os conflitos são raros ou não acontecem A propagação é feita em background e pode haver divergências entre réplicas Atualizações conflitantes são reconciliadas a posteriori Consistência eventual Definição baseada em equivalência de schedule Dois schedules são equivalentes quando, começando do mesmo estado inicial, produzem o mesmo estado final Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 34
35 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Single-master vs multi-master Replicação total vs replicação parcial Propagação síncrona vs propagação assíncrona Propagação assíncrona otimista Propagação assíncrona Aplicações Serviço de nomes da Internet (DNS) Sistemas de bancos de dados móveis Desenvolvimento colaborativo de software Sistemas colaborativos em geral Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 35
36 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Single-master vs multi-master Replicação total vs replicação parcial Propagação síncrona vs propagação assíncrona Propagação assíncrona otimista Propagação síncrona vs assíncrona Síncrona Assíncrona Não otimista Otimista Característica principal Todas as réplicas mudam na mesma transação Commit tão logo quanto possível, depois propagação Commit, depois propagação em background Sinônimos Eager propagation Lazy propagation Lazy propagation Critério de consistência One-copy-serializability Freshness Consistência eventual Leituras locais Controle distribuído de concorrência Retorna valores atualizados Retorna valores atualizados com alta probabilidade Sim Não Não Sem garantias Escalabilidade Dezenas de sites Centenas de sites Maior número de sites Ambiente LAN e cluster LAN, cluster e WAN Qualquer ambiente Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 36
37 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Single-master vs multi-master Replicação total vs replicação parcial Propagação síncrona vs propagação assíncrona Propagação assíncrona otimista Propagação assíncrona otimista Armazenamento das operações Persistente: arquivo de log, propagação da operação Transiente: propagação do estado do objeto Relacionamentos entre operações Happens-before: ordem parcial entre eventos distribuídos Concurrency: não há ordem entre os eventos Explicit constraint Inclusão dinâmica. Determina a semântica do sistema Exemplos: dependência, implicação, escolha,... Implicit constraint Inclusão estática (engine) Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 37
38 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Single-master vs multi-master Replicação total vs replicação parcial Propagação síncrona vs propagação assíncrona Propagação assíncrona otimista Propagação assíncrona otimista Frequência de propagação Quanto mais rápida a propagação, menor a divergência entre as réplicas e a taxa de conflitos Pull On demand Periodicamente Push Tão logo quanto possível Hibrido Propagação push provê o melhor grau de consistência Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 38
39 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Single-master vs multi-master Replicação total vs replicação parcial Propagação síncrona vs propagação assíncrona Propagação assíncrona otimista Propagação assíncrona otimista Detecção e resolução de conflitos Uma operação está em conflito se não pode ser executada com sucesso na ordem estabelecida pelo schedule ao qual pertence Detecção consiste em reconhecer conflitos no schedule Resolução de conflito é a mudança do schedule a fim de remover os conflitos Políticas de detecção de conflitos Sobreposição de atualizações Baseadas em concorrência: tempo da operação Baseadas em semântica: constraints Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 39
40 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Single-master vs multi-master Replicação total vs replicação parcial Propagação síncrona vs propagação assíncrona Propagação assíncrona otimista Propagação assíncrona otimista Resolução de conflitos Manual Operações em conflito são retiradas do schedule Duas versões do objeto são apresentadas ao usuário Usuário cria uma nova versão do objeto (mesclada) Automática Não requer intervenção do usuário Reconciliação Baseada em estado do objeto ou em operação Reconciliador ordinal ou reconciliador semântico Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 40
41 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Single-master vs multi-master Replicação total vs replicação parcial Propagação síncrona vs propagação assíncrona Propagação assíncrona otimista Propagação assíncrona otimista Objeto Armazenamento das operações Relacionamento entre operações IceCube Específico da aplicação (documento XML, tabela relacional, etc.) Operações persistentes (ações e restrições são armazenadas em log) Restrições explícitas entre operações; Restrições são criadas dinamicamente pelos usuários e pelo motor de reconciliação Harmony Árvore (documento XML, sistema de arquivo, bookmarks de navegadores web, etc.) Operações transientes (operações de atualização não estão disponíveis) Restrições implícitas para estruturas em árvore; Restrições estão embutidas no motor de reconciliação Propagação Transferência periódica de operações (pull) Transferência de estado, sob demanda Detecção e resolução de conflitos Detecção de conflitos baseada em semântica; Resolução automática de conflito Detecção de conflito baseada em semântica; Resolução manual de conflitos (nós da árvore em conflito não são reconciliados) Reconciliação Abordagem semântica baseada em operação; Recupera ações e restrições de diversos logs locais e constrói um schedule global que é aplicado a todas as réplicas Abordagem semântica baseada em estado; Reconcilia nós correspondentes das árvores de duas réplicas cujos conteúdos divergentes não violam restrições implícitas Consistência Consistêncial eventual Sem garantias Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 41
42 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Replicação em sistemas P2P Napster (super-peer) Replicação passiva: ocorre naturalmente à medida em que os peers requisitam e copiam arquivos uns dos outros JXTA (super-peer) Não oferece replicação de dados Gnutella (versão não-estruturada) Replicação passiva Arquivos estáticos Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 42
43 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Replicação em sistemas P2P Chord Não implementa replicação (delega para a aplicação) Armazenamento do objeto sob diversos identificadores, derivados da chave em nível de aplicação Recriação proativa de replicas perdidas Múltiplas funções de hash para produzir diversos identificadores a partir de uma única chave Replicação multi-master usando timestamp para resolver conflitos de atualização Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 43
44 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Replicação em sistemas P2P CAN Duas abordagens para replicação Usar m funções de hash para mapear uma única chave em m pontos no espaço de coordenadas Otimização do projeto básico da rede CAN que consiste em o nodo n replicar proativamente chaves populares para os seus vizinhos quando n está sobrecarregado Chaves replicadas têm associado um campo time-tolive para desfazer automaticamente o efeito da replicação no final do período de sobrecarga Assume conteúdos read-only Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 44
45 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Replicação em sistemas P2P Tapestry Não implementa diretamente a replicação de objetos, mas oferece toda a infraestrutura necessária a replicação As aplicações podem replicar os dados em múltiplos nodos servidores e depender do Tapestry para recuperar as réplicas mais próximas Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 45
46 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Replicação em sistemas P2P Tapestry Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 46
47 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Replicação em sistemas P2P OceanStore Utiliza Tapestry e assume infraestrutura com servidores e links rápidos (aproxima-se da arquitetura em nuvem) Permite atualização concorrente nas réplicas de um objeto (replicação multi-master) Utiliza reconciliação para assegurar consistência A reconciliação é baseada em timestamps O gerenciamento de réplicas ajusta o número e a localização das réplicas de modo a responder com maior eficiência as requisições Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 47
48 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Replicação em sistemas P2P Pastry Não implementa replicação diretamente, mas provê as funcionalidades necessárias para uma aplicação sobre Pastry produzir e recuperar réplicas A aplicação pode armazenar réplicas de um objeto com chave key nos k nodos que possuem identificadores próximos de key Pastry roteia uma mensagem que procura pela chave key para os k nodos cujos identificadores são próximos de key Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 48
49 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Replicação em sistemas P2P P-Grid A replicação é feita por meio de rumor spreading Provê garantias probabilísticas de consistência A propagação das atualizações é feita em duas fases Push: quando o peer p recebe uma atualização no objeto replicado R, p propaga a atualização para um conjunto de peers que mantêm réplicas de R que, por sua vez, repetem essa operação Pull: peers que desconectaram e reconectaram, que ficaram muito tempo sem update e que receberam uma requisição pull, entram na fase pull e fazem reconciliação Rebeca Schroeder Freitas/Vidal Martins rebeca.schroeder@gmail.com/vidal.martins@pucpr.br Gerenciamento de Dados em Sistemas Par-a-par a 49
50 Motivação Redes par-a-par Fundamentos de replicação de dados Replicação de dados em sistemas par-a-par Replicação em sistemas P2P Sistema Rede Data Autonomia Tipo de Detecção de Consistência Premissas P2P P2P Type Replicação conflito da Rede Napster Super-peer File Moderada Dado estático Fraca JXTA Super-peer Any Alta Fraca Gnutella Não-estruturada File Alta Dado estático Fraca Chord Estruturada (DHT) Any Baixa Single-master Concurrency Probabilística Multi-master None Probabilística Fraca CAN Estruturada (DHT) Any Baixa Dado estático Multi-master None Probabilística Fraca Tapestry Estruturada (DHT) Any Alta Fraca Pastry Estruturada (DHT) Any Baixa Fraca OceanStore Estruturada (DHT) Any Alta Multi-master Concurrency Eventual Forte P-Grid Structured File Alta Multi-master None Probabilística Fraca Rebeca Schroeder Freitas/Vidal Martins Gerenciamento de Dados em Sistemas Par-a-par a 50
51 Gerenciamento de Dados em Sistemas Par-a-Par (Parte II) Rebeca Schroeder Freitas UFPR Vidal Martins - PUC-PR ERBD 2011 Novo Hamburgo/RS
52 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Apresentação Introdução Roteiro Sistemas P2P e Banco de Dados Segundo [Valduriez, P e Pacitti E. 2004]: SGBDs Distribuído Federado Paralelo baseado em P2P Escalabilidade Até dezenas de BDs Até centenas de fontes de dados Até centenas de nodos Ilimitada Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 5 2
53 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Apresentação Introdução Roteiro Sistemas P2P e Banco de Dados Tornar bancos de dados altamente escaláveis e tolerantes a falhas; Sustentar um serviço de consulta e armazenamento sobre um grande conjunto de dados; Alavancar diversas tecnologias existentes: Exemplo: DHT sob um banco de dados relacional. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 5 3
54 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Apresentação Introdução Roteiro Roteiro (Parte II) Classificação de BDs P2P; : OLTP; OLAP; Arquiteturas para o Gerenciamento de Dados: Clássica; Particionamento; Replicação; Controle distribuído; Caching; Serviços para o gerenciamento de dados: Amazon Web Services; Google AppEngine; MS Azure; Considerações Finais. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 5 4
55 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Chave-valor Classificação de BDs P2P Classificação conforme modelo empregado: Chave-valor; Documento; Tabular; Chave-valor: baseados em valores e um índice para encontrá-los a partir de uma chave definida pelo usuário: chave rua valor Piratuba número 3212 cep Exemplos de alguns datastores: Voldemort (LinkedIn), Dynamo, Riak, Redis, Scalaris, Bamboo Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 5 5
56 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Orientados a Documento Classificação de BDs P2P Orientados a Documento: definem uma chave para um conjunto de pares atributovalor domínio Atributo valor endereço rua Piratuba número 3212 cep Exemplos de alguns datastores: SimpleDB, CouchDB, MongoDB. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 5 6
57 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Tabulares Classificação de BDs P2P Tabulares: seu modelo de dados base contém linhas e colunas, sendo que ambos são fragmentados sobre os nós da rede. Rua número Cep Piratuba Dr Paulo Colin XV de novembro Exemplos de alguns datastores: BigTable, HBase, HyperTable, Cassandra. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 5 7
58 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais OLTP OLAP Requisitos gerais: Altamente dinâmico; Disponibilidade; Desempenho; Escalabilidade; Consistência; Custo; Funcionalidades comuns em SGBDs tradicionais são implementadas por aplicações sobre o sistema. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 5 8
59 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais OLTP OLAP OLTP (Online Transaction Processing): O mais comum; Transações curtas; Em geral, acessam pequenas porções de dados; Requer tempo de resposta baixo; Operações de atualização são freqüentes; Exige consistência forte. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 59
60 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais OLTP OLAP OLAP (Online Analytical Processing) Grandes volumes de dados; Processamento paralelo; Transações longas; Workload principal de leitura; Requisitos de consistência são relaxados; Arquitetura em cluster; Processamento comum neste contexto: Hadoop (MapReduce). Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 60
61 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais OLTP OLAP Hadoop: Inspirado no Google MapReduce e no Google File System; Consegue ordenar 100 TB em 173 minutos sobre 3400 nodos; MapReduce: um modelo de programação: Automaticamente distribui consultas para executar em paralelo; Função Map: Entrada: chave, valor: Saída: lista de resultados intermediários (chave e valor ); Função Reduce Entrada: lista de resultados intermediários (chave e valor ); Saída: lista de valores finais. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 61
62 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais OLTP OLAP Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 62
63 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Clássica com Particionamento com Replicação com Controle Distribuído com Caching Arquiteturas para Gerenciamento de Dados Oferta de serviços como um pacote de tecnologias da computação nas nuvens; Redução de custos com modelo pay-as-you-go: Melhor utilização de recursos computacionais; Throughput ilimitado: Adição de servidores a medida que o workload aumenta; Foco em processamento de transações (OLTP); Players: Amazon AWS RDS, AWS SimpleDB e AWS S3; Google Google AppEngine; Microsoft MS Azure. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 63
64 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Clássica com Particionamento com Replicação com Controle Distribuído com Caching Arquitetura Clássica Fonte: [Kossmann et al 2010] Escalabilidade e elasticidade: Servidores de requisição; Sistemas de armazenamento; Servidor de BD: Único ponto de falha; Limitações de custo e escalabilidade. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 64
65 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Clássica com Particionamento com Replicação com Controle Distribuído com Caching Arquitetura com Particionamento Fonte: [Kossmann et al 2010] Servidores de BD podem rodar em máquinas mais baratas; Mais máquinas operando sobre conjuntos de dados menores; Limitações de escalabilidade: workloads dinâmicos; reparticionamento de dados; Combinado com replicação pode melhorar escalabilidade e tolerância a falhas. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 65
66 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Clássica com Particionamento com Replicação com Controle Distribuído com Caching Particionamento Abordagens tradicionais de particionamento/fragmentação: Alunos: código Horizontal (seleções); Vertical (projeções); Mista. nome sexo idade horizontal Chave Alunos/1 Alunos/2... n valor (nome:igor, sexo:m, idade:21) (nome:rute, sexo:f, idade:19)... (nome:nome n, sexo:sexo n, idade:idade n ) n Igor Rute Ivan... nome n m f m idade n vertical mista Chave Alunos/nome Alunos/sexo Alunos/idade Chave valor (1, Igor) (2, Rute)... (n, nome n ) (1, m) (2, f)... (n, sexo n ) (1, 21) (2, 19)... (n, idade n ) valor Alunos/idade/20 (código:2, nome:rute) Vidal Martins Rebeca Schroeder Freitas Alunos/idade/30 (código:1, nome:igor) (código:3, nome:ivan)..
67 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Clássica com Particionamento com Replicação com Controle Distribuído com Caching Particionamento Experimento 1 [Ribas, E. et al 2010]: Uma relação com 2000 tuplas e 51 atributos; 70 nodos; Operações de leitura que selecionam todas as tuplas, variando o número de atributos na projeção. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 67
68 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Clássica com Particionamento com Replicação com Controle Distribuído com Caching Particionamento Diversos níveis de granularidade: Alunos: código nome sexo idade 1 Igor m 21 2 Rute f 19 alta Chave Alunos/1/nome Alunos/1/sexo... valor Igor M 3... n Ivan... nome n m idade n baixa Chave Alunos Valor (código:1, nome:igor, sexo:m, idade:21) (código:2, nome:rute, sexo:f, idade:19) (código:3, nome:ivan, sexo:m, idade:22)... Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 68
69 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Clássica com Particionamento com Replicação com Controle Distribuído com Caching Agrupamento Alguns repositórios chave-valor mantêm localidade de dados; Torna possível diferentes formas de agrupamento de acordo com as chaves; Executar transações de forma distribuída prejudica performace; Exemplo: Chave Valor Chave Valor Alunos/nome/1 Igor Alunos/1/nome Igor Alunos/nome/2 Rute Alunos/1/idade 21 Alunos/idade/1 21 Alunos/2/nome Rute Alunos/idade/2 19 Alunos/2/idade 19 Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 69
70 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Clássica com Particionamento com Replicação com Controle Distribuído com Caching Particionamento e Agrupamento Experimento 2: Representação de documentos XML no Scalaris; Fragmentação baseada em workload; 16 nodos; Transação Order-Status do TPC-C; 18% melhor com fragmentação; 10% melhor com agrupamento; Em alguns casos a melhora chegou a 68%. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 70
71 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Clássica com Particionamento com Replicação com Controle Distribuído com Caching Arquitetura com Replicação Cada servidor de BD controla uma cópia do BD inteiro ou de parte dele; Pode melhorar escalabilidade e confiabilidade para workloads de leitura; Fonte: [Kossmann et al 2010] Limitações de escalabilidade: workloads com atualizações freqüentes; Master se torna o gargalo. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 71
72 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Clássica com Particionamento com Replicação com Controle Distribuído com Caching Arquitetura com Replicação Principal protocolo: ROWA (Read once, write all); O principal aspecto inerente a replicação é o mecanismo para manter as réplicas consistentes; Pode ser transparente ou não: Não transparente: atualizações são direcionadas para o servidor Master; Transparente: atualizações são automaticamente roteadas para o servidor Master. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 72
73 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Clássica com Particionamento com Replicação com Controle Distribuído com Caching Arquitetura com Controle Distribuído Fonte: [Kossmann et al 2010] Sistema de armazenamento é desacoplado do servidor de BD; Servidor de BD acessa os dados de forma concorrente e autônoma; Potencialmente a melhor arquitetura (escalabilidade em todos os níveis). Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 73
74 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Clássica com Particionamento com Replicação com Controle Distribuído com Caching Arquitetura com Controle Distribuído Não é possível assegurar o teorema CAP (Consistency, Availability, Partition Tolerance): Não é possível garantir as três propriedades ao mesmo tempo; Em geral, a consistência é sacrificada (consistência eventual); Situação adequada para OLAP mas não para OLTP. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 74
75 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Clássica com Particionamento com Replicação com Controle Distribuído com Caching Arquitetura com Controle Distribuído Alguns tipos de consistência: Eventual (Fraca): Operações de escrita podem não refletir em leituras subseqüentes; Maioria dos repositórios p2p; Snapshot Isolation: Consistência forte sobre uma única visão instantânea e consistente dos dados; Forte: Provida por Scalaris e G-Store; No Scalaris a disponibilidade pode ser parcialmente sacrificada. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 75
76 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Clássica com Particionamento com Replicação com Controle Distribuído com Caching Arquitetura com Caching Resultados de consultas são armazenados em servidores dedicados (MemCache); Diversos meios para manter a cache consistente; Fonte: [Kossmann et al 2010] Fonte: [Kossmann et al 2010] Arquitetura deve ser combinada com outras; Arquitetura aplicada pelo Google AppEng. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 76
77 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Amazon Web Services Google AppEngine MS Azure Tipos de Serviços Disponíveis Infrastructure as a service (IaaS): Infra-estrutura computacional; Ciclos de CPU, armazenamento e rede; Platform as a service (PaaS): Plataforma para o desenvolvimento de aplicações; Software as a service (SaaS): Software oferecido como um serviço; Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 77
78 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Amazon Web Services Google AppEngine MS Azure Amazon AWS Serviços básicos: EC2 (Elastic Compute Cloud) : ciclos de CPU; Máquinas virtuais hospedadas em um dos servidores Amazon; EBS (Elastic Block Store): Blocos de armazenamento persistentes para aplicações rodando no EC2; Serviço de armazenamento que pode ser montado como um disco. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 78
79 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Amazon Web Services Google AppEngine MS Azure AWS RDS (Relational Database Service) Número de máquinas EC2 pode variar conforme o workload para suportar servidor web e de aplicação; Uma máquina EC2 com o SGBD MySQL; EBS: armazenamento do BD e logs: EBS replica dados para garantir disponibilidade; Cinco tamanhos para servidores de BD: Custos variam conforme o tamanho escolhido. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 79
80 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Amazon Web Services Google AppEngine MS Azure Comparativo Aspectos AWS RDS AWS SimpleDB AWS S3 Arquitetura Clássica Part + Repl. C. Distribuído Google App Eng. Part.+Repl+ Cache Modelo PaaS PaaS IaaS PaaS PaaS MS Azure Replicação Provedor Amazon Amazon Flexível Google Microsoft SGBD MySQL SimpleDB - DataStore SQL Azure Storage EC2 & EBS - S3 GFS Windows Azure Linguagem SQL SimpleDB Baixo nível GQL SQL Consistência Eventual Eventual Eventual Snapshot Isolation Fonte: [Kossmann et al 2010] Snapshot Isolation Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 80
81 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Amazon Web Services Google AppEngine MS Azure AWS SimpleDB SimpleDB - Serviço de BD próprio da Amazon: Permite operações de inserção, atualização e remoção de registros; Permite busca por valores de chaves, ou intervalos de valores sobre as chaves primárias ou secundárias; Consistência eventual; Embora não-relacional, apresenta correspondências: Domínios (tabelas): máximo 100; Itens (tuplas): coleção de pares atributo-valor; no máximo 256 atributos por item; Atributos (colunas): Podem conter valores múltiplos. Linguagem de consulta própria Similar a SQL; Só pode ser feita sobre um domínio (sem joins) Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 81
82 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Amazon Web Services Google AppEngine MS Azure Comparativo Aspectos AWS RDS AWS SimpleDB AWS S3 Arquitetura Clássica Part + Repl. C. Distribuído Google App Eng. Part.+Repl+ Cache Modelo PaaS PaaS IaaS PaaS PaaS MS Azure Replicação Provedor Amazon Amazon Flexível Google Microsoft SGBD MySQL SimpleDB - DataStore SQL Azure Storage EC2 & EBS SimpleDB S3 GFS Windows Azure Linguagem SQL SimpleDB Baixo nível GQL SQL Consistência Eventual Eventual Eventual Snapshot Isolation Fonte: [Kossmann et al 2010] Snapshot Isolation Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 82
83 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Amazon Web Services Google AppEngine MS Azure AWS S3 S3: Provê uma interface de baixo nível (put/get); Serviços de mais alto-nível como interfaces de consultas e indexação devem ser implementadas a parte; Pode utilizar o SQS (Simple Queueing System): Fila persistente provida pela Amazon; Implementa os protocolos básicos que garantem durabilidade e consistência eventual. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 83
84 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Amazon Web Services Google AppEngine MS Azure AWS S3 Uso gratuito*: Armazenamento: 5 GB; Requisições get: ; Requisições put: 2.000; Transferência (entrada): 15 GB; Transferência (saída): 15 GB; * Para usuários novos durante 1 ano. Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 84
85 Classificação de BDs P2P Arquiteturas para o Gerenciamento de Dados Serviços para o Gerenciamento de Dados Considerações Finais Amazon Web Services Google AppEngine MS Azure Comparativo Aspectos AWS RDS AWS SimpleDB AWS S3 Arquitetura Clássica Part + Repl. C. Distribuído Google App Eng. Part.+Repl+ Cache Modelo PaaS PaaS IaaS PaaS PaaS MS Azure Replicação Provedor Amazon Amazon Flexível Google Microsoft SGBD MySQL SimpleDB - DataStore SQL Azure Storage EC2 & EBS - S3 GFS Windows Azure Linguagem SQL SimpleDB Baixo nível GQL SQL Consistência Eventual Eventual Eventual Snapshot Isolation Fonte: [Kossmann et al 2010] Snapshot Isolation Vidal Martins Rebeca Schroeder Freitas Gerenciamento de Dados em Sistemas P2P 85
Universidade Federal do Maranhão
Universidade Federal do Maranhão Banco de Dados II Banco de Dados Distribuídos Carlos Eduardo Portela Serra de Castro * Sumário Introdução Vantagens Projeto de Bases de Dados Distribuídas Classificação
Leia maisArquiteturas. Capítulo 2
Arquiteturas Capítulo 2 Agenda Estilos Arquitetônicos Arquiteturas de Sistemas Arquiteturas Centralizadas Arquiteturas Descentralizadas Arquiteturas Híbridas Arquiteturas e Middleware Sistemas Distribuídos
Leia maisSeminário apresentado em 29/06/2017 Disciplina: Sistemas Distribuídos Professora: Noemi Rodriguez Aluno: Ricardo Dias
Seminário apresentado em 29/06/2017 Disciplina: Sistemas Distribuídos Professora: Noemi Rodriguez Aluno: Ricardo Dias Visão Geral Alta disponibilidade & tolerante a falhas Banco de dados distribuído de
Leia maisAula 04. Evandro Deliberal
Aula 04 Evandro Deliberal evandro@deljoe.com.br https://www.linkedin.com/in/evandrodeliberal O que é Replicação repetir ou repetir-se por produção ou multiplicação = reproduzir Definição Mecanismo que
Leia maisBD e Cloud Gerenciamento de. Dados na Nuvem
CIn/UFPE In940 - Banco de Dados Gerenciamento de Dados na Nuvem Conceitos e Arquiteturas Chaina Santos Oliveira - cso2 Roteiro Motivação Computação em Nuvem Gerenciamento de dados na Nuvem Sistemas de
Leia maisParadigma. Ponto-a-Ponto. Compartilhamento de serviços e recursos computacionais diretamente entre sistemas. Integração de Dados e Warehousing
Classificação dos Computacionais Computacionais Integração de Dados e Warehousing Introdução a PDMS Centralizados Distribuídos Fernando Fonseca Ana Carolina Cliente-Servidor -a- 2 Cenário -a- Paradigma
Leia maisRedes P2P. Apresentadora: Luciana Pereira Oliveira. Duração: 40 minutos Data: 20/07/
Redes P2P Apresentadora: Luciana Pereira Oliveira lpo@cin.ufpe.br www.cin.ufpe.br/~lpo Duração: 40 minutos Data: 20/07/2004 Roteiro Introdução Características Arquiteturas Estudo de caso (CHORD) Aplicações
Leia maisUm Repositório Chave-Valor com Garantia de Localidade de Dados. Patrick A. Bungama Wendel M. de Oliveira Flávio R. C. Sousa Carmem S.
Um Repositório Chave-Valor com Garantia de Localidade de Dados Patrick A. Bungama Wendel M. de Oliveira Flávio R. C. Sousa Carmem S. Hara Agenda Motivação Desafios ALOCS Princípios de funcionamento Experimentos
Leia maiscaracterísticas compartilhamento de recursos sem necessidade de um elemento centralizador ciclos de CPU, armazenamento, banda...
tecnologias p2p Androutsellis-Theotokis, S. and Spinellis, D. 2004. A survey of peer-to-peer content distribution technologies. ACM Comput. Surv. 36, 4 (Dec. 2004), 335-371. o que é p2p? sistemas onde
Leia maisEvandro Deliberal Aula 01
Evandro Deliberal evandro@deljoe.com.br https://www.linkedin.com/in/evandrodeliberal http://www.deljoe.com.br/professor Aula 01 Agenda Bancos Não Relacionais Índices O que é um índice? Uma forma de ordenar,
Leia maisCOMPUTAÇÃO EM NUVEM E PROCESSAMENTO MASSIVO DE DADOS Conceitos, tecnologias e aplicações
COMPUTAÇÃO EM NUVEM E PROCESSAMENTO MASSIVO DE DADOS Conceitos, tecnologias e aplicações Jaqueline Joice Brito Slides em colaboração com Lucas de Carvalho Scabora Sumário Computação em Nuvem Definição
Leia maisSistemas de Gerenciamento de Dados na Nuvem. Carmem Satie Hara Universidade Federal do Paraná
Sistemas de Gerenciamento de Dados na Nuvem Carmem Satie Hara Universidade Federal do Paraná Computação na Nuvem Por que? A WEB está substituindo o desktop Google Gmail, Google Docs, Amazon, Flickr, Facebook,
Leia maisReplicação. Cleide Luzia Bonfim Possamai 03/05/2018
Replicação Cleide Luzia Bonfim Possamai 03/05/2018 Agenda Conceito Motivação Principais abordagens Replicação single-leader Replicação multi-leader Replicação leaderless Modelos de consistência Conclusão
Leia maisArquiteturas para SGBD. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri
Arquiteturas para SGBD Laboratório de Bases de Dados Arquitetura Centralizada Terminal responsável pela exibição dos resultados sem capacidade de processamento Computador central (mainframe) responsável
Leia maisSistemas Distribuídos
Sistemas Distribuídos Unitri Prof: Carlos Eduardo de Carvalho Dantas Conceitos Sistema Distribuído é um conjunto de computadores independentes que se apresenta a seus usuários como um sistema único e coerente.
Leia maisBancos de Dados Distribuídos. Lucas Henrique Samuel Queiroz
Bancos de Dados Distribuídos Lucas Henrique Samuel Queiroz O que é Uma coleção de nós interconectados via rede. Cada nó da rede possui um banco de dados local. Em conjunto atuam como um único sistema de
Leia maisArquiteturas. capítulo
Arquiteturas capítulo 2 Modelos de arquitetura de sistemas distribuídos Clientes realizam pedidos a servidores Client invocation invocation Server result Server result Client Key: Process: Computer: Modelos
Leia maisBruno Antunes da Silva UFSCar - Sorocaba
Bruno Antunes da Silva UFSCar - Sorocaba Introdução HDFS Arquitetura Leitura e escrita Distribuição de nós Controle de réplicas Balancer MapReduce Conclusão Aplicações web com grandes quantidades de dados
Leia maisIntrodução. O que é um Banco de Dados (BD)?
O que é um Banco de Dados (BD)? É uma coleção de dados relacionados e armazenados em algum dispositivo Associações aleatórias de dados não podem ser chamadas de base de dados Conceito de dados Valor de
Leia maisAN EVALUATION OF ALTERNATIVE ARCHITECTURE FOR TRANSACTION PROCESSING IN THE CLOUD (SIGMOD)
AN EVALUATION OF ALTERNATIVE ARCHITECTURE FOR TRANSACTION PROCESSING IN THE CLOUD (SIGMOD) Donal Krossman, Tim Kraska and Simon Loesing João Lucas Chiquito Universidade Federal do Paraná Departamento de
Leia maisBancos de Dados Distribuídos. Gabriel Resende Gonçalves 4 de fevereiro de 2014
Bancos de Dados Distribuídos Gabriel Resende Gonçalves 4 de fevereiro de 2014 Sumário Introdução; Vantagens e Desvantagens; Regras Básicas; Tipos de BDDs; Processamento de Transações; Recuperação de Falhas;
Leia maisProgramação de Sistemas Distribuídos e Concorrência
Programação de Sistemas Distribuídos e Concorrência Aula 4 15/08/09 Prof Carlos Eduardo 1 Descentralizadas Arquiteturas centralizadas são distribuições verticais (componentes logicamente diferentes em
Leia maisBancos de Dados Distribuídos. Bancos de Dados Distribuídos. Conteúdo. Motivação. Motivação. Introdução aos BDs Distribuídos.
Bancos de Dados Distribuídos Prof. Frank Siqueira Departamento de Informática e Estatística Universidade Federal de Santa Catarina Conteúdo Introdução aos BDs Distribuídos Processamento de Consultas Distribuídas
Leia maisGerenciamento de Dados em Larga Escala
CI242 Tópicos de Pesquisa em Informática Gerenciamento de Dados em Larga Escala Carmem Hara Tópicos Gerenciamento de dados na nuvem Dados ligados e web semântica Computação na Nuvem Por que? A WEB está
Leia maisNoSQL Apache Cassandra para DBAs. Conceitos básicos que todo DBA deve conhecer sobre Apache Cassandra.
NoSQL Apache Cassandra para DBAs Conceitos básicos que todo DBA deve conhecer sobre Apache Cassandra. Apresentação Pessoal Ronaldo Martins: Há mais de 14 anos dedicado à tecnologias Oracle, passando pelas
Leia maisSistemas de Arquivos Distribuídos. Bruno M. Carvalho Sala: 3F2 Horário: 35M34
Sistemas de Arquivos Distribuídos Bruno M. Carvalho Sala: 3F2 Horário: 35M34 Introdução Serviço de arquivos descreve os serviços oferecidos pelo sistema de arquivos aos clientes Servidor de arquivos processo
Leia maisReplicação em sistemas web
Sistemas Distribuídos maio de 2015 Servidores Web tolerância a falhas desempenho/escalabilidade desempenho: uso de servidores mais potentes (scale-up x scale-out) caching Servidores Web tolerância a falhas
Leia maisAula 4 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS. Marcelo Henrique dos Santos
Aula 4 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS Marcelo Henrique dos Santos Marcelo Henrique dos Santos Email: Site: marcelosantos@outlook.com www.marcelohsantos.com.br TECNOLOGIA EM JOGOS
Leia maisParadigma. Ponto-a-Ponto. Compartilhamento de serviços e recursos computacionais diretamente entre sistemas. Integração de Dados e Warehousing
Classificação dos Sistemas Computacionais Sistemas Computacionais Integração de Dados e Warehousing Introdução a PDMS Sistemas Centralizados Sistemas Distribuídos Fernando Fonseca Ana Carolina Cliente-Servidor
Leia maisBIG DATA: UMA INTRODUÇÃO. Prof. Ronaldo R. Goldschmidt
BIG DATA: UMA INTRODUÇÃO Prof. Ronaldo R. Goldschmidt Instituto Militar de Engenharia Seção de Engenharia de Computação (SE/8) ronaldo.rgold@ime.eb.br / ronaldo.rgold@gmail.com 70% 60% 50% 40% 30% 20%
Leia maisDesenvolvimento de Aplicações Distribuídas
Nomeação Pontifícia Universidade Católica de Minas Gerais Instituto de Ciências Exatas e Informática DAD (2019/01) Tópicos Apresentação da disciplina Introdução Desafios e características Arquitetura Comunicação
Leia maisArquitetura de sistemas distribuídos
Arquitetura de sistemas distribuídos 4. Serviços em Sistemas Distribuídos 4.1 Sistema de arquivos distribuídos 4.2 Serviços WEB 4.3 Computação Ubíqua 4.4 Computação nas nuvens 1 Arquivos CONCEITO Arquivo:
Leia maisInformática. Cloud Computing e Storage. Professor Márcio Hunecke.
Informática Cloud Computing e Storage Professor Márcio Hunecke www.acasadoconcurseiro.com.br Informática COMPUTAÇÃO EM NUVEM Cloud Computing ou Computação em Nuvem pode ser definido como um modelo no
Leia maiso que é p2p? sistemas onde todos os nós são equivalentes em funcionalidade e no papel desempenhado ...
tecnologias p2p o que é p2p? sistemas onde todos os nós são equivalentes em funcionalidade e no papel desempenhado... sistemas que utilizam recursos nas bordas da Internet características compartilhamento
Leia maisBanco de Dados e Aplicações em Negócios: Introdução.
Banco de Dados e Aplicações em Negócios: Introdução evandro@usp.br Motivação Extenso uso de Banco de Dados (BD) no cotidiano Bancos, serviços, comércio em geral (comércio eletrônico) Web e seus serviços
Leia maisAPLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar
- Aula 3-1. REVISÃO SOBRE CONCEITOS FUNDAMENTAIS DE SISTEMAS DISTRIBUÍDOS Na segunda parte abordamos o tema tolerância a falhas, assunto este muito relacionado a redes de computadores, mas que nos mostra
Leia maisReplicação em sistemas web
Sistemas Distribuídos abril de 2018 Servidores Web tolerância a falhas desempenho/escalabilidade desempenho: uso de servidores mais potentes (scale-up x scale-out) caching uso de servidores replicados
Leia maisFormação de DBAs SQL Server 2008
Formação de DBAs SQL Server 2008 Parte 8: Banco de Dados Distribuído Computação Distribuída Um grupo de elementos autônomos de processamento (não necessariamente homogêneos) que estão interconectados por
Leia maisIntrodução a Computação em Nuvem
Introdução a Computação em Nuvem Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia
Leia maisBancos de Dados NoSQL
Bancos de Dados NoSQL Processamento Analítico de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Banco de Dados NoSQL (Not Only SQL) Foco no armazenamento de gigantescos volumes de dados (big data)
Leia maisProgramação Distribuída. Arquiteturas
Programação Distribuída Arquiteturas Programação Distribuída A arquitetura de um Sistema Distribuído diferencia entre a organização de componentes de software e a realização física. A organização de sistema
Leia maisSumário. 1 Caracterização de Sistemas Distribuídos 1. 2 Modelos de Sistema Redes de Computadores e Interligação em Rede 81
Sumário 1 Caracterização de Sistemas Distribuídos 1 1.1 Introdução 2 1.2 Exemplos de sistemas distribuídos 3 1.3 Tendências em sistemas distribuídos 8 1.4 Enfoque no compartilhamento de recursos 14 1.5
Leia maisBanco de Dados I. Prof. Diego Buchinger. Profa. Rebeca Schroeder Freitas Prof. Fabiano Baldo.
Banco de Dados I Prof. Diego Buchinger diego.buchinger@outlook.com diego.buchinger@udesc.br Profa. Rebeca Schroeder Freitas Prof. Fabiano Baldo Aula Inaugural plano de ensino Bibliografia (próximo slide)
Leia maisRedes P2P Gnutella e Simuladores
Redes P2P Gnutella e Simuladores Definições de P2P P2P é o compartilhamento de recursos e serviços pela troca direta entre sistemas. WG P2P Intel, 2001 P2P é uma classe de aplicações que tira proveito
Leia maisBCD29008 Banco de dados
BCD29008 Banco de dados Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/bcd 31 de julho de 2017 1/24 Apresentação
Leia maisEvandro Deliberal Aula 04
Evandro Deliberal evandro@deljoe.com.br https://www.linkedin.com/in/evandrodeliberal http://www.deljoe.com.br/professor Aula 04 Agenda PARTE III Continuidade de Negócios Introdução à Continuidade de Negócios
Leia maisDesigning Data Intensive Applications
Designing Data Intensive Applications Capítulo 1 Carmem Hara Aplicações Atuais Dados Processamento Problemas Volume Complexidade Velocidade de atualização Tecnologias SGBD: armazenamento Cache: resultados
Leia maisIntrodução a Computação em Nuvem
Introdução a Computação em Nuvem Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia
Leia maisBanco de Dados. Perspectiva Histórica dos Bancos de Dados. Prof. Walteno Martins Parreira Jr
Banco de Dados Perspectiva Histórica dos Bancos de Dados Prof. Walteno Martins Parreira Jr www.waltenomartins.com.br waltenomartins@yahoo.com 2015 Histórico Antes dos computadores, as informações eram
Leia maisIntrodução aos Bancos de Dados Não-Relacionais. Mauricio De Diana (mestrando) Marco Aurélio Gerosa (orientador)
Introdução aos Bancos de Dados Não-Relacionais Mauricio De Diana (mestrando) Marco Aurélio Gerosa (orientador) Conteúdo Histórico de BDs não-relacionais na Web 4 Categorias de bancos NoSQL Exemplos de
Leia maisInformática Parte 11 Prof. Márcio Hunecke
Escriturário Informática Parte 11 Prof. Márcio Hunecke Informática FERRAMENTAS DE INGESTÃO DE DADOS (SQOOP 1.4.6, FLUME 1.7.0, NIFI 1.3.0 E KAFKA 0.11.0) Visão geral sobre os quatro componentes Fazem
Leia maisQuando Distribuir é bom
Quando Distribuir? Se não precisar, não distribua. Problema de natureza descentralizada Rede de manufatura com atividades concorrentes de engenharia em locações remotas; Teleconferência; Automação industrial.
Leia maisSistemas Distribuídos
UERN Sistemas Distribuídos Prof. André Gustavo andregustavo@uern.br Sistemas Distribuídos Ementa: Conceitos relacionados com Sistemas Distribuídos. Mecanismos dos Sistemas Operacionais para suporte a distribuição.
Leia maisTítulo da Apresentação
Título da Apresentação Gerenciamento de infraestrutura escalável para websites Fabiano Castro Pereira fabiano.pereira@serpro.gov.br 00/00/0000 Gerenciamento de infraestrutura escalável para websites 1
Leia maisProf. Daniela Barreiro Claro
Prof. Daniela Barreiro Claro Volume de dados muito grande Principais problemas em relação aos SGBD Relacionais é conciliar o tipo de modelo com a demanda da escalabilidade. Exemplo -Facebook Um crescimento
Leia maisComputação em nuvem (Cloud Computing)
Computação em nuvem (Cloud Computing) Disciplina: Gestão da Tecnologia de Sistemas Professor: Thiago Silva Prates Computação em nuvem O termo computação em nuvem refere-se a modelo de capacitação na qual
Leia maisSistemas Distribuídos
Sistemas Distribuídos Definição Sistema Distribuído é aquele onde os componentes de software e hardware localizados em redes de computadores comunicam-se e coordenam suas ações apenas por passagem de mensagens.
Leia maisBCD29008 Banco de dados
BCD29008 Banco de dados Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/bcd 21 de fevereiro de 2018 1/24 Apresentação
Leia maisArquitetura de um Ambiente de Data Warehousing
Arquitetura de um Ambiente de Data Warehousing Processamento Analítico de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Prof. Dr. Ricardo Rodrigues Ciferri Arquitetura Típica usuário usuário... usuário
Leia maisfalhas em sistemas distribuídos
Tolerância a Falhas falhas em sistemas distribuídos Lamport: A distributed system is a system where I can t get any work done if a machine I ve never heard of crashes. sistemas distribuídos e falhas parciais
Leia maisSistemas Distribuídos. Professora: Ana Paula Couto DCC 064
Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Arquiteturas Capítulo 2 Sistemas Distribuídos ORGANIZAÇÃO + INTERAÇÃO SOFTWARE ARQUITETURAS DE SISTEMAS ARQUITETURAS DE SOFTWARE + MÁQUINA REAL
Leia maisBases de Dados Distribuídas
Bases de Dados Distribuídas Pablo Vieira Florentino 27/10/2006 Agenda Contexto Arquitetura de SGBDs Distribuído Projeto de Bases de dados Distribuídas Processamento Distribuído de consultas Questões atuais
Leia maisCaracterísticas de Sistemas Distribuídos
Características de Sistemas Distribuídos Carlos Ferraz cagf@cin.ufpe.br 2002-2003 Carlos A. G. Ferraz 2 Tópicos O conceito de Sistemas Distribuídos Infra-estrutura básica Exemplos Vantagens e desvantagens
Leia maisArquitetura de um Ambiente de Data Warehousing
Arquitetura de um Ambiente de Data Warehousing Processamento Analítico de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Prof. Dr. Ricardo Rodrigues Ciferri Arquitetura Típica usuário usuário... usuário
Leia maisConceitos de Sistemas Distribuídos
Conceitos de Sistemas Distribuídos Roteiro Definição de Sistemas Distribuídos (SD) Evolução Histórica Exemplos (SD) Modelos (Vantagens x Desvantagens) 2 O que é um Sistema Distribuído? Definição Coleção
Leia maisUNIVERSIDADE ESTADUAL DE PONTA GROSSA SETOR DE CIENCIAS AGRARIAS E DE TECNOLOGIA DEPARTAMENTO DE INFORMATICA
UNIVERSIDADE ESTADUAL DE PONTA GROSSA SETOR DE CIENCIAS AGRARIAS E DE TECNOLOGIA DEPARTAMENTO DE INFORMATICA JOÃO GABRIEL CORRÊA KRUGER LUCIANO MAUDA JUNIOR AMAZON WEB SERVICES (AWS) PONTA GROSSA 2017
Leia maisTop. Esp em Banco de Dados
Top. Esp em Banco de Dados Profa. Marta Mattoso marta@cos.ufrj.br http://www.cos.ufrj.br/~marta COPPE- Sistemas / UFRJ Introdução a Bancos de Dados Distribuídos Roteiro Introdução Caracterização de BDD
Leia maisSistemas de Bancos de Dados Distribuídos
Top. Esp em Banco de Dados Profa. Marta Mattoso marta@cos.ufrj.br http://www.cos.ufrj.br/~marta COPPE- Sistemas / UFRJ Introdução a Bancos de Dados Distribuídos Roteiro Introdução Caracterização de BDD
Leia maisSistemas Distribuídos
Sistemas Distribuídos Arquitetura de Sistemas Distribuídos Gustavo Reis gustavo.reis@ifsudestemg.edu.br 1 - Arquitetura Em sistemas distribuídos a meta é separar aplicações das plataformas subjacentes,
Leia maisSistemas de Bancos de Dados Distribuídos
Sistema de Arquivos Top. Esp em Banco de Dados Profa. Marta Mattoso marta@cos.ufrj.br http://www.cos.ufrj.br/~marta COPPE- Sistemas / UFRJ Introdução a Bancos de Dados Distribuídos 4 Roteiro Sistema de
Leia maisIntrodução Ferramentas Unix MapReduce Outras Ferramentas. Batch Processing. Fabiola Santore. Universidade Federal do Paraná
Fabiola Santore Universidade Federal do Paraná Sumário 1. Introdução 2. Ferramentas Unix 2.1 Análise de log 2.2 Filosofia Unix 3. MapReduce 3.1 Procedimento 3.2 Reduce: Joins e Agrupamento 3.3 Análise
Leia maisComputação em Grid e em Nuvem
Computação em Grid e em Nuvem Grids Computacionais Características Infraestrutura Produtos Exemplos Computação em Nuvem Características Modelos Infraestrutura Exemplos 1 Grids Computacionais Definição
Leia maisDesenvolvimento de Aplicações Distribuídas
Desafios e Características Pontifícia Universidade Católica de Minas Gerais Instituto de Ciências Exatas e Informática DAD (2019/01) Tópicos Apresentação da disciplina Introdução Desafios e características
Leia maisSISTEMAS DISTRIBUÍDOS E TOLERÂNCIA A FALHAS MESTRADO DE ENGENHARIA INFORMÁTICA 2013/2014 DOCENTE: PROF. DRª. PAULA PRATA
SISTEMAS DISTRIBUÍDOS E TOLERÂNCIA A FALHAS MESTRADO DE ENGENHARIA INFORMÁTICA 2013/2014 DOCENTE: PROF. DRª. PAULA PRATA A DISTRIBUTED PROTOCOL FOR ENSURING REPLICATED DATABASE CONSISTENCY IN MOBILE COMPUTING
Leia maisCarlos Eduardo de Carvalho Dantas
Cloud Computing Carlos Eduardo de Carvalho Dantas (carloseduardocarvalhodantas@gmail.com) Nós somos o que repetidamente fazemos. Excelência, então, não é um ato, mas um hábito. Aristóteles. Conectividade
Leia maisPrIntCloud. Disciplina: Procedência de Dados e Data Warehousing. Aluna: Shermila Guerra Santa Cruz. 16/04/13
PrIntCloud Disciplina: Procedência de Dados e Data Warehousing. Aluna: Shermila Guerra Santa Cruz. 16/04/13 Roteiro 1. Fundamentação Teórica A.- Cloud Computing B.- Hadoop C.- MapReduce D.- NoSql 2. Proposta
Leia maisCassandra no Desenvolvimento de Aplicações para serviços Móveis. por J.P. Eiti Kimura
Cassandra no Desenvolvimento de Aplicações para serviços Móveis por J.P. Eiti Kimura Apache Cassandra O que é? Princípio de Funcionamento Modelo de dados Aplicação do Cassandra Requisitos do serviço Arquitetura
Leia maisSISTEMAS DISTRIBUÍDOS
SISTEMAS DISTRIBUÍDOS CUP Disk Memoey CUP Memoey Disk Network CUP Memoey Disk Introdução aos Sistemas Distribuídos 1 Sumário Evolução Problema/Contexto O que é um Sistema Distribuído? Vantagens e Desvantagens
Leia maisSistemas Distribuídos. Professora: Ana Paula Couto DCC 064
Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Consistência e Replicação Capítulo 7 Agenda Distribuição de Conteúdo Estado versus operações Protocolos de recuperação de atualizações versus protocolos
Leia maisSTD29006 Sistemas Distribuídos
STD29006 Sistemas Distribuídos Tipos e arquiteturas de Sistemas Distribuídos Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/std
Leia maisSistemas Distribuídos. Plano de Curso. Plano de Curso 04/03/12 ! EMENTA:
Sistemas Distribuídos Prof. Msc. André Luiz Nasserala Pires nassserala@gmail.com! EMENTA: Plano de Curso! Conceitos. Comunicação entre processos (IPC). Programação de aplicações cliente- servidor. Sincronização
Leia maisMarcio Victorino. Análise de Informações TCU - TI
1 Análise de Informações TCU - TI 2 3 Bibliografia Essencial Martin Fowler. http://nosql-database.org/ http://hadoop.apache.org/ http://bigdatauniversity.com/ http://bigdataprojects.org/ ACM. IEEE. 4 Sofisticação
Leia maisCaracterização de Sistemas Distribuídos
Caracterização de Sistemas Distribuídos Roteiro Conceitos de Hardware Conceitos de Software Classificação de Flynn Classificação baseada no acesso a memória 2 Conceitos de HW Múltiplas CPUs Diferentes
Leia maisSistema de Informação Geográfica
Sistema de Informação Geográfica Curso de Sistemas de Informação Karla Donato Fook karladf@ifma.edu.br DESU / DAI 2016 Arquiteturas SIG 2 1 Tipos de Implementação 3 Tipos de Implementação Em geral, um
Leia maisAVALIAÇÃO DE DESEMPENHO DE PROCESSAMENTO DISTRIBUÍDO EM LARGA ESCALA COM HADOOP
AVALIAÇÃO DE DESEMPENHO DE PROCESSAMENTO DISTRIBUÍDO EM LARGA ESCALA COM HADOOP Débora Stefani Lima de Souza dsls@cin.ufpe.br Orientador: Dr. Paulo Romero Martins Maciel INTRODUÇÃO Nem sempre os dados
Leia mais23/05/12. Consulta distribuída. Consulta distribuída. Objetivos do processamento de consultas distribuídas
Processamento de Consultas em Bancos de Dados Distribuídos Visão geral do processamento de consultas IN1128/IF694 Bancos de Dados Distribuídos e Móveis Ana Carolina Salgado acs@cin.ufpe.br Bernadette Farias
Leia maisQuando Distribuir é bom
Quando Distribuir? Se não precisar, não distribua. Problema de natureza descentralizada Rede de manufatura com atividades concorrentes de engenharia em locações remotas; Teleconferência; Automação industrial.
Leia maisSGBDs NoSQL Modelos e Sistemas de Colunas e Grafos. Aluno: Jorge Dias Disciplina: IN940
SGBDs NoSQL Modelos e Sistemas de Colunas e Grafos Aluno: Jorge Dias Disciplina: IN940 Roteiro o Introdução o Motivação o NoSQL (Características) o Comparativo de SGBDs NoSQL x SGBDs Relacionais o Tipos
Leia maisSistemas Operacionais II
Introdução Instituto de Informátic ca - UFRGS Introdução à Cloud Computing Aula 26 A Internet se popularizou como uma fonte de acesso a recursos Se encontra de tudo (documentos, vídeos, acesso a serviços
Leia maisSistemas entre Pares e Redes Sobrepostas
Redes estruturadas: CAN 1 ricardo.pereira@inesc-id.pt IST 21-10-2009 1 Imagens retiradas de A Scalable Content Addressable Network por Sylvia Ratnasamy, Paul Francis, Mark Handley, Richard Karp, Scott
Leia maisSistema Distribuído. Sistema Distribuído. Aplicações Distribuídas. Conceitos Básicos
Sistema Distribuído Conjunto de máquinas (CPU + memória) interligadas em rede. Sistema Distribuído Sistema operacional distribuído trata este conjunto como um único sistema computacional. Estação 1 Estação
Leia maisData Warehousing: Conceitos Básicos e Arquitetura
Data Warehousing: Conceitos Básicos e Arquitetura Profa. Dra. Cristina Dutra de Aguiar Ciferri Prof. Dr. Ricardo Rodrigues Ciferri Visão do Mercado Crescimento explosivo do uso da tecnologia de data warehousing
Leia maisMemória Compartilhada e Distribuída. _ Notas de Aula _ Prof. Tiago Garcia de Senna Carneiro DECOM/UFOP
Introdução Memória Compartilhada e Distribuída _ Notas de Aula _ Prof. Tiago Garcia de Senna Carneiro DECOM/UFOP Um sistema de memória compartilhada faz a memória física global de um sistema igualmente
Leia maisAlcides Pamplona
Alcides Pamplona alcides.pamplona@gmail.com Objetivos Gerais Capacitar o aluno a compreender os paradigmas dos Bancos de Dados Distribuídos, visando sua aplicação na análise e projeto de bancos de dados
Leia maisCaracterísticas de Sistemas Distribuídos
Tópicos O conceito de Características de Carlos Ferraz cagf@cin.ufpe.br Infra-estrutura básica Exemplos Vantagens e desvantagens Convergência digital Características 2002-2003 Carlos A. G. Ferraz 2 O Conceito
Leia maisO que é um sistema distribuído?
Disciplina: Engenharia de Software 4 Bimestre Aula 1: ENGENHARIA DE SOFTWARE DISTRIBUÍDO O que é um sistema distribuído? Segundo Tanenbaum e Steen (2007) um sistema distribuído é uma coleção de computadores
Leia maisSistemas de arquivos distribuídos. ECO036 - Sistemas Paralelos e Distribuídos
Sistemas de arquivos distribuídos ECO036 - Sistemas Paralelos e Distribuídos Sistemas de arquivos distribuídos - Daniel Nogueira 20938 - Felipe Castro Simões 21525 Sumário 1. Introdução 2. Sistemas de
Leia maisLaboratório de Banco de Dados. Prof. Luiz Vivacqua.
(la.vivacqua@gmail.com) Ementa Conceitos básicos Sistemas de banco de dados Relacional Visão Geral do PostGreSQL Álgebra Relacional Operadores básicos Operadores adicionais A Linguagem de Consulta Estruturada
Leia mais23/05/12. Computação em Nuvem. Computação em nuvem: gerenciamento de dados. Computação em Nuvem - Características principais
Computação em Nuvem Computação em nuvem: gerenciamento de dados Computação em nuvem (Cloud Computing) é uma tendência recente de tecnologia cujo objetivo é proporcionar serviços de Tecnologia da Informação
Leia mais