sábado, 24 de novembro de 2012

TCC::Como apresentar

2011-TCC-ComoApresentar

Nova versão do Asp.Net (vNext)

[Contribuição de Eduardo Pessini]
"É um momento interessante para ser um desenvolvedor web. HTML5, CSS3 e JavaScript e toda a emoção em torno deles estão movendo a web para frente mais rápido do que nunca. Como a web, o pessoal da equipe de web na Microsoft estão evoluindo com ela. A próxima versão do Visual Studio inclui muitas das novas funcionalidades para o desenvolvedor web. Os editores de HTML, CSS e JavaScript têm sido aprimorado com o um pente fino, com um foco claro no seu fluxo de trabalho diário. Pequenas coisas como intellisense para CSS específicas do fornecedor prefixos, um selecionador de código hexadecimal e trechos que se expandem para os recursos que você usa todos os dias, todo o trabalho em conjunto com a promessa de suavizar o seu trabalho.
Não pense em ASP.NET como uma ilha. É um cidadão da comunidade maior. Mais e mais de ASP.NET é de código aberto e nós nos empenhamos duro todos os dias para que isso continue. Queremos fazer o ASP.NET mais plugável, mais aberto, mais divertido. Temos grandes coisas planejadas - algumas delas irá surpreendê-lo. Eu espero que você se junte à nossa  conversa e à nossa comunidade comunidade." - Scott Hanselman

Abaixo, você pode aprender sobre os novos recursos do Visual Studio 2012, ASP.NET 4.5, páginas da Web 2, MVC 4 e novo Update - Fall/2012 (Outono/2012).


[*]SOM::Self Organizing Maps

Robôs que voam ... e cooperam

[Contribuição de Ricardo Gomes França]

sexta-feira, 23 de novembro de 2012

[*]GTM::Generative Topographic Mapping

Referências Bibliográficas
ZUCHINIMarcio Henrique. Aplicações de Mapas Auto-Organizáveis em Mineração de Dados e Recuperação de Informação. Disponível em: http://parati.dca.fee.unicamp.br/media/Attachments/courseIA368Q1S2012/Monografia/zuchini_mest.pdf, recuperado em 21/11/2012

ZUCHINIMarcio Henrique. Modelos Computacionais Adaptativos para Recuperação de Informação. Disponível e: http://www.anchieta.br/unianchieta/revistas/ubiquidade/Site/ubiquidade/pdf/Artigo1.pdf, recuperado em 21/11/2012

quarta-feira, 7 de novembro de 2012

[*]Mapas de Kohonen ou Mapas Auto-organizáveis (SOM)

Contribuição de Flávia Passoni e Thayane Sanches

Segundo os professores Fernando Castro e Maria Cristina Castro:
"Os Mapas Auto-Organizados são redes competitivas que possuem a habilidade de formar mapeamentos que preservam a topologia entre os espaços de entrada e de saída. As redes SOM são utilizadas em muitos projetos industriais como ferramentas para resolver problemas práticos de difícil solução" [1].

Os Mapas Auto-Organizáveis ou Self Organizing Maps (SOM) também são conhecidos como Mapas de Kohonen em homenagem ao seu descobrido, o professor finlandês Teuvo Kohonen [2].


Mapas de kohonen from Zuki Tomba-Lata

Mapas de Kohonen

Vídeos Interessantes sobre SOM


Os vídeos indicados demonstram como funciona o processo de auto-organização de um mapa em relação à cores:



Outro vídeo que foi apresentado, com a representação em 2D e 3D do Mapa de Kohonen trabalhando e uma possível solução encontrada por SOM sobre o problema do Caixeiro Viajante:



Referências

[1] CASTRO, F. C. C. de; CASTRO, M. C. F. de. Mapas Auto-Organizados de Kohonen - SOM. Disponível em: http://www.feng.pucrs.br/~decastro/RNA_hp/pdf/RNA_C7.pdf, recuperado em 08/10/2012.
[2] NUNES, L. Mapas Auto-Organizáveis de Kohonem. Cap 8. Dissertação de Mestrado. Análise e Síntese de Estratégias de Aprendizado para Redes Neurais Artificiais. Unicamp, 1998. Disponível em: ftp://ftp.dca.fee.unicamp.br/pub/docs/vonzuben/theses/lnunes_mest/cap8.pdf, recuperado em 08/10/2012.

terça-feira, 6 de novembro de 2012

SOM e GTM

Atualmente são comuns os contextos onde a quantidade de dados disponível é gigantesca. Nestas situações, são necessárias técnicas adequadas para recuperação da informação, entre elas a mineração de dados (data mining).

Segundo Fayad, a descoberta ou extração de conhecimento em bases de dados (knowledeg discovery in databases) é um processo iterativo e interativo, não trivial, de identificação de padrões novos, potencialmente úteis e compreensíveis nos dados disponíveis.


Mas a mineração de dados, como mostra a figura acima, representa apenas a fase de análise de dados que já foram recuperados e transformados em um formato que possibilite sua manipulação adequada.

