quarta-feira, 9 de dezembro de 2015

Aplicações das tecnologias - Virtualização

Bom, antes de tudo para quem não lembra o que é virtualização, e quais tipos existem, aí vai uma ajudinha: virtualização é, em poucas palavras,  a criação de um ambiente virtual que simula o real, e a partir desse conceito nasce os tipos de virtualização de servidores, desktop e de sistemas operacionais. Agora que já relembramos, vamos voltar ao objetivo dessa postagem: as aplicações da virtualização.

Consolidação de Servidores


A consolidação de servidores consiste em usar diversas máquinas virtuais em uma máquina física. Isso garante o isolamento dos servidores e apresenta vantagens, como: aumentar a taxa de utilização de servidores, reduzir os custos operacionais, criar ambientes mais flexíveis e reduzir custos de administração. Além disso, a consolidação permite ocupar menos espaço físico com servidores, o que propicia menos gasto com eletricidade e com manutenção de máquinas.

Essa aplicação pode ser encontrada em centrais ou filiais de empresas que consolidam seus servidores a um único computador, diminuindo custos e fornecendo várias funções para os usuários. Também pode ser usada para ajudar a centralizar a gestão de departamentos, permitindo que cada departamento possa manter o controle do seu sistema.


Desenvolvimento de Software
 
 

Uso da virtualização em ambientes de desenvolvimento e teste de software é normalmente realizado pelas mesmas razões da consolidação de servidores padrão - o desejo de obter maior utilização de hardware e reduzir custos operacionais. No entanto, o uso de ambientes virtuais para desenvolver e testar softwares tem dois objetivos que diferem da consolidação de servidores.

O primeiro é fornecer ambientes distintos, com sistemas operacionais diferentes ou de diferentes versões, para que se possa testar o software e verificar o seu comportamento em outros ambientes. O segundo é criar ambientes isolados no qual uma falha do software que está sendo desenvolvido não comprometa o sistema operacional da máquina hospedeira. Se o software em desenvolvimento vier a comprometer o sistema da máquina virtual, este pode ser recuperado copiando os arquivos de outra máquina, ou recuperando os arquivos da máquina comprometida do último backup.

Treinamento e Ensino

A virtualização pode ajudar em muitos níveis de treinamento e ensino. Aplicando esse método o estudante é isolado da máquina física, ou seja, ele tem acesso a uma instância de uma máquina virtual, que pode ser facilmente recuperada de uma falha após o seu uso. Além de facilitar a aplicação de aulas práticas e laboratórios multidisciplinares, já que é possível criar máquinas virtuais com sistemas operacionais e aplicações específicas a depender do tipo da aula.

As vantagens são basicamente as mesmas, redução dos custos de manutenção, aumento da flexibilidade e aumento da segurança.

Bom, essas são algumas das muitas aplicações da virtualização. Espero que tenham gostado! Até a próxima. :)


Referências: 

 
Virtualização: VMWare e Xen, por
Diogo Menezes Ferrazani Mattos - http://www.gta.ufrj.br/grad/08_1/virtual/artigo.pdf

Implementacao e Desempenho da Virtualização no DCOMP/UFS, por Anderson de  Paula Cassimiro - http://pt.slideshare.net/edmoreno/implementacao-e-desempenho-da-virtualizacao-no-dcomp-ufs
 
Professional Microsoft® Virtual Server 2005, por Ben Armstrong - https://eketab2.files.wordpress.com/2007/09/professionalmicrosoftvirtualserver2005.pdf

terça-feira, 8 de dezembro de 2015

Aplicações das tecnologias - Clusters

Já vimos em posts anteriores as vantagens, desvantagens e razões para o uso de clusters. Nesta postagem vamos abordar as principais situações em que esses supercomputadores são utilizados atualmente.

Projetos de grande porte

Clusters têm sido comumente usados ​​como ambientes de execução para diversos projetos de grande porte tais como modelagem meteorológica, simulações de acidentes de automóvel, ciências da vida, fluidodinâmica computacional, simulações nucleares, processamento de imagem, eletromagnetismo, mineração de dados, aerodinâmica e astrofísica. Estas aplicações são consideradas impossíveis de serem executas sem o uso de supercomputadores.

A necessidade de grandes recursos, tais como o tempo e poder de processamento, memória e comunicação distingue estes projetos de outros aplicativos. Por exemplo, a execução de aplicações científicas utilizadas na previsão de situações de risco de vida, tais como terremotos ou furacões, requer um enorme poder computacional e recursos de armazenamento.

Internet

No âmbito da Internet, existem diversos serviços que utilizam clusters. Dentre eles estão servidores web e proxy, servidores de banco de dados, motores de busca, tecnologias de segurança, e-mails, grandes portais e sites de e-commerce.

Na área comercial, estes servidores podem ser consolidados para criar o que chamamos de servidor corporativo. Este pode ser otimizado e gerenciado para aumentar sua eficiência e capacidade de resposta, dependendo da carga de trabalho, através de várias técnicas de balanceamento de carga. Muitos computadores comuns podem ser agrupados com armazenamento e aplicações para escalabilidade, alta disponibilidade e desempenho. As principais empresas que constroem estes sistemas são Compaq, Hewlett-Packard, IBM, Microsoft e Sun.

Mineraçao de dados

Clusters são também importantes ferramentas na mineração de dados, pois este procedimento requer o processamento de uma massiva quantidade de dados. A velocidade de processamento é de suma importância para os interesses comerciais, pois isso pode significar uma vantagem competitiva. Além disso, alguns conjuntos de dados já são distribuídos em toda a mídia, como a Internet, e o uso de clusters também pode diminuir o tempo necessário para o recolhimento dos dados.

Ray Tracing

Utilização do Ray Tracing no Autodesk
Por último mas não menos importante, temos o uso de clusters na renderização de imagens tridimensionais, inclusive no famoso método, chamado “ray tracing”. Essa é uma tarefa exigente, computacionalmente falando, que pode consumir horas ou mesmo dias de tempo de processamento.

Há uma série de razões pelas quais o uso de processamento paralelo (clusters) é benéfico para esse método, uma delas é a redução do tempo para renderizar imagens. Além disso, imagens que precisam de mais memória do que um processador individual tem disponível, pode ter tarefas divididas entre um número processadores, permitindo o processamento de imagens complexas. As principais questões incluem a tarefa difícil de segmentar os postos de trabalho entre os nós de processamento e minimizar os custos de comunicação.

Por enquanto, isto é tudo. No próximo post falaremos mais sobre as aplicações da virtualização. Gostou? Deixa seu comentário abaixo. :)

Referências:

"A Review of Applications of Cluster Computing", por Lucas Hope and Edmund Lam - http://www.buyya.com/csc433/ClusterApps.pdf

"Cluster Computing Tools, Applications, and Australian Initiatives for Low Cost Supercomputing", por Hai Jin, Rajkumar Buyya e Mark Baker - http://www.cloudbus.org/papers/IEAustMonitor.pdf

sexta-feira, 4 de dezembro de 2015

Aplicações das tecnologias - Computação em nuvem

Hoje começaremos uma série de posts falando sobre as principais aplicações das tecnologias abordas neste blog (Computação em nuvem, virtualização e clusters), começando hoje pela computação em nuvem, muito conhecida e usada, mesmo que indiretamente, pela grande maioria dos usuários da internet.

Armazenamento de dados


Uma das suas principais aplicações é o armazenamento de dados. Principalmente por meio das redes sociais, os usuários armazenam fotos, vídeos, documentos e outros tipos de informações para serem compartilhados, acessados e modificados por eles em qualquer lugar do globo.

Esta tecnologia também é utilizada de sua forma mais "direta", funcionando como um "disco rígido (HD) online". Nele, o usuário salva as suas informações como se fosse uma pasta do computador, colocando os arquivos e informações desejadas e acessando-os futuramente. Certos serviços de armazenamento também disponibilizam a modificação dessas informações diretamente, sem a necessidade de baixar a informação para o dispositivo.

Mas ele não se limita somente a guardar dados desejados na nuvem: também pode ser utilizado para backups de dados pessoais e críticos, garantindo que a chance deles serem perdidos seja praticamente nula. Grande parte dos serviços populares hoje, como Dropbox, OneDrive e Google Drive possuem uma boa segurança no ponto de vista dos seus servidores, porém não encriptam os arquivos que estão sendo enviados para o servidor. Neste caso, existem alternativas como Tresorit e Wuala que permitem uma encriptação tão grande que apenas o usuário tem acesso, nem mesmo a empresa podendo acessar ou recuperar a senha futuramente.

É possível acessar os seus dados em qualquer dispositivo, contanto que ele possua conexão com a internet.


eCommerce


Escalabilidade é o ponto-chave para o eCommerce: é ela que permite fazer um grande diferencial na economia, praticidade e eficiência de um eCommerce que trabalha com cloud computing. Em horário de pouco fluxo de clientes, o processamento pode ser reduzido dinamicamente, o que resulta em custos menores em horários com fluxo menor. O mesmo acontece em momento de pico e promoções (como Black Friday e natal), onde o fluxo de clientes aumenta fortemente e o poder de processamento acompanha este fluxo.

Isso evita uma série de problemas que haveria em meios tradicionais de servidores fixos em lojas, tais como: indisponibilidade do sistema com o fluxo de muitos usuários, alto consumo de processamento em momentos de pouco fluxo de clientes, lentidão em locais distantes da empresa de eCommerce (uma vez que o site pode ser acessado rapidamente em vários locais).

O único empecilho no Brasil é quanto a segurança, uma vez que as empresas brasileiras de computação na nuvem ainda possui algumas falhas nesse quesito, algo não problemático em relação as empresas internacionais.

O eCommerce cresceu drasticamente na última década, faturando mais de 12 bilhões de reais.


CRM (Costumer Relationship Managment)


O CRM, também chamado de Gestão do Relacionamento com o Cliente, é uma estratégia de negócio importante para as companhias, no qual se baseia em auxiliar e lhe fornecer o que ele procura da melhor e mais eficiente maneira. Como lida diretamente com clientes e lucros, muitas empresas procuram os melhores softwares para auxiliá-los neste processo.

Uma das principais vantagens desta estratégia aplicada à computação na nuvem é sua praticidade: pode ser utilizado em qualquer lugar, necessitando apenas de acesso a internet e um dispositivo para acessá-lo. Sua praticidade também facilita o acesso dos dados aos outros funcionários, podendo inclusive colaborarem simultaneamente no processo. Além disso, as ferramentas na nuvem sempre estão atualizadas, dispensando custos com manutenção e pausas nos servidores para modificar partes do sistema.

Principais processos do CRM.


Teste e Desenvolvimento


Um dos grandes destaques desta tecnologia neste meio é a facilidade de acesso ao produto em desenvolvimento. Instalação de aplicativos pesados, dedicados e exclusivos de sistemas operacionais são dispensados com a aplicação desta tenologia. Através da computação na nuvem, é possível acessar o produto em desenvolvimento em qualquer lugar, por meio de qualquer dispositivo. Isso significa que um funcionário pode começar a desenvolver um aplicativo, por exemplo, na empresa onde trabalha, continuar o desenvolvimento em casa e finalizá-lo enquanto está viajando.

Pelo fato da virtualização ser largamente aplicada para que a computação na nuvem no meio de testes e desenvolvimento, é possível obter e modificar com facilidade os ambientes de testes que o projeto passará. Com isso também é garantido que, se o software funcionar corretamente no ambiente da nuvem, funcionará também no ambiente real, já que é apenas uma simulação de um computador real.

Além disso tudo, os custos também são bastante reduzidos, uma vez que a escalabilidade (mesma utilizada no eCommerce) está presente e utiliza apenas o processamento necessário para realizar o desenvolvimento e testes das aplicações.

Cada vez mais empresas estão migrando seu desenvolvimento de projetos para a nuvem.

Referências

"Loaded and locked: 3 seriously secure cloud storage services", por Sarah Jacobsson Purewal - http://www.pcworld.com/article/2105100/loaded-and-locked-3-seriously-secure-cloud-storage-services.html

"Por que unir CRM e computação em nuvem?", por Ana Beatriz Ferreira - http://futurum.com.br/manufatura/por-que-unir-crm-e-computacao-em-nuvem

"Top 10 Common Uses for the Cloud for 2012", por Rackspace Blogger - http://blog.rackspace.com/top-10-common-uses-for-the-cloud-for-2012/

"Top 7 most common uses of cloud computing", por Maamar Ferkoun - http://www.thoughtsoncloud.com/2014/02/top-7-most-common-uses-of-cloud-computing/

"As vantagens de ter um e-commerce hospedado em nuvem", por André Tellini - http://www.tiespecialistas.com.br/2013/07/as-vantagens-de-ter-um-e-commerce-hospedado-em-nuvem/

"Develop and test applications faster in the cloud", por Microsoft Corporation - http://www.microsoft.com/en-us/server-cloud/solutions/cloud-development-test-environments.aspx