Sistemas Distribuídos Visão Geral de Sistemas Distribuídos I Voltando ao tempo. . . • Voltando ao tempo, em meados da década de quarenta, os Estados Unidos buscavam desenvolver estratégias militares de comunicação durante a guerra, de maneira que seus soldados se comunicassem através de pontos distintos com segurança e confiabilidade; • Na mesma época eram desenvolvidos os primeiros sistemas de posição legados para as arquiteturas de computação lógica de grande porte que surgiam para armazenar vários tipos de dados; • Só que o propósito almejado era “descentralizar” uma ou mais bases de apoio para evitar que os inimigos eliminassem o “ponto inteligente” do país; Voltando ao tempo. . . • Considerando a evolução tecnológica da época, analisou-se a dificuldade em projetar, desenvolver e dar suporte a ferramentas tecnológicas para prover um funcionamento dito “distribuído” com operações complexas; • Para isso, a partir da década de cinquenta, o surgimento de novos modelos desencadeou o avanço acelerado da “divisão de tarefas” em uma mesma unidade autônoma; • Um dos primeiros equipamentos a utilizarem o paradigma de dividir “esforço” nas operações foi o ENIAC* através de canais compartilhados de E/S; Voltando ao tempo. . . • A ideia era utilizar o modelo da arquitetura de Von Neuman*, baseado em uma distribuição de tarefas ainda local, através da alocação da seguinte organização: • Vamos ver um breve vídeo? Voltando ao tempo. . . • Se analisarmos brevemente a distribuição das operações do ENIAC, veremos tamanha complexidade: Célula de processamento mecânico E/S • Cada célula representa uma parte do processamento central do computador, dividido em várias partes; Voltando ao tempo. . . • A partir do final da década de sessenta, com o apogeu do desenvolvimento e uso das RedesdeComputadores, as pesquisas e investimentos ascenderam uma nova perspectiva que já era possível de ser utilizada; • Operações ao invés de serem divididas fisicamente para um mesmo equipamento, seriam distribuídas em ambientes físicos de curta ou longa distância com a possibilidade de agregação contínua; • Esse fato ocorreu, por exemplo com a proposição dos Modelos de Computação Distribuída; • Semelhante as redes de acesso, a distribuição era baseada em camadas; Voltando ao tempo. . .foi possível a partir • A fixação do modelo citado só da década de oitenta com o surgimento dos microprocessadores; • Até então, na época o “custo x performance” era inviável tanto pelos aspectos de hardware/software quanto pelos padrões de interconexão das redes; supercomputadores eram organizados • Os esteticamente em formatos de Grid , posteriormente ficando conhecidos como clusters computacionais mais avançados; • O foco buscado era a expansão de serviços para grandes órgãos do governo, universidades e aplicações comerciais; Voltando ao tempo. . . • Na década de noventa vários países já possuíam projetos com grandes mainframe espalhados pelo mundo, principalmente por empresas de tecnologia; • O surgimento das redes locais e a adequação das diversas arquiteturas de rede às arquiteturas de processamento compartilhado também incentivaram essa perspectiva de crescimento; • Outra contribuição, das mais importantes, foi a evolução dos sistemas operacionais, dentre eles, principalmente o Unix, Windows e vários outros; • Computadores menores e crescimento expansível; Voltando ao tempo. . . • IBM CDC 6600 – Apogeu da di stribui ção de 1964; Voltando ao tempo. . . • Já nos anos dois mil, um largo salto foi dado com a popularização da internet, o que na verdade constitui um “macro” sistema distribuído; • Grandes empresas como Microsoft e Google formulavam grandes parques tecnológicos com sistemas de presença “virtuais” e de acesso “fácil” com distribuição geográfica sobre demanda; • A divisão dos equipamentos ficam até os dias atuais tanto na sede principal quanto nas subsedes espalhadas pelo mundo; • Interconexões de alta velocidades, geralmente providas por fibras oceânicas e satélites privados; Voltando ao tempo. . . • Infraestrutura de hardware e software e redes metropolitanas ; • Sede do Google na Califórn ia – Estados Un idos ; Voltando ao tempo. . . • Segundo fontes da internet, a empresa divulga de forma “não-oficial” cerca de 1.000.0000 de servidores espalhados pelo mundo com uma arquitetura “all-inbox” formando Datacentersemcontainers; Voltando ao tempo. . . • Pra quem pensa que os servidores são “parrudos” está enganado. São máquinas simples, mas que “reorganizadas” formam um avançado parque de comunicação; Voltando ao tempo. . . • Dois artigos interessantes para obter uma visão básica sobre esse modelo de “clusters” são: • MapReduce: Simplified Data Processing on Large Cl usters; • Bigtable: A Distributed Storage System for Structured Data; • *Vídeo instrucional: Googlecontainerdatacentertour. Voltando ao tempo. . . • Ao final da década de dois mil, meados dos anos de 2009 e 2010, um novo conceito de computação distribuída surgiu – Google OS Chrome; • Plataformas empresariais que vendem “soluções” e uma “fatia” desconhecida de armazenamento, processamento e memória para os usuários finais; • Cada usuário/empresa compra computadores “virtuais” e paga por C$ (centavos de dólar) o tempo de uso; • Seus arquivos podem estar em 20 a 50 países diferentes e serem acessados de qualquer computador com internet; • A Salesforce e a AmazonAWS se destacam neste campo por vender “serviços”. SaaS, HaaS. . . (pesquisar); Voltando ao tempo. . . • Google OS Chrome – Apresentação em 2010; Voltando ao tempo. . . Voltando ao tempo. . . • Em 2011, um avanço na mobilidade [+ portabilidade] dos dados possibilitou o avanço de duas gigantes no aspecto de “popularização” + “informaticidade” de serviços. • O “negócio” agora é “puxar e repassar” informação e maisinformação, de um para um, ou de um para muitos á todo momento e de maneira gratuita, com vários MB, GB PTB, e etc., tudo GRÁTIS! • Samsung Scloud e o iCloud são exemplos ao integraram processamento, memória e armazenamento em massa através de plataformas simples e multiconectadas para efetuar operações entre seus usuários; Voltando ao tempo. . . Alguns fatos importantes. . . • Para finalizar nossa volta ao passado com uma breve visão do futuro, destacamos algumas das datas mais importantes dos últimos 60 anos para a computação distribuída; • 1946: Surgimento dos Mainframes nos EUA; • 1959: Criação COmmon Business Oriented Language; • 1960: Idealização e criação dos clusters pela IBM; • 1964: A IBM apresenta o Mainframe System/360; • 1965: Nasce o Multics, pai do Unix; • 1969/1970: Surge um dos primeiros sistema operacionais com multitarefa, multiprogramação e sistematização: Unix; Alguns fatos importantes. . . • 1970: Surge o conceito de “processo” para software e projeção paralela para o desenvolvimento – Engenharia de Software para SDiS; • 1972: Explode a “Crise do Software” destacada por “Edsger Dijkstra” em :"The Humble Programmer“; • 1973: A Arpanet desenvolve as primeiras pesquisas com computação paralela e arquiteturas de redes locais; • 1974: Criado o SNA, protocolo responsável pela comunicação das camadas de um cluster; • 1975: A partir deste ano, o processamento computacional é realizado com circuitos integrados; Alguns fatos importantes. . . • 1976-1980: A evolução dos sistemas acompanhou a evolução das redes com o compartilhamento de recursos locais (arquivos, impressoras, rotinas de código, etc.); • 1981-1990: Desenvolvidos os primeiros sistemas operacionais com interconexões de operações concorrentes distribuídas; • 1991: São implementados os principais escalonadores de balanceamento de carga para serviços; • 1991/1992: É implementada a versão 1.0 do Common Object Request Broker Architecture; • 1995: É lançado a plataforma BOINC, maior projeto de processamento distribuído da época; Alguns fatos importantes. . . • 1997: É lançada a versão JDK 1.1 da linguagem Java com a Remote Method Invocation para distribuição de código; • 1999: O antigo BOINC é fundido em um novo projeto denominado SETI@home para processamento distribuído. Neste mesmo ano é fundado o SETI@home Brasil - http://www.setibr.org/; • 2000: A orientação a serviço para software distribuído (SOA-SDiS) é lançada e várias empresas adotam este modelo, dentre eles o Walmart; • 2010: As Redes Sociais e afins, invadem e expandem a tecnologia de distribuição ao longo dos anos; Alguns fatos importantes. . . • 2012: As mídias sociais compartilham dados, e mais dados, com pequenos sistemas móveis, que utilizam processamento local e distribuído integrado, tais como compartilhamento de fotos, vídeos, currículos, e compras...