Os mapas auto-organizáveis (Self Organizing Maps - SOM) e o mapeamento topográfico gerativo (Generative Topographic Mapping - GTM) são técnicas importantes da recuperação de informação, particularmente úteis quando se pretende sua posterior visualização. Zuchini faz uma ótima apresentação destas técnicas em seu artigo "Modelos Computacionais Adaptativos para Recuperação de Informação".

segunda-feira, 5 de novembro de 2012

[*]Visualização de dados




Segundo Minghim & Chagas [1] a visualização de Dados é uma subárea da Computação que estuda e propõe ferramentas computacionais que ofereçam suporte visual gráfico para apoiar tarefas de análise de dados complexos. Entendem-se como dados complexos os conjuntos de dados de grande volume e diversidade de tipos (dados numéricos, categóricos, informações embutidas em documentos de texto, imagens, vídeos, redes sociais, etc.), exibindo também alta dimensionalidade (dados descritos por muitos atributos) e oriundos de diferentes domínios. Desta maneira, tais conjuntos de dados podem estar armazenados de maneira estruturada, em bancos de dados; embutidos em documentos de texto, imagens ou vídeos; ou ainda distribuídos em múltiplos documentos ou localidades, como o perfil de interconexão de usuários em redes sociais.

É essencial compreender que o objetivo maior das técnicas de visualização de dados é a comunicação da informação de maneira clara e efetiva por meios gráficos. Embora o uso de aplicações computacionais permita, isto não significa que as representações de dados desenvolvidas necessitem um visual sofisticado ou bonito. É fundamental um equilíbrio entre os aspectos estéticos e as necessidades funcionais, conjugados com boa usabilidade.

As técnicas de visualização são comumente empregadas para exibição de dados demográficos, dados metereológicos, imagens médicas e astronômicas, mas podem ser vantajosamente usados para ilustrar atributos específicos em coleções de textos, redes sociais, simulação de fluídos, análise de tráfego, entre muitos outros problemas.

Seguem dois materiais, cuja leitura eu recomendo para compreender melhor as questões envolvendo visualização de dados.




Os sites que seguem contém diferentes visualizações de dados, aplicações de visualização, além de outras informações interessantes (conforme o caso);



Referências

[1] http://cti.usp.br/sites/default/files/4%20-%20PE%20Visualizacao%20de%20Dados.pdf

[2] FEW, S. Now you see it: Simple techniques for quantitative analysis. Analytics Press, 2009.

[3] TUFTE, E.R. Envisioning information. Graphics Press LLC, 2a. edição, 1990.

domingo, 28 de outubro de 2012

[*]RFID::Radio Frequency Identification

O que é?

RFID é um método de identificação automática através de sinais de rádio, que permite recuperar e armazenar dados remotamente por meio de dispositivos denominados etiquetas (tags) de RFID. A tecnologia tem origem nos sistemas de radares utilizados na segunda guerra mundial, proposta no ano de 1937 por um físico escocês chamado Sir Robert Alexander Watson-Watt, para avisar com antecedência a chegada de aviões, o maior problema era identificar quais eram aviões inimigos e quais eram aviões aliados. Os alemães então descobriram que se os seus pilotos girassem seus aviões quando estivessem retornando à base iriam modificar o sinal de rádio que seria refletido de volta ao radar. Esse método simples alertava os técnicos responsáveis pelo radar que se tratava de aviões alemães (esse foi, essencialmente, considerado o primeiro sistema passivo de RFID).

Sob o comando de Watson-Watt, que liderou um projeto secreto, os ingleses desenvolveram o primeiro identificador ativo de amigo ou inimigo (IFF – Identify Friend or Foe). Foi colocado um transmissor em cada avião britânico. Quando esses transmissores recebiam sinais das estações de radar no solo, começavam a transmitir um sinal de resposta, que identificava o aeroplano como Friendly (amigo). Os RFID funcionam segundo o mesmo princípio básico: um sinal é enviado a um transponder, o qual é ativado e retransmite o sinal (sistema passivo) ou transmite seu próprio sinal (sistemas ativos).

Companhias começaram a comercializar sistemas anti-furto que utilizavam ondas de rádio para determinar se um item havia sido roubado ou pago normalmente. Era o advento das etiquetas RFID denominadas de "etiquetas de vigilância eletrônica" as quais ainda são muito utilizadas hoje nas lojas de varejo. Cada etiqueta utiliza um bit. Se a pessoa paga pela mercadoria, o bit é posto em 0. E os sensores não dispararam o alarme. Caso o contrário, o bit continua em 1, e caso a mercadoria saia  da loja, portais dotados de sensores disparam um alarme. É uma tecnologia mantida por diversas empresas, dentre elas a Philips, Tagsys e British Telecom. Atualmente quem dita os padrões de uso do RFID é a empresa EPCGlobal, que utiliza como padrão o protocolo EPC Gen 2.

Como funciona?

