Computação em Grade (Grid Computing): A Evolução dos Sistemas em Redes

Muito se fala em desperdício de energia, água, poluição dos mares e desmatamento de florestas...mas ninguém notou que estamos desperdiçando processamento de dados, armazenagem, hardware, banda de internet, dentre outros recursos.

Não acha isso muito importante? Essas coisas 'nerds' não são tão sérias e graves como as relacionadas com meio ambiente?

Saiba que, com os recursos que estão sendo desperdiçados, poderíamos usar para prever catástrofes climáticas, ajudar pesquisas no combate ao câncer ou Aids, dentre milhares de outras pesquisas científicas que afetam diretamente você.

Com as noções de Computação Distribuído do artigo anterior, e sobre Grid desse artigo, vou te mostrar o motivo de nosso sistema de internet ser tão obsoleto e o saiba porque o Grid é um sistema evoluído de rede.


- Sistema atual: injusto e capitalista

Ao usar energia em sua casa você não se preocupa de onde ela vem. Simplesmente usa.
Caso precise de mais, simplesmente pluga mais acessórios ou faz mais instalações elétrica, e a rede elétrica vai dar suporte a isso. Já se perguntou como isso ocorre? Já notou que sempre vai ter energia?
É realmente um sistema robusto. Não importa de onde, mas a energia vem.

O nome 'grid', que é grade (ou grelha, caso você seja de portugal) vem de 'power grid', que é como é chamado o sistema de energia nos EUA, por exemplo.

Se você decidir montar um hospital, por exemplo, faça as instalações, que a 'power grid' vai te dar toda a energia necessária, e vai buscar energia onde quer que esteja. É um complexo e funcional sistema.


Porém, se você você for uma Universidade e quiser fazer pesquisa científica, sobre alguma doença por exemplo, você só vai poder usar os recursos de rede e internet que pagou. Os recursos são estritamente fixos e alocados. Tem sua banda fixa.
Não é como o sistema de energia, que quanto mais você precisar e pagar, mais terá.

Já parou pra pensar o que acontecem com a banda de internet daquela sua prima adolescente, que paga 10Mb mas não usa nem 1Mb, no MSN+Facebook? Já notou que se pagamos pelo serviço integral, mas raramente usamos tudo?
E o novíssimo computador dela, i7, i5, core 2 duo, que ela não usa nem 10% do que ele tem a oferecer?
Aliás, não é só ela, a maioria das pessoas/serviços não usam quase nada do que se tem direito, o restante é simplesmente desperdiçado.

Enquanto isso, as Universidade e Centros de Pesquisas não fazem mais descobertas e não avançam em ritmo mais forte por falta de processamento, banda, rede etc, como podem constatar no artigo sobre o BOINC.
Quem tem uma rede privada sabe a importância disso, sabe que quando o seu irmão desconecta você passa a desfrutar de toda a banda de internet. Ela não fica presa a ele.
E por que isso não acontece entre você e seu vizinho? Ou com seus amigos do seu prédio e da sua rua? Ou da sua cidade? Se estão pagando e não estão usando, não seria um direito seu direcionar seus recursos?

Gente pagando e não usando nem metade do que pode...
Centros e faculdades querendo curar e desenvolver o mundo, mas faltam meios...
Notou algo estranho?

A Grid é uma espécie de Rede, uma Internet melhorada, que processa, compartilha e administra os recursos de forma inteligente e mais proveitosa.
Então, por exemplo, se tem mil adolescentes usando MSN e Facebook, não tem porque dar 10Mb pra eles e deixar a Universidade, que precisa de recurso, com pouca banda de internet.

A ideia por trás de um Grid e que mostra que nosso sistema de Internet é bem antigo e 'egoísta' é simples: você tem sua banda mínima garantida - 10 MB, por exemplo, caso tenha pago por isso - mas quando não estiver usando, ela é inútil e é desperdiçada. Por que não usar para pesquisas científicas sobre buracos negros, para detectar atividades sísmicas em ilhas do oriente ou simplesmente para que seu vizinho que está precisando baixar com mais velocidade?
Se você está pagando pra ter 10MB sempre, 24h por dia, durante 7 dias por semana, por que não aproveitar isso ao máximo? É seu, você pagou!
Sabia que a melhor banda de Internet, para o usuário comum, no Brasil, é pior que a banda pública em algumas cidades do Japão?

Vamos colocar de outra forma: te dão 10 mil reais por mês, e você só gasta mil. O que o sistema atual de internet faz é te 'proibir' de gastar os outros 9 mil...por que não doar? por que não investir? por que não fazer algo útil com o que sobra?
Mesmo que usasse pra fazer uma fogueira pra um mendigo, já seria algo útil.
É tudo uma questão de como usar os recursos, e é aí que entra o grid.

- Grid: o que é e como funciona

Também conhecido como Computação em Grade, ou Grid Computing, grid é uma rede, onde os membros estão conectados em forma de sistema distribuído, trabalhando pra atingir um objetivo, com o diferencial de uma gerência mais eficiente e justa de processamento de dados, de hardware, de banda de internet e o que mais se desejar.
Não estranhe se ouvir fala cada mais mais em computação em grade, pois o modelo atual, que limita os recursos, é bem obsoleto.

Em uma grid, podemos compartilhar tudo, para atingir um objetivo. Atualmente é usado mais no meio acadêmico, em pesquisas na área científica, como em Física, Ciência da Computação, Engenharia Elétrica, Engenharia de Telecomunicações, Climatologia, Criptografia, Biologia, Oceanografia, simulações etc.

Mas já existem projetos que envolvem negócios, saúde, educação dentre outros. Como foi explanado no início do artigo, nada impede que o sistema de rede em grade seja utilizado em nosso dia-a-dia. É só querer compartilhar.

