PDA

Ver Versão Completa : Entendam um pouco sobre o Cloud Computing.



CCV_PaTo__Balrog
08-03-2012, 10:14 AM
8865

A denominação Cloud Computing chegou aos ouvidos de muita gente em 2008, mas tudo indica que ouviremos esse termo ainda por um bom tempo. Também conhecido no Brasil como Computação nas Nuvens ou Computação em Nuvem, Cloud Computing se refere, essencialmente, à ideia 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 nossos próprios computadores. Neste artigo de introdução à Cloud Computing, você entenderá melhor este conceito.

Entendendo a Cloud Computing


Estamos habituados a utilizar aplicações instaladas em nossos próprios computadores, assim como a armazenar arquivos e dados dos mais variados tipos neles. No ambiente corporativo, esse cenário é um pouco diferente, já que nele é mais fácil encontrar aplicações disponíveis em servidores que podem ser acessadas por qualquer terminal autorizado por meio de uma rede.


A principal vantagem deste modelo está no fato de ser possível, pelo menos na maioria das vezes, utilizar as aplicações mesmo sem acesso à internet ou à rede. Em outras palavras, é possível usar estes recursos de maneira off-line.

Entretanto, todos os dados gerados estão restritos a este computador, exceto quando compartilhados em rede, coisa que não é muito comum no ambiente doméstico. Mesmo no ambiente corporativo, isso pode gerar algumas limitações, como a necessidade de se ter uma licença de um 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 cada vez mais rápido. Em países mais desenvolvidos, como Japão, Alemanha e Estados Unidos, é possível ter acesso rápido à internet pagando-se muito pouco. Este cenário cria a situação perfeita para a popularização da Cloud Computing, embora esse conceito esteja se tornando conhecido no mundo todo, inclusive no Brasil.


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. Este 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 nada disso, apenas com acessar e utilizar.