Um sistema de RFID é composto, basicamente, de uma antena, um transceptor, que faz a leitura do sinal e transfere a informação para um dispositivo leitor, e também um transponder ou etiqueta de RF, que deverá conter o circuito e a informação a ser transmitida. Estas etiquetas podem estar presentes em pessoas, animais, produtos, embalagens, enfim, em equipamentos diversos.

Assim, a antena transmite a informação, emitindo o sinal do circuito integrado para transmitir suas informações para o leitor, que por sua vez converte as ondas de rádio do RFID para informações digitais. Agora, depois de convertidas, elas poderão ser lidas e compreendidas por um computador para então ter seus dados analisados.

Etiquetas RFID

Existem dois tipos de etiquetas RFID:
  • Passiva – Estas etiquetas utilizam a rádio frequência do leitor para transmitir o seu sinal e normalmente têm com suas informações gravadas permanentemente quando são fabricadas. Contudo, algumas destas etiquetas são "regraváveis".
  • Ativa – As etiquetas ativas são muito mais sofisticadas e caras e contam com uma bateria própria para transmitir seu sinal sobre uma distância razoável, além de permitir armazenamento em memória RAM capaz de guardar até 32 KB. Frequências utilizadas As frequências usadas em um sistema RFID podem variar muito de acordo com a sua utilização. Um sistema de radar possui frequência e alcances muito maiores que um sistema de pagamento via telefone celular, por exemplo.

Onde pode ser utilizado?

  • Pagamento via celular;
  • Pagamento em trânsito (como sistema de pedágio SemParar);
  • Controle de estoque;
  • Substituição do Código de Barras (lojas de varejo como Track&Field);
  • Rastreamento de Cargas;
  • Rastreamento de Animais (pecuária de precisão).
Custos

Etiquetas: o custo da etiqueta de RFID tem caído constantemente com o aumento da demanda. No momento, o uso das etiquetas ainda é recomendado somente para produtos de alto valor agregado, ou conjuntos (como pallets) de produtos. Uma regra geral é que a etiqueta não deve ultrapassar 1% do preço final do item.

Leitores RFID: existem leitores na faixa de R$ 2000-3000, o que normalmente não representa um valor excessivamente alto em um projeto. Durabilidade das Etiquetas e Leitores: deve-se avaliar a durabilidade do equipamento comprado, já que itens de qualidade inferior serão facilmente danificados em ambientes mais agressivos como os de alguns armazéns. O custo de troca e manutenção pode ser mais alto do que a diferença de equipamento de boa qualidade.

Software, Integração e Data Warehousing: este é um dos principais custos do projeto, podendo variar de algumas centenas de milhares de reais até milhões. Como qualquer investimento em TI, deve-se ter muito cuidado na escolha do fornecedor para evitar grandes dores de cabeça no futuro. Pode ser necessária uma forte mudança ou atualização dos sistemas existentes em toda a cadeia de suprimento.

Processos Organizacionais: a mudança na captura de dados envolve mudanças em diversos processos da empresa, não somente na logística, mas em toda a operação da organização. Estas alterações são importantes não só para o funcionamento do projeto de RFID, mas também para seu máximo aproveitamento.

Requerimentos Computacionais: instalar equipamentos de informática mais robustos não é muito complicado em um armazém, mas pode ser impeditivo ao longo da cadeia de suprimento (por exemplo, se o projeto prevê o uso do RFID nos pontos de venda).

Vantagens em utilizar a tecnologia RF ID
  • Capacidade de armazenamento, leitura e envio dos dados para etiquetas ativas;
  • Leitura sem necessidade de proximidade do leitor para a captação dos dados;
  • Robustez das etiquetas com possibilidade de reutilização;
  • Precisão na transferência de dados e velocidade no envio dos mesmos;
  • Localização dos itens ainda em processos de busca;
  • Prevenção contra roubos e falsificação de mercadorias;
  • Coleta de dados de animais ainda no campo.
Desvantagens em utilizar a tecnologia RF ID
  • O custo elevado da tecnologia RFID, uma etiqueta inteligente custa nos EUA cerca de 25 centavos de dólar, na compra de um milhão de chips. No Brasil, segundo a Associação Brasileira de Automação, esse custo sobe para 80 centavos até 1 dólar a unidade;
  • O preço final dos produtos, pois a tecnologia não se limita apenas ao microchip anexado ao produto. Por trás da estrutura estão antenas, leitoras, ferramentas de filtragem das informações e sistemas de comunicação;
  • O uso em materiais metálicos e condutivos pode afetar o alcance de transmissão das antenas. Como a operação é baseada em campos magnéticos, o metal pode interferir negativamente no desempenho;
  • A padronização das frequências utilizadas para que os produtos possam ser lidos por toda a indústria, de maneira uniforme.
  • A invasão da privacidade dos consumidores por causa da monitoração das etiquetas coladas nos produtos.
  • Possível sobreposição de sinais, deixando a tag incapaz de responder a dois ou mais leitores simultaneamente.

quinta-feira, 25 de outubro de 2012

TED::ideas worth spreading

