domingo, 24 de abril de 2011

Por que tudo "como serviço"?

Para não perder o costume, tudo começa com uma pergunta. Existe mais uma moda por ai, fornecer qualquer coisa como serviço, em Inglês XaaS (X as a service). Como já foi explicado, computação em nuvem engloba várias outras tecnologias e pode ser vista como um grande guarda-chuva sobre estas. Isso ocorre também com estes modelos de entrega de serviços. Os mais comuns são os seguintes:

  
  
Software como Serviço (Software as a Service ou SaaS): É um modelo de distribuição de software em forma de um serviço ou prestação de serviço, onde um produtor de software desenvolve, opera, mantém e o disponibiliza para clientes remotos. Estes clientes usam e pagam por ele de acordo com as suas necessidades, isto é sob demanda. Usualmente este serviço é acessado através da internet e portanto pode ser acessado de qualquer lugar com acesso à mesma.Isto é, o usuário usa uma aplicação pela internet e não se preocupa com licenças, requisitos na máquina local, instalação do software,etc. Provavelmente grande parte das pessoas com acesso a internet já usou ou usa este tipo de serviço, podemos exemplificar com o Gmail, Hotmail, Google Docs e muitos outros.
 
Plataforma como Serviço (Platform as a Service ou PaaS): É o fornecimento de toda uma plataforma para desenvolvimento de software (principalmente desenvolvimento voltado para web) o que abstrai dos desenvolvedores os requisitos de hardware e possivelmente de outras camadas de softwares necessárias como por exemplo base de dados, servidor web e suporte a linguagem de programação agilizando e reduzindo a complexidade do desenvolvimento. Um desenvolvedor tem todas as ferramentas para desenvolver e hospedar aplicações desenvolvidas e paga sob demanda. Uma vantagem é que permite o desenvolvedor de software se concentrar na aplicação e esquecer os pormenores como instalação de sistemas operacional, etc. Este modelo limita o desenvolver a usar as linguagens e ferramentas disponibilizadas pelo provedor e pode até ter problemas com a migração da sua aplicação se os recursos do provedor forem específicos (chamado lock-in).
 

Infraestrutura como Serviço (Infrastructure as a Service ou IaaS): É a entrega de processamento, armazenamento, rede e outros recursos computacionais fundamentais, onde o cliente pode usar software próprio. O cliente não controla a infraestrutura da nuvem mas retem o controle sobre o sistema operacional, armazenamento, uso de softwares e controle dos componentes da rede (CLOUD SECURITY ALLIANCE). Basicamente o provedor entrega uma ou várias máquinas como infraestrutura para o cliente. Uma das principais tecnologias usadas nesse modelo é a Virtualização. O modo mais comum é o "aluguel" de máquinas virtuais (VMs) para terceiros pagando por hora ou tráfego de dados e o usuário pode instalar e usar como quiser estas máquinas. Um exemplo de provedor é a Amazon EC2.


Claro, existem ainda DbaaS (banco de dados como serviço), ITaaS (tecnologia da informação como serviço) e muitos outros de acordo com a imaginação do leitor...

segunda-feira, 4 de abril de 2011

Computação em nuvem está realmente crescendo?


Segundo a IDC, a computação em nuvem no Brasil e America Latina vai crescer absurdos 60% ao ano:

Notícia no ITWeb


Na Italia e Europa, este e o próximo ano serão "os anos da computação em nuvem":

PMI - Em Italiano

Sugiro a todos uma boa olhada nesse paradigma!
:)

quinta-feira, 31 de março de 2011

O que é computação em nuvem e por que "nuvem"?

Essa é um pergunta complicada. Em 2008 quando comecei a trabalhar no tema, fizemos uma pesquisa para saber qual definição usar no LRG mas, já na época, existiam mais de 50 definições diferentes e que mudavam bastante entre elas. Um belo exemplo é o seguinte:

“Everything that we already do and that it will have no effect except to change the wording on some of our ads”
Larry Ellison, CEO of Oracle

“É tudo que já fazemos e não vai mudar nada a não ser o vocabulário(algumas palavras) dos nossos anúncios.”
(tradução livre)

Vemos que o sr Ellison tinha uma visão um tanto quanto limitada sobre o futuro de computação em nuvem. Por isso decidimos usar a definição de uma pessoa renomada da área que já possuí experiencia com computação em grade:

“Computação em nuvem é um paradigma de computação em larga escala que possui foco em proporcionar economia de escala,   em que um conjunto abstrato, virtualizado, dinamicamente escalável de poder de processamento, armazenamento, plataformas e serviços são disponibilizados sob demanda para clientes externos através da internet.” Ian Foster

Para sermos mais claros podemos fazer um paralelo com o modelo de entrega de energia elétrica. Quando precisamos usar a energia elétrica o que fazemos? Conectamos o aparelho na tomada e pagamos sobdemanda, isto é, somente aquilo que usamos. O sonho de computação em nuvem é bem parecido, fornecer software, processamento, memória ou o que for necessário sobdemanda no modelo de computação utilitária.

Já a origem do termo vem das redes de telecomunicação. Antigamente quando as linhas de dados e telefone eram dedicadas era fácil de se representar e de entender o caminho que faria um pacote de dados. Depois do compartilhamento destas linhas(o que barateou muito o serviço) ficou, praticamente, impossivel determinar o caminho que o pacote faria e assim se abstraiu toda a rede de caminhos colocando uma nuvem no seu lugar e até hoje se usa nos desenhos de rede para representar essa complexidade ou a internet. Assim a nuvem estaria escondendo a complexidade da infraestrutura, localização, soluções de software e hardware, algo que o cliente final não tem que se preocupar por isso o provedor denomina nuvem(além disso usar termo atraí atenção a agrega valor comercial).







Bom, espero ter esclarecido um pouco, apesar de ser um conceito amplo e não ter só uma resposta.
:)

Por que Computação em nuvem???

Para começar, melhor que definir o que é computação em nuvem é dizer por que este tema atrai tanto interesse e por que escrever sobre ele.
Uma das razões é que este termo é uma nova moda( "Hype" em inglês), todos colocam em seus anúncios e muitos só mudaram o nome para entrar nessa onde. Outro talvez até mais importante, é o interesse economico. A Merrill Lynch estima que este será um mercado de mais de U$$160 bilhões, isto é, todos querem ter uma parte nisso. Do ponto de vista tecnológico, vemos o amadurecimento das suas tecnologias base o que facilita sua adoção.
Já na academia o interesse é enorme pois, por despontar como uma das novas revoluções da computação existem muitas lacunas  que precisam ser preenchidas e são um prato cheio para pesquisadores querendo publicações.

Nas próximas postagens começamos a explicar um pouquinho deste novo paradigma.

Quem sou eu?

Meu nome é Rafael, estou fazendo o mestrado na Universidade Federal de Santa Catarina. Adivinhem em que área! Sim, computação em nuvem.
Trabalho no laboratório LRG (http://lrg.ufsc.br) e desde 2008 estamos pesquisando este novo paradigma, publicando artigos, testando e desenvolvimento soluções. Como podemos dizer que temos alguma experiência resolvemos tornar público um lugar para discutir informar e publicar resultados desta pesquisa.

Qualquer dúvida ou sugestão é só entrar em contato.