Tipos de Sistemas Distribuídos

Slides:



Advertisements
Apresentações semelhantes
Sistemas Distribuídos
Advertisements

Sistemas Distribuídos
Sistemas Distribuídos Baseados em Objetos
Sistemas distribuídos Metas de Projeto Prof. Diovani Milhorim
Sistemas Distribuídos
Noções de Sistemas Operacionais
Sistemas operacionais
Bruno Rafael de Oliveira Rodrigues
Sistemas Distribuídos
Motor de Armazenamento
Transações Atômicas Distribuídas
Sistemas Distribuídos
Transações Atômicas Distribuídas
SISTEMAS DISTRIBUÍDOS
Interação Cliente Servidor
1 Comunicação Inter-Processos -> RMI -> RPC -> TCP -> UDP (Abstração de passagem de mensagem)
1 Sistemas Distribuídos - SDI Caracterização de Sistemas Distribuídos. Introdução. Exemplos de Sistemas Distribuídos. Desafios.
SISTEMAS DISTRIBUÍDOS Princípios e Paradigmas 2ª Edição ANDREW S
Sistemas Distribuídos
Mobilidade Cláudia Ribeiro.
RECUPERAÇÃO APÓS FALHA
Sistemas Distribuídos
Middleware e Sistemas Distribuídos
Gerenciamento de Transações - Introdução
Tópicos em redes e sistemas distribuídos
Sistemas Distribuídos
Tópicos em redes e sistemas distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Equipamentos de Redes Aula 3
Arquitetura Cliente /Servidor
SISTEMAS DISTRIBUÍDOS
Sistemas Distribuídos
Concorrência e Java RMI
Gerenciamento de Redes Utilizando Agentes Móveis
Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05.
Sistemas Distribuídos
Controle de concorrência
Universidade da Beira Interior Fiabilidade de Sistemas Informáticos Nuno Magarreiro n.º
Sistemas Distribuídos Introdução. Conceito Coleção de múltiplos processos que executam sobre uma coleção de processadores autônomos interligados em uma.
Sistemas Distribuídos
BD Distribuído Conceitos Iniciais.
Universidade de Mogi das Cruzes Tec
Concorrência e thread Petrônio Júnior(pglj) Márcio Neves(mmn2)
SISTEMAS OPERACIONAIS I
PROGRAMAÇÃO DISTRIBUÍDA Aula 01 Prof. Henrique Mongelli
Java RMI João Gabriel (jggxm).
Processos.
Prof. Emmanuel Nolêto T. D. S. I. PARA WEB Prof. Emmanuel Nolêto
Sistemas Distribuídos
Comunicação.
Tipos de Sistemas Distribuídos
SISTEMAS DISTRIBUÍDOS Transações Atômicas
Troca de Mensagens Programação concorrente
Aplicações de redes em sistemas de informação
Tópicos Especiais em Redes de Computadores 6º Semestre Aula 03 Prof
Definição um sistema de BD distribuído consistem em uma rede de várias ocorrências de bases de dados interligadas. característica principal para o usuário,
Sistemas Distribuidos
Integração de Ferramentas CASE
CONECTIVIDADE Prof.: Alessandro V. Soares Ferreira
Um proposta de Arquitetura para protocolos entre grades.
Transações Banco de Dados II Aline S Costa 1. TRANSAÇÕES Conjunto de operações que formam uma única unidade lógica de trabalho; Conjunto de instruções.
Trabalho elaborado por: -Daniel Nº26 -André Nº3. * A camada de rede do modelo OSI é responsável por controlar a operação da rede de um modo geral. As.
Arquitetura de computadores
Redes e Sistemas Distribuídos II – Cód Prof. MSc. Ronnison Reges Vidal.
Leandro Clementino Almeida.  Anos 50 - Sistemas Operacionais tipo Lote:  Aumentar a capacidade de processamento de programas  Usuário ia ao computador.
Banco de Dados Distribuídos Sílvia Cristina de Matos Soares
Cluster. Introdução Cluster pode ser definido como um sistema onde dois ou mais computadores trabalham de maneira conjunta para realizar processamento.
Estruturas de Sistemas Operacionais. Componentes Comuns do Sistema Administração de Processos Administração da Memória Principal Administração do Armazenamento.
Bruna Cavallero Martins Universidade Católica de Pelotas.
Capítulo 4 Estrutura do Sistema Operacional
Curso Superior em Redes de Computadores Camada de Aplicação Prof. Sales Filho.
Transcrição da apresentação:

