Fernando Correia

Computação de alto desempenho com Windows Azure

In Novidades on 20 nov 2011 at 22:54

O potencial da nuvem de usar centenas de servidores em paralelo para executar grandes cargas de trabalho em uma fração do tempo que normalmente levaria é um tema que me fascina.

Eu vejo uma grande oportunidade de ganho, especialmente para grandes empresas que possuem processos periódicos envolvendo regras de negócio complexa aplicadas a milhões de registros. Mesmo grandes corporações normalmente não possuem centenas de processadores ociosos disponíveis para executar uma carga de trabalho sob demanda.

Serviços na nuvem como os Worker Roles do Windows Azure permitem carregar os dados a serem utilizados, usar uma grande quantidade de servidores em paralelo para o processamento, e baixar os resultados. Uma vez encerrado o processamento, todas as instâncias de servidores podem ser liberadas, e os dados podem ser descartados. Tudo isso pagando apenas pelos recursos consumidos.

O Service Bus do Azure, ou o serviço Integration, poderiam ser utilizados para transportar os dados entre o datacenter da empresa e o Azure. O serviço Connect permite estabelecer conexões de rede seguras, para garantir o sigilo dos dados.

No QCon SP 2011, eu assisti o Khawaja Shams, do Jet Propulsion Laboratory da NASA, relatar como eles usaram a computação em nuvem para executar em meio dia, ao custo de R$ 300, um processamento de imagens de satélites que estava levando dias no datacenter da NASA.

Lee Stott, da Microsoft UK Faculty Connection, relata como grandes cargas de trabalho no software de computação numérica MATLAB (um dos mais utilizados na comunidade científica) estão sendo processadas em uma fração do tempo normal utilizando uma solução de computação de alto desempenho no Azure chamada Techila.

A Microsoft Research liberou uma prévia de tecnologia do projeto Daytona, um mecanismo no padrão MapReduce para o Azure que permite utilizar centenas de núcleos de processador para análise de dados distribuídos.

Uma grande notícia que vai favorecer muito as aplicações de computação de alto desempenho no Azure é o suporte ao Hadoop, que está se estabelecendo como o padrão de mercado para computação distribuída.

Estamos apenas começando a era de processamento altamente paralelo e distribuído sob demanda. Esta faceta da nuvem vai possibilitar aplicações que vão causar espanto pela complexidade do processamento que poderá ser realizado rapidamente.

Basicamente, a nuvem é um gigantesco supercomputador.

HPC