Computação em Grid

Click here to load reader

  • date post

    23-Jun-2015
  • Category

    Documents

  • view

    236
  • download

    0

Embed Size (px)

Transcript of Computação em Grid

Captulo

11

Computao em Grade: Conceitos, Tecnologias, Aplicaes e TendnciasLus Fabrcio Wanderley Ges, Dorgival Olavo Guedes Neto, Renato Ferreira, Walfredo Cirne

Abstract Due to the evolution of processors, networks, memories, operating systems, languages and other computers components, new parallel and distributed architectures appeared, among them we remark the computational grades. Thus, a wide range of complex problems could be solved such as massive image processing, computational biology, data mining and scientific and engineering simulation models. Nowadays, there are many technologies to support grade computing: Globus, Gradebus, Condor, OurGrade and Anthill. In this work, we detail the concepts (characteristics, architectures etc.), technologies, applications (data mining etc.) and current and future tendencies of the grade computing. Resumo Com a evoluo dos processadores, redes de interconexo, memrias, sistemas operacionais, linguagens e outros componentes de computador, surgiram novas arquiteturas paralelas e distribudas, dentre as quais destacamos as grades computacionais. Em decorrncia disso, criou-se a possibilidade de resolver problemas mais complexos como tratamento de conjuntos de imagens, biologia computacional, minerao de dados e simulao de modelos cientficos e de engenharia. Atualmente, existem diversas tecnologias para o suportar a computao em grade, dentre os quais destacamos o Globus, Gradebus, Condor, OurGrade e Anthill. Neste trabalho, detalharemos os conceitos (caractersticas, arquiteturas etc.), tecnologias, aplicaes (minerao de dados etc.) e tendncias atuais e futuras da computao em grade.

11.1. IntroduoInspirados pelo sistema de energia eltrica, no meio da dcada de 90, os cientistas da computao comearam a explorar o projeto e o desenvolvimento de uma nova infraestrutura computacional pelo acoplamento de recursos distribudos geograficamente como bases de dados, servidores de armazenamento, redes de alta velocidade, supercomputadores e aglomerados para solucionar problemas de grande escala, levando ao termo popularmente conhecido como computao em grade [Buyya 2002] [Buyya 2005] [Foster 1999] [Foster 2002]. Esta infra-estrutura anloga grade de energia eltrica que prov acesso consistente, pervasivo e transparente a energia eltrica independente da origem. A grde de energia eltrica disponibiliza energia eltrica sob demanda e esconde do usurio detalhes como a origem da energia e a complexidade da malha de transmisso e distribuio. Ou seja, se temos um equipamento eltrico, simplesmente o conectamos na tomada para que ele receba energia. Uma grade computacional, portanto, seria uma rede na qual o individuo se conecta para obter poder computacional (ciclos, armazenamento, software, perifricos, etc). A Figura 1 ilustra esta idia.

Figura 1. Uma Grade Computacional como fonte transparente de poder computacional sob demanda.

Tanto a origem dos ciclos de processamento quanto da energia bastante heterognea. No caso da energia, ela pode ser gerada por usinas termoeltricas, hidreltricas, nucleares e elicas, enquanto os ciclos de processamento podem surgir de aglomerados de computadores, PCs, SMPs, etc. com diferentes sistemas operacionais, arquiteturas e processadores. Alm disso, as cargas de trabalho das infra-estruturas so bastante heterogneas, comeando de eletrodomsticos, televisores at mquina industriais no caso da grade de energia eltrica, enquanto na grade computacional existem aplicaes cientficas, de entretenimento, de engenharia etc [Buyya 2002].

Mas apesar destas semelhanas, diferentemente da grade de energia eltrica que fornece energia de imediato, pois ele no necessita gerar diferentes tipos de energia de acordo com a entrada, a grade computacional necessita de dados de entrada para o uso de seus ciclos de processamento, alm da transmisso dos resultados. Uma outra diferena interessante a questo do armazenamento, pois a energia eltrica pode ser armazenada, enquanto os ciclos de processamento no utilizados so perdidos [Buyya 2002]. Existe um grande nmero de projetos ao redor do mundo empenhados no desenvolvimento de grades computacionais e com isso surgiram diversas definies. O projeto Gridbus define uma grade computacional como um tipo de sistema distribudo e paralelo que permite o compartilhamento, seleo e agregao de recursos autnomos distribudos geograficamente, em tempo de execuo, dependendo da disponibilidade, capacidade, desempenho, custo e requisitos de QoS dos usurios [Buyya 2005]. De acordo com o projeto Globus, uma grade computacional uma infra-estrutura que permite o uso integrado e colaborativo de computadores de alto desempenho, redes de interconexo, bases de dados e instrumentos cientficos pertencidos e gerenciados por mltiplas organizaes [Foster 2002]. 11.1.1. Histrico A computao em grade o resultado de dcadas de pesquisa nas reas de processamento paralelo e sistemas distribudos. A pesquisa em processamento paralelo sempre procurou extrair o mximo de desempenho computacional por meio da criao de mquinas dedicadas com mltiplos processadores, redes especiais de alta velocidade, memrias compartilhadas e processamento vetorial. Todo este esforo levou a construo de supercomputadores como o NEC Earth Simulator e o IBM Blue Gene (MPPs), mquinas extremamente caras e de propsito especfico, alm de aglomerados de computadores (NOWs) de baixo custo financeiro compostos de software e hardware de prateleira.