Tipos de Sistemas Distribuídos Prof. Daniel Leite

Tipos de Sistemas Distribuídos Sistemas de Computação Distribuídos Voltado para computação de alto desempenho Clusters Grade Sistemas de Informação Distribuídos Sistemas de Processamento de Transações Integração de Aplicações Corporativas Sistemas Distribuídos Pervasivos Sistemas Domésticos Sistemas Eletrônicos para Transporte de Saúde Rede de Sensores

Tipos de Sistemas Distribuídos Clusters Foi tornando-se comum a medida que o preço do hardware foi diminuindo É executado em uma rede local, sobre os mesmos SO e máquinas com hardware semelhante. Ambiente local e homogêneo Utilizada quando exige-se muito processamento de um ambiente O processamento é paralelo por um único programa executado em várias máquinas

Tipos de Sistemas Distribuídos Clusters – Beowulf Fundamentado em 1994, pela NASA, com a finalidade de processar as informações espaciais recolhidas. Características A conexão dos nós pode ser feita por redes do tipo Ethernet (mais comum); Existe um servidor responsável por controlar todo o cluster quanto a distribuição de tarefas e processamento monitoração de falhas Este servidor é chamado de Front-end; Pode-se usar computadores comuns, inclusive obsoletos

Tipos de Sistemas Distribuídos Front-end Switch ... Nós

Tipos de Sistemas Distribuídos

Tipos de Sistemas Distribuídos Cluster - Mosix - Multicomputer Operating System for UnIX Conjunto de ferramentas de cluster para Linux, voltado ao tipo Balanceamento de Carga Uma de suas principais características é a não necessidade de aplicações e recursos de software voltados ao cluster, como acontece com o Beowulf É eficiente na tarefa de distribuição dinâmica de processamento entre os computadores do cluster Trabalha como se fosse um único supercomputador, por meio de conceitos de Distribuição de Processos e Balanceamento de Carga.

Tipos de Sistemas Distribuídos Grade Alto grau de heterogeneidade Não existe premissa sobre o ambiente que será executado: Hardware SO Redes Domínios administrativos Políticas de segurança Reuni recursos de diferentes pessoas ou organizações permitindo a colaboração. É uma forma de organização virtual

Tipos de Sistemas Distribuídos

Tipos de Sistemas Distribuídos Grade O middleware de Grade é voltado para fornecer acesso a recursos de diferentes domínios administrativos A arquitetura tem um peso muito forte em sua concepção e implementação

Tipos de Sistemas Distribuídos

Tipos de Sistemas Distribuídos Camada base Provê interfaces para recursos locais em um site específico São projetadas para permitir compartilhamento dos recursos computacionais dentro da organização virtual Provê funções para consultar o estado e as capacidades de um recurso Funciona em conjunto com funções para o gerenciamento de recursos propiamente dito Ex. Trava de recursos

Tipos de Sistemas Distribuídos Camada de conectividade Consiste em protocolos de comunicação para suportar transações da grade que abranjam a utilização de múltiplos recursos Conterá protocolos de segurança

Tipos de Sistemas Distribuídos Camada de recursos Responsável pelo gerenciamento de um único recurso, o controle de acesso Utiliza as funções fornecidas pela camada de conectividade e chama diretamente as interfaces disponibilizadas pela camada-base

Tipos de Sistemas Distribuídos Camada coletiva Trata de manipular o acesso a múltiplos recursos e normalmente consiste em serviços para descoberta de recursos, alocação e escalonamento de tarefas para múltiplos recursos, replicação de dados, etc.

Tipos de Sistemas Distribuídos Camada de aplicação Consiste em aplicação virtual que funcionam dentro de uma organização virtual e fazem uso do ambiente de computação em grade