Um exemplo prático desta nova realidade é o Google Docs (http://docs.google.com/), serviço onde os usuários podem editar textos, fazer planilhas, elaborar apresentações de slides, armazenar arquivos, entre outros, tudo pela internet, sem necessidade de ter programas como Microsoft Office ou OpenOffice.org instalados em suas máquinas. O que o usuário precisa fazer é apenas abrir o navegador de internet e acessar o endereço do Google Docs para começar a trabalhar, não importando qual o sistema operacional ou o computador utilizado para esse fim. Neste caso, o único cuidado que o usuário deve ter é o de utilizar um navegador de internet compatível, o que é o caso da maioria dos browsers da atualidade.


Algumas características da Cloud Computing


Conforme já dito, uma das vantagens da Cloud Computing é a possibilidade de utilizar aplicações diretamente da internet, sem que estas estejam instaladas no computador do usuário. Mas, há outras significativas vantagens:

- na maioria dos casos, o usuário pode acessar determinadas aplicações independente do seu sistema operacional ou de hardware;


- o usuário não precisa se preocupar com a estrutura para executar a aplicação: hardware, procedimentos de backup (http://www.infowester.com/colbackup.php), controle de segurança, manutenção, entre outros, ficam a cargo do fornecedor do serviço;


- compartilhamento de dados e trabalho colaborativo se tornam mais fáceis, uma vez que todos os usuários acessam as aplicações e os dados do mesmo lugar: a "nuvem". Muitas aplicações do tipo já são elaboradas considerando estas possibilidades;


- dependendo do fornecedor, o usuário pode contar com alta disponibilidade, já que 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 fará em relação aos recursos que usar ou ao tempo de utilização. Não é, portanto, necessário pagar por uma licença integral de uso, tal como acontece no modelo tradicional de fornecimento de software;


- dependendo da aplicação, o usuário pode precisar instalar um programa cliente em seu computador. Mas, neste caso, 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 ao usuário é saber que a aplicação está disponível nas nuvens, não importa de que forma

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 onde 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.

Nesta 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 vinte funcionários necessita de um software para gerar folhas 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 gerar um custo alto e não compatível com a condição de porte pequeno da empresa.
Se, por outro lado, a empresa encontrar um fornecedor de software para folhas de pagamento que trabalha com o modelo SaaS, a situação pode ficar mais fácil: essa companhia poderá, por exemplo, oferecer este serviço por meio de Cloud Computing e cobrar apenas pelo número de usuários e/ou pelo tempo de uso.


Desta forma, a empresa interessada paga um valor baixo pelo uso da aplicação. Além disso, hardware, instalação, atualização, manutenção, entre outros, 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.


IBM e HP são dois exemplos de companhias que já oferecerem soluções em SaaS: HP SaaS (http://saas.hp.com/); IBM SaaS (http://www.ibm.com/isv/marketing/saas/index.html).
Há também conceitos derivados, utilizados por algumas companhias para diferenciar os seus serviços, entre 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 com Serviço. O nome já deixa claro que esta 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.

Um pouco de história


Computação nas Nuvens não é um conceito claramente definido. Não se trata, por exemplo, de uma tecnologia pronta que saiu dos laboratórios pelas mãos de um grupo de pesquisadores e posteriormente foi disponibilizada no mercado. Esta característica faz com que seja difícil identificar com precisão a sua origem. Mas há alguns indícios bastante interessantes.


Um deles remete ao trabalho desenvolvido por John McCarthy (http://en.wikipedia.org/wiki/John_McCarthy_%28computer_scientist%29). Falecido em outubro de 2011 (http://www.infowester.com/noticias/falece-john-mccarthy-um-dos-mais-influentes-pesquisadores-de-inteligencia-artificial/), o pesquisador foi um dos principais nomes por trás da criação do que conhecemos como inteligência artificial, com destaque para a linguagem Lisp, até hoje aplicada em projetos que utilizam tal conceito.

Além deste trabalho, no início da década de 1960, John McCarthy tratou de uma ideia bastante importante: computação por tempo compartilhado (time sharing), onde um computador pode ser utilizado simultaneamente por dois ou mais usuários para a realização de determinadas tarefas, aproveitando especialmente o intervalo de tempo ocioso entre cada processo.


Perceba que, desta forma, é possível aproveitar melhor o computador (na época, um dispositivo muito caro) e diminuir gastos, uma vez que o usuário somente paga, por exemplo, pelo tempo de uso do equipamento. É, de certa forma, uma ideia presente na Computação nas Nuvens.


Quase que na mesma época, o físico Joseph Carl Robnett Licklider (http://en.wikipedia.org/wiki/J._C._R._Licklider) entrou para a história ao ser um dos pioneiros da internet. Isso porque, ao fazer parte da ARPA (Advanced Research Projects Agency), lidou com a tarefa de encontrar outras utilidades para o computador que não fosse apenas a de ser uma "poderosa calculadora".


Nesta missão, Licklider acabou sendo um dos primeiros a entender que os computadores poderiam ser usados de maneira conectada, de forma a permitir comunicação de maneira global e, consequentemente, o compartilhamento de dados. Seu trabalho determinou a criação da Intergalactic Computer Network, que posteriormente deu origem à ARPANET (http://en.wikipedia.org/wiki/ARPANET), que por sua vez "abriu as portas" para a internet.


Embora possamos associar várias tecnologias, conceitos e pesquisadores ao assunto, ao juntarmos os trabalhos de John McCarthy e J.C.R. Licklider podemos ter uma grande ajuda na tarefa de compreender a origem e a evolução da Cloud Computing.

Por que uma nuvem?


Ao consultar livros de redes, telecomunicações e afins, pode-se perceber que o desenho de uma nuvem é utilizado para fins de abstração. Neste sentido, a nuvem representa uma rede de algum tipo cuja estrutura não precisa ser conhecida, pelo menos não naquele momento.


Por exemplo, se a ideia é a de explicar como funciona uma tecnologia de comunicação que interliga duas redes de computadores, não é necessário detalhar as características de cada uma. Assim, pode-se utilizar uma nuvem para indicar que há redes ali.


A Computação nas Nuvens simplesmente absorveu esta ideia, mesmo porque o desenho de uma nuvem, seguindo a ideia da abstração, passou também a representar a internet.

Finalizando


Na verdade, qualquer tentativa de definir o que é Cloud Computing pode não ser 100% precisa. Isso porque as ideias por trás da noção de Computação nas Nuvens são muito novas e as opiniões de especialistas em computação ainda divergem. Mas a noção básica é a que foi explicada neste artigo.


É claro que ainda há muita coisa por fazer. Por exemplo, a simples ideia de determinadas informações ficarem armazenadas em computadores de terceiros (no caso, os fornecedores de serviço), mesmo com documentos garantindo a privacidade e o sigilo, preocupam pessoas e, principalmente, empresas, motivo pelo qual este ponto precisa ser melhor estudado. Além disso, há outras questões, como o problema da dependência de acesso à internet: o que fazer quando a conexão cair? Algumas companhias já trabalham em formas de sincronizar aplicações off-line com on-line, mas tecnologias para isso ainda precisam evoluir bastante.


De qualquer forma, o futuro aponta para esse caminho. Além das mencionadas empresas neste artigo, companhias como Dell, Intel, Oracle e Microsoft já estão trabalhando nas mais variadas soluções para Cloud Computing. Esta última, por exemplo, já até anunciou o Azure (http://www.microsoft.com/azure/), uma plataforma própria para a execução de aplicações nas "nuvens".


fonte : (http://www.infowester.com/cloudcomputing.php)