Figura 2. Evoluo das arquieturas at as Grades Computacionais.

Por outro lado, a rea de sistemas distribudos preocupou-se mais com aspectos ligados comunicao, heterogeneidade e compartilhamento de recursos computacionais, principalmente informaes por meio de arquivos. Com o surgimento da Internet e da Web, por meio de protocolos como o TCP/IP e HTML e redes Ethernet, os sistemas distribudos atingiram uma escalabilidade global propiciando a criao do comrcio eletrnico, redes de troca de arquivos, teleconferncias etc. Esta evoluo

resultou nas redes P2P (peer-to-peer) como Kazaa, Gnutella e Emule, que permitem o compartilhamento de qualquer tipo de arquivo em nvel global [Chetty 2002] [Krauter 2001]. Como resultado da unio destas duas importantes reas da computao, surgiu o conceito de grade computacional (Figura 2). Portanto, as grades computacionais esto preocupadas em agregar supercomputadores distribudos geograficamente para o processamento de grandes massas de dados, enquanto redes P2P procuram compartilhar arquivos distribudos geograficamente e realizar processamento com computadores de pequeno porte, no caso do projeto [email protected], e os supercomputadores (MPPs, aglomerados etc.) so computadores de grande porte dedicados para soluo de grandes problemas com o menor tempo de resposta. 11.1.2. Objetivos Com a proposta deste trabalho pretendemos atingir quatro objetivos principais: Apresentar e difundir os conhecimentos (tericos e prticos) relacionados com a computao em grade considerando os principais tpicos relacionados com: conceitos; tecnologias, aplicaes e tendncias. Apresentar de modo prtico e exemplificado, a programao de aplicaes para arquiteturas de computao em grade existentes (OurGrid, Anthill etc.). Neste minicurso, apresentamos aplicaes de minerao de dados em bases de dados reais. Incentivar os alunos a programar e utilizar computao em grade nas suas universidades nos contextos das diversas disciplinas e futuramente utilizar este tipo de sistema computacional na sua vida profissional. Produzir e disponibilizar literatura em portugus sobre computao em grade unindo tpicos tericos e prticos, j que a quantidade de material - com este enfoque disponvel em portugus muito pequena. O texto est organizado da seguinte forma: a seo 2 apresenta os principais conceitos de computao em grade. A seo 3 apresenta as tecnologias atuais de computao em grade. A seo 4 apresenta as principais aplicaes para computao em grade, com nfase em aplicaes de minerao de dados e finalmente a seo 5 apresenta algumas concluses, tendncias atuais e futuras, terminando com uma discusso sobre possveis trabalhos futuros na rea de computao em grade.

11.2. Conceitos de Computao em GradeMuitos domnios de aplicaes, nos quais problemas com alta demanda de processamento e armazenamento de dados podem ser divididos em sub-problemas e resolvidos individualmente, so os mais indicados para a execuo em grades computacionais. Entre essas aplicaes, podemos destacar simulaes de Monte Carlo, projeto de remdios, operaes de pesquisa e minerao de dados. Algumas destas aplicaes esto relacionadas ao termo eScience, que denota a pesquisa realizada de forma colaborativa em escala global. Este ambiente de eScience envolve o compartilhamento de instrumentos cientficos, dados distribudos, visualizao remota e interpretao colaborativa de dados e resultados, se adequando perfeitamente s caractersticas de uma infra-estrutura de computao em grade [Buyya 2005]. Portanto, em uma grade computacional devemos lidar com seis aspectos principais para suportar esses tipos de aplicaes [Buyya 2002]: Heterogeneidade: uma grade envolve uma multiplicidade de recursos que so heterogneos e envolvem uma grande variedade de tecnologias. Escalabilidade: uma grade deve crescer de algumas dezenas de recursos para milhes de recursos sem perda de desempenho. Mas devido a alta disperso geogrfica, as aplicaes de uma grade devem ser projetadas levando-se em considerao problemas com a latncia e a largura de banda para a transmisso de dados. Compartilhamento de Recursos: os recursos de uma grade computacional no podem ser dedicados para nenhuma aplicao especfica. Mltiplos Domnios Administrativos: os recursos de uma grade esto distribudos geograficamente em mltiplos domnios administrativos, onde cada organizao possui suas prprias restries e regras de uso dos recursos, que devem ser respeitadas. Controle Distribudo: em uma grade no existe um gerenciador centralizado que p