segunda-feira, 3 de novembro de 2014

Sobre Cloud Computing...

A seguir, alguns aspectos da Computação em Nuvem que nos levarão aos temas do nosso blog (AWS, Google App Engine e Windows Azure)...

Segundo o NIST – National Institute of Standards and Technology – a
computação em nuvem pode ser dividida em três segmentos [CSCC 2011]:


a) IaaS – Infrastucture as a Service – que basicamente é a abstração do
hardware. Consiste no serviço de prover soluções de hardware com grande
escalabilidade, disponibilidade, redundância e segurança.
b) SaaS – Software as a Service – também conhecido como software sob
demanda. Neste caso o software e todas suas dependências são hospedados em um
servidor remoto. O usuário usa uma aplicação desenvolvida pelo provedor do serviço
que está disponível para uso por diversos clientes simultaneamente.
c) PaaS – Platform as a Service – o provedor gera a plataforma necessária para o
usuário hospedar aplicações criadas por ele ou adquiridas de desenvolvedores que não
estão relacionadas ao provedor.


Entre os benefícios adquiridos com o uso dos sistemas de computação em nuvem estão:

Escalabilidade sob demanda – é uma das grandes vantagens quando se opta pela
computação em nuvem. Afinal é importante ter disponível tanto poder de processamento ou capacidade de armazenamento quanto seja necessário para determinada aplicação [ARMBRUST et al. 2009]. No caso do depósito de dados, por exemplo, paga-se apenas o espaço que for preciso para salvar os dados, além de ter uma disponibilidade de espaço de armazenamento aparentemente infindável.


Disponibilidade e amplo acesso – são imprescindíveis num sistema de computação em nuvem. O downtime – que é o tempo de indisponibilidade de um sistema – deve ser o menor possível. O processamento de uma informação depende da disponibilidade do sistema que não pode estar comprometido no momento em que o usuário precisar.


Redundância e resources pooling – se ocorrer uma falha em um sistema computacional sem redundância, informações podem ser perdidas. Porém, se houver redundância, o sistema defeituoso é substituído por outro, que manterá a disponibilidade do serviço. Já com resources pooling, um agrupamento de recursos, minimiza-se os riscos para o usuário e aumenta-se sua eficiência [WISCHIK et al. 2008].


Segurança e privacidade – são umas das prioridades no processamento e armazenamento de informações. Um usuário não pode ver as suas informações vulneráveis a ataques de terceiros. Inclusive, esta é uma das maiores barreiras que existe entre o usuário e a computação em nuvem, uma vez que há desconfiança por esta ser uma tecnologia nova e ainda não tão amadurecida. [GARFINKEL 2011].


Além desses fatores, um data center de grande porte de uma empresa provedora de computação em nuvem consome menos capital com manutenção e administração dos sistemas do que um data center particular.

Plataformas de computação em nuvem

Um sistema de computação em nuvem não necessariamente precisa ser contratado. Uma empresa pode criar uma nuvem privada, o que pode ter mais benefícios como o fato de garantir um controle de segurança próprio. Mas as nuvens privadas dependem de altos investimentos iniciais, e algumas das vantagens das nuvens públicas são perdidas. Por essa razão, algumas empresas preferem a contratação de serviços de computação em nuvem pública. Algumas das plataformas públicas disponíveis são:

a) Amazon AWS – É um sistema com foco empresarial, com licença proprietária, planos de pagamento por uso e suporte pago. Disponibiliza poder de processamento (Elastic Compute Cloud – EC2), armazenamento (Simple Storage Service – S3), bancos de dados (SimpleDB), etc.

b) Google App Engine – Este é um serviço de licença proprietária, sem custo pelos serviços ou pelos recursos utilizados até uma certa limitação. Ao atingir essa limitação é cobrada uma taxa de uso pelos recursos adicionais utilizados.


c) Microsoft Windows Azure – Serviço da Microsoft com licença proprietária, planos de pagamento por uso e serviço de suporte sem custo adicional. Os serviços disponíveis são de processamento, armazenamento, bancos de dados, entre outros.

É preciso escolher a plataforma de computação em nuvem mais adequada para cada projeto. Por isso, veremos as características relevantes de cada plataforma, como Sistemas Operacionais compatíveis, linguagens de programação suportadas e outras. 



Referências:
MAGALHÃES, Guilherme; SCHEPKE, Claudio; MAILLARD, Nicolas. Comparação entre Plataformas de Computação em Nuvem. Disponível em: <http://www.lbd.dcc.ufmg.br/colecoes/erad-rs/2012/0038.pdf>. Acesso em: 03 de novembro de 2014.

Nenhum comentário:

Postar um comentário