terça-feira, 29 de setembro de 2015

Recapitulando - Computação em nuvem

Computação em nuvem (cloud computing) é um paradigma de computação cujo objetivo é oferecer serviços (exemplo: edição de texto online) e aplicações por meio da internet, dando eficiência a esse processo.
O cliente, aquele que estiver utilizando o serviço online, não precisa necessariamente ter uma máquina potente, visto que as tarefas são executadas em um servidor remoto. A grande necessidade é somente de uma boa conexão com a internet. Um dos eixos da Computação em nuvem é também garantir que nos servidores e data centers do provedor do serviço o uso das máquinas seja realizado de modo a tirar o máximo proveito de suas capacidades.
O objetivo deste texto não é explicar e categorizar a Computação em nuvem, mas sim trazer outros modelos de computação que estão diretamente relacionados a ela, a seguir: ASP (Aplication Service Provider), SaaS, Grid Computing, Utility Computing e Virtualização.


cloud2.png


  1. ASP (Aplication Service Provider):
Esse modelo é baseado na terceirização de serviços e recursos de tecnologia e computação através da internet. O cliente aluga os aplicativos/serviços que desejar (não os compra), pagando uma taxa regularmente por essa aquisição. Para pequenas e médias empresas, esse modelo possibilita uma economia, pois ao invés de adquirirem sua própria infraestrutura (um data center), precisam apenas adquirir serviços; e quando crescerem, elas não precisarão aumentar sua infraestrutura, mas apenas comprar um pacote maior de serviços.
  1. Virtualização:
Faz referência à tecnologia usada para criar uma camada virtual entre o hardware e o software que atual sobre ele, com o objetivo de permitir o uso de diversas máquinas virtuais, que podem ser de sistemas operacionais distintos, em um único servidor.
A virtualização atua para diminuir ineficiências como quando em uma rede de computadores há máquinas que usam seu potencial total e outras apenas 10% ou 15%. Portanto, a virtualização possibilita uma maior utilização dos servidores, reduz a necessidade de maquinas físicas e gera economia em espaços, eletricidade e climatização do data center.
Nesse sentido, no contexto de Computação em nuvem, a virtualização está mais relacionada ao lado do provedor dos serviços do que do lado do cliente.
  1. Grid Computing
A Grid computing se pauta por utilizar recursos computacionais que podem ser diferentes e estar em máquinas diferentes (portanto, está relacionado à virtualização) para atingir um objetivo comum, alcançando altas taxas de processamento ao dividir as tarefas entre as diversas máquinas.
  1. Utility Computing (ou Computação sob demanda)
O usuário pode contratar software, hardware e serviços conforme suas necessidade de utilização e em função de fatores como picos, caídas ou por um período de uso. O fornecimento dos recursos computacional é medido. É o provedor quem se encarrega de investir para garantir a disponibilidade e qualidade dos serviços.
  1. SaaS (Software como serviço)
São os serviços em si (as aplicações comercializadas e utilizadas via internet). É similar ao Cloud Computing, mas voltado especificamente para a Comercialização de Software.
Computação em nuvem é um tema e um modelo de computação que vem ganhado muita evidência (e uso!). Contudo, é difícil encontrar uma definição que seja adotada largamente por pesquisadores e cientistas. Portanto, conhecer os outros modelos relacionados (e similares) pode ser a melhor maneira de compreender a Cloud Computing. É importante destacar que os cinco modelos comentados anteriormente, se visualizados individualmente, não constituirão por si só Computação em nuvem. Esta é, em essência, a aplicação simultânea dos cinco modelos supracitados!


Para saber mais:
texto 1 (em inglês);