Tipos de Sistemas Distribuídos As camadas coletivas, de conectividade e de recursos formam o cerne do que pode ser denominado de camada de middleware em grade

Tipos de Sistemas Distribuídos Sistemas de Informação Distribuídos Sistemas de Processamento de Transações Integração de Aplicações Corporativas

Tipos de Sistemas Distribuídos Sistemas de Informação Distribuídos Encontrada em organização que possuem uma grande quantidade de aplicações em rede que necessitam interoperarem Ex. Servidor, geralmente também de BD, disponibiliza acesso a programas remotos (clientes). Os clientes enviam requisições ao servidor e recebem uma resposta deste servidor. A aplicação de nível mais baixo permite que clientes empacotem várias requisições em uma única requisição maior, e as enviam para execução como uma transação distribuída. Esta transação ou executará todas as requisições, ou nenhuma

Tipos de Sistemas Distribuídos Sistemas de Informação Distribuídos A medida que as aplicações foram tornando-se mais sofisticadas e eram gradualmente separadas em componentes independentes, distinguindo Componentes de BDs Componentes de processamento A integração deveria ocorre de modo a permitir a aplicação se comunicar diretamente uma com as outras Grande indústria voltada para Integração Empresariais (EAI – Enterprise Application Integration) Sistemas de Processamento de Transações Integração de Aplicações Corporativas

Tipos de Sistemas Distribuídos Sistemas de Processamento de Transações Bancos de dados executam suas operações sob forma de transações Programar utilizando transações requer primitivas especiais BEGIN_TRANSACTION – Inicia a transação END_TRANSACTION – Termine a transação e tente comprometê-la ABORT_TRANSACTION – Elimine a transação e restaure os valores antigos READ – Leia dados de um arquivo, tabela, etc. WRITE – Escreva dados para um arquivo, tabela, etc.

Tipos de Sistemas Distribuídos As transações precisam ser ACID: Atômica: A transação é indivisível Consistentes: Sai do estado inicial consistente e vai até ao final também consistente Isoladas: Transações concorrentes não interferem umas com as outras Duráveis: Uma vez comprometida uma transação, as alterações são permanentes

Tipos de Sistemas Distribuídos Atômica Garante que cada transação aconteça completamente ou não aconteça Será como uma única ação indivisível e instantânea Enquanto uma transação está em progresso, outros processos que estejam ou não envolvidos em transações, não podem ver nenhum dos estados intermediários

Tipos de Sistemas Distribuídos Consistentes Se o sistema tiver certos invariantes válidos antes da transação, estes também deverão valer após a realização da transação Ex. Sistema bancário Invariante é a lei a conservação do dinheiro Após toda a transferência interna, o $ no banco deverá ser o mesmo Observe que durante o a transação, por um breve instante o invariante pode ter sido violado. Porém não é visível para fora da transação

Tipos de Sistemas Distribuídos Isoladas ou serializáveis Se duas ou mais transações são executadas ao mesmo tempo, o resultado final para cada uma delas e para outros processos se apresentará como se todas as transações fossem executadas em sequência em certa ordem

Tipos de Sistemas Distribuídos Duráveis Refere-se ao fato de que não importa o que aconteça, uma vez comprometida uma transação, ela continua e os resultados tornam-se permanentes Nenhuma falha após o comprometimento pode desfazer os resultados ou provocar sua perda

Tipos de Sistemas Distribuídos Até aqui foram definidas transações em um único BD Transação Aninhada É construída com base em uma quantidade de subtransações

Tipos de Sistemas Distribuídos Subtransações Possuem uma transação pai Permite que as subtransações possam executar transações em máquinas diferentes Ganho de desempenho Simplifica a programação

Tipos de Sistemas Distribuídos Subtransações Problema Imagine uma transação inicia várias subtransações em paralelo Uma delas se compromete, tornando seus resultados visíveis a transação pai Após um certo tempo a transação pai é abortada Restaura-se o sistema ao estado que estava antes que a transação do nível mais alto começasse