[Contribuição de Ricardo Gomes França]

O site TED (www.ted.com), ideias que valem a pena divulgar, tem vários assuntos legais.

Embora nem sempre o conteúdo tenha legenda em português, vale assim mesmo entrar e olhar as palestras. que em geral duram algo em torno de 20 minutos (toda vez que vejo uma palestra interessante, não vejo motivo para não vê-la quando é curta, já que tempo é sempre uma desculpa que todo mundo usa quando não vê/lê alguma coisa).

Sugestões:

Bom proveito!



quarta-feira, 17 de outubro de 2012

Apache Hadoop

O Apache Hadoop é projeto open-source para desenvolvimento de sistemas de computação escalável, confiável e distribuída.

O biblioteca de software do Apache Hadoop é uma estrutura que permite o processamento distribuído de grandes conjuntos de dados através de clusters de computadores usando modelos simples de programação. Foi projetada para evoluir de um único servidor para um conjunto milhares de máquinas, cada uma oferecendo processamento e armazenamento local.
Em vez de depender de hardware específico para obtenção de disponibilidade elevada, a própria biblioteca foi concebida para detectar e tratar falhas na camada de aplicação, de modo fornecer um serviço altamente disponível no topo de um grupo de computadores, onde cada um deles pode ser propenso a falhas, isto é, pode ser uma máquina dotada de hardware comum.
O projeto inclui vário módulos, entre eles:
  • Hadoop Common: utilitários comuns que suportam os outros módulos Hadoop.
  • Hadoop Distributed File System (HDFS): Um sistema de arquivos distribuídos que oferece alto rendimento no acesso aos dados da aplicação.
  • Hadoop YARN: um framework de programação e gestão de recursos de cluster.
  • Hadoop MapReduce: Um sistema baseado no YARN para processamento paralelo de grandes conjuntos de dados.
É uma plataforma muito interessante! Veja mais em: http://hadoop.apache.org/

sexta-feira, 12 de outubro de 2012

Xtend::modernize sua codificação Java!

Xtend é uma pequena linguagem que é compilada como código fonte Java. Você pode usar qualquer biblioteca Java existente sem problemas no Xtend (e vice-versa). A saída compilada é legível, impressa bonitinha e tende a se executada tão rápida ou mais do que o código Java manuscrito equivalente. É o CoffeeScript para Java!

Tecnicamente Xtend é uma linguagem de programação estaticamente tipada que é compilada em código-fonte Java compreensível.

É desenhada para trabalhar bem com APIs Java existentes e idiomas Java. Ainda introduz novas características para modernizar aplicações Java. É mais rápida que o Groovy, mais simples que Scala e incorpora todos os benefícios do Java como grande suporte para ferramentas de desenvolvimento.

Veja mais em .

domingo, 7 de outubro de 2012

sábado, 6 de outubro de 2012

[*]O que é o Google App engine?

Plataforma de computação em nuvem para desenvolver e hospedar aplicações Web na infraestrutura do Google.
. Facilidades
   - Disponibilidade de recursos
   - Gratuito
   - Rapidez no desenvolvimento
   - Despreocupação com hardwares, patches ou backups.
   - Entre outros...
. Linguagens
   - Java padrão (JVM), Servlets Java
   - Python e Biblioteca Python
  - Go Runtime Environment (Linguagem própria do Google)

[*]Por que o Google App Engine?

       Serviço da web dinâmico, com suporte completo a tecnologias da web comuns
       Armazenamento persistente com consultas, classificação e transações
       Escalonamento e balanceamento de carga automáticos
       APIs para autenticação de usuários e envio de e-mails usando Contas do Google
       Ambiente de desenvolvimento local com todos os recursos, simulando o Google App Engine em seu computador
       Filas de tarefas para realizar trabalho fora do escopo de uma solicitação da web
       Tarefas programadas para iniciar eventos em horários específicos e em intervalos regulares

A confiabilidade, o desempenho e a segurança da infraestrutura do Google
Altamente confiável e infraestrutura de alto desempenho.
Mesmas políticas de segurança, privacidade e proteção de dados do Google
Fornece APIs para Serviços como: Busca de URLs, E-mails, Manipulação (Basica) de imagens

Hospedagem econômica
Inicialmente gratuito, podendo adquirir mais recursos
500 MB de armazenamento e 5 milhões de visualizações de página mensais, até 10 aplicativos por conta

[*]Google App Engine

Trabalho e Apresentação apresentados quinta-feira, 04/10/2012

Gartner questiona benefícios de plataforma de nuvem open source


Gartner questiona benefícios de plataforma de nuvem open source

Consultoria afirma que tecnologia OpenStack tem problemas de interoperabilidade. Fundação OpenStack se defende das críticas.

ComputerWorld (Espanha) 5/12/2012 - 07h30

sexta-feira, 28 de setembro de 2012

quarta-feira, 26 de setembro de 2012

[*]Criando uma Aplicação no Azure

Antes de iniciar, siga os passos e verifique se os itens a seguir estão ativados.

