You are on page 1of 4

Comparao entre Plataformas de Computao em Nuvem *

Guilherme Magalhes, Claudio Schepke, Nicolas Maillard Instituto de Informtica Universidade Federal do Rio Grande do Sul (UFRGS) Caixa Postal 15.064 91.501.970 Porto Alegre RS Brasil
{ggmagalhaes,cschepke,nicolas}@inf.ufrgs.br

Resumo. O conceito de computao por demanda remete dcada de 60, mas s com o desenvolvimento dos sistemas de computao em nuvem que essa ideia comeou a fazer parte da realidade de empresas e usurios comuns. Neste artigo so discutidas as caractersticas essenciais da computao em nuvem e apresentadas algumas das plataformas disponveis no mercado. De forma comparativa, estabelecida uma relao entre essas plataformas e feita uma anlise dos usos possveis baseando-se nos pontos positivos de cada uma.

1. Introduo
A computao por demanda uma rea que est muito relacionada ao alto desempenho devido sua caracterstica que garante a expanso da capacidade computacional conforme a necessidade. Nos anos 2000, com o desenvolvimento dos sistemas de computao em nuvem, a computao por demanda comea a ser desenvolvida na prtica. Quanto computao em nuvem, essa no se limita em aplicativos hospedados ou em recursos computacionais disponveis remotamente. Alm disso, ela inclui outros conceitos. Segundo o NIST National Institute of Standards and Technology a computao em nuvem pode ser dividida em trs segmentos [CSCC 2011]: a) IaaS Infrastucture as a Service que basicamente a abstrao do hardware. Consiste no servio de prover solues de hardware com grande escalabilidade, disponibilidade, redundncia e segurana. b) SaaS Software as a Service tambm conhecido como software sob demanda. Neste caso o software e todas suas dependncias so hospedados em um servidor remoto. O usurio usa uma aplicao desenvolvida pelo provedor do servio que est disponvel para uso por diversos clientes simultaneamente. c) PaaS Platform as a Service o provedor gera a plataforma necessria para o usurio hospedar aplicaes criadas por ele ou adquiridas de desenvolvedores que no esto relacionadas ao provedor. A principal finalidade deste artigo auxiliar na escolha da plataforma de computao em nuvem mais adequada para cada projeto. Para isso, este artigo busca fornecer caractersticas relevantes de cada plataforma como Sistemas Operacionais compatveis, linguagens de programao suportadas e outras.
* Trabalho apoiado pelo projeto CTIC JiT Cloud, fomentado pela RNP.

2. Caractersticas essenciais do servio de computao em nuvem


Empresas buscam constantemente diminuir seus custos operacionais alm de buscar a melhora da qualidade do servio prestado. Ao pensar na adoo de uma nova tecnologia, essa deve trazer benefcios suficientes que motivem determinada empresa a investir na sua implantao. No se modifica todo um modelo tecnolgico j estabelecido se as melhorias trazidas pelo novo modelo no forem notveis. Entre os benefcios adquiridos com o uso dos sistemas de computao em nuvem esto: Escalabilidade sob demanda uma das grandes vantagens quando se opta pela computao em nuvem. Afinal importante ter disponvel tanto poder de processamento ou capacidade de armazenamento quanto seja necessrio para determinada aplicao [ARMBRUST et al. 2009]. No caso do depsito de dados, por exemplo, paga-se apenas o espao que for preciso para salvar os dados, alm de ter uma disponibilidade de espao de armazenamento aparentemente infindvel. Disponibilidade e amplo acesso so imprescindveis num sistema de computao em nuvem. O downtime que o tempo de indisponibilidade de um sistema deve ser o menor possvel. O processamento de uma informao depende da disponibilidade do sistema que no pode estar comprometido no momento em que o usurio precisar. Redundncia e resources pooling se ocorrer uma falha em um sistema computacional sem redundncia, informaes podem ser perdidas. Porm, se houver redundncia, o sistema defeituoso substitudo por outro, que manter a disponibilidade do servio. J com resources pooling, um agrupamento de recursos, minimiza-se os riscos para o usurio e aumenta-se sua eficincia [WISCHIK et al. 2008]. Segurana e privacidade so umas das prioridades no processamento e armazenamento de informaes. Um usurio no pode ver as suas informaes vulnerveis a ataques de terceiros. Inclusive, esta uma das maiores barreiras que existe entre o usurio e a computao em nuvem, uma vez que h desconfiana por esta ser uma tecnologia nova e ainda no to amadurecida. [GARFINKEL 2011]. Na Tabela 1, analisada a diferena do custo operacional entre um data center de mdio porte e um de grande porte. Essa anlise importante pois relaciona a diferena de custos entre o uso de um data center convencional e uma nuvem pblica.
Tabela 1. Benefcios econmicos [ARMBRUST et al. 2009] Custo em Data Centers Mdio porte Grande porte Network Armazenamento Administrao U$ 95 / Mbps / Ms U$ 2.20 / GB / Ms 140 servidores / adm U$ 13 / Mbps / Ms U$ 0.40 / GB / Ms >1000 servidores / adm

As diferenas observadas na Tabela 1 mostram o porqu de cada vez mais empresas investirem em contratao de servios de computao por demanda em detrimento da criao de data centers particulares. Um data center de grande porte de uma empresa provedora de computao em nuvem consome menos capital com manuteno e administrao dos sistemas do que um data center particular.

3. Plataformas de computao em nuvem


Um sistema de computao em nuvem no necessariamente precisa ser contratado. Uma empresa pode criar uma nuvem privada, o que pode ter mais benefcios como o fato de garantir um controle de segurana prprio. Mas as nuvens privadas dependem de altos investimentos iniciais, como vista na Tabela 1, e algumas das vantagens das nuvens pblicas so perdidas. Por essa razo, algumas empresas preferem a contratao de servios de computao em nuvem pblica. Algumas das plataformas pblicas disponveis so: a) Amazon AWS um sistema com foco empresarial, com licena proprietria, planos de pagamento por uso e suporte pago. Disponibiliza poder de processamento (Elastic Compute Cloud EC2), armazenamento (Simple Storage Service S3), bancos de dados (SimpleDB), etc. b) Google App Engine Este um servio de licena proprietria, sem custo pelos servios ou pelos recursos utilizados at uma certa limitao. Ao atingir essa limitao cobrada uma taxa de uso pelos recursos adicionais utilizados. c) Eucalyptus Este um sistema aberto distribudo sob a GNU General Public License, com foco empresarial e desenvolvido unicamente para uso de nuvens hbridas. Tanto os servios como o suporte no tm custos. compatvel com o servio de processamento EC2 da Amazon. d) Microsoft Windows Azure Servio da Microsoft com licena proprietria, planos de pagamento por uso e servio de suporte sem custo adicional. Os servios disponveis so de processamento, armazenamento, bancos de dados, entre outros. 4. Comparativo entre algumas plataformas de computao em nuvem Na Tabela 2, algumas importantes caractersticas de plataformas de computao em nuvem so analisadas esquematicamente para facilitar a visualizao.
Tabela 2. Comparativo entre as plataformas de computao em nuvem
Servio Provedor Lanamento Categoria Interface Licena Comercial AWS Amazon 2002 IaaS API e Linha de Comando Proprietrio Windows Azure Google App Engine Microsoft 2010 PaaS API Proprietrio Windows Server 2003 e 2008 Google 2008 PaaS API Proprietrio Linux e Windows Server 2008 Java, Python e Go Eucalyptus Eucalyptus 2008 IaaS Aplicao Aberto Cent OS

Sistemas Operacionais Linux e Windows Compatveis Server 2003 e 2008 Linguagens de programao suportadas Tempo garantido de disponibilidade

Java, PHP, Python e Java, Ruby, PHP e Ruby .NET 99.95% 99.90%

Java

99.90%

99.99%

Com a anlise das linguagens de programao suportadas por cada plataforma de computao em nuvem, nota-se que Java est presente em todas as plataformas. Isso, provavelmente, ocorre pela sua portabilidade intrnseca, que o fator que possibilita que um programa escrito uma nica vez possa ser executado em diferentes plataformas sem adaptao de cdio ou reescrita. Outro fator que chama a ateno a adoo da linguagem de programao Go, pelo Google App Engine, e da linguagem Python pelo AWS e Google App Engine, que so linguagens que possibilitam a programao concorrente ou paralela. Ainda sobre as linguagens de programao suportadas, o Windows Azure e o Amazon AWS tm como diferencial o suporte ao PHP, o que possibilita seu uso na interao com bancos de dados em servidores hospedados em nuvem. Tendo em vista a disponibilidade, que uma das caractersticas essenciais anteriormente citadas, interessante notar que a maior disponibilidade garantida proporcionada por um provedor de cdigo aberto e que no cobra pelos servios prestados. Por essa razo, uma aplicao em nuvem com alta criticidade, que necessita de maior disponibilidade pode ser beneficiada por essa caracterstica do Eucalyptus. J os demais tm disponibilidade suficiente para uso em sistemas domsticos ou de empresas, que no dependem integralmente do servio de computao em nuvem.

5. Concluso
A computao em nuvem um campo muito amplo, ainda pouco explorado e com possibilidade de crescimento. Em um futuro prximo muitas aplicaes que ainda so executadas localmente sero movidas para a nuvem. medida que o tempo passar, o servio de computao em nuvem se popularizar, ganhando a confiana de novos usurios. Com isso, a programao de alto desempenho ter mais um desafio, que elevar a capacidade de processamento de aplicaes em servidores remotos. Para isso, o uso de benchmarks e demais ferramentas de anlise de desempenho sero importantes para qualificar linguagens e programas paralelos.

6. Referncias
Wischik, D., Handley, M. and Bagnulo Braun, M. The Resource Pooling Principle. ACM SIGCOMM Computer Communication Review. Volume 38. Outubro 2008. Cloud Standard Customer Council. Pratical guide to Cloud Computing. Verso 1.0; 2011. Garfinkel, S. L. The cloud imperative; 2011 [acesso em 2011 Nov 29] Disponvel em: http://www.technologyreview.com/business/38710/?pw7=T&raq=t Armbrust, M., et al. Above the clouds: A Berkeley view of cloud computing. Technical Report UCB/EECS-2009-28, EECS Department, U.C. Berkeley, Fevereiro 2009.

You might also like