Skip to content

Serverless App + Azure Cognitive Services: Emotion meter for 2016 Olympics

Notifications You must be signed in to change notification settings

panazzo/olympics-meter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

#AzureSolutionlet - Aplicação sem servidores + Serviços Cognitivos

##Olympics-Meter Análise de sentimento sobre seu país durante as olimpíadas do Rio de 2016.

Azure Solutionlets são soluções rápidas para problemas que podem ser resolvidos com pequenos deploys, utilizando o Microsoft Azure. Neste app, você aprenderá a criar e publicar uma aplicação distribuída que não necessita de servidores e utiliza os serviços cognitivos da Azure.

##Macro arquitetura:

##Links importantes:

Passo 0: Criar conta trial do Microsoft Azure

Acesse https://azure.microsoft.com/pt-br/pricing/free-trial/ e clique no botão Teste agora:

Logue-se com uma conta Microsoft (hotmail, live, etc). Em seguida, preencha seus dados. É necessário um telefone celular para verificar sua identidade, bem como um cartão de crédito válido. Após ler os termos e, caso concorde com eles, cheque Eu concordo..." seguido do clique em Inscrever-se:

Você será uma levado a uma página onde deve aguardar alguns instantes até que sua subscrição esteja pronto para uso. Uma vez pronta, clique no botão verde para continuar e ser levado à tela inicial do Microsoft Azure:

Passo 1: Executando o projeto

Clone este projeto em sua máquina e abra o Index.html com seu browser preferido. A página deve abrir, porém os dados que dependem dos serviços não serão carregados por que devemos configurar os endpoints das APIs.

Passo 2: Criando uma conta de Storage no Azure

Para criar uma nova conta de Storage, no menu lateral de seu dashboard no Azure, clique em New > Data + Storage > Storage Account. Insira informações como nome, assinatura e resource group. Você poderá criar um resource group durante a configuração da sua conta de storage ou selecionar um resource group já existente.

Anote a região que a conta de Storage foi criada. Para utilizar a mesma conta de Storage no Azure Functions eles devem estar na mesma região

Passo 3: Tabelas para armazenamento dos dados

Depois de criar uma nova conta de Storage, vamos criar uma tabela para armazenar os dados dos países e uma tabela para armazenar a chave de acesso ao Azure cognitive services. Abaixo está o comando para criar as tabelas utilizando Azure Cli, mas você pode escolher outras abordagens de administração.

export AZURE_STORAGE_ACCESS_KEY=<CHAVE DE ACESSO>
export AZURE_STORAGE_ACCOUNT=<NOME DA CONTA DE STORAGE>

Com a conta de Storage devidamente configurada, agora temos acesso para criar as tabelas

azure storage table create Country
azure storage table create Keys

Para garantir que as tabelas foram criadas com sucesso, liste todas e verifique

azure storage table list

Caso queira pré-popular a tabela de países, importe o arquivo country.csv para a tabela Country. Configure todas as colunas como string

Passo 4: Back-end : Azure functions

Para criar um novo Function App, no menu lateral de seu dashboard no Azure, clique em New > Web + Mobile > Function App. Insira informações como nome, assinatura, resource group e storage account.

Crie o serviço de Azure Functions na mesma região da conta de Storage para que eles fiquem acessíveis.

Passo 5: Publicando as funcões de back-end

Para publicar as funções você pode copiar e colar as funções do projeto clonado na sua maquina ou configurar a integração contínua a partir de algum serviço de repositório. Abaixo a configuração foi feita a partir do GitHub. Clique em Sync para garantir.

Com as funções criadas, edite a aba Integrate para configurar a sua conta de Storage, para que ela fique acessível a partir da função.

Copie os endpoints das APIs geradas para configurarmos o front-end

Passo 6: Front-end : Arquivos estáticos (HTML, JS e CSS)

Agora que temos os endpoints das APIs geradas, vamos editar o arquivo Site > JS > olympics.js.

var APIContry = "<ENDPOINT DA API COUNTRY>"
var APIMessage = "<ENDPOINT DA API MESSAGE>"

Depois de criar uma nova conta de Storage, vamos publicar os arquivos do front-end em um container Blob, que ficará acessível ao público. Para isso clique em Blob > + Container. Insira o nome do seu aplicativo para gerar sua URL pública de acesso ao web app, e no Access type, selecione Blob.

Agora vamos publicar os arquivos estáticos no nosso container Blob. Isso pode ser feito de diversas maneiras como API Rest, Azure Cli, entre outros. Para usuários de MacOS, uma das maneiras é utilzar o cliente Microsoft Azure Storage Explorer (http://storageexplorer.com/). Nele você pode configurar as chaves da sua conta de storage e publicar seus arquivos com uma interface parecida a de um FTP.

Passo 7: Serviços cognitivos : Text Analytics

O último serviço que falta criar na aplicação é o Azure cognitive services. Para criar um novo Cognitive services, no menu lateral de seu dashboard no Azure, clique em New > Data + Analytics > Cognitive Services. Insira informações como nome, assinatura e resource group. Em API Type, selecione Text Analytics.

Por fim, vamos cadastrar a chave de acesso na tabela de chaves. Isso pode ser feito de diversas maneiras como API Rest, Azure Cli, entre outros. , Para usuários de MacOS, uma das maneiras é utilzar o cliente Microsoft Azure Storage Explorer (http://storageexplorer.com/). Nele você editar as tabelas na sua conta de storage.

Parabéns! Sua aplicação está funcionando, e sem servidores!

About

Serverless App + Azure Cognitive Services: Emotion meter for 2016 Olympics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published