1.       Clique em Iniciar, escolha a opção Painel de Controle
2.       Selecione Programas e Recursos
3.       Ativar ou Desativar recursos do Windows
4.       Dentro da pasta Microsoft .NET Framework, selecione Windows Communication Foundation HTTP Activation.
5.       Dentro da pasta Serviços de Informações da Internet expanda a pasta Serviços da  World Wide Web
6.       Expanda a pasta Recursos de Desenvolvimento de Aplicativos e selecione ASP.NET
7.       Na pasta recursos HTTP selecione Conteúdo Estático
8.       Clique em OK e aguarde a atualização

Começando a utilizar o Azure.

Caso você não tenha nenhum programa do tipo .NET, PHP ou JAVA, acesse o link https://www.windowsazure.com/en-us/develop/downloads/

e escolha o programa de sua preferência, o download feito a partir de algum dos links destacado a cima já vem com todos os requisitos necessários para configurar o Azure  caso já tenha algum desses programas será necessário instalar o Windows Azure SDK.
  
Pare ter acesso a pagina de gerenciamento de aplicativos será necessário criar uma conta no Azure,
Caso já tenha uma conta da Microsoft (Hotmail), poderá utiliza-la, lembrado que será solicitado também o número do cartão de crédito.
Após ter sua conta devidamente criada vocês terão acesso a esta página

Depois disso é só acompanhar o tutorial nesse link,
Nesse tutorial será criado um website com uma interface e um Banco de Dados pré-desenvolvida pelo Visual Studio.


Fontes:



Dicas para fazer apresentações!

Sim! Fazer uma apresentação não é fácil, mas sempre é possível melhorar!

Vejam dicas fantásticas (e simples e divertidas) neste material!

[slideshare id=14346182&doc=yousuckatpowerpoint-byjessedee-120919102217-phpapp01]

Computação Distribuída e Paralela::Implementação do Grid BOINC


[slideshare id=1627198&doc=paperspd-090623132351-phpapp02&type=d]

sexta-feira, 21 de setembro de 2012

sexta-feira, 14 de setembro de 2012

What is World Community Grid?

[*]Windows Azure


É o sistema operacional para serviços na nuvem que é utilizado para o desenvolvimento, hosting e gerenciamento dos serviços dentro do ambiente da plataforma Azure. O Windows Azure provê computação e armazenamento por demanda, com a finalidade de hospedar (Hosting), escalar e gerenciar aplicações Web e serviços através da Internet dentro dos data-centers da Microsoft. A plataforma Windows Azure é uma plataforma como serviços (PaaS – platform as a service) oferecendo recurso para computação de processos (Compute), armazenamento de objetos e dados (Storage), gerenciamento de serviços e recursos contratados (Management). Podemos destacar quatro grandes grupos de capacidades sobre a plataforma Windows Azure, a saber:
  • Windows Azure: com seus recursos para computação, hospedagem de aplicações e serviços, gerenciamento e armazenamento de dados de alta escalabilidade, via o Azure Storage;
  • SQL Azure: com seus recursos para relatórios, persistência de dados relacional, sincronização de dados com o ambiente on-premise e gerenciamento de dados na nuvem;
  • Windows Azure AppFabric: com seus recursos para gerenciamento e publicação de serviços, através do Service Bus, e controle de acesso, através do Access Control. Funcionalidades como o Azure AppFabric Caching oferecem recursos adicionais para aplicação na nuvem de alta performance.
  • Windows Azure DataMarket: finalmente, o Azure DataMarket oferece mecanismos diversos para billing, gerenciamento de pagamentos, subscrição, informações sobre serviços publicados e relatórios para o controle de aplicações oferecidas na nuvem.
Todos esses recursos podem ser consumidos ou utilizados por aplicações, hospedadas no próprio Windows Azure. Aplicações hospedadas no ambiente local (on-premise) de uma empresa também podem consumir esses serviços e recursos na nuvem, criando soluções híbridas poderosas.
Ainda, uma aplicação na plataforma Windows Azure pode se beneficiar de todos os recursos acima descritos, conforme a necessidade, num modelo de contratação conhecimento como “pay as you go”, ou seja, o usuário paga somente pelos recursos efetivamente contratados e utilizados na plataforma.
O SQL Azure
O SQL Azure é um conjunto de serviços que oferece capacidades de processamento e armazenamento de dados relacionais na nuvem, sobre a plataforma Windows Azure.
Usando o SQL Azure, as aplicações podem aproveitar recursos como persistência de dados, business intelligence, sincronização, replicação de dados, relatórios, data mining, etc., a partir de uma infraestrutura de alta escalabilidade e provisionamento dinâmico, que são características nativas de um ambiente em nuvem.
 Entre os benefícios do SQL Azure podemos destacar seu modelo de programação simétrico, que permite ao desenvolvedor trabalhar com o ambiente SQL Server 2008 local (on-premise) e o ambiente de dados do SQL Azure da mesma forma, aproveitando os mesmo recursos do .NET Framework. Outro benefício do SQL Azure é permitir o foco na aplicação, uma vez que o administrador de dados ou DBA – Database Administrator – não precisa se preocupar com atividades relacionadas à infraestrutura do ambiente SQL Azure, como:
  • Compra de repositório e espaço de armazenamento de dados para seu datacenter;
  • Configuração física e lógica de repositórios;
  • Dimensionamento de servidores;
  • Instalação e atualização de software de bancos de dados;
  • Diagnóstico e resolução de falhas de hardware, etc.;