O poder computacional de uma Grid está dividido em diversas máquinas (membros), como nos clusters.
Portanto, o trabalho de um sistema Grid não é somente voltado ao processamento de dados, mas também ao gerenciamento de recursos de todo o sistema, ou de hardware (impressoras, por exemplo).
Pode-se dividir o funcionamento de um Grid nas camadas de rede e recursos, middleware, aplicação e serviços.

Existem grids totalmente voltadas para uma funcionalidade, onde sua administração e processamento são intimamente ligados, e são únicos, onde se assemelham com os clusters.
Assim como existem grids de propósito geral, onde a grid é uma 'base', que vai 'manter' o processamento de uma determinada tarefa, e não tem nada a ver, especificamente, com ela. Pode ser usada para vários trabalhos e fins, até caseiros.

A Grid funciona através de protocolos (como o TCP/IP), o que permite uma flexibilidade entre os membros, dizemos que estes são heterogêneos, ou seja, podem ser dos mais variados tipos (em relação a hardware, máquinas, clusters etc). Pois alguns sistemas distribuídos exigem que seus membros sejam exatamente iguais, o que facilita a administração do sistema.
A computação em grade é tão poderosa, que existem Grids com dezensa de sub-grids, onde cada uma tem centenas de clusters, e estes possuem milhares de computadores como membros (como o LHC).

Conceitos para definição de um Cluster/Grid, segundo o gridcafe.org :
1. Compartilhamento de recursos
2. Uso de recursos: uso e alocação eficiente de recursos
3. Acesso seguro: rígida política de acesso, autorização e autenticação, com definições bem claras sobre quem usa o que, para garantir a confiança e segurança de dados.
4. Morte da distância: a distância entre os membros da grid não importa
5. Padrões abertos: comunicação entre os membros por meios de padrões


Podemos dividir uma Grid em quatro camadas:

Camada de Rede: é a camada que faz a comunicação entre os membros e se utiliza da parte física, das redes mesmo, que nós conhecemos, com os links de internet, placas, cabos, roteadores, switches.

Camada de membros (ou de recursos): supercomputadores, servidores, serviços de armazenamento, sensores etc.

Middleware: é o intermediador de tudo. É o software, ou um conjunto destes (como é o caso do Globus Toolkit,  um conjunto de ferramentas para montar o Grid), são dezenas ou centenas de milhares de linha de código que vão administrar todos esses recursos, membros, troca de informação e tudo mais que uma grid pode fazer.

Além do Globus, outro grande middleware conhecido é o European Middleware Initiative.

Ou seja, é o programa de computar que faz tudo funcionar. Por sua complexidade, o middleware é composto por uma série de outras camadas, relativas à programação, protocolação, segurança e nível de abstração.

Aplicações e serviços: faculdades, CERN, LHC, BOINC, grid caseira, pesquisas médicas, de engenharia, portais, computação nas nuvens.
Aqui os exemplos são muitos, pois são os de uso da Grid.

Embora os Grids sejam desconhecidos do público geral, são amplamente usado por governos, universidades e centros de pesquisa. Por exemplo, que usam o Globus ToolKit:
- Centro de Terremotos do Sul da California, que faz simulações e usam gráficas e chegam usar 40 TB (tera bytes) em cada simulação
- CERN, para simulações de colisões de partículas
- Earth Grid System, sobre pesquisas climáticas da Terra

Para dar uma ideia maior do poder de processamento de um sistema em grid, o LHC, que ficou recentemente pela 'partícula de Deus', tem seu próprio sistema de computação em Grade, onde eles chegam a trocar nada menos que 300 Gb por segundo, além de possuir mais de 150 petabytes de informações (1 petabyte tem 1 milhão de gigabyte), e seu sistema em grade está distribuído em mais de 34 países:
http://en.wikipedia.org/wiki/LHC_Computing_Grid


- Open Grid Forum
Este ramo vem crescendo tanto, seus resultados são tão impressionantes e satisfatório, que existem fóruns para decidir o futuro das grids (sim, existem muitas), e há uma tentativa de padronização, além de discussões sobre o assunto, com a participação de grandes empresas:
http://www.ogf.org/

- Grid voluntariado
http://www.gridcafe.org/volunteer-computing-.html

- Questionamento final
A grande discussão gira em torno do fato de usarmos o processamento livre das pessoas para determinados fins.
Você acha justo? Você permitiria que usassem sua banda de internet?
Mais uma vez eu deixo bem claro: sempre que necessitar usar por aquilo que pagou - 10Mb, por exemplo - terá.
Acha certo que usem o que 'sobra' ?
Ou é invasão de privacidade? Mesmo que tais recursos fossem usados para pesquisas e desenvolvimento da humanidade?

Ainda ouviremos falar muito a respeito.

A propósito, está interessado em emprestar seu processador ou internet, enquanto você não usa, para realizar pesquisas científicas?
Você escolhe a área: Biologia, Física, Criptografia, prevenção Câncer, AIDS, procurar vida em outros planetas, detectar atividades sísmicas etc etc etc.
Clique aqui e conheça o BOINC.

Fontes:
http://www.gridcafe.org/
http://globus.org/
http://www.eu-emi.eu/
http://en.wikipedia.org/wiki/Grid_computing
Computação em Grid- Otavio Rodolfo Piske- angusyoung@gmail.com

2 comentários:

Anônimo disse...

Muito interessante essa matéria, eu já tinha parado pra pensar no grande desperdício desses recursos, mas não sabia que era possível "emprestar" para outras pessoas ou instituições.

Anônimo disse...

Muito obrigado, , aprendi muito, comecei usar o boinc,,