Postado por:
- Fernando Bonilha
- Douglas Fernandes
- Edmar Fernado Solera
- João Batista
- Wallace Coelho
- Leonardo Sávio
A expressão cloud computing começou a ganhar força em 2008, mas,
conceitualmente, as ideias por trás da denominação existem há muito mais tempo.
Também conhecida no Brasil como computação nas nuvens ou computação
em nuvem, a cloud computing se refere, essencialmente, à noção de
utilizarmos, em qualquer lugar e independente de plataforma, as mais variadas
aplicações por meio da internet com a mesma facilidade de tê-las instaladas em
computadores locais.
Mas o que exatamente isso quer dizer?
- Entendendo a Cloud Computing
Estamos habituados a armazenar
arquivos e dados dos mais variados tipos e a utilizar aplicações de maneira on
premise, isto é, instaladas em nossos próprios computadores ou
dispositivos. Em ambientes corporativos, esse cenário muda um pouco: é
relativamente comum empresas utilizarem aplicações disponíveis em servidores
que podem ser acessadas por qualquer terminal autorizado.
A principal vantagem do on premise está no fato de ser possível, pelo
menos na maioria das vezes, utilizar as aplicações mesmo sem acesso à internet
ou à rede local. Em outras palavras, é possível usar esses recursos de maneira
off-line.
Por outro lado, no modelo on premise, todos os dados gerados ficam
restritos a um único equipamento, exceto quando há compartilhamento em rede,
coisa que não é muito comum no ambiente doméstico. Mesmo no ambiente
corporativo, essa prática pode gerar algumas limitações, como a necessidade de
se ter uma licença de determinado software para cada computador, por exemplo.
A
evolução constante da tecnologia computacional e das telecomunicações está
fazendo com que o acesso à internet se torne cada vez mais amplo e rápido. Esse
cenário cria a condição perfeita para a popularização da cloud computing, pois
faz com que o conceito se dissemine no mundo todo.
Com
a cloud computing, muitos aplicativos, assim como arquivos e outros dados
relacionados, não precisam mais estar instalados ou armazenados no computador
do usuário ou em um servidor próximo. Esse conteúdo passa a ficar disponível
nas nuvens, isto é, na internet.
Ao
fornecedor da aplicação cabe todas as tarefas de desenvolvimento,
armazenamento, manutenção, atualização, backup, escalonamento, etc. O usuário
não precisa se preocupar com nenhum desses aspectos, apenas em acessar e
utilizar.
Nuvens representam uma abstração de recursos computacionais na internet - Imagem por OpenClipart
Um exemplo prático dessa nova realidade é o Office Online,
da Microsoft, serviço que dá acesso a recursos básicos de edição de textos,
apresentações de slides, entre outras funcionalidades, de maneira completamente
on-line. Tudo o que o usuário precisa fazer é criar uma conta e utilizar um
navegador de internet compatível, o que é o caso da maioria dos browsers da
atualidade.
- Algumas características da Cloud Computing
Tal como já informado, uma das vantagens da cloud computing é o acesso a
aplicações a partir da internet, sem que estas estejam instaladas em
computadores ou dispositivos específicos. Mas, há outros benefícios
significativos:
- Na maioria dos casos, o usuário pode acessar as
aplicações independente do seu sistema operacional ou do equipamento usado;
- O usuário não precisa se preocupar com a
estrutura para executar a aplicação - hardware, procedimentos de backup,
controle de segurança, manutenção, entre outros;
- Compartilhamento de informações e trabalho
colaborativo se tornam mais fáceis, pois todos os usuários acessam as
aplicações e os dados do mesmo lugar: a nuvem;
- Dependendo do fornecedor, o usuário pode contar
com alta disponibilidade: se um servidor parar de funcionar, por exemplo, os
demais que fazem parte da estrutura continuam a oferecer o serviço;
- O usuário pode contar com melhor controle de
gastos. Muitas aplicações em cloud computing são gratuitas e, quando é
necessário pagar, o usuário só o faz em relação aos recursos que usar ou ao
tempo de utilização. Não é necessário, portanto, pagar por uma licença integral
de uso, tal como é feito no modelo tradicional de fornecimento de software;
- Dependendo da aplicação, o usuário pode precisar
instalar um programa cliente em seu computador ou dispositivo móvel. Mas,
nesses casos, todo ou a maior parte do processamento (e até mesmo do
armazenamento de dados) fica por conta das "nuvens".
Note que, independente da aplicação, com a cloud
computing o usuário não necessita conhecer toda a estrutura que há por trás, ou
seja, ele não precisa saber quantos servidores executam determinada ferramenta,
quais as configurações de hardware utilizadas, como o escalonamento é feito,
onde está a localização física do data center, enfim. O que importa é saber que
a aplicação está disponível nas nuvens.
- Software as a Service (SaaS)
Intimamente ligado à cloud computing está o conceito de Software as a
Service (SaaS) ou, em bom português, Software como Serviço.
Em sua essência, trata-se de uma forma de trabalho em que o software é
oferecido como serviço, assim, o usuário não precisa adquirir licenças de uso
para instalação ou mesmo comprar computadores ou servidores para executá-lo.
Nessa modalidade, no máximo, paga-se um valor periódico - como se fosse uma
assinatura - somente pelos recursos utilizados e/ou pelo tempo de uso.
Para entender melhor os benefícios do SaaS, suponha que uma empresa que
tem 20 funcionários necessita de um software para gerar folha de pagamento. Há
várias soluções prontas para isso no mercado, no entanto, a empresa terá que
comprar licenças de uso do software escolhido e, dependendo do caso, até mesmo
hardware para executá-lo. Muitas vezes, o preço da licença ou mesmo dos
equipamentos pode resultar em custo alto e não compatível com a condição de
porte pequeno da empresa.
Se, por outro lado, a companhia
encontrar um fornecedor de software para folha de pagamento que trabalha com o
modelo SaaS, a situação pode ficar mais fácil: essa empresa poderá, por
exemplo, oferecer esse serviço por meio de cloud computing e cobrar apenas pelo
número de funcionários e/ou pelo tempo de uso. Com isso, o contratante paga um
valor baixo pelo uso da aplicação. Além disso, hardware, instalação,
atualização, manutenção, entre outros, são tarefas que ficam por conta do
fornecedor.
Também
é importante levar em conta que o intervalo entre a contratação do serviço e o
início de sua utilização é extremamente baixo, o que não aconteceria se o
software tivesse que ser instalado nos computadores do cliente - este só
precisa se preocupar com o acesso ao serviço (no caso, uma conexão à internet)
ou, se necessário, com a simples instalação de algum recurso mínimo, como um
plugin no navegador de internet de suas máquinas.
Oracle
e HP são dois exemplos de companhias que oferecerem soluções em SaaS: HP SaaS; Oracle SaaS.
PaaS, DaaS, IaaS e TaaS
No
mercado também há conceitos derivados do SaaS que são utilizados por algumas
companhias para diferenciar os seus serviços. São eles:
- Platform as a Service (PaaS): Plataforma como Serviço. Trata-se
de um tipo de solução mais amplo para determinadas aplicações, incluindo todos
(ou quase todos) os recursos necessários à operação, como armazenamento, banco
de dados, escalabilidade (aumento automático da capacidade de armazenamento ou
processamento), suporte a linguagens de programação, segurança e assim por
diante;
- Database as a Service (DaaS): Banco de Dados como Serviço. O
nome já deixa claro que essa modalidade é direcionada ao fornecimento de
serviços para armazenamento e acesso de volumes de dados. A vantagem aqui é que
o detentor da aplicação conta com maior flexibilidade para expandir o banco de
dados, compartilhar as informações com outros sistemas, facilitar o acesso
remoto por usuários autorizados, entre outros;
- Infrastructure as a Service (IaaS): Infraestrutura como Serviço.
Parecido com o conceito de PaaS, mas aqui o foco é a estrutura de hardware ou
de máquinas virtuais, com o usuário tendo inclusive acesso a recursos do
sistema operacional;
- Testing as a Service (TaaS): Ensaio como Serviço. Oferece um
ambiente apropriado para que o usuário possa testar aplicações e sistemas de
maneira remota, simulando o comportamento destes em nível de execução.
- Conclusão
Utilizar-se
das novas tecnologias que surgem no mercado e entende-las são essenciais para
quem vive no mundo da Tecnologia de Informações, pois soluções são possíveis graças a muito estudo e dedicação.
No caso da computação em nuvens há de
se ter uma certa cautela, visto que seus dados estarão em computadores de
terceiros (serviços), mesmo
tendo documentos garantindo a privacidade e o sigilo, preocupam pessoas e,
principalmente, empresas, razão qual esse aspecto precisa ser melhor estudado.
Existem benefícios ao utilizar-se
dessa tecnologia, atentando sempre a solução mais adequada ao
momento.
- Referências
- en.wikipedia.org/wiki/Cloud_computing
- videos.techielife.com/.../13
- http://cacm.acm.org/.../fulltext
- http://www.infowester.com/cloudcomputing.php - Escrito por Emerson Alecrim