Tipos de Sistemas Distribuídos Integração de Aplicações Corporativas Quanto mais crescia as aplicações distribuídas e se desvinculavam dos BDs mais evidente ficava que eram necessárias facilidades para integrar as aplicações As aplicações deveriam poder se comunicar diretamente com outras aplicações Não apenas através do comportamento requisição/resposta Existem vários de middleware de comunicação RPC RMI MOM

Tipos de Sistemas Distribuídos Integração de Aplicações Corporativas RPC – Remote Procedure Calls Comunicação através de chamadas de procedimentos remotos Um componente da aplicação pode efetivamente enviar uma requisição a um outro componente de aplicação executando uma chamada de procedimento local Resulta no empacotamento da requisição como uma mensagem e em seu envio ao chamado Da mesma forma o resultado será enviado de volta e devolvido a aplicação como resultado da chamada do procedimento

Tipos de Sistemas Distribuídos RMI - Remote Method Invocation Popularização das linguagens OO Java, C++ Foram desenvolvidos técnicas que permitisse chamadas a objetos remotos Invocações da métodos remotos A grande diferença entre RMI e RPC é que um funciona com objetos em vez de aplicações

Tipos de Sistemas Distribuídos Desvantagem da RPC e RMI O chamador e o chamado devem estar ligados e em funcionamento no momento da comunicação Precisam saber exatamente como se referir um ao outro Forte acoplamento ( muitas vezes percebido como desvantagem)

Tipos de Sistemas Distribuídos MOM – Message-oriented Middleware As aplicações enviam mensagens a pontos lógicos de contato Aplicações indicam interesse por um tipo específico de mensagem O middleware de comunicação cuidará para que todas as mensagens sejam entregues a essas aplicações

Tipos de Sistemas Distribuídos Os sistemas distribuídos vistos até este momento são em grande parte caracterizados por: Nós relativamente fixos Conexão relativamente permanente Alta qualidade de rede Sistemas Distribuídos Pervasivos Dispositivos de computação móveis e embutidos Pequeno tamanho Alimentação a bateria Sistemas Domésticos Sistemas Eletrônicos para Transporte de Saúde Rede de Sensores

Tipos de Sistemas Distribuídos Sistemas domésticos Sistemas comuns Montados ao redor de redes domésticas Integram eletrônicos TVs Equipamentos de audio e vídeo Dispositivos para jogos PDAs

Tipos de Sistemas Distribuídos Sistemas domésticos Desafios Autoconfigurável Autogerenciável Tirar do usuário a responsabilidade de configurar o sistema doméstico e deixá-lo funcionando O padrão UPnP (Universal Plug and Play) Obtêm automaticamente endereços IP Capacidade de descobrir uns aos outros

Tipos de Sistemas Distribuídos Sistemas domésticos Gerenciamento de dados Espaço pessoal Dentro de um sistema doméstico consiste em muitos dispositivos pessoais e dados compartilhados, onde estão sujeitos a restrições de compartilhamento

Tipos de Sistemas Distribuídos Sistema eletrônicos para tratamento de saúde Consiste em dispositivos para monitorar o bem-estar de indivíduos e entrar automaticamente em contato com médicos caso necessite Objetiva-se evitar que pessoas sejam hospitalizadas

Tipos de Sistemas Distribuídos Sistema eletrônicos para tratamento de saúde Costuma ser equipados com vários sensores organizados em um rede de área corporal (BAN – Body-area Network) Preferencialmente sem fio

Tipos de Sistemas Distribuídos Sistema eletrônicos para tratamento de saúde

Tipos de Sistemas Distribuídos Redes de sensores Consiste em espalhar sensores (podendo chegar a milhares) para que algo seja monitorado Esses sensores devem monitorar e se comunicar em rede para responder a requisições sobre este ambiente Ex. Monitoração de tráfego de carros em uma estrada, poderia facilmente responder questões relacionadas ao tráfego dos veículos Ex. Utilização da rede de sensores para recolher informações sobre temperatura/humidade, onde com base nessas informações possa ser modificada para uma temperatura ideal.

Tipos de Sistemas Distribuídos Redes de sensores