O principal recurso do SQL Azure é sua capacidade de persistência de dados relacionais, da mesma forma que temos no SQL Server 2008 local (on-premise). Além do suporte ao modelo relacional, o serviço SQL Azure suporta acesso direto via ADO.NET, da mesma forma como ocorre em aplicações locais acessando dados em um banco SQL Server local, ou seja, de forma transparente para o desenvolvedor.

Modelo de Provisionamento
O SQL Azure suporta um modelo de provisionamento baseado em contas Azure com servidores e bases de dados (ou instâncias de SQL Azure), o que permite ao usuário do serviço a criação de bases de dados de 1 GB a 50 GB de espaço para armazenamento, permitindo ainda diversas combinações.
 Para o modelo de provisionamento do SQL Azure destacamos seus três componentes:
  • Account (conta): Cada conta Azure tem zero ou mais servidores contratados, sendo o instrumento principal para controle de Billing (pagamento);
  • Server (servidor): Cada servidor tem um ou mais bases de dados, sendo o container principal de nossas instâncias de bases. O servidor ainda contém metadados sobre as bases em uso e informações para autenticação. É através do servidor que nos conectamos em nossas bases de dados no SQL Azure, sendo a unidade de autenticação no modelo. Também, o servidor é a unidade de geo-localização, por onde controlamos o datacenter para hospedagem de nossas bases na plataforma Windows Azure, sendo também acessado através de um nome padrão DNS.
  • Database (base de dados): finalmente, cada database ou base de dados no SQL Azure possui os objetos SQL de nossas aplicações. É a unidade de consistência e multi-tenancy do modelo, contendo nossas informações de usuários, tabelas, views, índices, etc. A base de dados é a unidade granular básica para cobrança no SQL Azure.
Por exemplo, para a conta MyAccount, podemos ter um servidor de nome (Fully Qualified DNS name) xaqpblthd.database.windows.net, que conterá nossas bases de dados para aplicações MyDatabaseApp1 e MyDatabaseApp2.

Tamanho do Banco de Dados no SQL Azure
O SQL Azure oferece dois tipos básicos para contratação de uma base de dados na nuvem:
  • SQL Azure Web Edition – com tamanhos de 1 GB e 5 GB;
  • SQL Azure Business Edition – com tamanhos de 10, 20, 30, 40 e 50 GB;
Para cada limite de base de dados contratado, não consideramos dados de logs, master database, system tables, catálogos do servidor ou réplicas adicionais.
Até o fechamento deste artigo (Abril/2011), não é suportado o auto-particionamento de dados ou fan-out queries.
Isso significa que devemos tratar o particionamento lógico de dados a partir da aplicação, coordenando o uso de uma ou mais instância de base de dados SQL Azure quando necessário, num modelo conhecido como sharding.

O DESENVOLVIMENTO
O Windows Azure suporta as seguintes linguagens de programação: .Net 3.5 SP1 ou 4.0 ou superior, PHP, Ruby, Python e Java. Para desenvolver aplicações para o Azure é necessário um kit de desenvolvimento de software ou SDK, disponível para download no site da Microsoft. Esse kit emula todos os recursos do Azure localmente. Para desenvolver as aplicações é necessária a utilização do Visual Studio ou o Eclipse.

O MERCADO

O Azure não faz a venda dos aplicativos, mas para ajudar as empresas a Microsoft criou o Pinpoint. O Pinpoint é catálogo de aplicativos e soluções onde as empresas podem publicar seus produtos e os clientes possam descobri-los e contratá-los. Já são mais de 31 mil clientes utilizando o Windows Azure no mundo. Ainda não existem números consolidados no Brasil.
OS PLANOS

Agora que você já conheceu a plataforma, deve estar se perguntando: Quanto vai custar para eu ter acesso a todos estes recursos? Existem diversos planos, sendo alguns com quantidade mínima de horas contratadas e outros onde você paga pelo que usar variando entre US$ 0,05 e US$ 0,96 por hora dependendo da capacidade escolhida. Também existe uma versão para testes gratuita.
Embora a plataforma esteja disponível no Brasil é necessário fazer a aquisição dos planos do Windows Azure nos Estados Unidos. Por isso o pagamento é feito em dólares, sendo assim necessário um cartão internacional.
Para fazer a aquisição é muito simples, basta
 acessar www.azure.com escolher um plano e clicar em comprar. Caso não possua uma conta de cliente Microsoft será necessário criar uma.
 

O SUPORTE

