pontifÍcia universidade catÓlica de sÃo paulo puc-sp … · albuquerque vieira e dr. Ítalo...
TRANSCRIPT
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE SÃO PAULO
PUC-SP
JOSÉ ROBERTO MADUREIRA JUNIOR
UM ESTUDO DAS OPORTUNIDADES E DESAFIOS ENVOLVIDOS NA
UTILIZAÇÃO DE SERVIÇOS DE CLOUD COMPUTING
MESTRADO EM TECNOLOGIAS DA INTELIGÊNCIA E DESIGN DIGITAL
SÃO PAULO
2014
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE SÃO PAULO
PUC-SP
JOSÉ ROBERTO MADUREIRA JUNIOR
UM ESTUDO DAS OPORTUNIDADES E DESAFIOS ENVOLVIDOS NA
UTILIZAÇÃO DE SERVIÇOS DE CLOUD COMPUTING
MESTRADO EM TECNOLOGIAS DA INTELIGÊNCIA E DESIGN DIGITAL
Dissertação de Mestrado apresentada à Banca Examinadora da Pontifícia Universidade Católica de São Paulo, como exigência parcial para obtenção do título de Mestre em Tecnologias da Inteligência e Design Digital - área de concentração em Processos Cognitivos e Ambientes Digitais sob a orientação do Prof. Dr. Hermes Renato Hildebrand.
SÃO PAULO
2014
Banca Examinadora
-----------------------------------------------------------
-----------------------------------------------------------
-----------------------------------------------------------
Agradecimentos
Agradeço primeiramente ao Professor Dr. Hermes Renato Hildebrand, meu
orientador, que acreditou em mim e incentivou-me para a conclusão deste trabalho,
face aos inúmeros percalços do trajeto.
Agradeço também aos meus pais José e Luzia e a minha irmã Rita,
companheiros de percurso e de discussões profícuas, dentro e fora do contexto
deste trabalho, sem os quais não chegaria até aqui.
Agradeço também aos professores Dr. Alexandre Campos Silva, Dr. Jorge de
Albuquerque Vieira e Dr. Ítalo Santiago Vega pelas colaborações e com
amadurecimento das ideias durante o mestrado.
Agradeço imensamente à bolsa concedida pela CAPES (Coordenação de
Aperfeiçoamento de Pessoa de Nível Superior), por custear parte do meu mestrado
e estimular pessoas dedicadas á pesquisa em nosso país.
Sou eternamente grato a todos.
"Se você tiver sorte suficiente para encontrar um
modo de vida que você ame, você tem que
encontrar a coragem para vivê-lo."
John Irving
Resumo
MADUREIRA JUNIOR, José Roberto. Um Estudo das Oportunidades e Desafios Envolvidos na Utilização de Serviços de Cloud Computing. 2014. 112 f.
Dissertação (Mestrado) - Tecnologias da Inteligência e Design Digital, Pontifícia Universidade Católica de São Paulo, São Paulo, 2014.
Esta pesquisa trata da utilização de Cloud Computing, mostrando sua disseminação impulsionada pelas tendências e necessidades do mercado. Sua evolução é resultado dos avanços tecnológicos que possibilitam e garantem a disseminação e solidez dos serviços prestados, oferecendo grandes benefícios aos usuários. O objetivo desta dissertação é demonstrar as potencialidades, possibilidades e desafios da utilização de serviços de Cloud Computing para que usuários e potenciais usuários possam identificá-los, compreendê-los e prepararem-se para gerenciá-los, de modo tal a poder, nestes ambientes, contratar serviços com grau aceitável de risco e implementar a carga de trabalho correta. A falta de informações sobre os serviços de Cloud Computing. Nos leva a acreditar que esta pesquisa pode oferecer uma contribuição de alto valor para o esclarecimento dos potenciais e benefícios a serem alcançados com esta tecnologia, bem como analisar os desafios que impedem tais benefícios de serem alcançados pelos seus usuários. No que diz respeito especificamente aos usuários destes serviços, na revisão de literatura realizada nada de valor significativo foi encontrado. Desta forma acreditamos que produção e disponibilização de material esclarecedor e útil relacionado ao foco no usuário e demais assuntos relacionados ao tema proposto à comunidade acadêmica seja uma importante contribuição. Para tal, primeiramente, realizamos um estudo do estado da arte de Cloud Computing, identificando os potenciais benefícios obtidos na adoção deste serviço, bem como, a exposição de como o modelo tem transformado o cenário da tecnologia da informação. Em seguida, adotamos a metodologia de estudo de casos onde observamos três casos reais da utilização de serviços do modelo. São destacadas também empresas de renome e seus respectivos serviços oferecidos, que são relevantes em função de suas história e solidez no mercado, possibilitando ao usuário uma análise prévia para a aquisição do serviço ideal ao seu ramo de atividade. Concluímos que a adoção deste tipo de estrutura é tratada com cautela pelas empresas, por conta de preocupações quanto à interoperabilidade, à segurança e os acordos de nível de serviço, entre outros. Tais questões estão ditando o ritmo em que a Cloud Computing vem sendo adotada, bem como sua evolução. Desta forma, neste texto, identificamos e analisamos os desafios que impedem e dificultam a adoção dos benefícios deste modelo. Por fim, nossa intenção foi oferecer uma visão geral dos serviços de Cloud Computing que estão sendo utilizados e que ajudam aos usuários a vencer desafios em diferentes áreas.
Palavras-chave: Cloud Computing; Inovação; Usuários; Arquitetura de Sistemas; Interoperabilidade; Segurança; SLA.
Abstract
MADUREIRA JUNIOR, José Roberto. A Study of Opportunities and Challenges Involved in the Use of Cloud Computing Services. 2014. 112 f. Dissertação (Mestrado) - Tecnologias da Inteligência e Design Digital, Pontifícia Universidade Católica de São Paulo, São Paulo, 2014.
The following research focuses on the widespread use of Cloud Computing as a result of a major market boost due to the latest trends and needs. It has progressed as a result of advanced technology providing businesses a high standard of service as well as being of great benefit to its users. This final work is aimed at demonstrating users and potencial ones the benefits as well as the possibilities and challenges involved in the use of Cloud Computing and therefore allow them to identify, understand and manage such a service. As a result users shall be able to hire services involving a low risk factor in addition to implementing an appropriate workload. Due to the lack of information regarding Cloud Computing services, we believe that this research can provide users a valuable contribution in clarifying and highlighting both the potentiality and benefits involved as well as analysing the reasons they have not been able to benefit from them so far. We would like to point out that when we searched for literature regarding specifically the service users no significant data was collected. As a result we strongly believe that if such material is published it will represent a significant contribution towards both the users and the academic community. At first we carried out a state of the art study regarding Cloud Computing, identifying the potential benefits involved in providing such a service as well as the impact such a model has had on the information technology scenario. Then we implemented the case study metodology in which three real cases with the model in use were closely followed. Reference is also made to prestigious companies with a solid background within their market segment and the respective services they provide. This will allow the users to obtain the necessary backup in order to be able to previously analyse the ideal sevice which will suit their needs. We concluded that companies seem to be cautious about implementing such a structure due to their concern about mainly operational and safety measures. Cloud Computing´s progress depends on such an acceptance. Therefore this text focuses on identifying and analysing the challenges and benefits involved in implementing such a model. Research has been done with the specific aim of offering a wide range of businesses an overview of Cloud Computing as well as enabling users to overcome any difficulties.
Key-words: Cloud Computing; Innovation; Users; System Architecture; Interoperability; Security; SLA.
Sumário
1 INTRODUÇÃO .................................................................................................... 12
1.1 JUSTIFICATIVA .................................................................................................. 18
1.2 OBJETIVOS ........................................................................................................ 19
1.3 ESTRUTURA DA DISSERTAÇÃO...................................................................... 20
2 CARACTERÍSTICAS, CENÁRIOS, CONTEXTOS, BENEFÍCIOS E PROPÓSITOS DE USO DO MODELO DE CLOUD COMPUTING .................... 21
2.1 HISTÓRICO DA CLOUD COMPUTING .............................................................. 21
2.2 CONCEITO DE CLOUD COMPUTING ............................................................... 24
2.3 EVIDÊNCIAS DA CONSOLIDAÇÃO................................................................... 25
2.3.1 Interesse da Indústria ............................................................................... 26
2.3.2 Interesse Acadêmico ................................................................................ 27
2.4 CARACTERÍSTICAS, ARQUITETURA E TIPOS DE OFERTA .......................... 28
2.4.1 Características .......................................................................................... 28
2.4.2 Tipos de oferta .......................................................................................... 29
2.4.3 Arquitetura Cloud Computing ................................................................... 31
2.5 POSSIBILIDADES E BENEFÍCIOS .................................................................... 33
2.5.1 Escalabilidade .......................................................................................... 34
2.5.2 Agilidade ................................................................................................... 36
2.5.3 Baixo Custo .............................................................................................. 37
2.5.4 Infraestrutura Self-Service ........................................................................ 38
2.5.5 Alta disponibilidade ................................................................................... 39
2.5.6 Foco no negócio ....................................................................................... 40
2.6 SERVIÇOS DE CLOUD COMPUTING ............................................................... 40
2.6.1 Amazon Elastic Compute Cloud ............................................................... 41
2.6.2 Rackspace Cloud Servers ........................................................................ 44
2.6.3 Windows Azure Cloud Services ................................................................ 45
2.6.4 Google App Engine .................................................................................. 49
2.6.5 Sales Cloud .............................................................................................. 50
3 DESAFIOS CLOUD COMPUTING ..................................................................... 52
3.1 DESAFIOS .......................................................................................................... 52
3.1.1 Interoperabilidade ..................................................................................... 53
3.1.1.1 Padronização ................................................................................... 54
3.1.1.2 Criar Cloud Computing abertas ........................................................ 57
3.1.1.3 Open Application Programming Interface ......................................... 60
3.1.1.4 Serviços de Adaptação..................................................................... 62
3.1.2 Segurança e confiabilidade ...................................................................... 63
3.1.2.1 Segurança na transferência e armazenamento de informações ...... 63
3.1.2.2 Confiabilidade e segurança no processamento de informações ...... 66
3.1.2.3 Privacidade em serviços de Cloud Computing ................................. 68
3.1.3 Service Level Agreement ......................................................................... 69
3.1.3.1 Serviços de Monitoramento .............................................................. 71
4 ESTUDOS DE CASO DE CLOUD COMPUTING ............................................... 76
4.1 3M VISUAL ATTENTION SERVICE ................................................................... 76
4.1.1 Solução .................................................................................................... 80
4.1.2 Benefícios ................................................................................................. 81
4.2 KHAN ACADEMY ............................................................................................... 83
4.2.1 Solução e benefícios ................................................................................ 86
4.3 SAGE BIONETWORKS ...................................................................................... 87
4.3.1 Solução .................................................................................................... 89
5 CONCLUSÕES ................................................................................................... 97
REFERÊNCIAS ....................................................................................................... 102
APÊNDICE 1 ........................................................................................................... 111
Lista de ilustrações
Figura 1.1 - Usuários de internet no mundo por regiões geográficas (INTERNET WORLD STATS, 2013) .................................................... 12
Figura 1.2 - Redução de prazos com o ambiente com Cloud Computing no ambiente de TI (TAURION, 2012a) ...................................................... 16
Figura 1.3 - Gartner's 2013 Hype Cycle for Emerging Technologies (GARTNER, 2013) ............................................................................... 17
Figura 2.1 - Evolução da Arquitetura de Computação. .............................................. 23
Figura 2.2 - Exemplos de modelos de entrega (INFRADAPT, 2013) ........................ 30
Figura 2.3 - Tipos de Oferta e Arquitetura em Camadas. .......................................... 31
Figura 2.4 - Visão geral de Cloud Computing (ORLOFF, 2012) ................................ 34
Figura 2.5 - Carga diária prevista em um site de comércio eletrônico (REESE, 2009) .................................................................................................... 36
Figura 2.6 - Passos para construção de um novo data center no ambiente tradicional ............................................................................................. 39
Figura 2.7 - Console do Amazon Web Services (AMAZON, 2012) ........................... 42
Figura 2.8 - Painel principal do Windows Azure (MICROSOFT, 2012b) ................... 46
Figura 2.9 - Tela principal do Sales Cloud (SALES FORCE, 2011) .......................... 50
Figura 3.1 - Home Page do OpenStack, projeto que procuram criar padrões abertos para Cloud Computing (OPENSTACK, 2012) ......................... 59
Figura 3.2 - Arquitetura da Simple Cloud API (ZEND, 2013). ................................... 61
Figura 3.3 - Centro de Segurança da AWS (AMAZON, 2012) .................................. 65
Figura 3.4 - CloudClimate do Amazon EC2 USA East N. Virginia (BAUN et al., 2011) .............................................................................................. 72
Figura 3.5 - Painel do KOALA cloud manager (BAUN et al., 2011) ........................... 73
Figura 3.6 - Métricas do Amazon CloudWatch (Amazon, 2012) ................................ 74
Figura 3.7 - Painel do Cloud8 (IMASTERS, 2013) .................................................... 75
Figura 4.1 - Tela inicial de autenticação do VAS (3M, 2013a)................................... 77
Figura 4.2 - Tela principal do VAS (3M, 2013a) ........................................................ 78
Figura 4.3 - Resultados da Análise do 3M VAS (3M, 2012) ...................................... 79
Figura 4.4 - Interface inicial Khan Academy (KHAN ACADEMY, 2013) .................... 84
Figura 4.5 - Khan Academy Vídeos (KHAN ACADEMY, 2013) ................................. 85
Figura 4.6 - Esquema geral Synapse (AMAZON, 2013b)......................................... 89
Figura 4.7 - Visualizando um passo na análise de pipeline (KELLEN, 2012) ............ 92
Figura 4.8 - Tela do Synapse em profundidade (KELLEN, 2013) ............................. 93
Figura 4.9 - Análise Pipelines escaláveis (AMAZON, 2013b) .................................... 95
Lista de tabelas
Tabela 2.1 - Comparativo o TCO da AWS vs. on-premises (VARIA, 2012) .............. 38
Tabela 2.2 - Tamanhos de instância disponíveis do Amazon EC2 (REESE, 2009) .................................................................................................... 41
Tabela 2.3 - Tamanhos de instância disponíveis do Rackspace Cloud Servers (REESE, 2009) ....................................................................... 45
Tabela 5.1 - Comparativo estudos de caso da utilização de Cloud Computing......... 99
12
1 INTRODUÇÃO
A construção da web (ou Word Wide Web - WWW), nos moldes que
conhecemos hoje, teve início na década de 90 quando Tim Berners-Lee iniciou a
construção das linguagens, protocolos e artefatos de software necessários para o
seu funcionamento. Vinte anos mais tarde, a web estava presente na vida de bilhões
de pessoas em todos os continentes. A web passou por uma série de evoluções que
permitiram uma variedade de aplicações não previstas por Tim Berners-Lee e que
levaram à composição do cenário atual. (ASSAD et al., 2012). A Figura 1.1
demonstra a divisão por continentes dos usuários de internet no mundo em 2012.
Figura 1.1 - Usuários de internet no mundo por regiões geográficas (INTERNET WORLD
STATS, 2013)
A expansão da internet e conexão de uma grande variedade de sensores,
computadores, laboratórios de pesquisa, câmeras, telefones e similares levou a um
crescimento gigantesco na quantidade de dados gerados. No entanto, a tecnologia
de armazenamento disponível para armazenar informações seria duas vezes menor
do que o necessário para a quantidade de informações geradas no planeta, no ano
de 2010. (ASSAD et al., 2012).
13
Adicionalmente, o modelo tradicional de Tecnologia da Informação (TI), com
recursos físicos planejados para atender picos de processamento, demanda altos
investimentos em recursos, muitas vezes igualando-se em custos, serviços para
sistemas de alta e sistemas de baixa prioridade. “O atual modelo computacional
também não responde de forma adequada à volatilidade do ambiente econômico,
com suas constantes variações de crescimento e queda de atividades”. (TAURION,
2013b).
Os computadores, os data centers e as licenças de software continuam tendo
os mesmo custos em períodos de queda econômica quando temos baixa utilização
das tecnolofgias, fazendo com que os usuários tenham seus investimentos
posicionados acima ou abaixo do necessário se compararmos à média dos vários
períodos do ano, causando, em ambos os casos, prejuízo para os usuários que
acabam não tendo os recursos de TI adequados para atender suas demandas ou
gastando mais do que deveriam. (TAURION, 2013b).
Por muitos anos foi negada a possibilidade de crescer rapidamente aos
empreendedores em função dos altos custos de TI. Expandir as operações para
novos mercados ou ampliar a capacidade de atendimento, por exemplo, eram
grandes passos e os empreendedores tinham que arcar com elevados investimentos
em infraestrutura de TI, conexão e servidores, inibindo o crescimento e surgimento
de várias empresas criativas. (INFO, 2013b).
Ao longo da história, várias tentativas foram feitas para eliminar a dependência
do usuário com hardwares de computador, como exemplo a computação como
utilitário imaginada na década 60, os computadores da rede na década de 90 e os
sistemas de redes comerciais de anos mais recentes. (ZISSIS; LEKKAS, 2012).
Cloud Computing1 emergiu recentemente como um modelo de entrega e de
acesso a dados no qual os recursos virtualizados e dinamicamente escalados são
entregues como um serviço através da internet. Esse modelo abre novas
1 Cloud Computing, em português, Computação em Nuvem, também muito conhecido como
simplesmente Cloud, Nuvem, em português.
14
oportunidades e introduz um modelo de pagamento dos recursos utilizados conforme
o uso, eliminando os pesados investimentos iniciais. (GOELEVEN et al., 2011).
Recentemente, Cloud Computing proporcionou uma mudança no paradigma da
computação e negócios, com potencial de impulsionar a evolução de aplicações e
serviços na internet, no qual os requisitos e complexidade de TI, em relação ao
cliente, são reduzidos. (ZHANG; CHENG; BOUTABA, 2010).
Esse novo paradigma tem mudado radicalmente a paisagem de TI, alterando a
forma de operar, gerenciar, executar, implantar, desenvolver e especificar. Grandes
mudanças na indústria são motivadas por novas plataformas de computação, como
ocorreu na mudança do Personal Computer (PC) para o modelo cliente-servidor e
mais tarde para internet e agora para Cloud Computing como novo hardware.
(BATISTA et al., 2011; KNORR, 2013).
Cloud Computing trouxe grande impacto na indústria, por exemplo, fornecendo
suporte para as startups2 e incentivando a inovação, que ganharam a possibilidade
de implantar um grande número de máquinas, pagando por elas apenas a
quantidade e o tempo em que são necessárias. Elas podem iniciar suas operações
de forma mais rápida e barata que antes, escalando a infraestrutura de TI para baixo
e para cima livremente e por uma fração do custo em relação aos modelos
anteriores, o que permitiu o surgimento de muitas dessas empresas, como a
Chaordic, Dropbox, Foursquare, Peixe Urbano, Netflix e Pinterest, todas startups que
já nasceram suportadas por serviços de Cloud Computing. (BLAIR et al., 2011;
PAPO, 2013).
A rede social Pinterest3 destaca-se pela sua inviabilidade no modelo tradicional
de servidores físicos. Ele passou de 20 terabytes de dados armazenados para 350
em apenas sete meses, sendo absolutamente inviável fazer essa expansão
utilizando-se o modelo tradicional de TI, no qual seria necessária a aquisição de
servidores físicos. Além disso, sua infraestrutura de Cloud Computing era mantida
2 Uma instituição humana formada com o objetivo de buscar um modelo de negócios escalável e
repetível em extremas condições de incerteza.
3 Rede social que permite que seus usuários interajam visualmente criando e compartilhando
fotos ou vídeos por temas de interesse.
15
por um único funcionário quando atingiu a marca de 17 milhões de visitantes no mês.
(TAURION, 2013c).
Para Eric Ries (autor do livro The Lean startup), “cloud é como um fertilizante
que cria startups”. (AMAZON, 2013a, tradução nossa)4. Igualmente, o modelo Cloud
Computing tem aberto grandes possibilidades para investidores ampliarem suas
experiências e atingirem a escalabilidade que for necessária para o desenvolvimento
de sua pesquisa. Os benefícios de Cloud Computing têm sido notados por agências
do governo e grande corporações que têm estabelecido estratégias para sua
utilização. Como exemplo temos a Nasdaq, Samsung, Nasa, Sega, Shell, Unilever,
The New York Times, Sul América Seguros, Grupo Pão de Açúcar e Gol Linhas
Aéreas que estão utilizando o modelo para otimizar seus negócios. (BLAIR et al.,
2011; PAPO, 2013).
Uma razão para o sucesso de Cloud Computing é o fato da diminuição dos
riscos e aumento da agilidade no desenvolvimento de novos projetos, além da
diminuição dos custos totais de propriedade com infraestrutura de TI, mudando
assim o cenário onde a maior parte das organizações possuem 80% do seu
investimento em sustentação dos seus ambientes de TI ao invés de investirem em
inovações. (GARTNER, 2011; PAPO, 2013).
Cada vez mais, Cloud Computing tem sido alternativa presente por conta da
possibilidade de redução e maior controle sobre os custos operacionais, alta
escalabilidade, baixo investimento inicial, eliminação da necessidade de manutenção
de infraestrutura física e redução de investimentos em hardware de data centers,
podendo as empresas concentrarem os investimentos no desenvolvimento de
software, o que gera valor agregado para as áreas de negócios. (BATISTA et al.,
2011; TAURION, 2013e).
Segundo Forbes (2012), em 2014, a Personal Cloud terá substituído o
computador pessoal como o centro da vida digital do usuário. Podemos observar
indícios dessa previsão na oferta do serviço com o recente lançamento do Amazon
WorkSpaces, um serviço de provisão de desktops baseados em Cloud Computing
4 “Cloud is like a fertilizer that creates startups” (AMAZON, 2013a).
16
no qual o usuário pode realizar suas tarefas nos dispositivos de sua escolha, seja
ele um laptop ou tablet. (AMAZON, 2013a).
Além disso, a velocidade das mudanças no ambiente de negócio tem levantado
questionamentos quanto ao tempo de reação do modelo atual de TI. Com a
velocidade de entrega sendo ponto de grande importância, o modelo Cloud
Computing tende a acelerar, abrindo a possibilidade de se alocar recursos em
minutos ao invés de semanas. (TAURION, 2013e).
A Figura 1.2 mostra um comparativo de tempo gasto para estabelecer
infraestrutura de TI para suporte e necessidades de negócio no ambiente tradicional
e num ambiente de Cloud Computing.
Figura 1.2 - Redução de prazos com o ambiente com Cloud Computing no ambiente de TI
(TAURION, 2012a)
No entanto, para que benefícios como este possam ser desfrutados existem
alguns desafios a serem enfrentados. Eles são similares aos que enfrentamos
quando mudamos de ambiente cliente-servidor. A desconfiança que o modelo tem
gerado pode ser igualmente comparada àquela que tínhamos no início do comércio
eletrônico, com a utilização do internet banking ou mesmo com a introdução dos
cartões de crédito em transações pela internet. Hoje, anos mais tarde, com esses
modelos consolidados, as desconfianças que aconteceram na época são pouco
lembradas e a sua utilização destas ferramentas acontecem de forma muito natural.
(BATISTA et al., 2011; TAURION, 2013d). Além disso, em diversos setores da
sociedade pode-se visualizar um exponencial crescimento no interesse sobre o
17
modelo de Cloud Computing, que nunca foi antes visto em relação a qualquer outro
tópico relativamente recente da computação, o que indica a grandeza de sua
relevância para no futuro da área de TI. (BATISTA et al., 2011).
O Gatner, instituição de pesquisa relacionada a tecnologia, indica em seu anual
Hype Cycle for Emerging Technologies que Cloud Computing encontrará
planalto5,nos poximos dois a cinco anos, conforma pode ser visto na Figura 1.3.
Figura 1.3 - Gartner's 2013 Hype Cycle for Emerging Technologies (GARTNER, 2013)
Baseado nisso, nesta pesquisa, pretendeu-se efetuar um levantamento de
Cloud Computing, com destaque para seus principais conceitos, princípios
arquitetônicos e situação atual de desenvolvimento das implementações, bem como,
para os desafios da pesquisa. Assim, o objetivo desta proposta de trabalho foi
identificar e analisar quais as oportunidades e desafios atuais que encontramos pela
utilização dos serviços de Cloud Computing.
5 Maturidade onde se tem ampla aplicabilidade e relevância no mercado de TI, sendo claro sua
viabilidade.
18
Para que fosse possível responder esta questão foram explorados os detalhes
do conceito de Cloud Computing, bem como os desafios envolvidos na sua adoção
buscando adquirir determinados benefícios agregados à utilização dos seus serviços.
Uma análise sobre os desafios envolvidos na utilização de serviços de Cloud
Computing será exibida, juntamente serão apresentadas as soluções que estão
sendo propostas como candidatas, para resolução dos mesmos, de forma a servir
como um guia para empresas que desejam utilizar esses serviços. Este trabalho
contribuirá, também, utilizando a técnica de estudo de caso, para explicar como a
utilização de serviços de Cloud Computing ajudou seus usuários a vencer desafios,
sendo vantajosa em diversos contextos (econômico, social, entre outros).
1.1 JUSTIFICATIVA
Entendemos que este trabalho pode oferecer uma contribuição de alto valor no
esclarecimento dos potenciais e benefícios a serem alcançados, bem como aos
desafios que impedem tais benefícios de serem alcançados pelos seus usuários de
serviços de Cloud Computing. Além de produzir e disponibilizar material útil
relacionado ao seu tema à comunidade acadêmica.
Na revisão de literatura realizada, nada foi encontrando com valor significativo
para este estudo no que concerne, especificamente, aos usuários destes serviços,
contudo, diversas pesquisas consultadas foram importantes para a composição da
nossa proposta que pretende equalizar a dinâmica entre áreas de conhecimento.
Este estudo mostra-se relevante, tanto para os profissionais de TI, quanto para
os profissionais de negócios, pois apresenta informações importantes sobre as
novas tecnologias para Cloud Computing e dá apoio as atuais necessidades de
informações para os negócios, tanto em modelos inovadores, pesquisas e
otimização dos consolidados e inovadores recursos de mídias, quanto para
referencias metodológicas e computacionais sobre o tema. Outro ponto alto desta
dissertação de mestrado, em nosso entendimento, é a exposição de casos reais da
utilização destes serviços em diferentes projetos passando por aspectos como
designer de material de marketing, plataforma de apoio a educação e até a pesquisa
genômica.
19
De fato, o objetivo deste trabalho, além de apresentar a infraestrutura
fundamental para suporte às necessidades de negócio para uma grande quantidade
de pessoas com acessos simultâneos, também pretende apresentar os
componentes necessários para que tais recursos sejam adotados com alto índice de
segurança, interoperabilidade de plataformas e disponibilidade, entre outras
características.
1.2 OBJETIVOS
Portanto, o principal objetivo desta dissertação é demonstrar as
potencialidades, possibilidades e desafios na utilização de serviços de Cloud
Computing para que os usuários finais (clientes), corporativos (servidores) e
potenciais, consigam identificar, compreender e se preparar para gerenciar estes
ambientes e para poderem contratar serviços com aceitável grau de risco. Para isso,
temos como objetivos específicos:
a) Verificar o estado da arte sobre Cloud Computing, através de levantamento
e descrevendo, pormenorizadamente, quais as características, cenários, contextos,
propósitos de uso e tipos de fornecedores com seus principais serviços;
b) Identificar os benefícios potenciais citados nestes estudos como passíveis
de serem obtidos com a adoção dos serviços de Cloud Computing;
c) Demonstrar como Cloud Computing tem atuado como força transformadora,
mudando de forma radical o cenário de TI e abrindo novas possibilidades para os
usuários;
d) Identificar as dificuldades e impedimentos na adoção deste tipo de
benefícios quando da implantação de serviços de Cloud Computing;
e) Desenvolver uma análise das dificuldades encontradas para implantação de
serviços neste modelo computacional;
f) Elaborar um estudo das soluções que estão sendo propostas como
candidatas a resolução dos desafios;
20
g) Demonstrar como se dá a utilização de serviços de Cloud Computing e quais
benefícios e desafios que, na sua utilização, ajudam os usuários a resolver seus
problemas, através de uma análise dos aspectos sociais e econômicos através de
estudo de casos, baseado no levantamento bibliográfico existente.
1.3 ESTRUTURA DA DISSERTAÇÃO
Este trabalho está organizado nos seguintes capítulos:
No capítulo 1, descrevemos o contexto e a motivação que levou nos levou a
realizar este trabalho, bem como seus objetivos gerais e específicos.
No capítulo 2, apresentamos as características, cenários, contextos, benefícios,
propósitos de uso e de fornecedores e seus principais serviços do modelo Cloud
Computing.
No capítulo 3, apresentamos três desafios que dificultam ou impedem que os
usuários de serviços de Cloud Computing alcancem os benefícios desejados na
utilização deste tipo de servico, além das soluções que estão sendo propostas para
resolução destes desafios.
No capítulo 4, apresentamos estudo de casos para explicar como a utilização
de serviços de Cloud Computing tem ajudado a vencer desafios e quais são as
vantagens em diversos contextos econômico, sociais, entre outros descrevendo a
solução e os detalhes desenvolvidos pormenorizadamente.
Por fim, no último capítulo, são apresentadas as principais dificuldades
encontradas no desenvolvimento deste trabalho, as vantagens na adoção de
serviços de Cloud Computing, nossas conclusões e indicação de possíveis trabalhos
a serem desenvolvidos futuramente com este tema.
21
2 CARACTERÍSTICAS, CENÁRIOS, CONTEXTOS, BENEFÍCIOS E
PROPÓSITOS DE USO DO MODELO DE CLOUD COMPUTING
Nosso objetivo neste capítulo é apresentar os conceitos que envolvem Cloud
Computing, de modo a permitir uma exploração sobre as questões de impacto que
emergem a partir de experiências de usuários de serviços desse modelo. Também
serão levantados benefícios e propósitos de uso relacionados a serviços de Cloud
Computing pelos usuários finais e corporativos.
2.1 HISTÓRICO DA CLOUD COMPUTING
Serviços básicos e essenciais de utilidade pública como o fornecimento de
água e eletricidade são prestados aos usuários finais de forma transparente e com o
valor de custo cobrado de acordo com o consumo. A promessa de que a
computação seria oferecida ao público como um utilitário seguindo os moldes da
eletricidade não é recente. Em 1961, John McCarthy, do Massachusetts Institute of
Technology (MIT) previu este modelo que teve que esperar até recentemente
quando a TI deu meios para colocar o conceito em prática.
Na década de 70, a computação era baseada em grandes centros de
tratamento de dados com elevado custo de processamento e armazenamento. Por
este motivo somente empresas e universidades dispunham destes aparatos
tecnológicos onde prevaleciam os sistemas monolíticos que exigiam dos
desenvolvedores e usuários um grande conhecimento sobre detalhes técnicos de
operação.
Com a chegada das tecnologias que atribuíam poder de desenvolvimento para
os usuários comuns, em meados dos anos 80, com advento do computador pessoal,
boa parte da transferência de dados era realizada com uso de disquete, já que
possuir redes computacionais ainda era privilégio de grandes organizações. No final
da década de 80, teve início o modelo de computação cliente/servidor, com o uso
intenso de redes que integravam ambientes corporativos. Já no início dos anos 90,
observamos a consolidação desse modelo. Ainda nos anos 90, verificamos que a
internet chega às universidades, empresas e aos usuários domésticos, com redes
22
públicas de baixo custo. Também observamos que mais e mais equipamentos de
interconexão aumentam a capacidade de comunicação e integração entre sistemas.
Estes aspectos atribuem aos computadores pessoais à capacidade de transferir e
trocar dados de várias formas e não somente armazená-los localmente, como
tínhamos até então. (CAMBIUCCI, 2009; RAMOS, 2011).
O crescimento do acesso à internet por banda larga, a queda do custo de
armazenamento, a chegada das redes sem fio (wireless) de alta velocidade e a
proliferação de dispositivos móveis com acesso à internet têm levado a computação
a um ambiente mais distribuído e a um usuário mais independente do
armazenamento de dados em servidores. Hoje encontramos as informações
armazenadas em centros de dados remotos que pode ser acessadas por desktops,
notebooks e em dispositivos móveis. Os recursos da computação ficaram mais
disponíveis do que nunca e mais baratos por conta do rápido desenvolvimento de
tecnologias de armazenamento e processamento de dados. (HORRIGAN, 2012).
Na virada do século, para suportar um número crescente de usuários e
aplicações através da internet, padrões como Simple Object Access Protocol 6
(SOAP), Hypertext Transfer Protocol7 (HTTP), eXtensible Markup Language8 (XML)
e HyperText Markup Language9 (HTML) permitiram a integração de sistemas de
forma ágil e simplificada, dando vida a novas aplicações como wikis, blogs, redes
sociais, buscadores, e os conceitos como Web Services (Serviços Web) e outros
serviços ganharam relevância e a atenção de grandes empresas.
De fato, os serviços computacionais poderão ser expostos cruzando as
barreiras dos firewalls10, aumentando assim a possibilidade de integração através
das portas 80 (HTTP) e 443 (HyperText Transfer Protocol Secure) do Transmission
6 Protocolo baseado em XML que permitir a troca de informações sobre o protocolo HTTP.
7 Protocolo de Transferência de Hipertexto utilizado para sistemas de informação de hipermídia.
8 Formato baseado em texto simples para representar informações estruturadas.
9 Linguagem para descrever a estrutura das páginas web.
10 Dispositivo de rede de computadores que impõem políticas de segurança com o objetivo de
limitar ou impedir o acesso de terceiros e também implementada filtros para determinados pontos de uma rede.
23
Control Protocol (TCP) graças ao uso e conjunto dos padrões HTTP e SOAP.
(CAMBIUCCI, 2009).
Em 2006, Eric Schmidt - Chief Executive Officer (CEO) do Google - usou o
termo Cloud Computing para definir o modelo de negócio de prestação de serviços
através da internet, sendo então considerado por muitos autores como o "pai" desse
termo.
A Cloud Computing trouxe recentemente o modelo de serviços entregue nos
moldes da energia elétrica para o ambiente de TI, que é uma evolução dos serviços
e produtos de tecnologia da informação sob demanda, também chamada de Utility
Computing. (SOUSA; MOREIRA; MACHADO, 2009).
A Figura 2.1 ilustra a evolução de computação dos Mainframes até a Cloud
Computing nos dias atuais.
Figura 2.1 - Evolução da Arquitetura de Computação.
A pressão dos usuários sobre exigências técnicas, de negócio e da
disponibilidade de novas capacidades técnicas fixam um palco para a próxima
geração da TI nas empresas, amplamente caracterizada como uma era em que os
recursos tornam-se mais automatizados, ágeis e sincronizados com os processos de
negócios. Nesse cenário, os gigantes da indústria de TI tal como Amazon, Google,
Microsoft e IBM ampliaram suas ofertas de data centers pelo mundo, oferecendo
serviços de infraestrutura com capacidade de provisionamento bem além das
24
possibilidades das empresas. Um novo cenário na TI é fixado, operando de forma
dinâmica, flexível e híbrida, com custo de operação dinâmico, pago por demanda,
pelo volume de uso.
2.2 CONCEITO DE CLOUD COMPUTING
O conceito de Cloud Computing gera grande confusão já que se trata da
evolução natural e convergência de várias tecnologias e conceitos. Entre eles o
Utility Computing, Grid Computing11, autonomic computing12, virtualização, Web 2.0,
Services Oriented Architecture (SOA) e o modelo de Software como Serviço.
(SOUSA; MOREIRA; MACHADO, 2009; TAURION, 2009; ZHANG; CHENG;
BOUTABA, 2010).
A Cloud Computing é um modelo de novas operações que reúne, para
execução dos negócios de maneira diferente, um conjunto existente de tecnologias.
A maioria dessas tecnologias utilizadas no modelo, como a virtualização e preços
baseada no uso, não é nova e esta é a principal razão para as diferentes
percepções quanto ao modelo. Como exemplo, no trabalho de Vaquero et al. (2009)
são apresentados mais de vinte definições de uma variedade de fontes que são
comparadas para se chegar a uma definição padrão. (ZHANG; CHENG; BOUTABA,
2010).
Nesta dissertação, adotamos a definição fornecida pelo National Institute of
Standards and Technology (NIST) que define Cloud Computing como:
“Um modelo para permitir conveniente acesso à rede sob demanda e a um conjunto compartilhado de recursos de computação configurável (por exemplo, redes, servidores, armazenamento, aplicativos e serviços) que podem ser rapidamente fornecidos e liberados com mínimo esforço de gestão ou interação do fornecedor de serviços”. (NIST, 2011, tradução nossa)13.
11
Software de processamento intensivo, que transforma o conteúdo a ser processado em pequenos pedaços que podem ser processados de forma isolada por diversas máquinas, podendo ser em rede local ou rede de longa distância.
12 Refere-se à compacidade de sistemas se autogerenciarem e corrigirem falhas e problemas.
13 “A model for enabling convenient, on-demand network access to a shared pool of configurable
computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction”. (NIST, 2011).
25
Os usuários podem desenvolver aplicações ou soluções baseadas na Cloud
Computing de forma mais flexível e rentável. Ela permite que as organizações
aumentem drasticamente as taxas de utilização de hardware e de escala até
grandes capacidades em pouco tempo, sem ter que investir constantemente em
novas infraestruturas, formação de pessoal novo ou de licença de software.
Como esta nova plataforma para a computação, o modelo tem crescido
rapidamente e transformado a maneira como os usuários armazenam e processam
as informações, e como eles utilizam o potencial das ferramentas computacionais.
Ela tem potencial para inovações e eficiências corporativas e para desenvolvimento
de novas plataformas e empreendimentos.
2.3 EVIDÊNCIAS DA CONSOLIDAÇÃO
Atualmente, o fato de um grande número de artigos estarem sendo escritos e
os principais nomes das indústrias estarem ampliando as ofertas de serviço de
Cloud Computing faz deste modelo de negócio um dos principais itens de interesse
na área de sistemas distribuídos.
Em 2011, a facilidade de uso, os novos modelos de cobrança e a eficiência em
TI obtida por Cloud Computing levaram ao aumento significativo do uso e interesse
nesta tecnologia. No entanto, os investimentos neste sistema mantiveram-se em
dados de estruturas não críticas, como e-mail, planilhas e antivírus, como uma
espécie de teste da tecnologia. Atualmente, com a redução do receio das empresas
em relação ao modelo e com os casos de sucesso, tanto no ambiente acadêmico
como na indústria, fica evidente um cenário de ampliação da utilização do Cloud
Computing. (BLAIR et al., 2011; COMPUTERWORLD, 2012a). Segundo Gatner
(2013), 677 bilhões de dólares serão gastos em serviços de Cloud Computing em
todo o mundo até 2016.
Entre os aspectos mais interessantes da Cloud Computing é que ela torna
viável a implantação de um grande número de máquinas para grupos de pesquisa e
pequenas organizações.
26
2.3.1 Interesse da Indústria
Hoje vemos uma explosão de ofertas de serviços baseados em Cloud
Computing como manobra de fornecedores de tecnologia para explorar a
oportunidade de crescimento deste tipo de negócio comercial, o que tem gerado
aceleração na adoção do modelo e seus serviços entre os usuários.
As previsões apontam resultados muito otimistas e a aceleração da adoção de
serviços ligados à Cloud Computing, como, por exemplo, a pesquisa da IDC Brasil
(2011), prevendo que o mercado brasileiro de serviços de Cloud Computing, no grau
de compartilhamento público no Brasil, crescerá quase sete vezes até 2014. Apenas
18% das médias e grandes empresas brasileiras já utilizam alguma aplicação de
Cloud Computing. Porém, este número saltou para algo em torno de 30% a 35% em
2013.
Na mesma linha, a IDC recebeu 41 casos de sucesso de empresas que atuam
em território nacional com projetos em Cloud Computing para seu evento, o IDC LA
Cloud Soluctions Roadshow 2012. Desse total, para comprovar o incremento
qualitativo dentro da pirâmide de contratação, 33% eram Software as a Service
(SaaS), 20% correspondia a e-mail e mais de 60% tratavam da gestão de dados.
Dentre os casos de sucesso selecionados, quatro foram tratados para a
exposição durante o evento: Pão de Açúcar, Peixe Urbano, Brasilcap e SulAmérica.
Entre essas empresas que buscam conquistar competitividade no mercado com o
uso deste modelo, a Brasilcap foi que recebeu o troféu de empresa mais inovadora.
Em termos de infraestutura de TI, a Cloud Computing coloca em pé de
igualdade pequenas e médias empresas ajudando-as a lidar com um ambiente de
requisitos de negócios mudando constantemente e exigindo mais e mais agilidade
de TI. Nesse sentido, segundo a ComputerWorld (2012b), 62% das empresas
entrevistadas relatam benefícios significativos em sua produtividade com relação à
infraestrutura. Com isso, considerando as pequenas e médias empresas, 53% no
mundo e 68% no Brasil, usam serviços de Cloud Computing e esperam crescer em
vendas nos próximos meses.
27
2.3.2 Interesse Acadêmico
Cloud Computing é um dos termos em TI mais comentados e discutidos no
momento e podemos considerar vários eventos com seus trabalhos que tratam do
tema como, por exemplo, Simpósio Brasileiro de Redes de Computadores e
Sistemas Distribuídos e Simpósio Brasileiro de Engenharia de Software e outros
completamente focados nessa discussão como, por exemplo, ICSE 2009 Workshop
on Software Engineering Challenges of Cloud Computing, ICSE 2011 Software
Engineering for Cloud Computing Workshop e conferência IDC LA Cloud Solutions
Roadshow 2012.
Outra evidência do interesse acadêmico pelo tema é a formação da Rede
AltoStratus com gestão da RNP, uma rede de pesquisa e colaboração em Cloud
Computing envolvendo pesquisadores de oito instituições brasileiras: UFRN,
UNIFOR, UFABC, UNICAMP, UFRGS, PUC-Rio, UFPE, UFPE e UFRJ. (BATISTA et
al., 2011; IDC LA, 2012).
O modelo de Cloud Computing já vem sendo amplamente utilizado por
universidades ao redor do mundo, como Harvard, Stanford e MIT, e agora começa a
ser utilizado, pela primeira vez, em uma universidade brasileira, a Universidade de
São Paulo (USP). (INFO, 2012).
O ambiente em Cloud Computing da USP contará com sistemas de e-mail e os
sistemas administrativos e educacionais. A infraestrutura já vem sendo montada há
cerca de um ano e meio e com ela a universidade conseguirá atender o público em
geral, ao oferecer conteúdo cientifico e seu acervo de bibliotecas e museus.
Com os sistemas em Cloud Computing, agora aplicações novas e antigas
poderão ser acessadas de qualquer dispositivo que tenha acesso à internet e a
universidade conseguirá concentrar seus data centers. O investimento para tal
projeto foi de 200 milhões de reais e a decisão em adotar o modelo deu-se baseada
em vários benefícios entre os quais destacamos a redução de custo de manutenção,
apoio a sustentabilidade, maior segurança e economia de energia. (INFO, 2012).
28
2.4 CARACTERÍSTICAS, ARQUITETURA E TIPOS DE OFERTA
A ascensão de Cloud Computing emergiu recentemente, mudando o cenário de
TI e transformando realmente o conceito de utilização de dados computacionais -
Utility Computing. (ZHANG; CHENG; BOUTABA, 2010).
À medida que diminuem as dúvidas e receios e se esclarecem as informações
que circulam pelo mercado, vemos que aumentam os modelos de negócios
baseados em Cloud Computing, por exemplo, os americanos NetFlix e Foursquare e
o brasileiro website Peixe Urbano. Cloud Computing no grau de compartilhamento
público pode ser a primeira associação feita quando escutamos falar sobre a
Amazon Web Services (AWS) com seus serviços de Cloud Computing no grau de
compartilhamento público e de infraestrutura. No entanto, esta não é a única oferta
de negócio na área, o leque de tipos de serviços é bem mais amplo. (TAURION,
2012b).
2.4.1 Características
O modelo de Cloud Computing possui cinco características essenciais, são
elas (BAUN et al., 2011; NIST, 2011):
Self-service sob demanda: os recursos computacionais podem ser
adquiridos pelo usuário unilateralmente conforme a sua necessidade sem
qualquer interação humana;
Amplo acesso à rede: recursos computacionais são disponibilizados na
rede em tempo real e acessados por meio de mecanismos padronizados
que possibilitam a utilização por meio de plataformas thin ou thin client
(por exemplo, celulares, tablets, laptops e desktops);
Pool de recursos: os recursos computacionais do fornecedor são
agrupados de forma a atender múltiplos usuários (modelo multi-tenant),
com diferentes recursos físicos e virtuais, dinamicamente distribuídos de
acordo com a demanda de cada usuário;
29
Elasticidade rápida: os recursos computacionais são provisionados de
forma rápida e elástica, em certos casos automaticamente, para atender a
necessidade do usuário dando a impressão de serem ilimitados;
Serviços mensuráveis: para garantir a transparência tanto para o
fornecedor como para o usuário, a utilização dos recursos deve ser
monitorada, controlada e reportada de forma quantitativa e qualitativa.
2.4.2 Tipos de oferta
Os tipos de oferta de Cloud Computing são os mais diversos, e podem ser
divididos em duas vertentes: grau de compartilhamento e modelo de entrega. Este
modelo ocorre em quatro graus de compartilhamento diferentes, são eles (TAURION,
2009; NIST, 2011; REESE, 2009):
Públicos são centros de dados virtualizados fora do firewall da empresa.
Geralmente, um provedor de serviços disponibiliza recursos para
empresas sob demanda, através da internet;
Privados são centros de dados virtualizados dentro do firewall da
empresa. Pode também ser um espaço privado dedicado a uma
determinada empresa dentro de um centro provedor de Cloud Computing
de dados;
Comunitários ocorrem quando diversas organizações compartilham os
recursos de uma mesma infraestrutura de Cloud Computing;
Híbridos combinam aspectos de ambos os públicos e privados.
Quanto a modelos de entregas, que também podem ser vistos como camadas,
podemos dividir os serviços de Cloud Computing em (BAUN et al., 2011;
ELSENPETER; VELTE; VELTE, 2010; NIST, 2011 ):
Software as a Service (SaaS), que é o modelo de implantação de
software em que uma aplicação é licenciada para ser usada como serviço
30
que será provido para clientes sob demanda através da internet.
Exemplos: Google Docs, Salesforce CRM e WebEx;
Platform as a Service (PaaS), que é o modelo que fornece uma
plataforma para o desenvolvimento, suporte e entrega de aplicações e
serviços disponíveis através da internet. Exemplos: Microsoft Azure e
Google App Engine;
Infrastructure as a Service (IaaS), que é o modelo que fornece
infraestrutura de hardware (servidores, storage, redes), tipicamente é um
ambiente virtualizado, disponível como serviço através da internet.
Exemplos: Rackspace Cloud Servers, GoGrid Cloud Storage, e Amazon
Elastic Compute Cloud (EC2).
Figura 2.2 - Exemplos de modelos de entrega (INFRADAPT, 2013)
31
A Figura 2.2 exemplifica os modelos de entrega, a sua composição e define a
responsabilidade de gestão de cada modelo de entrega de Cloud Computing, em
comparação com o modelo on-premise14.
2.4.3 Arquitetura Cloud Computing
Mudando o olhar de usuário final para um olhar de usuário corporativo,
observam-se e distinguem-se quatro camadas diferentes que se sobrepõem, como o
modelo de pilha, no qual a combinação das diferentes camadas formam os
diferentes tipos de serviços, conforme apresentado na Figura 2.3.
Figura 2.3 - Tipos de Oferta e Arquitetura em Camadas.
A arquitetura do modelo de Cloud Computing pode ser dividida em quatro
camadas, são elas a de hardware, infraestrutura, plataforma e aplicação ou software,
conforme demonstrado na Figura 2.3. (ZHANG; CHENG; BOUTABA, 2010).
Num nível mais baixo encontra-se a camada de hardware caracterizada pela
implantação dos recursos físicos, das camadas de infraestrutura, plataforma e
software, também conhecida como camada de aplicação.
Camada de hardware é implementada geralmente nos centro de dados, que
podem conter milhares de servidores organizados em racks e interligados através de
switches, roteadores e outros dispositivos pertencentes à infraestrutura de redes.
14
Ambiente tradicional de TI com hospedagem em servidores internos.
32
Esta camada tem por responsabilidade a gestão dos recursos físicos da Cloud
Computing, incluindo servidores (fisicamente), dispositivos de rede, sistema elétrico
e de refrigeração.
Questões típicas da camada de hardware incluem configuração de hardware,
tolerância a falhas, gestão de tráfego e gestão de recursos de energia e de
refrigeração.
A camada de infraestrutura cria, através do particionamento dos recursos
físicos utilizando tecnologias de virtualização (como exemplo Xen, KVM e VMWare),
um conjunto de recursos de armazenamento e de computação. Esta camada,
também conhecida como camada de virtualização, é responsável por características
chaves, tais como dimensionamento dinâmico de recursos que são implementados
através do uso de tecnologias de virtualização, sendo esta camada uma
componente chave do modelo de Cloud Computing. (VECCHIOLA; CHU; BUYYA,
2009; ZHANG; CHENG; BOUTABA, 2010).
A camada de plataforma consiste em sistemas operacionais e em frameworks
de aplicação construídos sobre a camada de infraestrutura. Ela tem por finalidade
minimizar as dificuldades de implantação de uma aplicação diretamente em
máquinas virtuais. Por exemplo, o Google App Engine opera nesta camada
fornecendo serviços do tipo PaaS e o suporte para implementar a lógica de
negócios, armazenamento e banco de dados para aplicações web.
A camada de aplicação é o nível mais alto da hierarquia e consiste nas
aplicações em Cloud Computing reais que, diferentemente de aplicações tradicionais,
esta baseada no modelo que pode usufruir do dimensionamento automático de
recursos para ampliar a disponibilidade, aumentar a performance e reduzir os custos
operacionais. (VECCHIOLA; CHU; BUYYA, 2009; ZHANG; CHENG; BOUTABA,
2010).
Cada uma das camadas do modelo é extremamente flexível permitindo a
evolução de cada uma separadamente dando suporte a uma ampla gama de
requisitos de aplicação, enquanto reduz os custos de manutenção e gestão.
33
Essa arquitetura é muito semelhante ao modelo Open Systems
Interconnection 15 (OSI), sendo muito mais modular se comparada aos modelos
tradicionais de hospedagem, como os servidores dedicados. (ZHANG; CHENG;
BOUTABA, 2010).
2.5 POSSIBILIDADES E BENEFÍCIOS
A Cloud Computing foi construída visando conservar recursos e economizá-los
ao transferir software, armazenamento, e outros itens para ela. Possibilitando que
seus usuários dedicassem somente os recursos necessários para esses serviços, o
que o torna um tópico muito popular atualmente.
“Qualquer pessoa que passe algum tempo com TI sabe que a frase será
popular no futuro próximo também”. (ORLOFF, 2012).
A figura 2.4 apresenta uma visão geral do modelo e das possibilidades de
transferência de ativos de TI quando o modelo de Cloud Computing é utilizado.
15
Modelo conceitual que caracteriza e padroniza as funções internas de um sistema de comunicação por particionamento em camadas de abstração.
34
Figura 2.4 - Visão geral de Cloud Computing (ORLOFF, 2012)
Atualmente a Cloud Computing é vista como um modelo muito promissor em
computação, sendo capaz de resolver questões sérias dentro da TI e com amplo
acesso às redes onde os recursos estão disponíveis, podendo serem acessados
através de mecanismos padrões que promovem o uso de plataformas heterogêneas
(por exemplo, desktops, laptops, smartphones e tablets), conforme pode ser
vizualizado na figura 2.4.
“Entre os benefícios apontados pelas empresas em solo nacional estão mais
produtividade (55%), redução de custo (54%) e mais flexibilidade (49%)”.
(COMPUTERWORLD, 2012b).
Esses e outros benefícios obtidos na utilização de Cloud Computing serão
apresentados e detalhados a seguir. (ORLOFF, 2012; ZISSIS; LEKKAS, 2012).
2.5.1 Escalabilidade
A escalabilidade ou flexibilidade fornecida pelo modelo permite que aplicações
adquiram mais recursos dinamicamente para hospedar os seus serviços, a fim de
35
lidar com picos de demanda de trabalho e da mesma forma liberá-los quando a
carga diminui. (ZISSIS; LEKKAS, 2012).
A alteração dos recursos pode ser feita de forma manual (por uma interface
web ou através de linha de comando) ou via programação (através de um software
que ajusta automaticamente a capacidade de atender a demanda real), o que
representa uma grande vantagem sobre o modelo tradicional de computação porque,
entre outras coisas, permite o compartilhamento dos hardwares disponíveis. Mas o
ponto mais forte encontra-se no dimensionamento dinâmico, que pode ocorrer de
duas formas:
Pró-ativo, em que, com base na demanda projetada, um calendário é
preenchido para alterar a infraestrutura;
Reativo, em que a própria infraestrutura reage adicionando e removendo
capacidade de acordo com as mudanças na demanda.
A figura 2.5 demonstra graficamente o tráfego esperado para um site de
comércio eletrônico (e-Commerce) ao longo de um dia típico, com sazonalidades no
uso nas primeiras horas do dia e picos na manhã, no horário de almoço e no início
da noite.
36
Figura 2.5 - Carga diária prevista em um site de comércio eletrônico (REESE, 2009)
Tomando como base o exemplo da figura 2.5, o serviço Cloud Computing pode
ser configurado para funcionar com o mínimo de infraestrutura que suporta a
disponibilidade necessária durante a madrugada, quando há uma redução no uso e
adicionar capacidade em horário de pico de trafego, como no final da manhã, no
horário de almoço e no início da noite. (ELSENPETER; VELTE; VELTE, 2010;
REESE, 2009).
2.5.2 Agilidade
A Cloud Computing fornece ampla infraestrutura que permite realizar
mudanças, experimentar mais e interagir com agilidade. Não se faz necessária a
preocupação com a aquisição ou a melhoria da infraestrutura, eliminando a perda de
tempo com questões relacionadas à mesma, dando a possibilidade dos usuários de
lançarem produtos em semanas e não mais em meses.
Um exemplo que demonstra o potencial de agilidade proporcionado por esse
estilo computacional é um projeto do Jornal New York Times que utilizou mil
estâncias do serviço Amazon EC2 para gerar em formato digital 11 milhões de
artigos arquivados do jornal em menos de 24 horas, tempo inviável para se adquirir
37
hardware, estabelecer a infraestrutura e realizar a mesma tarefa em infraestrutura
interna de TI. (REESE, 2009; SOUSA; MOREIRA; MACHADO, 2009).
Na mesma linha, outro exemplo em que o modelo proporcionou grande
agilidade foi relacionado às questões legais. Segundo a diretriz 95/46/CE, com
relação ao armazenamento de dados, empresas que fazem negócios na União
Européia (UE) não podem armazenar dados pessoais sobre os cidadãos da UE em
qualquer nação além da UE. Neste caso, serviços de armazenamento dos
fornecedores que possuem data centers na UE, pensando justamente na
conformidade da diretriz, por exemplo, a AWS ou Microsoft podem iniciar os
negócios com uma nação da UE eliminando a necessidade de construir um centro
de dados localizado na UE. (AMAZON, 2012; ELSENPETER; VELTE; VELTE, 2010;
REESE, 2009; SOUSA; MOREIRA; MACHADO, 2009).
2.5.3 Baixo Custo
Serviços de Cloud Computing têm custo mais baixo por conta das
implementações de data centers que, muitas vezes, são localizados próximos de
estações de energia barata e de baixo custo imobiliário, justamente para possuírem
custos associados menores. (ZISSIS; LEKKAS, 2012).
Os custos dos serviços de Cloud Computing estão ligados somente aos
recursos que estão sendo utilizados ou ao número de usuários acessando o serviço,
eliminando grande parte do investimento e de outras despesas iniciais de um novo
projeto, o que torna este serviço atraente para as empresas. (GOELEVEN et al.,
2011).
“Os custos de Total cost of ownership16 (TCO) de uma aplicação de planejamento em Cloud Computing chega a ser 77% menor que soluções de Corporate Performance Management 17 (CPM) que
utilizam a infraestrutura de TI do próprio cliente para a instalação e processamento da aplicação”. (BELLO, 2012).
16
Custo total da posse é uma estimativa financeira feita para consumidores avaliarem os custos.
17 Refere-se as metodologias, métricas, processos e sistemas utilizados para monitorar e gerenciar o desempenho dos negócios de uma empresa.
38
A tabela 2.1 compara o TCO entre uso de uma infraestrutura local e a utilização
de três alternativas de produtos da AWS.
Tabela 2.1 - Comparativo o TCO da AWS vs. on-premises (VARIA, 2012)
De acordo com a tabela 2.1, na utilização de Cloud Computing de infraestrutura
da AWS, por exemplo, teríamos um custo em três anos de aproximadamente 37 mil
dólares contra apreciados de 185 mil dólares de custo de uma infraestrutura
tradicional, o que representa uma economia de 80%. (VARIA, 2012).
2.5.4 Infraestrutura Self-Service
Um controle fino sobre os recursos e os serviços que são disponibilizados em
tempo de execução para aplicativos dos usuários, com recursos em tempo de uso,
portanto virtual, abriu a possibilidade para os fornecedores de serviços Cloud
Computing usarem em portais do tipo Self-Service (autoatendimento) para
adquirirem disponibilidade de recursos, de forma manual ou programada, para que
sejam fornecidos e liberados com interação mínima do fornecedor e para que os
recursos sejam rapidamente liberados para uso em outros serviços.
39
A figura 2.6 expõe os passos para obtenção de infraestrutura através da
construção de um novo data center, no ambiente tradicional. (AMAZON, 2012;
VECCHIOLA; CHU; BUYYA, 2009).
Figura 2.6 - Passos para construção de um novo data center no ambiente tradicional
Conforme visto na figura 2.6, são muitas as etapas a serem cumpridas para
obtenção de um novo data center no contexto tradicional. Na Cloud Computing, com
uso de portal de Self-Service, isto pode ser feito com apenas alguns cliques do
mouse, quando podemos adicionar ou remover mil servidores, ou montar um novo
ambiente de desenvolvimento ou de homologação de forma extremamente mais ágil.
2.5.5 Alta disponibilidade
Aplicações com demanda inesperada ou acima do previsto são cenários em
que a utilização de serviços de Cloud Computing pode ser interessante. O
consumidor pode aumentar o número de instâncias para suprir altas demandas
evitando que o sistema não conclua processos, fique lento ou indisponível, isso
ocorre por conta de um número de acessos maior que o projetado para suportar.
40
Posteriormente, passado o período de alta demanda, basta diminuir o número de
instâncias, reduzindo assim o custo.
Como exemplo, um sistema on-line de venda de ingressos para um grande
evento que cai na hora de início das vendas e fica indisponível. A startup brasileira
Zetks utilizou o serviços de Cloud Computing da Microsoft, o Windows Azure, para
realizar a pré-venda de ingressos do Rock In Rio. Na abertura da venda de
ingressos, para aumentar a eficiência do sistema, bastou passar de 5 servidores
para 25 por um período de cinco horas gastando apenas entre 700 a 1000 dólares.
(OLHAR DIGITAL, 2012; ZISSIS; LEKKAS, 2012).
2.5.6 Foco no negócio
A complexidade de um projeto de desenvolvimento de software para atender
requisitos de negócio é altíssima por si só, se adicionarmos a montagem de
infraestrutura de alto desempenho ao cenário, cria-se um desafio de complexidade
ainda maior.
Com a utilização de Cloud Computing terceiriza-se a infraestrutura com toda
sua complexidade e torna-se possível às empresas liberarem a equipe de TI para
focar em projetos que desenvolvam o negócio do usuário corporativo, em vez de
lidar com um fornecedor de serviços de Cloud Computing. Onde não se faz
necessário à preocupação com a melhoria da infraestrutura, utilizar os serviços de
Cloud Computing significa estar sempre sob uma estrutura de hardware e arquitetura
de sistema de última geração e, assim, os usuários podem focar seus objetivos em
seus negócios e nas aplicações específicas de seus negócios, eliminando a perda
de tempo com questões relacionadas às infraestruturas. (ELSENPETER; VELTE;
VELTE, 2010; LOPES, 2011; ORLOFF, 2012; REESE, 2009).
2.6 SERVIÇOS DE CLOUD COMPUTING
O termo Cloud Computing tem sido considerado por alguns simplesmente mais
um hype do mercado, mas o modelo tem provado o contrário mostrando que veio
para ficar e mudar a forma que consumimos TI. O modelo tem amadurecido e
representado uma ótima maneira de se reduzir custos e esforços em seus data
41
centers e ganhar agilidade, permitindo que as empresas concentrem suas atenções
em propostas diferenciais na competitividade e no alcance de novos mercados. Além
disso, o modelo tem ganhado a atenção de gigantes da tecnologia, como Amazon,
Microsoft e Google, que têm oferecido um amplo número de serviços baseados em
Cloud Computing. A seguir apresentaremos e exemplificaremos alguns dos
principais serviços oferecidos pelos fornecedores do modelo de Cloud Computing.
2.6.1 Amazon Elastic Compute Cloud
A AWS é a divisão de Cloud Computing da Amazon, o fornecedor de Cloud
Computing mais conhecido, que oferece serviços em diversas frentes, desde a
armazenagem até a plataforma para bancos de dados. Ela é dona de todo o
hardware e controla a rede de infraestrutura, desde o sistema operacional convidado.
A EC2 é um serviço projetado para oferecer a capacidade computacional
redimensionável de forma fácil para os desenvolvedores através da Web. A EC2 usa
virtualização Xen (solução livre para virtualização) em que cada máquina virtual é
uma entidade virtual privada do servidor conhecida como uma instância que pode
ser de um dos três tamanhos: pequeno, grande ou extragrande, como pode ser visto
na Tabela 2.2.
Tabela 2.2 - Tamanhos de instância disponíveis do Amazon EC2 (REESE, 2009)
Através de uma interface web simples para configuração da infraestrutura na
qual o tempo necessário para que os clientes obtenham e inicializem novas
instâncias de servidor, na Amazon EC2, além de permitir alterar a escala de acordo
com as suas necessidades fornece controle de recursos de computação. Veja a
Figura 2.7. (AMAZON, 2011; ELSENPETER; VELTE; VELTE, 2010; REESE, 2009).
42
A EC2 garante acordo de nível de serviço (do inglês, Service Level Agreement
- SLA) de disponibilidade dos serviços de 99,95% em um período de 365 dias, ou os
clientes podem receber créditos de serviço de volta. Isto dá aos clientes confiança
adicional, mesmo para as aplicações mais exigentes.
Figura 2.7 - Console do Amazon Web Services (AMAZON, 2012)
Além da EC2 a AWS oferece outros serviços como (AMAZON, 2011; AMAZON,
2013c; ELSENPETER; VELTE; VELTE, 2010; REESE, 2009):
Simple Storage Service (S3), que permite armazenar itens até 5GB de
tamanho em serviço de armazenamento virtual da AWS;
Simple Queue Service (SQS), que permite que suas máquinas
conversem entre si usando esta mensagem de passagem de Application
Programming Interface (API);
Simple Data Base (SimpleDB), que fornece uma forma simples de os
usuários armazenar dados de forma flexível, não relacional e altamente
disponível minimizando o trabalho com gestão de banco de dados;
Elastic Load Balancing, que realiza a distribuição do tráfego de entrada
entre as instâncias do usuário em uma única ou em varias zonas de
43
disponibilidade, aumentando a tolerância a falhas e equilibrando a carga,
maximizando a resposta da aplicação;
Elastic MapReduce, que fornece de maneira imediata capacidade de
realizar o processamento de grandes quantidades de dados utilizando
uma implementação do Hadoop 18 em tarefas como pesquisa
bioinformática, simulação científica, mineração de dados, análise
financeira, análise de arquivos de log e indexação da Web;
Elastic Block Store (EBS), que fornece volumes para armazenamento de
dados, podendo ter entre 1GB e 1TB de espaço para armazenamento,
para serem utilizados em instâncias da EC2;
CloudWatch, que permite o monitoramento dos serviços como EC2, EBS,
Elastic Load Balancers e Relational Database Service (RDS). Como parte
do serviço está o Auto Scaling que permite adicionar e remover instâncias
de maneira automática de acordo com configurações realizadas no
CloudWatch, mantendo o desempenho e minimizando custos;
Simple Workflow (SWF), que permite a criação de Workflows para
realizar a orquestração de tarefas e gerenciamento de estado para
aplicativos no modelo de Cloud Computing;
Elastic Beanstalk, que possibilita a implantação de aplicativos de maneira
fácil, onde a gestão dos detalhes de implantação como balanceamento de
carga, escalonamento automático e monitoramento do status do aplicativo
são realizados de maneira automática pelo serviço;
Simple Notification Service, serviço de transmissão de mensagens entre
destinatários humanos via Short Message Service (SMS) ou e-mail;
18
Framework do MapReduce para processamento de dados em ambiente distribuído voltada para clusters e processamento de grandes massas de dados.
44
Simple Email Service, serviço de envio de e-mails transacionais
eliminando a complexidade e a despesa de criação e manutenção de
soluções de e-mail internamente ou em terceiros;
Glacier, serviço de armazenamento de baixo custo, para dados raramente
acessados no qual o tempo para recuperação pode ser de várias horas;
ElastiCache, que permite de maneira simplificada a criação de um cache
na memória, aumentando o desempenho das aplicações através da
recuperação em memória ao invés de banco de dados e disco o que torna-
a mais lenta;
Virtual Private Cloud (VPC), que fornece uma rede virtual logicamente
isolada que lembra muito uma rede tradicional em ambiente on-premises,
com a vantagem de usar a infraestrutura escalável da AWS;
Direct Connect, que oferece uma solução de conexão entre as instâncias
em execução em um VPC da AWS e a rede local, possibilitando ao
usuário utilizar o serviço como uma extensão de seu on-premises;
Relational Database Service (RDS), que fornece acesso aos recursos,
facilita a configuração, operação e escala de banco de dados como SQL
Server, Oracle e MySQL;
CloudSearch, que permite a criação de uma solução de pesquisa de
classificação por relevância personalizável, pesquisa facetada ou texto
livre, com campos de pesquisa configuráveis para um site ou aplicativo.
2.6.2 Rackspace Cloud Servers
O Rackspace, conhecido em serviços de hospedagem tradicional para usuários,
oferece Cloud Servers, solução que serve como um recurso dinâmico que os
clientes podem aproveitar quando eles precisam de poder computacional extra.
Quando se trata de soluções híbridas, os Rackspace Cloud Servers tornam
essas soluções mais fácies que tentar uma solução com AWS. Esses ambientes
45
adicionais podem ser levantados por um determinado tempo e depois desligados até
que surja uma nova necessidade de teste, desenvolvimento ou revisões de mudança,
por exemplo. Esses ambientes que duplicam a configuração física podem com os
Rackspace Cloud Servers ser criados quase que instantaneamente.
Os Rackspace Cloud Servers garantem SLA, de disponibilidade dos serviços
de 100% e, diferentemente da AWS, que cobra pela capacidade, o tamanho das
instâncias do Rackspace são cobrados pela quantidade de memória, conforme
descritos na Tabela 2.3. Sendo que todas as instâncias, independentemente do
tamanho, possuem quatro núcleos de processamento disponíveis.
Tabela 2.3 - Tamanhos de instância disponíveis do Rackspace Cloud Servers (REESE, 2009)
Além dos Cloud Servers, o Rackspace possui o Cloud File, solução de
armazenamento bem similar ao Amazon S3 que pode ser uma boa opção para se
realizar backups de forma barata, com o armazenamento "infinito" e que pode ser
acessado em qualquer lugar que tenha uma conexão internet.
Cloud Sites é uma solução de hospedagem Web que tem evoluído para uma
solução de hospedagem escalável em uma pilha LAMP (Linux, Apache, MySQL,
Personal Home Page (PHP) / Perl / Python), uma pilha Microsoft Windows (.NET,
ASP, SQL Server), ou ambos.
O Rackspace tem todos seus recursos e funcionalidades acessíveis através de
uma interface web e APIs para o programador, com várias linguagens populares –
Representational State Transfer (REST) serviço web, PHP, Python, Ruby, Java,
C#/.NET. (RACKSPACE, 2011; REESE, 2009).
2.6.3 Windows Azure Cloud Services
A Microsoft oferece uma plataforma de hospedagem de aplicações em Cloud
Computing, o Windows Azure. A fim de obter o potencial, a plataforma é suportada
46
por um sistema operacional da Cloud Computing, o Windows Azure, e por um
framework de serviços para desenvolvedores que podem ser utilizados em
aplicações. (ELSENPETER; VELTE; VELTE, 2010; MICROSOFT, 2012b).
Figura 2.8 - Painel principal do Windows Azure (MICROSOFT, 2012b)
Os Cloud Services do Windows Azure oferecem uma ampla gama de
funcionalidades para implantar aplicações e API, sem necessidade de lidar com
detalhes como provisionamento e balanceamento de carga que ficam por conta do
Windows Azure. A plataforma oferece um sistema operacional em Cloud Computing
e ferramentas para desenvolvedores que podem criar aplicativos utilizando
protocolos padrão da indústria como REST e SOAP e estrutura baseada em .NET.
No entanto, oferece APIs para várias linguagens como PHP, Java ou Ruby, dando
acesso a todo o poder da plataforma.
Outros exemplos de serviços oferecidos pela empresa além dos Cloud
Services incluem (WINDOWS AZURE, 2013):
47
Web Sites, que fornecem plataforma para implantação de aplicativos web
sem que o usuário tenha que lidar com as questões envolvidas na
gerência da infraestrutura;
Virtual Machines, que fornecem infraestrutura para atender necessidades
crescentes, com recursos de computação dimensionáveis e sob demanda
em que o usuário pode escolher entre os sistemas operacionais Windows
Server ou Linux;
Mobile Services, que fornecem plataforma para implantação de
aplicativos móveis, na qual o usuário pode utilizar-se de métodos prontos
para a autenticação de usuários e envio de notificações do tipo push
agilizando o desenvolvimento da aplicação;
SQL Database, serviço para criação de banco de dados relacional
baseado no SQL Server;
Storage, solução para armazenamento em modelos não relacionais de
dados, incluindo Blob, Table, Queue e Drive Storage;
Media Services, que possibilitam a criação de Workflow para criação,
gerenciamento e distribuição de mídia, incluindo recursos para conversão
de formato, proteção do conteúdo, codificação, ingest e recursos de
streaming ao vivo e sob demanda;
Service Bus, que permite a criação de um canal de comunicação entre
aplicações rodando em Cloud Computing e ambientes on-premises,
através de mensagem em Fila;
SQL Reporting, que oferece serviço para criação de relatórios com
recursos como indicadores, gráficos, mapas e tabelas;
Traffic Manager, que oferece condições para aumentar a disponibilidade
e garantir o desempenho da aplicação, equilibrando a carga entre os
vários serviços do usuário no Windows Azure;
48
Active Directory, que oferece recursos para controlar acesso e gerência
de identidades nas aplicações do usuário;
Multi-Factor Authentication, que fornece uma camada extra de
autenticação elevando o nível de segurança;
HDInsight, serviços baseados no Hadoop que possibilita realização de
consultas em bancos de dados SQL e em fontes de dados não
estruturados de qualquer tamanho;
Cache, que fornece infraestrutura para cash tornando as aplicações mais
performáticas através da utilização de cash em memória;
Notification Hubs, que fornecem serviço para transmitir notificações do
tipo push de forma individual e personalizada ou a milhões de dispositivos
móveis de uma vez;
BizTalk Services, que possibilitam a integração de aplicativos
empresariais e processamento de Electronic Data Interchange (EDI) em
ambiente de Cloud Computing reduzindo o custo na colaboração entre
parceiros comerciais.
Além do Windows Azure, a Microsoft oferece um amplo pacote de serviços que
incluem o Office 365, o sucessor do Business Productivity On-line Suite (BPOS),
serviço baseado na internet e compatível com o Microsoft Office que atualmente
conta com (MICROSOFT, 2012b):
Exchange On-line, que oferece Webmail, agendamento on-line, contatos
e correio de voz.
Lync On-line, ferramenta de mensagens instantâneas, presença e
realização de conferência via internet;
SharePoint On-line, que oferece portais e compartilhamento de
documentos;
49
Office Web Apps, o complemento on-line do Office, para leitura, criação e
edição de documentos de texto, planilhas, apresentações e anotações.
Outros serviços que incluem os serviços em Cloud Computing da companhia
são as Microsoft Dynamics CRM On-line (software de gestão de relacionamento com
o cliente disponível na internet, dando aos profissionais de negócios acesso de
qualquer lugar às informações de clientes) e o Windows Server (Hyper-V que
fornece uma ferramenta de criação e soluções para a Cloud Computing em grau de
compartilhamento privado para seus usuários). (MICROSOFT, 2012b; RAMOS,
2011; REESE, 2009).
2.6.4 Google App Engine
O Google App Engine fornece uma plataforma para o desenvolvimento, suporte
e entrega de aplicações e serviços disponíveis através da internet e hospedados nos
data centers do Google. Com ofertas, o Google App Engine permite o
desenvolvimento de aplicações Web em Java (qualquer linguagem outra que
compile para a máquina virtual Java) e Python, que possui como soluções para
bancos de dados o não relacional BigTable e suporte a MySql. (ELSENPETER;
VELTE; VELTE, 2010; INFOQ, 2012; RAMOS, 2011; REESE, 2009).
O Google possui, além do App Engine, outras ofertas de serviços de Cloud
Computing como (GOOGLE, 2013):
Google Cloud Storage, que permite armazenamento de dados na
infraestrutura de armazenamento da Google, similar ao Amazon S3 e
Rackspace Cloud Files;
Google Compute Engine, produto que oferece infraestrutura para
execução de cargas de trabalho de computação de grande escala em
máquinas virtuais Linux;
Google BigQuery, serviço para realizar a análise de grandes volumes de
dados usando SQL e obter insights em tempo real de negócios;
50
Google Cloud SQL, serviço para criação de banco de dados relacionais
baseado em MySQL;
Google Drive, que permite criação de documentos de texto, planilhas e
apresentações através da internet, similar ao Microsoft Office Web Apps.
2.6.5 Sales Cloud
A Salesforce.com tornou-se muito conhecida no mercado com o sucesso do
seu Sales Force Automation, aplicação de venda base do Sales Cloud, aplicativo de
vendas e Customer Relationship Management (CRM).
Com usuários como a Electronic Arts, o crescimento da receita da
Salesforce.com, nos Estados Unidos da América (EUA) passou para 290 milhões de
dólares no trimestre (encerrado em janeiro de 2009), representando um aumento de
34% ano-sobre-ano. A figura 2.9 mostra o painel da Sales Cloud da Salesforce.com.
Figura 2.9 - Tela principal do Sales Cloud (SALES FORCE, 2011)
A Sales Cloud disponibiliza aos usuários grandes e pequenos todos os
recursos de CRM para aumentar a produtividade e obter visibilidade para o seu
negócio. A empresa possui hoje três áreas de foco além do popular aplicativo de
51
vendas e CRM (ELSENPETER; VELTE; VELTE, 2010; REESE, 2009; SALES
FORCE, 2011):
Service Cloud - plataforma de atendimento ao cliente com o conceito
social em vários canais como autoatendimento, telefones, e-mail, chat e
até por redes sociais;
Salesforce Platform - que fornece em sua Cloud Computing uma
plataforma de computação com capacidades para desenvolver aplicações
customizadas;
Chatter - aplicação para colaborar de qualquer lugar em tempo real.
A Salesforce.com disponibiliza um conjunto de APIs, em padrões como REST
e SOAP, com as quais os usuários possam realizar a intergração com outros
aplicativos de forma rápida e simplificada. (ELSENPETER; VELTE; VELTE, 2010).
52
3 DESAFIOS CLOUD COMPUTING
Neste capítulo, apresentaremos desafios que dificultam ou impedem a
implantação de serviços de Cloud Computing nas empresas. Após apresentação de
cada desafio, serão discutidas e apresentadas possíveis soluções que são fruto de
projetos de pesquisa desenvolvidos na indústria e nas universidades. Aqui, iremos
tratar de questões arquiteturais desafiadoras para os usuários. Traçaremos uma
reflexão sobre as diferenças entre eles e delimitaremos o quanto próximo de serem
resolvidas elas estão. Dividiremos nossa análise nas questões tecnológicas e nas
barreiras culturais.
3.1 DESAFIOS
O modelo de Cloud Computing é uma das tendências recentes da tecnologia,
com uma grande diferença das tendências anteriores que se limitavam a uma classe
específica de usuário ou focava em disponibilizar recursos específicos para
demanda de TI. De fato, o Cloud Computing pretende ser um modelo global para
prestação de serviços em massa, onde os usuários finais terão seus documentos
armazenados na internet e os usuários corporativos terão suas prestações de
serviços em data centers fora da empresa. (ZISSIS; LEKKAS, 2012).
A adoção de Cloud Computing, por receio das empresas com relação ao
modelo, acabou ficando pautada em e-mails, planilhas, softwares de antivírus e tudo
que não era fundamental para os negócios, esta foi a forma encontrada pelas
empresas para testar as características do negócio. Porém, esse receio diminuiu por
parte dos usuários corporativos que já pensam nas alternativas que estas aplicações
permitem em seus negócios. Esses usuários estão alterando o comportamento de
compra com base na velocidade de implantação, personalização e economia que os
serviços da Cloud Computing lhes fornecem, sendo que não se trata mais de ser ou
não ser adotado, mais sim com qual velocidade e intensidade. (COMPUTERWORLD,
2012b; FORBES, 2012; TAURION, 2013a).
Vista como uma das tecnologias mais promissoras da computação na
atualidade, a Cloud Computing tem se mostrado capaz de resolver uma série de
53
questões. No Brasil, tornou-se um dos mais promissores mercados para oferta de
serviços e aplicações, negócios baseados no modelo. (BELLO, 2012).
Como qualquer nova tecnologia, a Cloud Computing possui desafios para ser
enfrentados. É de extrema importância observar que, na migração para este tipo de
estrutura os usuários devem compreender os benefícios que elas proporcionam.
Vários desafios emergiram e precisam ser tratados, sendo que três deles podem ser
apontados como de maior importância, são eles: segurança, confiabilidade, Service
Level Agreement (SLA) e interoperabilidade. (CLOUDTWEAKS, 2012;
CLOUDTWEAKS, 2013; KUMAR; CHENG; MCGIBBNEY, 2010). A seguir
destalharemos as informações sobre estes aspectos.
3.1.1 Interoperabilidade
Os problemas de interoperabilidade estão relacionados à inexistência de
padrões unificados entre os diferentes fornecedores, dificultando a utilização de
múltiplos serviços de Cloud Computing de forma unificada, a utilização em nuvens
híbridas e portabilidade de aplicações e dados de um fornecedor de serviços de
Cloud Computing para outro (o chamado Cloud lock-in).
Um exemplo desse cenário seria uma aplicação empacotada utilizando o
mecanismo da AWS, o Amazon Machine Image, que tornaria muito difícil migrar os
componentes dessa aplicação, como exemplo Banco de Dados e Servidor de
Aplicações, para outros fornecedores. Outro exemplo simples desse problema é se o
usuário quiser migrar o conteúdo do seu perfil do MySpace para o Facebook sem
redigitação manual. (BATISTA et al., 2011; CLOUDTWEAKS, 2012; GOELEVEN et
al., 2011).
Trata-se da dificuldade de transportar aplicações e dados de um serviço de
Cloud Computing de um fornecedor para o serviço de outro que possua melhor
preço, por exemplo. Isto ocorre por conta da inexistência de padrões unificados entre
os diferentes fornecedores, onde se utilizam diferentes tecnologias (incluindo
mecanismos de empacotamento, API, ambiente de virtualização etc.).
54
Interoperabilidade e segurança são de fundamental importância e constituem
fatores chaves que irão determinar a medida com que a Cloud Computing será
adotada. Soluções para as questões de interoperabilidade estão sendo propostas,
centradas na criação de frameworks, ontologias, padrões abertos ou ainda APIs que
permitam uma fácil migração e integração de dados e aplicações entre diferentes
fornecedores como solução para intercâmbio de aplicações e dados de forma segura
entre plataformas. (IBM, 2013; GOELEVEN et al., 2011).
3.1.1.1 Padronização
Os desafios ligados à interoperabilidade e em especial a questão de
aprisionamento trazem à tona a necessidade de padrões em Cloud Computing. A
necessidade de reduzir padrões de implementação e caminhar para a padronização
em normas técnicas, APIs comuns e arquiteturas. Tais padrões que podem ser
aprovados e mantidos por organizações como International Organization for
Standardization19 (ISO) ou American National Standards Institute (ANSI), sendo que
sua importância é compreendia pelos usuários de serviços de Cloud Computing para
uma adoção mais ágil e bem sucedida. (HOEFER; KARAGIANNIS, 2010; IBM, 2011).
O mesmo ocorreu no inicio da era da Internet quando as organizações tinham
sua própria rede e a transferência de dados era algo bastante complicado e padrões
não existiam. Esse cenário mudou com a introdução de padrões de internet, no
entanto, assim como ocorre no estado atual da Cloud Computing, fazê-los trabalhar
em conjunto no desenvolvimento desses padrões é encarado por alguns com muita
resistência. (SRIRAM; KHAJEH-HOSSEINI, 2010; O'REILLY, 2012).
Padrões para Cloud Computing se inserem como uma nova camada nesses
sistemas altamente distribuídos, uma API para múltiplos fornecedores baseada em
padrões abertos oferecendo abstração dos recursos e oportunidades de inovação,
em que o trabalho em conjunto, para garantir a interoperabilidade, mostra-se
necessário. Mas, em um ambiente puramente de Internet, a desterritorialização
enfatiza a demanda de novas formas de subjetividade, de um novo modelo do
19
ISO é uma organização que tem por objetivo promover desenvolvimento de normas, testes e certificação, sendo a ANSI seu representante nos Estados Unidos.
55
sujeito, o autor, em que o produto entra em circulação sob uma licença alternativa ao
copyright, a General Public License (GPL), que representa o autor moderno, e o
produto e o esforço conjunto passam a ser de domínio público (que tem como uma
única restrição não ser usado como proprietário).
Outro ponto interessante nestes projetos, também conhecidos como código
aberto, é que eles trabalham com uma filosofia na qual os membros recebem poder
no projeto de acordo com o seu mérito, a meritocracia. (FORBES, 2013).
Com base nesse novo modelo algumas organizações têm buscado e produzido
resultados interessantes. São alternativas e soluções para os problemas de
interoperabilidade, assegurando aos usuários a flexibilidade e abertura para não
ficarem aprisionadas a um único fornecedor. (IBM, 2011; NUNES, 2007; OPEN
CLOUD MANIFESTO, 2011).
3.1.1.1.1 Organizações tentando definir padrões
Varias organizações estão trabalhando na definição e utilização de padrões
abertos para lidar com problemas de interoperabilidade em ambientes de Cloud
Computing. O Open Cloud Manifesto tem como objetivo unir empresas que oferecem
serviço e tecnologias de Cloud Computing com especificações de padrões abertos
mostrando a preocupação do mercado com o risco de aprisionamento a
fornecedores. A iniciativa conta com o apoio de mais de 250 organizações na
formação de uma declaração de princípios para a manutenção da Cloud Computing
como um sistema aberto. (IBM, 2011; OPEN CLOUD MANIFESTO, 2011; O'REILLY,
2012).
O Cloud Computing Interoperability Forum é uma das organizações que tem
tentado criar padrões para acelerar a adoção de serviços de Cloud Computing. Que
possibilitam a troca de informações. Ela é responsável pela discussão de
mecanismos para monitorar a nuvem e os níveis de controle e de permissões de
usuário, necessárias para garantir a interoperabilidade. Também pretendem o
desenvolvimento de uma estrutura que permita que duas ou mais nuvens troquem
informações. (GOELEVEN et al., 2011; HOEFER; KARAGIANNIS, 2010).
56
A Storage Networking Industry Association (SNIA) define a Cloud Data
Management Interface, como uma interface funcional RESTful20 que possibilita que
os aplicativos e usuários criem, recuperem, atualizem e excluam elementos de
dados em ambiente de Cloud Computing. Essa interface permite que os clientes
corporativos visualizem a oferta de armazenamento e gerenciamento de contas de
usuários e credenciamento que são referentes ao armazenamento e os recipientes
(metadados), bem como monitoramento de informações de faturamento. (HARSH et
al., 2012; SNIA, 2013).
Na mesma linha o Distributed Management Task Force (DMTF) trabalha em
iniciativas focadas em alcançar o gerenciamento de infraestruturas interoperáveis de
Cloud Computing, tendo três importantes iniciativas (CLOUD-STANDARDS, 2011;
DMTF, 2013; HARSH et al., 2012; HOEFER; KARAGIANNIS, 2010; SAMPAIO et al.,
2010):
A Cloud Infrastructure Management Interface, uma interface de
gerenciamento RESTful para os componentes comuns no modelo de
entrega IaaS, capaz de abstrair boa parte da complexidade de
gerenciamento de sistemas, proporcionando interface de autosserviços em
que usuários dinamicamente podem administrar e configurar seu serviço
de Cloud Computing.
O Open Virtualization Format (OVF) descreve um padrão aberto para
criações de máquinas virtuais portáteis, sendo uma plataforma neutra e
extensível pelos usuários quando necessário. Surgiu a partir da
colaboração dos principais fornecedores do setor.
O Cloud Standards Wiki reúne em um único lugar, periodicamente,
informações recentes sobre as atividades das organizações que trabalham
na definição de padrões para Cloud Computing.
O Open Grid Forum (OGF) atua no desenvolvimento de padrões nas áreas de
redes, Cloud Computing e outras formas avançadas de computação distribuídas
20
RESTful são aplicativos que seguem os princípios arquitetônicos estabelecidos pelo REST (Representational state transfer) pelo qual você pode criar serviços Web.
57
para negócios e pesquisas em todo o mundo. Liderado pelo OGF, o Open Cloud
Computing Interface (OCCI) foi lançado na tentativa de padronizar o protocolo API
para RESTful e para as tarefas de gestão. Ele é focado nas tarefas de gestão de
serviços Cloud Computing e no modelo de entrega IaaS, porém o padrão mostrou-se
bastante extensível dando a possibilidade de utilização em outros modelos de
entrega, PaaS e SaaS. (CLOUD-STANDARDS, 2011; HARSH et al., 2012).
3.1.1.2 Criar Cloud Computing abertas
Projetos de código aberto e gerenciados por comunidade são a aposta de
muitos usuários para entrega de verdadeira interoperabilidade entre serviços de
Cloud Computing de diferentes fornecedores. A ideia é que somente os projetos
gerenciados por comunidades, como o OpenStack, irão possibilitar
interoperabilidade entre Cloud Computing e que serão operadas por diferentes
prestadores de serviços. A seguir, apresentaremos alguns projetos que abrem a
possibilidade de criação de Cloud Computing com código aberto, por usuários
coorporativos e finais. (FORBES, 2013).
3.1.1.2.1 OpenNebula
A OpenNebula é um projeto que oferece um toolkit21 de código aberto para
construção de Cloud Computing públicas, privadas e híbridas. É projetada para ser
facilmente integrada com outras soluções de armazenagem e rede. A arquitetura
modular e em camadas da OpenNebula proporciona uma capacidade nativa de lidar
com diferentes plataformas de virtualização como, por exemplo, Xen, KVM e
VMWare. Além disso, sua arquitetura proporciona a portabilidade e
interoperabilidade entre vários data centers.
O acesso ao ambiente virtualizado é feito através da interface OCCI do OGF e
através da interface web, a Sunstone, e um subconjunto de chamadas da Cloud API
da VMWare, a OpenNebula oferece interfaces para a EC2 Query API da Amazon.
Facilmente dá suporte à criação de uma Cloud Computing com base em uma
ambiente já existente com um conjunto de recursos com heterogêneas plataformas
21
Conjunto de rotinas de software, projetado para facilitar uma função especifica no desenvolvimento e manutenção de aplicações e bancos de dados.
58
de virtualização e mais adaptável a cenários onde usuários corporativos desejam
utilizar máquinas virtuais para testar novos softwares, possibilitando acomodar
combinações de software em um centro de dados. (FELICIANO et al., 2011;
GONÇALVES, 2011; HOEFER; KARAGIANNIS, 2010; OPENNEBULA, 2012;
SEMPOLINSKI; THAIN, 2010).
3.1.1.2.2 Nimbus
O projeto Nimbus oferece um toolkit de código aberto que permite um ambiente
de Cloud Computing de IaaS para usuários científicos. Mantido pela Universidade de
Chicago, Nimbus possui uma arquitetura modular que fornece uma ferramenta para
a criação, controle e monitoramento de aplicações em Cloud Computing. O toolkit
fornece interfaces REST para acesso à base de dados de recursos e escalonamento
de Virtual Machines (VM) e interface Web Services Description Language (WSDL)
para o serviço EC2 e EC2 Query API, ambos da Amazon, além de Web Services
Resource Framework (WSRF) para aplicações em Grid Computing.
Também permite que os usuários coorporativos desenvolvam aplicativos
escaláveis e de alta disponibilidade combinando Cloud Computing criadas com o
próprio Nimbus, OpenStack, Amazon e outras ferramentas, formando ambientes de
única ou múltiplas Cloud Computing. (FELICIANO et al., 2011; GONÇALVES, 2011;
HOEFER; KARAGIANNIS, 2010; NIMBUS, 2013; SEMPOLINSKI; THAIN, 2010).
3.1.1.2.3 Eucalyptus
O Eucalyptus é um pacote de softwares concebido para o ambiente de
computação empresarial corporativa que possibilita a construção e gerenciamento
de Cloud Computing públicas e privadas. Projetado para ser uma resposta à Cloud
Computing de código aberto, o modelo proprietário de Cloud Computing da Amazon
EC2, o Eucalyptus possui APIs interoperáveis com as APIs da plataforma Amazon
EC2/S3.
O suporte a tecnologias de virtualização do Eucalyptus inclui Xen, KVM e
VMware, sendo que a Ubuntu Enterprise Cloud (UEC) suporta somente a utilização
de KVM. O UEC é a versão do Eucalyptus utilizada pela Canonical, mantenedora da
59
distribuição Ubuntu do Linux, como solução de Cloud Computing para versão para
servidores Ubuntu Server Edition. A Canonical recentemente demonstrou grande
interesse na utilização de outra solução de Cloud Computing, o OpenStack.
(FELICIANO et al., 2011; SRIRAM; KHAJEH-HOSSEINI, 2010; SEMPOLINSKI;
THAIN, 2010).
3.1.1.2.4 OpenStack
O OpenStack é um sistema operacional para Cloud Computing de código
aberto projetado para controlar grande quantidade de computação, armazenamento
e recursos de rede de data center, criado sob normas que estabelecem um terreno
comum onde prestadores de serviços e empresas podem criar uma solução de
Cloud Computing privadas e públicas. Criado pela Rackspace e NASA, ele fornece
as organizações de todos os portes uma alternativa de sistema proprietário,
reduzindo os riscos de aprisionamento, com uma ampla comunidade de mais de 150
empresas, entre as quais estão HP, Red Hat, Dell, IBM e Rackspace, que
impulsionam o projeto como um provável concorrente para VMWare, Microsoft e
Amazon. A Figura 3.1 mostra a página do projeto OpenStack. (OPENSTACK, 2012).
Figura 3.1 - Home Page do OpenStack, projeto que procuram criar padrões abertos para Cloud
Computing (OPENSTACK, 2012)
60
A sua arquitetura extremamente flexível, e por se tratar de uma solução de
código aberto, abre possibilidade de integração de sistemas ligados e de terceiros
sem se preocupar com os requisitos de hardware e software, trabalhando inclusive
com configurações High Performance Computing22 (HPC).
Todos os recursos desse sistema operacional podem ser explorados pelos
usuários corporativos através de uma interface gráfica, que oferece ferramentas para
fornecer serviços de Cloud Computing e um design extensível que torna fácil
conectar e expor serviços de terceiros com ferramentas de gerenciamento e
monitoramento de faturamento. Entre os utilitários está o chamado OpenFlow, que
permite alta quantidade de alocação de máquinas virtuais, além das máquinas
tradicionais ligadas às de rede, como sistemas de detecção de intrusos,
balanceamento de carga, firewall e rede virtuais privadas. Além das ferramentas
padrões, fornece uma API no qual o usuário pode automatizar tarefas e construir
ferramentas de gerenciamento.
Assim, com tais vantagens, grandes nomes de indústrias tradicionais, entre
eles o BestBuy e Bloomberg, anunciaram publicamente a utilização do OpenStack
com as suas infraestruturas. (GARTNER, 2012; OPENSTACK, 2012).
3.1.1.3 Open Application Programming Interface
Outra linha de trabalho, na tentativa de resolução das questões ligadas à
interoperabilidade, é a chamada Open APIs, que criam uma camada de abstração
permitindo que os usuários não tenham que se preocupar com a API específica de
cada fornecedor de serviços de Cloud Computing.
A Simple Cloud API fornece uma API simplificada, que busca a
interoperabilidade entre plataformas Cloud Computing para desenvolvimento de
aplicações de forma transparente utilizando a linguagem PHP, podendo ser
traduzida para qualquer linguagem orientada a objetos voltada para a web.
Com o uso da Simple Cloud API os usuários corporativos podem implantar
suas aplicações e migrar de um fornecedor para outro sem necessidade de realizar
22
Refere-se à Computação de Alto Desempenho.
61
grandes mudanças na aplicação. Os serviços de Cloud Computing são:
armazenamento de arquivos como Windows Azure blobs, Rackspace Cloud Files,
Nirvanix Storage Delivery Network e Amazon S3; serviços de armazenamento de
documentos Windows Azure tables e Amazon SimpleDB; serviços de fila23 como
Amazon SQS e Windows Azure queues. (SIMPLE CLOUD, 2011).
A figura 3.2 mostra uma aplicação fazendo uso do serviço de fila, sendo
construída sobre a Simple Cloud API que pode interagir com o serviço de fila da
AWS e Windows Azure, por intermédio de adaptadores (ou drives), respectivamente
Amazon SQS Adapter e Azure Queue Adapter.
Figura 3.2 - Arquitetura da Simple Cloud API (ZEND, 2013).
Criada pela Red Hat e Apache Software Foundation (ASF), Deltacloud é uma
API baseada em REST que abstrai as diferenças entre as APIs específicas para
cada um dos serviços de Cloud Computing suportados como, por exemplo, Amazon
EC2 e S3, Rackspace Cloud Servers e Cloud Files, Google Cloud Storage e
Microsoft Azure Storage, OpenNebula, OpenStack e Eucalyptus são alguns
exemplos de adaptadores que o projeto permite. (APACHE, 2012).
23
Uma fila é simplesmente uma lista de mensagens, onde o fluxo de mensagens se dá na ordem em que foram armazenados.
62
Iniciado pela Cloudkick e atualmente outro projeto da ASF, a Libcloud é uma
biblioteca padrão do Python criada para facilitar a criação de aplicações onde
funcionam serviços de Cloud Computing por ele suportado, exemplos, Amazon EC2
e S3, Rackspace Cloud Servers e Cloud Files, Google Cloud Storage e Windows
Azure Blog Storage, Nimbus, OpenNebula e OpenStack. (APACHE, 2013a).
As JClouds são bibliotecas de código aberto construída em Java, que fornece
abstração na utilização de diferentes serviços de Cloud Computing de mais de 30
fornecedores incluindo Amazon, Windows Azure, GoGrid e Rackspace, além de
serem construídas usando OpenStack e vCloud. (APACHE, 2013b).
3.1.1.4 Serviços de Adaptação
A criação de serviços de adaptação é outra abordagem possível na resolução
de problemas relacionados à interoperabilidade. Complementares ao
desenvolvimento de padrões, esses serviços são ferramentas e componentes de
softwares que facilitam a implantação de aplicações em diferentes serviços de Cloud
Computing. Serviços de adaptação têm a desvantagem de serem alterados todas as
vezes em que forem feitas alterações nas APIs ou surgirem novos fornecedores
Cloud Computing utilizando interfaces diferentes das já mapeadas. (BATISTA et al.,
2011; SAMPAIO et al., 2010).
O Uni4Cloud é um exemplo de serviços desse gênero funcionando como uma
espécie de adaptador para trabalhar com as diferentes APIs proprietárias suportadas,
por exemplos AWS, GoGrid e FlexiScale.
A capacidade de distribuição de componentes da aplicação do Uni4Cloud é
baseada em padrões de Cloud Computing, como o OVF e o OCCI, para favorecer
interoperabilidade e para evitar o aprisionamento a um fornecedor de serviços
específico. As informações relacionadas que são partes de uma aplicação (bando de
dados, servidores de aplicação e web) são autoconfiguradas através de scripts
durante a inicialização da máquina virtual.
Similar ao Uni4Cloud é o projeto Aeolus, de código aberto, patrocinado pela
Red Hat, que pretende fornecer um multi-cloud console de gerenciamento e uma API
63
unificada para o gerenciamento de pacotes de máquinas virtuais através de
diferentes serviços de Cloud Computing públicas e privadas. (AEOLUS, 2013).
3.1.2 Segurança e confiabilidade
Segurança em ambientes de Cloud Computing tem os mesmos objetivos que
em ambientes tradicionais, sendo eles: confidencialidade, integridade,
disponibilidade, autenticidade e prestação de contas. Cada modelo de entrega tem
características relacionadas a segurança bem diferentes, devido à grande abertura
deste modelo:
IaaS - o usuário tem alta flexibilidade e fica responsável pela segurança;
PaaS - o usuário tem flexibilidade média e divide com o fornecedor a
responsabilidade pela segurança;
SaaS - o usuário tem baixa flexibilidade e o fornecedor é responsável pela
segurança.
Os consumidores de serviços de Cloud Computing podem realizar tarefas
como processamento, transferência e armazenamento de informações. As duas
últimas técnicas e ferramentas podem ser aplicadas de forma a obter segurança da
informação. Pode-se criptografar24 dados confidenciais em seu banco de dados e na
memória com a chave pública do destinatário pretendido e descriptografar, usando
sua chave privada criptografada em memória e o tempo necessário para o
processamento dos mesmos. Mesmo as realizações de pesquisas em banco de
dados criptografados podem ser feitas sem a necessidade de baixá-los por completo
e descriptografá-los. (PIETERS, 2011; REESE, 2009).
3.1.2.1 Segurança na transferência e armazenamento de informações
A maioria dos serviços de Cloud Computing são acessíveis através do web
browser, utilizando o padrão HTTP para ligar o usuário ao serviço de Cloud
Computing. Para fornecer criptografia e autenticação de segurança na comunicação
24
Criptografia torna os dados ilegíveis, empregada para proteger dados sensíveis.
64
do servidor são utilizados respectivamente Secure Socket Layer (SSL) e Transport
Layer Security (TLS). Abordagens novas que incluem a utilização de Public-key
infrastructure (PKI) e certificados SSL e X.509 25 podem ser utilizados para
autenticação e autorização em serviços de Cloud Computing, se implementados
adequadamente. (HOEFER; KARAGIANNIS, 2010).
Chaves ou processos baseados em PKI normalmente são utilizados para
permitir o acesso aos recursos e, da mesma forma, impedir acessos não autorizados.
A criptografia é um recurso utilizado na transmissão e armazenamento de
informações a fim de garantir a confidencialidade. Desta forma, armazenar dados
não criptografados no ambiente tradicional é muito menos seguro que armazenar
dados criptografados em Cloud Computing. Além disso, a maior parte dos
fornecedores de serviços de Cloud Computing utiliza processos de auditoria para
registrar as atividades relacionadas à utilização de seus recursos, permitindo aos
fornecedores cumprir as mais rigorosas normas legais. (BAUN et al., 2011).
Certificações segundo normas como a ISO/IEC 27001 (ou SAS 70 no EUA) são
de grande importância para garantir a segurança da informação. Prestadores de
serviços de Cloud Computing, como a Amazon ou Microsoft, passaram por essa
certificação e desta forma oferecem um padrão de segurança maior que o de
pequenos centros de dados de certas empresas.
A terceirização de determinadas tarefas em Cloud Computing pode ser
realmente vantajosa no que diz respeito às questões de segurança. Como exemplo,
uma empresa que pretende colaborar com parceiros externos em projetos comuns
pode ter os firewalls das empresas parceiras como obstáculo quase intransponível
no estabelecimento de processos comuns. Neste cenário, uso de serviços de Cloud
Computing, pode ser interessante transferirmos para eles os processos comuns das
empresas parceiras, sendo possível o serviço ajustar automaticamente as regras de
acesso do firewall de forma que as empresas parceiras possam colaborar sem
atrapalhar as diretrizes de segurança de uma das empresas. (BAUN et al., 2011).
25
X.509 especifica formatos padrão para certificados de chave pública (PKI).
65
Segurança é um ponto que deve receber uma atenção especial quando se trata
de escolher um fornecedor de serviços de Cloud Computing. Tais fornecedores
costumam oferecer centros de segurança, como Centro de Segurança da AWS, no
qual o usuário pode obter mais informações sobre as estratégias de segurança AWS
para proteger os usuários de seu serviço, conforme pode ser mostrado na Figura 3.3.
Figura 3.3 - Centro de Segurança da AWS (AMAZON, 2012)
Na escolha do serviço de Cloud Computing deve-se atentar a questões
relacionadas à segurança como, por exemplo, se eles oferecem ferramentas de
defesa de ataques do tipo Denial of Service (DoS), packet sniffing (por outros
inquilinos), Man in the Middle ou IP Spoofing.
A criptografia é uma forte aliada na proteção dos dados durante o trânsito e
armazenamento em ambientes de Cloud Computing, garantindo a confidencialidade
e integridade dos dados. A utilização de criptografia protege os dados, mas é algo
que deve ser tratado com bastante cautela, pois é o gerenciamento das chaves que
dão acesso a eles, porém, a perda de chaves significa a perda de seus dados. Dois
padrões emergem na gerência de chaves em ambientes de Cloud Computing como
o OASIS Key Management Interoperability Protocol e IEEE 1619.3, que abrangem
66
tanto criptografia para o armazenamento como o gerenciamento de chaves para
armazenamento compartilhado. (SOSINSKY, 2011).
A gerência de chaves varia de fornecedor para fornecedor, os usuários do
Windows Azure da Microsoft, por exemplo, podem criar até cinco contas de
segurança com chaves diferentes para utilizar diferentes zonas, já na AWS o usuário
pode criar várias chaves e utilizá-las durante sessões diferentes.
Quando o usuário realiza o agrupamento dos dados para realização do backup,
esses devem ser criptografados e em seguida armazenados com segurança, uma
boa opção de armazenamento são os serviços de Cloud Computing como o Amazon
S3, que pode ser classificado como moderadamente seguro.
Criptografar as informações é uma função que consome muito recurso da
Central Processing Unit (CPU), sendo recomendável a utilização de servidor de
backups para criptografar e armazenar em Cloud Computing. (REESE, 2009).
3.1.2.2 Confiabilidade e segurança no processamento de informações
A grande questão dentro da segurança é a confiança que o consumidor deve
ter no prestador de serviço de Cloud Computing, porque, para realizar e processar
os dados, ele tem que, necessariamente, descriptografá-los, expondo-os ao
prestador de serviços. (REESE, 2009).
Uma ideia que os usuários corporativos de Cloud Computing devem ter em
mente é que o fornecedor deve possuir rígidos protocolos de acesso físico, política
de segurança, softwares básicos e pessoal especializado e dedicado para evitar
ataques, enfim, conhecimento e capacidade para lidar com as questões de
segurança de maneira muito melhor do que uma empresa iniciante.
Quando se pretende utilizar este tipo de serviço deve-se verificar quais as
políticas de segurança do fornecedor de serviços de Cloud Computing. Isto é, deve-
se verificar quem conseguirá visualizar tais dados e se os dados forem expostos ao
concorrente, por exemplo, quais são as políticas de segurança do fornecedor. (IBM,
2013; LOPES, 2011).
67
Pesquisadores têm se empenhado em encontrar soluções definitivas de
segurança para a realização de processamento em ambientes não confiáveis, a
ideia é a construção de programas que operem com dados criptografados e gerem
saídas corretas e também criptografadas, podendo os prestadores de serviços de
Cloud Computing realizar o processamento sem a necessidade de decifrá-los e
expor os dados.
A ideia da criptografia homomórfica foi proposta em 1978 como um mecanismo
de segurança para processamento de dados sigilosos. Antes de 2009, sistemas
capazes de realizar operações de adição e multiplicação com números
criptografados e produzir resultados sem a necessidade descriptografar foram
postos em prática, no entanto, não se conseguiu realizar as duas operações no
mesmo sistema possibilitando um sistema totalmente homomórfico. Em 2009 tal
sistema foi proposto por Craig Gentry, da IBM, mas, infelizmente, a eficiência
alcançada foi tão baixa que o mesmo não pode ser utilizado para qualquer fim.
(PIETERS, 2011).
Recentemente, pesquisadores da MIT em conjunto com a Universidade de
Toronto e a Microsoft Research apresentaram um novo esquema que permite que
servidores em Cloud Computing executem um cálculo e tenham o resultado
criptografado. Chamado de esquema funcional de criptografia, ele representa um
importante avanço na criptografia homomórfica e realiza tal tarefa sem poder extrair
qualquer outra informação sobre o assunto além de perguntas simples como, por
exemplo, se os dados são de um registro de jogo ou de um e-mail spam.
(HARDESTY, 2013).
Outra importante descoberta foi realizada na Universidade de Viena, chamada
computação quântica cega, com a qual pesquisadores conseguiram organizar os
dados e programas de forma codificada em feixes de dados superpostos de modo
que o processamento pode ser realizado em um computador quântico remoto
responsável por realizar os cálculos sem descriptografá-los e os envia de volta para
o usuário, que é o único com possibilidade de ver os resultados.
68
Um sistema de Cloud Computing baseado nesse princípio seria totalmente
confiável, um mesmo fornecedor de serviço e nenhum suposto espião no meio do
caminho seriam capazes de entender os qubits26 sem o conhecimento do estado
inicial dos mesmos. (INOVAÇÃO TECNOLÓGICA, 2012).
As duas iniciativas de processamento de dados em ambientes não confiáveis
representam um marco na ciência, no entanto a criptografia homomórfica não teve
resultados suficientemente satisfatórios e a computação quântica cega só pode ser
colocada em prática em laboratórios altamente controlados, estando as duas a anos
de serem levadas para o mercado.
3.1.2.3 Privacidade em serviços de Cloud Computing
Redes sociais têm sido oferecidas na forma de SaaS de forma gratuita para os
usuários, sendo sua monetização feita através de propaganda e venda de
informações ou demografia do usuário. Quando o usuário se inscreve nesses
serviços ele tem muitas opções, sendo que as novas contas recebem atribuições
relacionadas à configuração de privacidade do próprio serviço e caso o usuário
deseje ele deve alterar posteriormente tais configurações.
Existem duas importantes questões relacionadas à segurança em redes
sociais, que são a privacidade e o ciclo de vida de uma informação dentro desses
serviços. Quando o usuário posta uma imagem ou uma história em uma rede social,
esta pode influenciar no insucesso de uma candidatura a uma vaga de emprego
anos mais tarde. A grande questão é de quem é a propriedade dos dados colocados
nesses serviços, sendo esse um importante aspecto de evolução das leis.
(SOSINSKY, 2011).
As configurações de privacidade do Facebook, por exemplo, estão lá
disponíveis para todos os usuários, no entanto são tantas as opções que é fácil se
esquecer de deixar o serviço privado alguns conteúdos, expondo-o as pessoas para
qualquer um, na internet. O SafeProfile da F-Secure é uma aplicação criada
pensando em auxiliar os usuários na difícil tarefa da manutenção de sua privacidade
26
Qubit, qbit ou ainda bit quântico trata-se da unidade de informação na computação quântica de forma análoga ao clássico bit da computação convencional.
69
no Facebook, selecionando conteúdo potencialmente visível para estranhos e
sugerindo configurações para manter as informações do perfil protegidas.
O aplicativo SafeProfile avalia todas as configurações de privacidade de um
perfil no Facebook, listando em sete categorias (são elas relacionamentos,
publicações, informações pessoais, informações de contato, local e navegação
segura) reunindo em um único local configurações que na rede social ficam
espalhadas, dificultando a configuração. (INFO, 2013a).
3.1.3 Service Level Agreement
Os usuários sempre querem serviços confiáveis e estáveis, no caso de Cloud
Computing considerado um modelo de alta disponibilidade, funcionando vinte quatro
horas por dia e sete dias por semana. Infelizmente, apesar dos altos investimentos
realizados por muitos fornecedores para tornar seus serviços mais confiáveis, a
maioria dos fornecedores não oferece grandes garantias, o que representa um
problema para empresas com mashups utilizando um conjunto de serviços em Cloud
Computing. No caso de falhas os fornecedores se oferecem a pagar multas ao
consumidor como compensação a elas. (GOELEVEN et al., 2011).
A SLA é o contrato mútuo entre fornecedores e usuários de serviços de Cloud
Computing, que define Quality of Service (QoS). Este contrato pode ser formal
(juridicamente vinculativo), ou informal, estabelecido ao logo das linhas como acordo
de nível operacional e podendo não possuir nenhuma validade judicial.
O QoS oferece garantias sobre alguns aspectos relacionado à qualidade do
serviço tais como garantias de desempenho e disponibilidade. No que diz respeito à
Cloud Computing, QoS tem uma ênfase sobre ferramentas de monitoramento e no
desempenho de virtualização. As expectativas quanto ao QoS sempre permanecerá
altas, pelo usuário, sendo importante definir um nível de tolerância dos processos do
usuário corporativo. (GOELEVEN et al., 2011).
Mesmo com a vasta exploração do potencial de serviços de Cloud Computing,
por parte dos usuários existe uma total ausência de métodos e fundamentos para
seleção de serviços resultando numa seleção baseada na reputação e suas
70
declarações de SLA. Sendo Cloud Computing percebido por muitos usuários como
uma caixa preta, que acabam tendo desta forma que concordar com os termos e
condições, já o usuário não pode negociar as SLAs com os prestadores de serviços
de Cloud Computing. (ZARDARI; BAHSO, 2011).
A compensação do fornecedor de serviços de Cloud Computing quando o
mesmo deixa de cumprir com sua SLA é normalmente feita na forma de créditos
financeiros aplicados como uma indenização na cobrança do serviço no ano
seguinte ou no caso de fim de fornecimento de um determinado serviço, na forma de
um desconto no fim do serviço. A cobrança da compensação deve partir do usuário,
tendo por função notificar o fornecedor do não cumprimento para que desta forma as
correções sejam feitas para que o mesmo não apresente o mesmo problema no
futuro cumprimento funcionando como uma punição e notificação.
As Cloud Computing SLAs são interessantes no uso de recursos dinâmicos e
controle de recursos, sendo duas fases essenciais no gerenciamento de nível de
serviços: acordo sobre a qualidade do serviço e serviço de monitoramento em tempo
de execução. (BAUN et al., 2011).
Para auxiliar o usuário na construção de uma Cloud Computing SLA que
atenda os seus requisitos de negócios, o Cloud Standards Customer Council
desenvolveu e publicou um documento denominado Guia Prático dos Acordos de
Nível de Serviço. (CSCC, 2013).
Na contratação de serviços de Cloud Computing, o usuário deve dar uma
atenção especial para questões, quanto a SLA do fornecedor são elas (TRAPPLER,
2012):
Para cada elemento do serviço, especificar os parâmetros e níveis
mínimos exigidos, bem como a compensação pelo não atendimento de
cada um desses requisitos.
Clareza no direito de interromper e continuar o uso do serviço por parte do
usuário.
71
Afirmar a propriedade dos dados do usuário de serviços e o direito do
mesmo de obtê-los de volta. Como os dados são processados dentro dos
data centers de um determinado fornecedor é necessário afirmar a
propriedade dos dados do usuário consumidor de serviços.
Direito do usuário de auditar o cumprimento das normas de segurança e
infraestrutura a serem mantidas pelo fornecedor de serviços.
A Cloud Security Alliance aconselha sempre que possível, que os usuários
devem obter a cláusula no contrato que dá direito a auditoria. Desta forma o
fornecedor de serviços de Cloud Computing fica obrigado a pelo menos uma vez ao
ano contratar uma empresa reconhecida para realização de uma auditoria. Sendo
que todos os relatórios resultantes desta auditória como, exemplo avaliações de
vulnerabilidades, devem ser compartilhados com o usuário. (TRAPPLER, 2012).
3.1.3.1 Serviços de Monitoramento
As SLAs dos fornecedores não têm sido suficientes para garantir
disponibilidade e escalabilidade dos serviços, trazendo à tona a necessidade de
monitorar os serviços prestados. Ferramentas de monitoria são de fundamental
importância para os usuários que analisarem a qualidade dos serviços de Cloud
Computing oferecido pelo fornecedor. (CLOUDTWEAKS, 2012).
Com o objetivo de reunir dados sobre desempenho de diferentes fornecedores
de Cloud Computing e publicá-los em um local unificado e gratuitamente o
CloudClimate inclui métricas relacionadas ao desempenho da CPU, uso de memória
e acesso a disco. A Figura 3.4 mostra um gráfico com os resultados de
monitoramento dos serviços EC2 zona leste da Virginia da AWS.
72
Figura 3.4 - CloudClimate do Amazon EC2 USA East N. Virginia (BAUN et al., 2011)
Os dados são coletados a cada cinco minutos com uso do PRTG Network
Monitor, software de monitoramento de rede da Paessler AG, e exibidos em gráficos
permitindo ao usuário comparar diretamente o desempenho de fornecedores e
problemas de funcionamento. (BAUN et al., 2011; CLOUDCLIMATE, 2013).
O KOALA Cloud Manager é um aplicativo web construído para ajudar os
usuários a gerenciar e monitorar serviços de Cloud Computing pública e privada,
como AWS, Google Storage, Eucalyptus, Nimbus, OpenNebula. Essa aplicação
flexível e open source foi projetada para rodar sobre o serviço Google App Engine.
73
Figura 3.5 - Painel do KOALA cloud manager (BAUN et al., 2011)
O CloudWatch é ferramenta paga da AWS, que permite que usuários
visualizem informações sobre padrões de acesso, a utilização de recursos e
desempenho atuais. Para utilizar este serviço o usuário deve alocar este serviço a
uma determinada instância. Os dados coletados sobre o tráfego de rede, uso da
CPU e acesso a disco estão disponíveis, podem ser acessados pelo usuário usando
linha de comando ou uma API do serviço web. (BAUN et al., 2011).
Com o CloudWatch o usuário pode criar e editar alarmes para ser notificado de
problemas, procurar por suas métricas, obter visão geral de suas métricas ou
visualizar gráficos das métricas atuais ou antigas para descobrir tendências, por
exemplo. A Figura 3.6 mostra o painel de métricas do CloudWatch.
74
Figura 3.6 - Métricas do Amazon CloudWatch (Amazon, 2012)
O Rackspace Cloud Monitoring é um serviço pago, que substituiu o Cloudkick,
comprado pela Rackspace que no seu novo produto igualmente serviu como base
para construção do Cloud Monitoring, no qual o usuário pode monitorar seus
serviços de Cloud Computing da Rackspace como também serviços de outros
fornecedores. Ele possibilita a criação de alertas que podem ser enviados ao menor
sinal de problema bem como quando o serviço cair, podendo ser enviados
dispositivos, como laptops e smartphone, e utilizar os gráficos do serviço para
identificar tendências e padrões no consumo de serviços. (RACKSPACE, 2013).
No Windows Azure, serviço de Cloud Computing da Microsoft habilitado para
todas as contas nenhum custo adicional para esses recursos, onde usuário pode
monitorar a integridade e a disponibilidade, criar alertas para receber notificações
quando a disponibilidade do serviço for prejudicada e personalizar os gráficos de
métricas. (MICROSOFT, 2013).
O Cloud8 é um serviço pago que roda utilizando uma série de serviços e
componentes da AWS, sendo oferecido para o usuário como SaaS, onde ele tem
75
acesso há um painel com uma série de ferramentas para auxiliar o usuário no
gerenciamento e controle de serviços de Cloud Computing exclusivamente da AWS.
Criado utilizando o um framework Java, o Play!, ExtJS para interface do cliente
e o AWS Java Software Development Kit (JDK), as ferramentas do Cloud8
possibilitam a gerência de até múltiplos data centers em um único local de forma
simultânea, auditora através de registro em logs de mudanças ocorridas em um
serviço, criar alertas tanto relacionados a custos como a problemas no serviço e
controlar custos do serviços dia a dia, conforme mostrado na Figura 3.7. (IMASTERS,
2013).
Figura 3.7 - Painel do Cloud8 (IMASTERS, 2013)
Um serviço pago, similar ao Cloud8 para usuários do Windows Azure, é o
MetricsHub que da mesma forma monitora o serviço Cloud Computing prestado ao
usuário na forma SaaS. Além do monitoramento o serviço possui funcionalidade de:
dimensionamento de acordo com a demanda atual, detalhes dos serviços mostrando
exatamente quais partes estão custando mais, notificações sobre potenciais
problemas e coleta contínua de dados, formando um histórico e com base nele
realiza previsão de futuras cargas. (METRICSHUB, 2013).
76
4 ESTUDOS DE CASO DE CLOUD COMPUTING
Realizaremos neste capítulo um estudo sobre três casos que são encontrados
em literatura específica.
4.1 3M VISUAL ATTENTION SERVICE
Dona de marcas conhecidas como Scotch, Post-it, Thinsulate, Scotch-Brite e o
kit de primeiros socorros Nexcare, a 3M é uma empresa com operação em mais de
60 países e uma receita anual de 29,6 bilhões de dólares. Com 75 mil funcionários,
destes, mais de 7 mil dedicados unicamente a pesquisa dando suporte a mais de 40
plataformas de tecnologia diferentes da empresa. (MICROSOFT, 2012a).
Dentre os vários grupos de pesquisa da empresa, a 3M possui um grupo com
cientistas dedicados a estudar como o cérebro humano processa as informações
visuais, desenvolvendo algoritmos para identificar em uma cena visual o que uma
pessoa perceberá, sendo esta área de pesquisa muito utilizada nos muitos produtos
da empresa. (MICROSOFT, 2012a).
Os profissionais da área de design gastam muito do seu tempo trabalhando na
criação e aperfeiçoamento de materiais de marketing, no entanto, não sabem como
as pessoas estão vendo seu trabalho até que ele esteja concluído. (MICROSOFT,
2012a).
Com objetivo de fornecer medidas preditivas de como a criação dos designer
será percebida pelo público, antes que ela esteja concluída, a empresa desenvolveu
um protótipo de uma aplicação web chamada de Visual Attention Service (VAS),
mostrado na Figura 4.1.
77
Figura 4.1 - Tela inicial de autenticação do VAS (3M, 2013a)
Onde antes era necessário que o designer se envolvesse em longas sessões
de grupo, que somente ocorriam quando os materiais de marketing atingiam um
estágio próximo do final, com o VAS ele pode ter acesso a informações de como seu
trabalho está sendo percebido durante o processo de elaboração, possibilitando com
isso realizar alterações diretas na criação. (MICROSOFT, 2012a).
O VAS possibilitou aos designers testarem suas criações de forma eficiente
usado modelos de atenção visual baseados em algoritmos que permitem identificar
quais partes de seus materiais de marketing os usuários vão olhar, por quanto tempo,
em que ordem e quais possuem maior probabilidade de serem lembrados. Essas
informações auxiliam na redefinição de páginas web, cartazes, anúncios e outros
materiais de marketing para o maior impacto e retorno do investimento.
(MICROSOFT, 2013).
Após registrar-se no aplicativo VAS, é permitido o processamento de 10
imagens de forma gratuita, após isso é necessário que o usuário adquira mais
créditos pagos, como exemplo 15 créditos a custo de 349,99 dólares.
Para iniciar o uso desta tecnologia, basta o usuário efetuar a carga de fotos de
ambientes físicos ou de um design gráfico para a aplicação, conforme a Figura 4.2,
78
que mostra uma imagem carregada na aplicação pronta para iniciar a realização da
análise.
Figura 4.2 - Tela principal do VAS (3M, 2013a)
O mecanismo de processamento da aplicação avalia a ênfase visual da
imagem e devolve como retorno um mapa indicativo, que se utiliza de marcas como
as vista em mapas de calor, de quais áreas provavelmente atrairiam mais a atenção
do usuário. (MICROSOFT, 2012a).
Com o resultado da análise científica comprovada, o VAS mostra três
resultados que merecem destaque, conforme pode ser visualizado na Figura 4.3,
onde (3M, 2012):
Heatmap mostra um mapa de calor da imagem que são mais susceptíveis
de receber atenção do espectador nos primeiros 3 a 5 segundos. As áreas
marcadas em vermelho e amarelo são mais propensas a receber atenção,
azul e verde são menos propensas a chamar a atenção imediata de forma
confiável.
79
Region Map fornece um resumo de alto nível da Heatmap com um mapa
das áreas que possuem probabilidade de chamar a atenção nos primeiros
3 a 5 segundos.
Visual Sequence mostra a direção mais provável em que o olho vai seguir
para ver a imagem.
Figura 4.3 - Resultados da Análise do 3M VAS (3M, 2012)
Sendo inicialmente hospedado em ambiente on-premises, a 3M desejava que o
aplicativo VAS funcionasse com eficiência e como parte dos processos de design
existentes de seus clientes, sendo necessário (MICROSOFT, 2012a):
estar disponível para os clientes em tempo real;
ser capaz de processar imagens e retornar resultados quase imediatos;
80
ser escalável rapidamente para atender rapidamente picos de design,
como, por exemplo, antes dos prazos publicitários de feriados;
acarretar baixo risco inicial em investimentos para a 3M;
E não ter a necessidade de implantar data centers em todo o mundo.
4.1.1 Solução
Para atender as necessidades do aplicativo, a 3M acreditou no modelo de
Cloud Computing de abordagem mais eficiente, sendo o Windows Azure o escolhido
por conta das semelhanças entre o serviço e o ambiente de desenvolvimento atual
da empresa, o que proporcionou uma enorme vantagem, tornando a decisão de
migração fácil. (MICROSOFT, 2012a).
A equipe de desenvolvimento da 3M, acostumada com o sistema de
desenvolvimento Microsoft Visual Studio, que pode ser utilizado com o Windows
Azure e com a experiência com o software de banco de dados Microsoft SQL Server,
foi transferido diretamente para o SQL Database.
Os custos de assinatura do Windows Azure foram considerados pela 3M
insignificantes para a empresa e sua utilização elimina os aborrecimentos
associados com a aquisição e gestão de infraestrutura, liberando a equipe para se
concentrar no crescimento do negócio. (MICROSOFT, 2013).
O uso do modelo de Cloud Computing possibilitou que a empresa realizasse a
implantação em diferentes países, sem nenhum investimento inicial de capital e com
recursos de colaboração rapidamente escaláveis. O VAS fez uso do serviço Active
Directory (controle de acesso do Windows Azure) para realizar autenticação de
usuários e possibilitar o acesso a vários componentes do serviço baseado nas
credenciais do usuário, eliminando a necessidade de desenvolvimento desse
componente da aplicação pela 3M.
Como plataforma de banco de dados relacional a 3M utilizou o serviço SQL
Database para realizar o gerenciamento das imagens que os usuários carregam na
81
aplicação e entregar os dados analíticos resultantes do mecanismo de
processamento de imagem do VAS.
Para armazenar arquivos de imagens e análises geradas pelo mecanismo, a
3M utiliza o Storage e o Queue (serviço de fila do Windows Azure) para proporcionar
alto desempenho. Mesmo quando o aplicativo está com altos índices de utilização,
em horário de pico, o tempo de resposta é próximo de zero. (MICROSOFT, 2012a).
A utilização dos serviços do Windows Azure possibilitou a 3M desenvolver um
serviço web altamente inovador que tem o poder de alterar drasticamente o
processo de design de imagens em ambientes fortemente dependentes da forma
com a qual o sistema visual humano responde. Esse serviço web é altamente
escalável, tornando possível aos clientes da 3M aproveitar ao máximo os
investimentos em marketing através da otimização dos processos de design em
resposta ao feedback científico sobre como os telespectadores vão responder ao
seu trabalho. (MICROSOFT, 2012a).
4.1.2 Benefícios
A implantação do serviço foi fácil e eficiente, menos de oito semanas foi o
tempo necessário para reunir a tecnologia básica em torno do Windows Azure. Outro
ponto forte na utilização do modelo foi o fato das ferramentas e tecnologias que já
estavam sendo utilizadas no projeto, como por exemplo, a autenticação de
formulários, foram totalmente suportadas pela plataforma. (MICROSOFT, 2012a).
Com a utilização dos serviços do Windows Azure, a 3M minimizou o tempo e
custo de lançamento de VAS, além de obter maior facilidade e agilidade no
lançamento de atualizações e aprimoramentos do produto por conta da facilidade de
implantação proporcionada pelos Cloud Services. (MICROSOFT, 2013; WINDOWS
AZURE, 2013).
A escalabilidade proporcionada pelo uso dos Cloud Services levou à queda do
tempo de upload de uma imagem de 15 a 20 segundos para 2 a 3 segundos e
possibilitou atender um pico do sistema. Com a utilização da plataforma, a 3M
conseguiu liberar a equipe de TI das responsabilidades de aquisição e
82
gerenciamento de uma infraestrutura de suporte a sistemas dinâmicos.
(MICROSOFT, 2012a).
Mantendo o aplicativo VAS em seus data centers, a 3M teria que aumentar a
equipe de suporte. O SQL Database possibilitou que a empresa realizasse a
implantação internacionalmente, sem que fosse necessário migrar dados de clientes
entre regiões, ter que replicar bancos dados e todo o gerenciamento dos bancos de
dados, que tornaria necessário envolver a equipe de gerenciamento de banco de
dados. (MICROSOFT, 2012a).
A 3M estima que a utilização dos serviços do Windows Azure tenha
impulsionando as receitas a um crescimento de 50% com a economia de tempo e
custos no gerenciamento, o que libera a equipe para se concentrar no crescimento
do negócio. (MICROSOFT, 2013).
Com uso dos serviços do Windows Azure como plataforma de entrega de uma
nova tecnologia, a 3M acredita que pode alterar o processo de elaboração de design,
especialmente em áreas em que depende, para seu sucesso, de como os cenários
são vistos. O VAS tem se mostrado capaz de reduzir, significativamente, o tempo e o
custo de interações de design ao mesmo tempo em que melhora o impacto dos
designs em geral, fornecendo dados necessários para otimizar praticamente
qualquer design visual como, por exemplo, embalagens, anúncios impressos,
sinalização, espaço de varejo, banners e muito mais. (3M, 2013b; MICROSOFT,
2012a).
A empresa planeja fornecer aos seus clientes, em versões futuras da aplicação,
a capacidade de criar bancos de dados inteiros de imagens de teste, permitindo aos
usuários fazer experiências como, por exemplo, um conteúdo publicitário em várias
cenas de design ou uma variedade de conteúdo publicitário em uma cena especifica.
(MICROSOFT, 2012a).
O VAS marcou o início da utilização dos serviços de Cloud Computing da
Microsoft, mas ele não é o único, pois a 3M utiliza o Windows Azure em outros
serviços como, por exemplo, o de suporte ao serviço digital Post-It. (MICROSOFT,
2013).
83
4.2 KHAN ACADEMY
Com sede em Mountain View, na Califórnia, a Khan Academy é uma
organização sem fins lucrativos que disponibiliza gratuitamente uma vasta coleção
de vídeos on-line para o ensino de matemática e ciências com temas que vão desde
álgebra e trigonometria a biologia e economia. Atendendo atualmente milhões de
estudantes e educadores em todo o mundo, o sitema permite que eles assistam aos
vídeos e respondem a questões práticas.
A ideia da Khan Academy teve origem no ano de 2004, quando o primo Sal
Khan perguntou a Khan, remotamente, se ele poderia ser tutor de sua filha em
matemática. Mais parentes e amigos começaram a perguntar sobre o seu
acompanhamento e assistência, ele começou a filmar as lições curtas e publicá-las
no YouTube. (GOOGLE, 2013; KHAN ACADEMY, 2013).
Graças a sua capacidade de traduzir conceitos complexos em tutoriais fácies
de serem seguidos, os vídeos tornaram-se virais, ganhando a atenção da mídia e
líderes da indústria de tecnologia, incluindo Bill Gates (fundador da Microsoft) e John
Doerr (capitalista de risco do Vale do Silício). Eles começaram a prestar apoio à
missão evangelizadora em que Khan trabalhava. Foi nesse ponto que Khan deixou
seu emprego como analista de fundos para dedicar a sua atenção em tempo integral
para o potencial de crescimento do site.
Após realizar o cadastro, o usuário professor pode adicionar sua turma e dessa
forma, enquanto seus alunos exploram a ferramenta e realizam os exercícios de
acordo com as instruções, ele consegue acompanhar, em tempo real, o percentual
de acertos dos estudantes, o número de vezes que eles tentaram realizar um
exercício até conseguir chegar ao resultado correto e quantos vídeos eles assistiram
durante a aula e fora dela. A Figura 4.4, mostra a interface inicial do usuário onde o
mesmo pode acompanhar os progressos de seus alunos.
84
Figura 4.4 - Interface inicial Khan Academy (KHAN ACADEMY, 2013)
Existe uma plataforma de exercícios onde cada aluno evolui de acordo com
seu nível de aprendizagem. Os professores e as escolas utilizam a plataforma aliada
ao currículo e ao planejamento da turma, em consonância com o projeto político
pedagógico da unidade escolar. A Figura 4.5 mostra a exibição de um vídeo na
plataforma.
85
Figura 4.5 - Khan Academy Vídeos (KHAN ACADEMY, 2013)
Com os recursos que essa plataforma oferece o professor, em conjunto com a
equipe pedagógica multidisciplinar da escola, pode focar nas dificuldades dos alunos
e prosseguir com o aprendizado customizado para determinados grupos, avançando
com o aprendizado e com os alunos que tiveram melhores desempenhos registrados
pelo sistema. Ele fornecerá aos profissionais dados que serão úteis para o
planejamento de atividades futuras potencializando o ensino e focando,
especificamente, para determinados grupos de alunos. Desta forma, os professores
podem sistematizar a maneira de aplicar o conteúdo e evitar frustrações dos alunos.
“A informática quando adotada nas escolas deve se integrar ao ambiente e a realidade dos alunos, não só como ferramenta, mas como recurso interdisciplinar, constituindo-se também em alguma coisa a mais que o professor possa contar para bem realizar seu trabalho, desenvolvendo com os alunos atividades, projetos e questionamentos”. (VEIGA, 2012).
Khan manteve um website para a sua biblioteca de vídeo em crescimento por
vários anos, mas sua plataforma começou a apresentar limitações à medida que o
tráfego aumentava. Para poder crescer era importante eliminar a preocupação com
coisas como problemas de implantação e executar o seu próprio servidor, para
poder trabalhar no que era importante, como fazer mais vídeos para a sua biblioteca,
86
e concentrar esforços na construção de recursos para melhorar a experiência do
usuário. (GOOGLE, 2013).
4.2.1 Solução e benefícios
Para resolver esta questão, Khan escolheu o Google App Engine, serviço de
Cloud Computing no modelo de entrega PaaS, como sua hospedagem e plataforma
de desenvolvimento de aplicações. Esse serviço fornece uma plataforma para o
desenvolvimento, suporte e entrega de aplicações e serviços disponíveis através da
internet e hospedados nos data centers do Google. (GOOGLE, 2013; KHAN
ACADEMY, 2013).
Informações sobre o tempo de resposta estão disponíveis no dashboard do
Google App Engine, que permite monitorar o desempenho do site, bem como,
trabalhar para mantê-lo baixo.
A Khan Academy recebe mais de 3,8 milhões de visitas por mês, durante o ano
letivo dos EUA, o que demandaria pessoal dedicado, em um ambiente on-premises.
Utilizando o serviço de Cloud Computing eliminou-se a necessidade de um pessoal
dedicado à administração de sistemas, sendo que a equipe de desenvolvimento da
Khan Academy gasta seu tempo trabalhando na aplicação, cuidando da melhoria da
experiência do usuário e da variedade de conteúdo, o que faz dela uma grande
potência. (GOOGLE, 2013).
Outra vantagem do serviço Google App Engine está na sua facilidade de
implantação de aplicação, uma vez que a Khan Academy chega a realizar 10
implantações ao dia.
Muito do que a Khan Academy é hoje vem dos dados coletados por um sistema
em segundo plano sobre a forma com que o aluno escolhe aprender. Esses dados
são analisados e sobre eles a equipe realiza alterações na aplicação para poder
ensiná-los cada vez melhor.
87
Por meio dos perfis construídos através do Google App Engine é possível
traçar perfis para os alunos para descobrir onde eles apresentaram mais dificuldades
e descobrir qual vídeo é mais eficaz.
A coleta de dados sobre o comportamento de seus alunos é algo fundamental
para que a equipe de desenvolvimento da Khan Academy realize ajustes no site
para ensiná-los cada vez melhor. A funcionalidade permite aos estudantes traçar seu
progresso por meio de perfis construídos através do Google App Engine, para que
seja possível descobrir quais os vídeos mais eficazes ou onde os alunos apresentam
mais dificuldades. (GOOGLE, 2013).
4.3 SAGE BIONETWORKS
Nas últimas duas décadas, a comunidade de pesquisa médica tem assistido a
um enorme aumento na capacidade de gerar dados genéticos e biomoleculares de
pacientes para investigação de uma grande variedade de doenças. Como resultado
houve uma crescente quantidade de recursos destinados para pesquisa tanto na
indústria como na comunidade acadêmica. (SAGE BIONETWORKS, 2013).
Em contrapartida, o desenvolvimento de técnicas analíticas para interpretar
significativamente estes novos tipos de dados é imaturo, sendo necessário o seu
desenvolvimento e aperfeiçoamento, a fim de avançar de forma a melhorar
significativamente a prevenção e tratamento de doenças humanas comuns.
(AMAZON, 2013b).
Dificuldades como o acesso aos dados, métodos de análise, avaliação,
reutilização de dados, ou ainda modelos de doenças em vários laboratórios de forma
aberta têm representado grandes obstáculos para interpretação de maneira eficaz
dos dados genômicos. Outra dificuldade é o fato de que a maior parte dos dados
necessários para realização de uma pesquisa está distribuída entre vários
repositórios públicos e privados, onde a cada grupo de pesquisa protege os seus
próprios dados, ferramentas e resultados. Neste cenário atual de pesquisas ocorre
uma enorme duplicação de esforços e consequentemente perda de oportunidades
de pesquisa. (AMAZON, 2013b; SAGE BIONETWORKS, 2013).
88
A Sage Bionetworks é uma organização sem fins lucrativos de pesquisa
biomédica fortemente envolvida com colaboradores acadêmicos, industriais,
governamentais e filantrópicos no desenvolvimento de um modelo de pesquisa
distribuída. Esse modelo pretende revolucionar a forma com que os seus usuários
(pesquisadores) trabalham e traz uma mudança de paradigma de pesquisa, fundado
na ampla colaboração. Essa mudança no ambiente de pesquisa aberta visa
beneficiar futuros pacientes acelerando o desenvolvimento de tratamentos de
doenças para a sociedade como um todo, reduzindo o custo dos cuidados com
saúde e de investigação biológica. (SAGE BIONETWORKS, 2013).
O Synapse é um ambiente on-line construído pela Sage Bionetworks, com
objetivo de conduzir uma transição cultural na maneira com que pesquisadores
trabalham com colaboração entre pesquisadores. Esse ambiente fornece aos
pesquisadores uma plataforma para análises colaborativas, de maneira similar a que
o GitHub e Source Forge fornecem, com ferramentas e código compartilhado para
engenheiros de software, onde são abrigados conjuntos de dados de Gene
Expression Omnibus (GEO), The Cancer Genome Atlas (TCGA), ArrayExpress e
outros bancos de dados públicos e oferece integração entre ferramentas de análise
e ambiente de programação, além de facilitar a colaboração entre grupos de
pesquisa. (AMAZON, 2013b; SAGE BIONETWORKS, 2013).
Atualmente o Synapse está sendo utilizado como recurso oficial para a
realização de análise de dados de TCGA do grupo de pesquisa TCGA Pan Cancer e
irá fornecer os conjuntos de dados de controle de versão.
O Synapse tem como finalidade ajudar seus usuários em uma série de
problemas (SAGE BIONET WORKS, 2013):
solucionando dificuldades de acesso a recursos gerados por outros
pesquisadores mesmo dentro de uma mesma organização, fornecendo um
registro central para dados científicos no qual pesquisadores podem
encontrar e utilizar dados relevantes;
facilitando a compreensão os workflows de análise tornando a
possibilidade de reprodução dos mesmos.
89
realizando análise de dados com informações sobre genomas completos,
antes limitados somente a grupos de pesquisa que possuem acesso a alto
poder computacional para apoiar tais análises;
facilitando o rastreamento de trabalhos feitos em uma determinada área
para que os usuários possam elaborar seu trabalho utilizando-se de
trabalhos anteriormente realizados ao invés de começar do zero,
estabelecendo e mantendo coloração ativa com resultados publicados on-
line.
A Figura 4.6 mostra um esquema geral do das pretensões com Synapse.
Figura 4.6 - Esquema geral Synapse (AMAZON, 2013b)
4.3.1 Solução
A equipe de desenvolvimento da Sage Bionetworks faz uso de uma variedade
de produtos da AWS para lidar com a parte de infraestrutura básica, o que gera uma
redução de esforço com a gestão, liberando a equipe para concentrar-se nos
aspectos cientificamente relevantes e originais de sua aplicação. (AMAZON, 2013b).
Na construção de aplicativos de análise de dados sofisticados e linguagens
especializadas torna-se ainda mais complicada a realização de alterações
90
complexas, por conta da sua pequena flexibilidade. O SWF da AWS é um serviço de
Cloud Computing que possibilita a utilização de linguagens de programação comuns
e dá ao desenvolvedor a capacidade de controle de onde as tarefas serão realizadas.
(AMAZON, 2013c). Sendo este serviço chave para o desenvolvimento do Synapse,
ele realiza a tarefa de orquestração dos complexos e heterogêneos workflows
científicos. (AMAZON, 2013b).
A AWS tem se destacado como estudo de caso oficial no uso de tecnologia de
workflows para tornar mais flexível a utilização de recursos baseados em ambiente
on-premises e ou serviços Cloud Computing para o processamento de grandes
volumes de dados em tempo hábil e com uma boa relação entre custo benefício.
A utilização do SWF permite decompor a análise rapidamente de pipelines27 de
maneira ordenada, separando a lógica de transição de estados das atividades reais
em cada passo da pipeline. Isso permite que ao mesmo tempo em que todos os
engenheiros de software trabalharem na lógica de transição dos estados, os
usuários da empresa podem implementar as atividades. Além disso, o SWF
possibilita utilizar infraestrutura dos servidores em ambiente on-premises e serviços
do Cloud Computing publica o EC2 da AWS, proporcionando grande flexibilidade e
permitindo o Synapse alavancar a infraestrutura certa para cada projeto. (AMAZON,
2013b).
A utilização do SWF a Sage Bionetworks facilmente construiu uma pipeline
para análise automática de um conjunto de dados acessíveis a partir do National
Center for Biotechnology Information (NCBI) GEO. Esse repositório de dados inclui
cerca de 8 mil conjuntos de dados, sendo que o seu tamanho varia de 100MB e
100GB. (AMAZON, 2013b).
O portal web Synapse é um registro on-line de projetos de pesquisa ativos que
permite que pesquisadores encontrem e compartilhem dados, modelos e métodos
de análise. Esse espaço on-line de trabalho serve como cola para ajudar grupos de
27
Trata-se da capacidade que o processador tem de fazer o processamento através de fases, contendo a definição da cadeia dependente de atividades de processamento de dados pré-definidos ou personalizados, destinos e fontes de dados necessários para executar sua lógica comercial.
91
pesquisa distribuídos para colaborarem em análises científicas complexas. (SAGE
BIONETWORKS, 2013).
Entre os serviços disponibilizados pelo portal está o wiki-centric, que visa
facilitar a construção narrativa de uma explicação para o seu trabalho, a ser incluída
aos resultados em eventual publicação. Também é possível conectar os dados
resultantes de análises do Synapse com resultados intermediários e figuras, essas
relações podem ser visualizadas na web fornecendo documentação visual para os
workflows e ajudando na produtividade e reutilização. (SAGE BIONETWORKS,
2013).
De forma a fornecer integração com linguagens de programação como R,
Python, ou mesmo o Shell do Linux, o Synapse trabalha com uma variedade de
ferramentas diferentes, que permite que os pesquisadores interajam para realizar
sua análise. (SAGE BIONETWORKS, 2013).
O Synapse fornece uma hospedagem na web para fornecer registros de dados,
códigos e outros recursos de pesquisa, armazenados no Synapse diretamente ou
em uma variedade de servidores externos como, por exemplo, centros de em
universidades, serviços de Cloud Computing como da AWS ou repositórios de
códigos como GitHub. Independentemente de onde estejam os arquivos, eles
podem ser consultados, realizando-se anotações ou utilizando os registros do
Synapse para acompanhar e compartilhar workflows, conforme pode ser visto na
figura 4.7. (SAGE BIONETWORKS, 2013).
92
Figura 4.7 - Visualizando um passo na análise de pipeline (KELLEN, 2012)
O projeto Synapse web tem sentido em ser chamado assim quando
observamos a arquitetura do mesmo, que torna possível a diversos grupos de
pesquisa realizar a análise de dados sobre a infraestrutura de TI por ele oferecida.
Como resultado dessa arquitetura, os registros de vida do projeto ficam
centralizados e com disseminação de computação e armazenamento de dados
numa variedade de provedores diferentes de back-end 28. (SAGE BIONETWORKS,
2013).
28
Serve indiretamente de apoio aos serviços de front-end (camada que os usuários do aplicativo interagem diretamente), geralmente por estar mais perto do recurso necessário ou de ter a capacidade de se comunicar com o recurso necessário, por exemplo, armazenamento de dados e banco de dados.
93
Figura 4.8 - Tela do Synapse em profundidade (KELLEN, 2013)
Pensando em auxiliar os pesquisadores a entender o conjunto de dados
escolhido para processamento, as pipelines adicionam anotações significativas e em
seguida aplicam métodos numéricos para remover dados com erros. Essa atividade
de qualidade numérica é informalmente conhecida como QCing. (AMAZON, 2013b).
Tendo executado os passos anteriores, os cientistas podem extrair os dados
agregados em vários estudos buscando genes consistentemente associadas com
uma doença pesquisada. Antes de usar o serviço de SWF este tratamento de dados
levava um tempo muito grande para ser concluído, tornando-se necessário que o
pesquisador escrevesse scripts em Perl para implementar algoritmos para execução
de cálculos com os dados agregados.
94
Com uso dessa abordagem era possível a realização de análise, mas era um
processo manual, tedioso e era impossível o pesquisador alavancar qualquer tipo de
processamento paralelo. (AMAZON, 2013b).
Era necessário que o Synapse possuísse um mecanismo confiável para
coordenar a realização de vários trabalhos e acompanhá-los mesmo quando vários
deles ocorriam em paralelo ou com dependência entre eles. (AMAZON, 2013b).
Como parte de um programa beta, a equipe Sage Bionetworks foi apresentada
ao SWF da AWS, quando foi concluído que o Synapse possuía o cenário ideal para
rodar baseado no SWF. Para programar a ordem do workflow foi utilizado o AWS
Flow Framework, tendo uma etapa inicial seguida de duas outras definidas no
workflow. (AMAZON, 2013b).
Na etapa inicial, uma consulta ao site GEO é realizada buscando conjuntos de
dados interessantes para baixá-los em conjunto com seus metadados. Uma nova
instância de workflow é criada para cada conjunto de dados, por meio de
programação, para executar as etapas de processamento. Com o início da utilização
do SWF permitiu-se que os usuários executassem simultaneamente milhões de
workflows. Eles puderam ser executados em paralelo de forma a atender as
necessidades de vários usuários simultaneamente. (AMAZON, 2013b).
Uma nova instância do workflow é criada automaticamente, via programação,
para cada conjunto de dados para executar as etapas de processamento. O uso do
SWF permite que os clientes tenham milhões de execuções simultâneas de
workflows abertas, podendo este conjunto de dados ser processados em paralelo,
de forma a apoiar as necessidades computacionais de vários usuários
simultaneamente. Sendo que, para cada execução do workflow, é realizada a
indexação que carrega os metadados e os links apontando para GEO na Synapse, e
o QC, que processa os dados brutos e carrega os dados para o Synapse, conforme
mostrado na figura 4.9.
95
Figura 4.9 - Análise Pipelines escaláveis (AMAZON, 2013b)
A lógica de coordenação global é escrita em Java utilizando AWS Flow
Framework como se fosse uma única threaded 29 de programa em Java, para
decompor em tarefas distribuídas assíncronas funcionando de forma conjunta com o
serviço. A lógica do rastreador e QC foram escritos por usuários em R e Perl de
maneira independente para execução em recursos computacionais heterogêneos.
(AMAZON, 2013b).
O recurso de lista de tarefas do SWF tornou possível poder especificar o
requisito de memória para cada execução de acordo com o tamanho do conjunto de
dados a serem processados. A lógica do QC é executada somente após o SWF
encaminhar as tarefas aos servidores devidamente dimensionados. (AMAZON,
2013b).
29
Representa um fluxo de execução sequencial dentro um processo, de forma que ele possa ser executado de forma concorrente em diferentes processadores, caso existam.
96
Através do AWS Management Console, os engenheiros do Synapse podem
analisar resultados de execuções, já que a captura de sinais de execução do SWF
pode ser realizada mesmo que em execuções de natureza distribuída.
Graças ao uso de serviço SWF da AWS, o projeto Synapse agora é capaz de
executar algoritmos para análise de dados escritos nas mais diversas linguagens de
programação, em paralelo com um conjunto heterogêneo de servidores. (AMAZON,
2013b).
A estimativa da Sage Bionetworks é que, para criar um mínimo framework de
orquestração seria necessário 100 mil dólares de mão de obra de engenheiros de
software e mais os custos com o crescimento da necessidade de orquestração.
Com o SWF, a equipe da Sage Bionetworks foi liberada da tarefa de lidar com a
complexidade da orquestração em ambiente distribuído para concentrar-se na
verdadeira missão da empresa. Desta forma foi possível evoluir a plataforma
Synapse como uma plataforma para computação científica com forte interação social
entre seus usuários, com uso dos recursos do SWF e do AWS Flow Framework que
pouparam o tempo e esforços para construí-la. (AMAZON, 2013b).
Com as melhorias obtidas com o uso do SWF, pesquisadores podem usar a
plataforma de computação para processar bilhões de mediações biológicas que têm
potencial para desvendar os principais pontos de complexas doenças humanas
como o câncer, Alzheimer e diabetes. De forma rápida e eficiente o serviço
possibilitou usar os dados para o seu verdadeiro propósito de encontrar curas para
doenças humanas. (AMAZON, 2013b).
97
5 CONCLUSÕES
Neste trabalho buscamos identificar as oportunidades e os desafios
associados à utilização de serviços de Cloud Computing. Para os desafios
apresentados nossa intenção foi realizar análises e indicar o estado da arte sobre as
dificuldades que envolvem sua utilização, de forma a auxiliar os usuários e
potenciais usuários na adoção destes serviços computacionais.
Conforme foi visto no desenvolvimento desta pesquisa, apresentamos
evidências de sua consolidação e, assim, ao final deste trabalho podemos afirmar
que o modelo deixou de ser uma tendência e passou a ser uma realidade efetiva.
Porém, alguns anos ainda serão necessários para que os serviços de Cloud
Computing sejam considerados estáveis por completo. Fortes investimentos devem
acontecer para que a adoção destas tecnologias seja considerada totalmente viável.
A contratação de serviços de Cloud Computing, de acordo com as
necessidades dos usuários, possibilita o uso mais eficiente dos recursos
computacionais de uma empresa e elimina desperdícios e investimento em TI. Outro
aspecto que observamos durante o desenvolvimento do trabalho, foi que, o modelo
de Cloud Computing acelera inovações tecnológicas proporcionando aos usuários a
eliminação de despesas na compra de equipamentos, hardwares e softwares.
Podemos destacar também que: com sua escalabilidade, agilidade, baixo
custo, infraestrutura do tipo self-service, alta disponibilidade e foco nos negócios a
utilização deste modelo computacional vem aumentando com o passar dos anos.
Nos principais fornecedores deste tipo de serviço, como Google, Microsoft e Amazon,
observamos uma ampla gama de novas soluções que estão sendo criadas para
atender o mercado consumidor deste tipo de serviço.
Aqui apresentamos cinco dos principais serviços desta solução tecnológica,
são eles: Amazon Elastic Compute Cloud, Rackspace Cloud Servers, Windows
Azure Cloud Services, Google App Engine e Sales Cloud. Além disso, também
apresentamos uma breve descrição dos demais serviços oferecidos por estes
fornecedores.
98
Por outro lado, os serviços de Cloud Computing possuem obstáculos a serem
vencidos e, por está razão, buscamos identificar as soluções dos problemas que
estão sendo propostos para resolver estes desafios que estão ligados,
principalmente, à interoperabilidade, segurança e SLA:
a) Para a interoperabilidade identificamos a necessidade da criação de
padrões e protocolos. Consideramos, para isso, três abordagens de
solução do problema. São elas: a criação de Cloud Computing sobre
tecnologias Open Source, Open APIs e serviços de adaptação;
b) Para a segurança e confiabilidade, que a pesquisa indicou como o aspecto
que está sendo apontado como o maior ponto inibidor na adoção de Cloud
Computing, apresentamos soluções que podem vir a se tornar realidade
no processamento de informações em ambientes não confiáveis;
c) Para SLA, podemos enfatizar a necessidade de monitoramento dos
serviços que devem ajudar a diminuir os riscos nos contratos com os
provedores de serviços de Cloud Computing. Desta forma, apresentamos
a situação que se encontram as ferramentas de monitoramento, servindo
para auxiliar as empresas na adoção deste estilo de computação.
Potenciais soluções têm sido propostas para todos os desafios e obstáculos e
assim, podemos indicar que a transposição de tais barreiras será impulsionada pelos
investimentos dos fornecedores de serviços de Cloud Computing, no aumento da
segurança, na facilitação da migração entre os fornecedores e entre ambiente on-
premises de Cloud Computing conseguindo assim, o aumento da confiança neste
serviço.
Para que fosse possível realizar uma análise do que vem acontecendo no uso
do modelo de Cloud Computing utilizamos a metodologia de estudos de caso que, a
nosso ver, indica melhor as formas de implementação deste modelo computacional.
Foram escolhidos três casos nos quais os fornecedores são empresas diferentes e
de forma resumida, apresentaremos os resultados obtidos sobre os casos, os tipos
de fornecedores, os tipos de serviços e os principais benefícios que podem ser
observados na Tabela 5.1.
99
Tabela 5.1 - Comparativo estudos de caso da utilização de Cloud Computing
Estudo de Caso
Fornecedor de Serviços
Serviço(s) Utilizado(s)
Principais Benefícios
3M Visual Attention Service
Microsoft Windows
Azure
Cloud Services;
SQL Database;
Active Directory;
Storage;
Queue.
Receita impulsionada em 50% com a economia de tempo e custos no gerenciamento;
Queda do tempo de upload de uma imagem de 15 a 20 segundos para 2 a 3 segundos;
Libera a equipe para se concentrar no crescimento do negócio;
Implantação em diferentes países, sem nenhum investimento inicial de capital;
Minimizou o tempo e custo de lançamento do projeto.
Khan Academy
Google App Engine.
Capacidade de suportar 3,8 milhões de visitas únicas por mês;
Elimina-se a necessidade de um pessoal dedicado à administração de sistemas;
Liberou a equipe para cuidar melhoria da experiência do usuário e da variedade de conteúdo;
Facilidade e agilidade na implantação de aplicação;
Escalabilidade para lidar facilmente com surtos na utilização.
Sage Bionetworks
Synapse
Amazon Web
Services
Simple Workflow;
Management Console;
Elastic Compute Cloud.
Processamento de grandes volumes de dados em tempo hábil e com uma boa relação entre custo benefício;
Liberada a equipe de lidar com a complexidade e do custo criar um framework de orquestração em ambiente distribuído;
Flexibilidade e proporcionando alavancar a infraestrutura certa para cada projeto;
Possibilidade captura de sinais de execução do SWF e reutilizar processamentos;
Separa a lógica de transição de estados das atividades reais em cada passo da pipeline.
Na Tabela 5.1 gostaríamos de destacar uma característica que foi encontrada
nos três estudos, ou seja, a liberação das equipes de tarefas. Este aspecto
estabeleceu os modos de gerenciamento da infraestrutura e criação de framework
de orquestração. E, de fato, é algo que os serviços de Cloud Computing podem
fazer para permitir que as empresas concentrem suas forças no desenvolvimento de
seus negócios específicos.
Através da exposição desses três estudos verificamos também importantes
aspectos para os usuários, onde foram realçadas razões pelas quais eles devem
100
caminhar para a adoção deste tipo de serviço. Acreditamos que com a escolha da
carga de trabalho correta, podemos obter interessantes benefícios, como ocorreu no
grupo de usuários analisados nos estudos onde as soluções apresentadas tiveram
elevados níveis de qualidade e de serviços prestados.
Porém, identificamos que a maior contribuição deste estudo é oferece uma
ampla visão sobre o uso dos serviços de Cloud Computing onde apresentamos
análises sobre os benefícios, desafios e obstáculos encontrados com a
implementação deste modelo computacional. Outra contribuição que nosso estudo
apresentou foi o estado da arte e os principais desafios e obstáculos que
encontramos ao adotar esta tecnologia que inibem os usuários e potencias usuários
a reconhecer e avaliar este serviço como algo que lhes trará vantagens reais quando
são adotados. Consideramos que ainda temos muito que aprimorar em nossos
estudos sobre Cloud Computing e suas interrelações com as outras áreas
computacionais e de negócios, sobretudo quando falamos sobre o modelo de
inovação que trouxe uma explosão de startups. Além disso, acreditamos que Cloud
Computing pode funcionar como um estimulador de criação de novas tecnologias.
Finalizando este estudo, identificamos potenciais caminhos de continuidade
desta pesquisa que são:
a) Demonstrar como as tecnologias emergentes, tais como big data,
mobilidade e mídias sociais, convergem no sentido do uso de serviços de
Cloud Computing e como eles servem de estímulo para o desenvolvimento
de tais tecnologias. A interdisciplinaridade passa a ser um item importante
para os profissionais nelas envolvidos;
b) No que diz respeito aos desafios e obstáculos encontrados, consideremos
que temos muito que aprimorar em nossos estudos, pois estes
representam pontos a serem considerados e que poderão influenciar no
ritmo de adoção destes serviços. Nossos estudos caminharão no sentido
de levantar ferramentas para monitorar serviços de Cloud Computing e
realizar comparativos entre as mesmas ampliando os desafios
relacionados à SLAs. Além disso, acreditamos ter ampliado o número de
desafios e obstáculos encontrados em segurança, interoperabilidade e
101
SLAs e, assim, poder melhorar ainda mais a contribuição para os usuários
e potencias usuários quando do uso dos serviços de Cloud Computing;
c) Quanto aos estudos de caso, acreditamos que a ampliação do número de
estudos, bem como um mapeamento dos fornecedores, serviços e
benefícios podem ajudar para os interessados em implementar esta forma
de prestação de serviço.
102
REFERÊNCIAS
3M. 3M Visual Attention Service. Disponível em: <https://vas.3m.com/>. Acesso em: 01 maio 2013a.
______________. 3M Visual Attention Service. Disponível em: <http://solutions.3m.com/3MContentRetrievalAPI/BlobServlet?lmd=1346210264000&locale=en_US&assetType=MMM_Image&assetId=1319233958166&blobAttribute=ImageFile>. Acesso em: 13 ago. 2012.
______________. 3M Visual Attention Service: Visual Attention Systems. Disponível em: <http://solutions.3m.com/wps/portal/3M/en_US/VAS-NA/VAS/>. Acesso em: 20 ago. 2013b.
AEOLUS. The Aeolus Project. Disponível em: <http://aeolusproject.org/>. Acesso
em: 15 abr. 2013.
AMAZON Web Services. About AWS. Disponível em:
<http://aws.amazon.com/what-is-aws/>. Acesso em: 14 ago. 2012.
______________. Amazon Elastic Compute Cloud: Amazon EC2. Disponível em:
<http://aws.amazon.com/ec2/>. Acesso em: 14 ago. 2011.
______________.Amazon WorkSpaces. Disponível em:
<http://aws.amazon.com/pt/workspaces/>. Acesso em: 12 nov. 2013a.
______________.AWS Case Study: Sage Bionetworks and Amazon SWF.
Disponível em: < http://aws.amazon.com/pt/swf/testimonials/swfsagebio/>. Acesso em: 14 maio 2013b.
______________.Products & Services. Disponível em: <http://aws.amazon.com/products/>. Acesso em: 05 set. 2013c.
APACHE Software Foundation. Deltacloud API. Disponível em: <http://deltacloud.apache.org/>. Acesso em: 17 maio 2012.
______________.Apache Libcloud Python library. Disponível em: <http://libcloud.apache.org/>. Acesso em: 10 mar. 2013a.
______________.JCloud Cloud interfaces, simplified. Disponível em: <http://jclouds.incubator.apache.org/>. Acesso em: 10 jul. 2013b.
ASSAD, Rodrigo Elia et al. Desafios em Cloud computing: Armazenamento, Banco de Dados e BIG Data. In: MACEDO, Alessandra Alaniz et al. Tópicos em Multimídia, Hipermídia e Web: Minicursos. São Paulo: Sociedade Brasileira de Computação, 2012. Cap. 3, p. 75-116.
103
BATISTA, Thais Vasconcelos et al. AltoStratus: Uma Rede de Colaboração com Foco nos Novos Desafios e Oportunidades de Pesquisa em Computação em Nuvem. In: XXV SIMPÓSIO BRASILEIRO DE ENGENHARIA DE SOFTWARE (SBES 2011), 2011, São Paulo. Anais... . Porto Alegre: Sociedade Brasileira de Computação (SBC), 2011. p. 136 - 141.
BAUN, Christian et al. Cloud Computing: Web-Based Dynamic IT Services. Berlin, Germany: Springer Publishing Company, 2011. 109 p
BELLO, Edgard. Computação em nuvem favorece planejamento de negócios sem estresse. Disponível em:
<http://imasters.com.br/tecnologia/seguranca/computacao-em-nuvem-favorece-planejamento-de-negocios-sem-estresse>. Acesso em: 31 ago. 2012.
BLAIR, Gordon et al. Perspectives on cloud computing: interviews with fiveleading scientists from the cloud community. Journal of Internet Services and Applications, Springer London, p. 3-9. 01 jul. 2011.
CAMBIUCCI, Waldemir. Uma introdução ao Software + Serviços, SaaS e SOA.
Disponível em: <http://msdn.microsoft.com/pt-br/library/dd875466.aspx>. Acesso em: 01 fev. 2009.
CLOUDCLIMATE. Cloud Hosting and Cloud Storage Performance Dashboard. Disponível em: <http://www.cloudclimate.com/>. Acesso em: 07 jul. 2013.
CLOUD-STANDARDS. Cloud Standards Wiki. Disponível em: < http://cloud-standards.org/wiki/>. Acesso em: 22 out. 2011.
CLOUDTWEAKS. Cloud Adoption Statistics. Disponível em: <http://www.cloudtweaks.com/2013/01/cloud-adoption-statistics/>. Acesso em: 18 jan. 2013.
CLOUDTWEAKS. Top Five Challenges Of Cloud Computing. Disponível em:
<http://www.cloudtweaks.com/2012/08/top-five-challenges-of-cloud-computing/>. Acesso em: 27 ago. 2012.
COMPUTERWORLD. Adoção de cloud em PMEs vai dobrar em 3 anos no País, prevê Microsoft. Disponível em:
<http://computerworld.uol.com.br/especiais/2012/07/27/adocao-de-cloud-em-pmes-vai-dobrar-em-3-anos-no-pais-preve-microsoft/>. Acesso em: 27 jul. 2012a.
______________. Por que eles apostaram na nuvem? Disponível em: <http://computerworld.uol.com.br/tecnologia/2012/04/10/por-que-eles-apostaram-na-nuvem/>. Acesso em: 11 abr. 2012b.
CSCC. Practical Guide to Cloud Service Level Agreements. Disponível em: <http://www.cloudstandardscustomercouncil.org/2012_Practical_Guide_to_Cloud_SLAs.pdf>. Acesso em: 11 jul. 2013.
104
DMTF. Cloud Management Initiative. Disponível em: <http://www.dmtf.org/standards/cloud/>. Acesso em: 22 abr. 2013.
ELSENPETER, Robert; VELTE, Anthony T.; VELTE, Toby J. Cloud Computing A Practical Approach. Fl, United States: Osborne-mcgraw-hil, 2010. 352 p.
FELICIANO, Guilherme et al. Gerência de Identidades Federadas em Nuvens: enfoque na utilização de soluções abertas. In: FALEIROS, Antonio Candido; RALHA, Célia Ghedini. Minicursos do XI Simpósio Brasileiro de Segurança da Informação e de Sistemas Computacionais (SBSeg 2011). Brasília, DF: Sociedade Brasileira de Computação, 2011. Cap. 5, p. 182-231.
FORBES. Cloud Interoperability and The Battle For The Open Cloud. Disponível em: <http://www.forbes.com/sites/reuvencohen/2013/04/26/cloud-interoperability-and-the-battle-for-the-open-cloud/>. Acesso em: 26 abr. 2013.
______________. Hype Cycle for Cloud Computing Shows Enterprises Finding Value in Big Data, Virtualization. Disponível em: <http://www.forbes.com/sites/louiscolumbus/2012/08/04/hype-cycle-for-cloud-computing-shows-enterprises-finding-value-in-big-data-virtualization/>. Acesso em: 05 ago. 2012.
GARTNER. Gartner Says Eight of Ten Dollars Enterprises Spend on IT is "Dead Money". Disponível em: <http://www.gartner.com/it/page.jsp?id=497088/>. Acesso em: 20 out. 2011.
______________. Gartner's 2013 Hype Cycle for Emerging Technologies Maps Out Evolving Relationship Between Humans and Machines. Disponível em: <http://www.gartner.com/newsroom/id/2575515>. Acesso em: 19 ago. 2013.
______________.Magic Quadrant for Cloud Infrastructure as a Service. Disponível em: <http://www.gartner.com/technology/reprints.do?id=1-1CTXCGI&ct=121114&st=sb>. Acesso em: 20 dez. 2012.
GOELEVEN, Yves et al. Architectural Requirements for Cloud Computing Systems: An Enterprise Cloud Approach. Journal of Grid Computing, Springer Netherlands, v. 9, n. 1, p.3 – 9, 01 mar. 2011.
GONÇALVES, Glauco Estácio et al. Resource Allocation in Clouds: Concepts, Tools and Research Challenges. In: XXIX SIMPÓSIO BRASILEIRO DE REDES DE COMPUTADORES E SISTEMAS DISTRIBUÍDOS (SBRC 2011), 2011, Gramado - RS. Anais... . Porto Alegre: Sociedade Brasileira de Computação (SBC), 2011. 197 -
240.
GOOGLE. Google Cloud Platform. Disponível em:
<http://cloud.google.com/index.html>. Acesso em: 15 set. 2013.
HARSH, Piyush et al. Using open standards for interoperability: Issues, solutions, and challenges facing cloud computing. In: 8th INTERNATIONAL CONFERENCE ON NETWORK AND SERVICE MANAGEMENT (CNSM 2012), 2012, Las Vegas, NV,
105
EUA. Proceedings… . Las Vegas, NV, EUA: IEEE Communications Society, 2012. p. 435 - 440.
HARDESTY, Larry. Securing the cloud. Disponível em: <http://web.mit.edu/newsoffice/2013/algorithm-solves-homomorphic-encryption-problem-0610.html?goback=%2Egde_61513_member_242548726>. Acesso em: 10 jun. 2013.
HOEFER, Christina N.; KARAGIANNIS, Georgios. Taxonomy of Cloud Computing Services. In: 4th IEEE WORKSHOP ON ENABLING THE FUTURE SERVICE-ORIENTED INTERNET (EFSOI'10), 2010, Miami, FL, EUA. Proceedings… . Miami,
FL, EUA: IEEE Communications Society, 2010. p. 1345 - 1350.
HORRIGAN, John B. Use of Cloud Computing Applications & Services. PEW Internet & American Life project. Disponível em: <http://www.pewinternet.org/~/media//Files/Reports/2008/PIP_Cloud.Memo.pdf.pdf>. Acesso em: 05 fev. 2012.
IBM. Cloud computing insights from 110 implementation projects: IBM Academy of Technology Survey. Disponível em: <http://www.ibm.com/ibm/files/W060139E49044O13/3CloudInsightsFrom110projectsIBM_977KB.pdf>. Acesso em: 24 out. 2011.
______________.Manifesto Arquitetural: Uma introdução às possibilidades (e
riscos) da computação em nuvem. Disponível em: <http://www.ibm.com/developerworks/br/ar-archman10/ >. Acesso em: 03 maio 2013.
IDC BRASIL. IDC prevê que o mercado brasileiro de Cloud Pública no Brasil crescerá quase 7 vezes até 2014. Disponível em:
<http://www.idcbrasil.com.br/news.asp?ctr=bra&id_release=1931>. Acesso em: 19 maio 2011.
IDC LA. 2nd IDC LA Cloud Solutions Roadshow 2012: Brasil. Disponível em: <http://www.idclatin.com/cloud12/>. Acesso em: 05 jan. 2012.
INTERNET WORLD STATS. Internet Users in the World by Geographic Regions. Disponível em: <http://www.internetworldstats.com/stats.htm>. Acesso em: 20 ago. 2013.
IMASTERS. Cloud8: A caixa de ferramentas da sua Cloud AWS. Disponível em:
<http://imasters.com.br/infra/cloud/estudo-de-caso-aws-cloud8-a-caixa-de-ferramentas-da-sua-cloud-aws/>. Acesso em: 20 jun. 2013.
INFO. USP adota sistema de computação em nuvem. Disponível em: <http://info.abril.com.br/noticias/ti/usp-adota-sistema-de-computacao-em-nuvem-15092012-1.shl>. Acesso em: 15 set. 2012.
______________.SafeProfile: Webware ajuda a configurar a privacidade no
Facebook. Disponível em: <http://info.abril.com.br/downloads/webware/safeprofile>. Acesso em: 15 jul. 2013a.
106
______________. Serviços de nuvem aceleram inovação. Disponível em:
<http://info.abril.com.br/noticias/it-solutions/2013/08/saiba-o-que-o-facebook-e-o-linkedin-tem-em-comum.shtml>. Acesso em: 18 ago. 2013b.
INFOQ. Novo IaaS do Google oferece Linux na nuvem. Disponível em: <http://www.infoq.com/br/news/2012/07/google-compute-engine>. Acesso em: 16 Jul. 2012.
INFRADAPT. Cloud Computing and Communication is Safer, More Cost-effective, and Incredibly Flexible. Disponível em: <http://www.infradapt.com/solutions/cloud-based-it-infrastructure-cloud-computing/>. Acesso em: 27 jun. 2013. INOVAÇÃO TECNOLÓGICA. Física quântica garante computação em nuvem totalmente segura. Disponível em:
<http://www.inovacaotecnologica.com.br/noticias/noticia.php?artigo=computacao-nuvem-quantica-totalmente-segura&id=010850120120>. Acesso em: 30 jan. 2012.
KELLEN, Mike. Synapse Introduction. Disponível em: <https://sagebionetworks.jira.com/wiki/pages/worddav/preview.action?fileName=Synapse+Intro+Oct+2012.pptx&pageId=3571721>. Acesso em: 10 out. 2013.
KELLEN, Michael. Synapse Vision Document. Disponível em: <https://sagebionetworks.jira.com/wiki/pages/worddav/preview.action?fileName=Synapse+Vision+Document.pdf&pageId=3571721>. Acesso em: 07 fev. 2012.
KHAN ACADEMY. Khan Academy. Disponível em: <http://www.khanacademy.org /about/>. Acesso em: 25 jun. 2013.
KNORR, Eric. 9 trends for 2014 and beyond. Disponível em: <http://www.infoworld.com/t/cloud-computing/9-trends-2014-and-beyond-230099>. Acesso em: 04 nov. 2013.
KUMAR, Bimal; CHENG, Jack; MCGIBBNEY, Lewis John. Cloud computing and its implications for construction TI. In: THE INTERNATIONAL CONFERENCE ON COMPUTING IN CIVIL AND BUILDING ENGINEERING (ICCCBE2010), 2010, Nottingham, UK. Proceedings… . Nottingham, UK: Nottingham University Press, 2010. p. 315 - 320.
LOPES, Sérgio. Aspectos arquiteturais na adoção de Cloud Computing. MundoJ, Curitiba - PR, v. 8, n. 47, p.20 - 23, maio 2011. Bimestral.
METRICSHUB. MetricsHub: Active Cloud Monitoring. Disponível em: <http://www.metricshub.com/>. Acesso em: 20 jun. 2013.
MICROSOFT. 3M lança serviço Visual Attention baseado na Web para aumentar o impacto do design. Disponível em: <http://www.microsoft.com/pt-pt/cloud/tools-
resources/casestudy.aspx?resourceId=3M_Launch>. Acesso em: 07 nov. 2012a.
107
______________. Infraestrutura de produtividade empresarial. Disponível em:
<http://www.microsoft.com/businessproductivity/pt/br/products/default.aspx>. Acesso em: 21 ago. 2012b.
______________.3M Informatics. Disponível em: <http://www.microsoft.com/casestudies/Windows-Azure/3M-Informatics/3M-Unit-Boosts-Revenue-by-50-Percent-with-Choice-of-Cloud-Service/710000002636>. Acesso em: 28 maio 2013.
NIMBUS. Nimbus is cloud computing for science. Disponível em: <http://www.nimbusproject.org/>. Acesso em: 21 abr. 2013.
NIST. The NIST Definition of Cloud Computing. Disponível em: <http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf>. Acesso em: 20 out. 2011. NUNES, Maíra Fernandes Martins. Novas tecnologias da comunicação e a função-autor na sociedade contemporânea. Rastros: Revista do Núcleo de Estudos de Comunicação, Joinville, v. VIII, n. 8, p.72 - 81, out. 2007.
OLHAR DIGITAL. Rock in Rio: A tecnologia empregada na venda de ingressos do
festival. Disponível em: <http://olhardigital.uol.com.br/produtos/central_de_videos/ja-comprou-o-ingresso-do-rock-in-rio-ta-facil>. Acesso em: 31 ago. 2012.
OPEN CLOUD MANIFESTO. Open Cloud Manifesto: Dedicated to the belief that the cloud should be open. Disponível em: <http://opencloudmanifesto.org/Open%20Cloud%20Manifesto.pdf>. Acesso em: 17 ago. 2011.
OPENNEBULA. OpenNebula: The Open Source Toolkit for Data Center Virtualization. Disponível em: <http://www.opennebula.org>. Acesso em: 21 out. 2012.
OPENSTACK. OpenStack: The Open Source Cloud Operating System. Disponível
em: <http://www.openstack.org/software/>. Acesso em: 21 abr. 2012.
O'REILLY. Cloud computing perspectives and questions. Disponível em: <http://commons.oreilly.com/wiki/index.php/Cloud_computing_perspectives_and_questions>. Acesso em: 25 nov. 2012.
ORLOFF, Jeff. Evite vulnerabilidades e ameaças na nuvem: O que sua organização precisa saber sobre segurança na nuvem. Disponível em: <http://www.ibm.com/developerworks/br/cloud/library/cl-cloudthreats/index.html>. Acesso em: 20 fev. 2012.
PAPO, José. Arquitetura de Nuvem: rompendo fronteiras. Disponível em: <http://imasters.com.br/design-ux/arquitetura-da-informacao/arquitetura-de-nuvem-rompendo-fronteiras/>. Acesso em: 14 ago. 2013.
108
PIETERS, Wolter. Security and privacy in the clouds: a bird's eye view. In:
Computers, Privacy and Data Protection: an Element of Choice. Springer Netherlands, 2011. Cap. 21, p. 445 - 457.
RACKSPACE. The Rackspace Cloud. Disponível em: <http://www.rackspacecloud.com/>. Acesso em: 14 ago. 2011.
______________. Rackspace Cloud Monitoring. Disponível em: <http://www.rackspace.com/cloud/monitoring/>. Acesso em: 30 jul. 2013.
RAMOS, José Yoshiriro Ajisaka. Introdução ao Cloud Computing. MundoJ, Curitiba - PR, v. 8, n. 47, p.06 - 11, maio 2011. Bimestral.
REESE, George. Cloud Application Architectures: Building Applications and Infrastructure in the Cloud. CA, United States/Sebastopol: O'Reilly Media, 2009. 208 p.
SAGE BIONETWORKS. Synapse in depth. Disponível em:
<http://sagebase.org/synapse/>. Acesso em: 03 ago. 2013.
SALES FORCE. Salesforce.com. Disponível em: <http://www.salesforce.com/>.
Acesso em: 21 out. 2011.
SAMPAIO, Americo Tadeu Falcone et al. Uni4Cloud: Uma Abordagem para
Implantação de Aplicações sobre Múltiplas Nuvens de Infraestrutura. In: VIII WORKSHOP EM CLOUDS, GRIDS E APLICAÇÕES (WCGA2010), 2010, Gramado - RS. Anais... . 2010: Sociedade Brasileira de Computação (SBC), 2010. p. 43 - 56.
SEMPOLINSKI, Peter; THAIN, Douglas. A Comparison and Critique of Eucalyptus, OpenNebula and Nimbus. In: 2nd IEEE INTERNATIONAL CONFERENCE ON CLOUD COMPUTING TECHNOLOGY AND SCIENCE (CLOUDCOM 2010), 2010, Indianapolis, IN, USA. Proceedings... Washington, DC, USA: IEEE Communications Society, 2010. p. 417 - 426.
SIMPLE CLOUD. Simple Cloud API. Disponível em: <http://www.simplecloud.org/>. Acesso em: 14 ago. 2011.
SNIA. CDMI: Cloud Data Management Interface. Recuperado em: 14/08/2010. Disponível em: <http://www.snia.org/cdmi>. Acesso em: 20 abr. 2013.
SOSINSKY, Barrie. Cloud Computing Bible. IN, United States/Indianapolis: Wiley Publishing, 2011. 532 p.
SOUSA, Flavio Rubens de Carvalho; MOREIRA, Leonardo O.; MACHADO, Javam de Castro. Computação em Nuvem: Conceitos, Tecnologias, Aplicações e Desafios.
In: PEDRO DE ALCANTARA SANTOS NETO. (ORG.). II Escola Regional de Computação Ceará, Maranhão e Piauí (ERCEMAPI). : 2009. Cap. 21, p. 150 - 175.
SRIRAM, Ilango; KHAJEH-HOSSEINI, Ali. Research Agenda in Cloud Technologies. In: 1st ACM SymposiumSYMPOSIUM ON CLOUD COMPUTING (SOCC 2010),
109
2010, Indianapolis, IN, EUA. Proceedings… . New York, NY, EUA: ACM Press,
2010.
TAURION, Cezar. Cloud Computing: Computação em nuvem transformando o mundo da tecnologia da informação. São Paulo: Brasport, 2009. 228 p.
______________.A adoção de cloud computing é apenas uma questão de velocidade e intensidade. Disponível em: <http://imasters.com.br/infra/cloud/a-adocao-de-cloud-computing-e-apenas-uma-questoa-de-velocidade-e-intensidade/>. Acesso em: 03 mar. 2013a.
______________.Cloud computing e a sua capacidade de mudar o cenário de TI.
Disponível em: <http://imasters.com.br/gerencia-de-ti/tendencias/cloud-computing-e-a-sua-capacidade-de-mudar-o-cenario-de-ti/>. Acesso em: 02 set. 2013b.
______________.Como o cloud computing vem transformando os mega datacenters. Disponível em: <http://imasters.com.br/infra/cloud/como-o-cloud-
computing-vem-transformando-os-mega-datacenters/>. Acesso em: 8 jul. 2013c.
______________.Cloud computing não é mais tendência, é realidade. Disponível
em: <http://imasters.com.br/infra/cloud/cloud-computing-nao-e-mais-tendencia-e-realidade/>. Acesso em: 20 ago. 2013d.
______________.Cloudnomics: The Power of Cloud Driving Business Model Innovation. Disponível em: <http://www.slideshare.net/soudW/cloud-computing-da-curiosidade-para-casos-reais-13520639>. Acesso em: 02 jul. 2012a.
______________.Cloud speed: cloud computing também deve ser ágil e rápida.
Disponível em: <http://imasters.com.br/infra/cloud/cloud-speed-cloud-computing-tambem-deve-ser-agil-e-rapida/>. Acesso em: 11 nov. 2013e.
______________.Nuvens públicas: selecionando o melhor provedor. Disponível em:
<http://imasters.com.br/artigo/24147/cloud/nuvens-publicas-selecionando-o-melhor-provedor>. Acesso em: 25 abr. 2012b.
TRAPPLER, Thomas. If It's in the Cloud, Get It on Paper: Cloud Computing Contract Issues.Disponível em: < http://www.educause.edu/ero/article/if-its-cloud-get-it-paper-cloud-computing-contract-issues/>. Acesso em: 26 jun. 2012.
VAQUERO, Luis M. et al. A break in the clouds: towards a cloud definition. ACM Sigcomm Computer Communication Review, New York, NY, USA, v. 39, n. 1, p.50 - 55, jan. 2009.
VARIA, Jinesh. The Total Cost of (Non) Ownership of Web Applications in the Cloud. Disponível em: <http://media.amazonwebservices.com/AWS_TCO_Web_Applications.pdf>. Acesso em: 23 ago. 2012.
110
VECCHIOLA, Christian; CHU, Xingchen; BUYYA, Rajkumar. Aneka: A Software
Platform for .NET-based Cloud Computing. In: W. Gentzsch, L. Grandinetti, G. Joubert (Eds.). High Speed and Large Scale Scientific Computing. Amsterdam, Netherlands: IOS Press. 2009. p.267 – 295.
VEIGA, Marise Schmidt. Computador e Educacão? Uma ótima combinação.
Disponível em: <http://www.pedagogiaemfoco.pro.br/inedu01.htm>. Acesso em: 10 set. 2012.
WINDOWS AZURE. Serviços do Windows Azure. Disponível em: <http://www.windowsazure.com/en-us/services/>. Acesso em: 20 ago. 2013.
ZARDARI, Shehnila; BAHSO, Rami. Cloud Adoption: A Goal-Oriented Requirements. In: THE 2nd INTERNATIONAL WORKSHOP ON SOFTWARE ENGINEERING FOR CLOUD COMPUTING (SECLOUD'11), 2011, Waikiki, Honolulu, HI, EUA. Proceeding… . New York, NY, EUA: ACM Press, 2011. p. 29 - 35.
ZEND. The Simple Cloud API Initiative. Disponível em: <http://www.grid.org.il/_Uploads/dbsAttachedFiles/Zend_Simple_Cloud_Initiative.pptx>. Acesso em: 22 abr. 2013.
ZHANG, Qi; CHENG, Lu; BOUTABA, Raouf. Cloud computing: state-of-the-art and research challenges. Journal of Internet Services and Applications, Springer London, v. 1, p.7 - 18, 01 maio 2010.
ZISSIS, Dimitrios; LEKKAS, Dimitrios. Addressing Cloud Computing Security Issues. Future Generation Computer Systems, Elsevier B.V., v. 28, n. 3, p. 583 - 592, mar. 2012.
111
APÊNDICE 1
GLOSSÁRIO
Sigla Significado
AWS
ANSI
ASF
API
BPOS
CPU
CEO
CPM
DoS
DMTF
EBS
EC2
EDI
EUA
XML
GEO
GPL
HPC
HTML
HTTP
IaaS
ISO
JDK
MIT
NCBI
NIST
OCCI
OGF
OSI
Amazon Web Services
American National Standards Institute
Apache Software Foundation
Application Programming Interface
Business Productivity On-line Suite
Central Processing Unit
Chief Executive Officer
Corporate Performance Management
Denial of Service
Distributed Management Task Force
Elastic Block Store
Elastic Compute Cloud
Electronic Data Interchange
Estados Unidos da América
eXtensible Markup Language
Gene Expression Omnibus
General Public License
High Performance Computing
HyperText Markup Language
Hypertext Transfer Protocol
Infrastructure as a Service
International Organization for Standardization
Java Software Development Kit
Massachusetts Institute of Technology
National Center for Biotechnology Information
National Institute of Standards and Technology
Open Cloud Computing Interface
Open Grid Forum
Open Systems Interconnection
112
OVF
PC
PHP
PaaS
PKI
QoS
RDS
REST
SSL
SLA
SOA
SMS
SimpleDB
SOAP
SQS
S3
SWF
SaaS
SNIA
TI
TCGA
TCO
TCP
TLS
UEC
UE
USP
VM
VPC
VAS
WSDL
WSRF
Open Virtualization Format
Personal Computer
Personal Home Page
Platform as a Service
Public-key infrastructure
Quality of Service
Relational Database Service
Representational State Transfer
Secure Socket Layer
Service Level Agreement
Services Oriented Architecture
Short Message Service
Simple Data Base
Simple Object Access Protocol
Simple Queue Service
Simple Storage Service
Simple Workflow
Software as a Service
Storage Networking Industry Association
Tecnologia da Informação
The Cancer Genome Atlas
Total cost of ownership
Transmission Control Protocol
Transport Layer Security
Ubuntu Enterprise Cloud
União Européia
Universidade de São Paulo
Virtual Machines
Virtual Private Cloud
Visual Attention Service
Web Services Description Language
Web Services Resource Framework