PaaS ou SaaS, qual usar nos seus projetos de Internet das Coisas no Azure?
Internet das Coisas tem sempre, no mínimo, três pilares de trabalho, sendo o primeiro hardware, o segundo comunicação e ingestão de mensagem e o terceiro, as vezes não o último, sendo o processamento e análise dos dados. E para que você tenha seu dispositivo devidamente conectado um caminho a ser percorrido pode sempre ser facilitado pelas “plataformas” ou pelos “serviços”, economizando um bom tempo e consequentemente, diminuindo custos e o time-to-market.
PaaS, a sigla de plataforma como serviço, entrou no dia a dia da tecnologia com a chegada da computação em nuvem e a facilidade de você contratar uma plataforma que engloba infraestrutura, software e conectividade e é ofertada como um serviço, onde você se utiliza e não se preocupa com a gestão dos itens internos. Já SaaS, é o nirvana quando pensamos em trabalho de gestão, pois pagamos pelo uso realmente, como um e-mail, um streaming de música ou nossa TV a cabo, e analogamente a estes exemplos, nos preocupamos somente em consumir, o que acontece por trás não nos interessa.
Em IoT temos a mesma possibilidade, e no ambiente Microsoft possuímos dois nomes para estes cenários, o primeiro deles é o IoT Central, o SaaS para IoT, nele podemos iniciar uma operação até 5 dispositivos sem custo e uma escala decrescente de valores que se iniciam em $2,00 por dispositivo e para um grande volume chegamos perto de $0,50. Mas, o que é este serviço? IoT Central é um serviço que se baseia em ingerir dados de dispositivos, físicos ou virtuais, que torna seu tempo de entrada em produção praticamente próximo de zero. O melhor se dá pela facilidade em iniciar a operação sem conhecimento técnico para desenvolvimento das conexões internas de rotas de mensagens, criação de dashboards, gestão de ambientes de dados e outros que teríamos em um começo de operação de IoT. No IoT Central o controle se dá por meio e configurações no portal do serviço e chaves distribuídas para a conexão dos dispositivos, posteriormente você configura os gatilhos, alarmes da telemetria e os fluxos de dados para as ações. São minutos para levantar um gatilho que gera um e-mail em caso de parada de um motor por exemplo. Claro que estes custos tem um volume definido de mensagens e alguns engessamentos, o que não impede o usuário de ter integrações externas dentro do ambiente do Azure por meio de mensagens ou códigos.
Por outro lado, para projetos mais complexos ou com modelos de operação que não se encaixem na precificação, temos dois caminhos a seguir, ambos com o uso da plataforma de ingestão de dados e gestão de dispositivos, o IoT Hub. Vale ressaltar que o IoT Hub, não é uma plataforma de mensagens somente, como seria um broker de mensagens, ele opera, além da mensageria, toda a gestão do ciclo de vida de um dispositivo, o que torna seu custo atrativo e extremamente competitivo frente a outras opções de mercado. Com o IoT Hub, você tem a plataforma de entrada, ele vai gerir a conectividade vinda da borda, podendo inclusive controlar ela também, pois, uma vez que a mensagem chegou, ou o arquivo foi enviado do campo, o problema de dar andamento é seu. Rotas, serviços de processamento, dados que tem que ser tratados próximo ao tempo real ou os que alimentam, os algoritmos de aprendizado são de sua responsabilidade, inclusive a geração de alarmes e gatilhos. Nada que seja tão complexo quanto parece, porém dá trabalho e requer monitoramento constante, além de uma arquitetura eficiente para evitar gastos desnecessários.
Mas e se você quiser um setup pronto de uma arquitetura? Existem aceleradores com templates prontos para esta tarefa, às vezes se encaixam perfeitamente bem e geram um custo que viabiliza o projeto. Outras vezes, de acordo com as especificidades do projeto, é necessária uma arquitetura diferente.
Temos diversas opções hoje, tenho trabalhado junto aos nossos clientes com todo o ambiente da Microsoft e podemos dizer que tem solução para tudo, com tempo de virada de chave extremamente rápido, mas o trabalho de arquitetura a cada dia que passa e de acordo com o volume se faz cada vez mais necessário. PaaS, SaaS ou PaaS com templates unindo outros serviços? Como temos visto em vários cenários, todas as soluções são muito boas e tem custos muito adequados, porém, cada caso é um caso. Antes de aderir a uma delas, entenda bem o seu cenário e qual sua previsão de crescimento, isto será muito importante para que a decisão não seja tomada pensando no agora e inviabilize o projeto no futuro.
Texto: Jorge Maia