Caso você encontre problemas ou dúvidas você poderá acessar os FAQs que abrangem os mais variados temas relacionados ao uso do serviço.(http://www.microsoft.com/brasil/windowsazure/faq/)
Se ainda restarem dúvidas você poderá acessar a página de suporte da plataforma e obter mais detalhes sobre os serviços do Azure. (
http://www.microsoft.com/windowsazure/support/)

SIMULAÇÃO DE CUSTO
Abaixo segue uma tabela com a estrutura aproximada de uma empresa de grande porte com aproximadamente 200 usuários ativos entre sistemas e rede com uma prévia da infra-estrutura, convidamos à todos para acessarem o Link: http://www.windowsazure.com/pt-br/pricing/calculator/?scenario=full e realizar uma simulação de custo desta empresa caso optassem pelo Windows Azure, acrescentamos que o valor de investimento aproximado para a aquisição, implementação, manutenção e substituições giram em torno de R$340.000,00 no ano, lembrando que boa parte do valor envolvido está relacionado com substituições e upgrades dos servidores físicos e parte dos Switchs.
DESCRIÇÃO
QUANTIDADE
ATIVOS DE REDE – ROTEADORES
4
ATIVOS DE REDE – SWITCH
48
ATIVOS DE REDE – SERVIDOR (FÍSICO)
21
SERVIDORES (VIRTUALIZADOS)
43
LARGURA DE BANDA
20 GB
DATABASE
130 GB
SQL REPORT (HORAS)
620
ACTIVE DIRECTORY
200

LINKS ÚTEIS


Blog da Microsoft sobre o Windows
http://blogs.msdn.com/b/windowsazure/ 

Blog da Microsoft sobre o SQL Azure
http://blogs.msdn.com/b/sqlazure/ 

Blog da Microsoft sobre o Azure AppFabric
http://blogs.msdn.com/b/windowsazureappfabric/ 

Básico do Windows Azure pela Microsoft
http://www.microsoft.com/showcase/pt/br/details/28a3a6a7-1f4d-4893-877b-1df619fefc81 

Vou de Azure
http://www.voudeazure.com.br/ 

Fórum de discussão sobre Azure e Cloud Computing
http://azureservicesbr.ning.com/ 

Blog do Luciano Condé
http://blogs.msdn.com/b/conde/ 

Zetks Cards
O que é Windows Azure (Microsoft)

MSDN
Vídeos relacionados

Mais vídeos

quarta-feira, 12 de setembro de 2012

[*]Amazon EC2 (Elastic Cloud Computing)

O que é?

Amazon Elastic Cloud Computing (Amazon EC2) é um serviço da Web que fornece uma capacidade de computação redimensionável na nuvem. É projetado para tornar a escalabilidade computacional de nível de web mais fácil para desenvolvedores. A interface simples de serviço da Web do Amazon EC2 permite que você obtenha e configure a capacidade com mínima fricção. Oferece um controle completo de seus recursos computacionais e permite que você trabalhe no ambiente computacional comprovado da Amazon. O Amazon EC2 reduz o tempo exigido para obter e inicializar novas instâncias do servidor em minutos, permitindo que você rapidamente escalone a capacidade, para mais e para menos, à medida que os requisitos de computação forem alterados. O Amazon EC2 altera a economia da computação ao permitir que você pague somente pela capacidade que realmente utilizar. O Amazon EC2 fornece aos desenvolvedores as ferramentas para construir aplicativos resistentes a falhas e isolá-los de situações de falha comuns.

Como Funciona?

O Amazon EC2 apresenta um verdadeiro ambiente de computação virtual, permitindo que você utilize interfaces de serviço web para iniciar instâncias com uma variedade de sistemas operacionais, carregue-os com seu ambiente de aplicativo personalizado, gerencie permissões de acesso da sua rede e execute sua imagem usando o número de sistemas que você desejar.
Para usar o Amazon EC2, você simplesmente deve:
  • Selecionar um modelo de Amazon Machine Image (AMI) pré-configurada, para começar a usar o serviço imediatamente. Ou crie uma AMI contendo suas aplicações, bibliotecas, dados e definições de configuração associadas.
  • Configurar a segurança e o acesso à rede em sua instância Amazon EC2.
  • Escolher o(s) tipo(s) de instância(s) desejado(s), em seguida, inicie, finalize e monitore quantas instâncias de seu AMI forem necessárias, usando as APIs de serviço web ou a grande variedade de ferramentas de gerenciamento fornecidas.
  • Determinar se você deseja executar em vários locais, utilizar os pontos de extremidade de IP estáticos ou o armazenamento persistente em bloco de conexão para suas instâncias.
  • Pague somente pelos recursos que você realmente utilizar, como transferência de dados ou instância-horas.
Vantagens:

Elastic – O Amazon EC2 permite que você aumente ou diminua a capacidade em minutos e não horas ou dias. É possível comissionar uma, centenas ou até milhares de instâncias do servidor simultaneamente. Naturalmente, como tudo é controlado com os serviços de APIs da web, o aplicativo pode automaticamente se expandir ou se reduzir, dependendo de suas necessidades.

Completamente controlado – Você tem controle total de suas instâncias. Você tem acesso à raiz de cada uma e pode interagir com elas como faria com qualquer máquina. Você pode interromper sua instância, mantendo os dados em sua partição de inicialização e posteriormente reiniciar a mesma instância usando as APIs de serviços web. As instâncias podem ser reiniciadas remotamente usando as APIs de serviços web. Você também tem acesso ao console de saída de suas instâncias.

Flexibilidade – Você pode escolher tipos de várias instâncias, sistemas operacionais e pacotes de software. O Amazon EC2 permite que você selecione uma configuração de memória, CPU, armazenamento de instância e tamanho da partição de inicialização que seja ideal para a sua opção de sistema operacional e aplicativos. Por exemplo, sua escolha de sistemas operacionais inclui várias distribuições de Linux e Microsoft Windows Server.

Projetado para uso com outros Amazon Web Services – O Amazon EC2 trabalha em conjunto com o Amazon Simple Storage Service (Amazon S3), o Amazon Relational Database Service (Amazon RDS), o Amazon SimpleDB e o Amazon Simple Queue Service (Amazon SQS ) para fornecer uma solução completa de computação, processamento de consulta e armazenamento de uma ampla variedade de aplicativos.

Confiável – O Amazon EC2 oferece um ambiente altamente confiável, no qual a substituição de instâncias pode ser rápida e previamente encomendada. O serviço é executado dentro da infraestrutura comprovada de rede da Amazon e Datacenters. O compromisso do Acordo de Nível de Serviço do Amazon EC2 é disponibilidade de 99,95% para cada região do Amazon EC2.

Segurança – O Amazon EC2 fornece vários mecanismos para proteger seus recursos de computação. O Amazon EC2 inclui interfaces de serviços da web para configurar o firewall que controla o acesso de rede para os grupos de instâncias e entre eles.

Ao iniciar os recursos do Amazon EC2 no Amazon Virtual Private Cloud (Amazon VPC), você pode isolar suas instâncias computacionais, especificando a faixa de IP que você deseja usar e conectar à sua infraestrutura de TI existente usando o padrão da indústria VPN Ipsec criptografado.

Você também pode optar por iniciar Instâncias dedicadas em seu VPC. Instâncias dedicadas são instâncias do Amazon EC2 que são executadas em hardwares dedicados a um único cliente para isolamento adicional.

Econômico – O Amazon EC2 repassa para você os benefícios financeiros do dimensionamento da Amazon. Você paga uma taxa muito baixa pela capacidade computacional que você realmente irá utilizar.

Instâncias On-Demand – As instâncias On-Demand permitem que você pague pela capacidade computacional por hora, sem compromissos em longo prazo. Isso exime você dos custos e das complexidades de planejamento, aquisição e manutenção de hardware e transforma o que normalmente são grandes custos fixos em custos variáveis muito menores. As Instâncias On-Demand também eliminam a necessidade de se comprar uma "rede de segurança" com capacidade de lidar com repiques de tráfego periódicos.

Instâncias Reservadas – As Instâncias Reservadas lhe dão a opção de fazer um pagamento único e acessível para cada instância que você deseja reservar e, por sua vez, você recebe um desconto significativo sobre a taxa por hora para essa instância. Existem três tipos de Instância Reservada (Instâncias Reservadas de Utilização Leve, Média e Pesada) que permitem equilibrar o valor inicial pago e o preço efetivo da hora.

Instância Spot – As Instâncias Spot permitem aos clientes negociarem a capacidade não utilizada do Amazon EC2 e executarem essas instâncias durante o período em que sua oferta exceder o Preço Spot atual. O Preço Spot muda periodicamente com base no fornecimento e na demanda, e os clientes cuja proposta atende-o ou ultrapassa-o ganham acesso às Instâncias Spot disponíveis. Se você tem flexibilidade sobre quando os seus aplicativos podem ser executados, as Instâncias Spot podem reduzir significativamente seus custos no Amazon EC2.

Para que serve?

O Amazon EC2 (Elastic Compute Cloud) é um serviço que permite ao usuário alugar os recursos computacionais da Amazon e rodar uma máquina virtual sobre os datacenters deles. Na prática isso quer dizer que você ganha uma máquina (cujo hardware você escolha dentre várias categorias de "poder") sobre a qual você tem total controle. Pode instalar qualquer sistema operacional, acessar remotamente e usá-la para qualquer propósito.

Virtual Core:

Virtual Core é o nome dado à cada unidade correspondente a 1.7GB de memória e 160GB de armazenamento.A Amazon calcula a capacidade computacional por hora utilizada pelo cliente, usando como resultado a unidade Virtual Core e então realiza a cobrança, porém existem vários planos diferentes de cobranças, no seguinte link pode-se consultá-los: http://aws.amazon.com/pt/ec2/pricing/

Empresas que utilizam o ECS:


Referências


Curiosidade

Notícias da invasão contra Sony realizada com uso do EC2: