Otimização de custos em sua carga de trabalho de IoT
A relação custo-benefício é um dos principais fatores de sucesso para projetos de IoT. Em uma solução típica de IoT, os dispositivos geram grandes quantidades de telemetria que enviam para a nuvem para que as tecnologias de nuvem processem e armazenem. A maneira como você desenvolve dispositivos e aplicativos, lida com grandes volumes de dados e projeta sua arquitetura afeta os custos gerais.
Como uma solução de IoT é uma pilha de tecnologia multicamadas, há muitos fatores de economia de custos a serem considerados e muitas oportunidades para otimizar custos. A otimização de custos é um processo de controle de custos de circuito fechado que precisa ser monitorado, analisado e aprimorado continuamente ao longo do ciclo de vida da solução.
Os requisitos da solução são os principais critérios para decisões de arquitetura de IoT. É possível separar os requisitos em requisitos funcionais e operacionais. Separe as considerações de custo para cada tipo de requisito, pois os requisitos funcionais determinam o design do sistema, enquanto os requisitos operacionais afetam a arquitetura do sistema. Desenvolva vários casos de uso com base nos requisitos e compare-os antes de finalizar seu design.
Este artigo apresenta considerações de custo para várias combinações de serviços e tecnologias do Azure IoT. Para otimização de custos para setores específicos ou casos de uso, como fábricas conectadas, manutenção preditiva ou monitoramento remoto, consulte Arquiteturas de referência do Azure IoT específicas do setor.
Avalie a otimização de custos em sua carga de trabalho de IoT
Para avaliar sua carga de trabalho de IoT por meio das lentes do pilar Otimização de Custos do Well-Architected Framework, conclua as perguntas de otimização de custo para cargas de trabalho de IoT na Revisão do Azure Well-Architected. Depois que a avaliação identificar as principais recomendações de otimização de custos para sua solução de IoT, use o conteúdo a seguir para ajudar a implementar as recomendações.
Princípios de design
Cinco pilares de excelência arquitetônica sustentam a metodologia de design de carga de trabalho de IoT. Esses pilares servem como uma bússola para decisões de design subsequentes nas principais áreas de design de IoT. Os princípios de design a seguir estendem o pilar de qualidade do Azure Well-Architected Framework – Otimização de Custos.
Princípio de design | Considerações |
---|---|
Desenvolva a disciplina de gerenciamento de custos | Entenda o custo total de propriedade (TCO) contabilizando os custos diretos e indiretos ao planejar. |
Use estratégias e abordagens padrão do setor | Para setores específicos de IoT com seus próprios ecossistemas, por exemplo, manufatura, energia e meio ambiente ou automotivo e transporte, use estratégias e abordagens padrão do setor. |
Design para otimização de taxa | Defina planos de implementação para cada camada de arquitetura de IoT. |
Monitore e otimize ao longo do tempo | Monitore e otimize os custos com atividades contínuas de otimização de custos depois de implementar sua solução. |
TCO (custo total de propriedade)
Os custos de IoT são uma compensação entre várias opções de tecnologia. Às vezes, não é uma comparação simples, porque a IoT é um sistema de ponta a ponta. Considere os benefícios de custo da sinergia ao reconciliar vários serviços e tecnologias. Por exemplo, você pode usar os dispositivos gêmeos do Hub IoT do Azure para lidar com eventos nos Gêmeos Digitais do Azure. Os Dispositivos Gêmeos no Hub IoT estão disponíveis apenas na camada padrão do Hub IoT.
É importante estimar corretamente os custos agregados de longo prazo. Revise as pilhas de tecnologia IoT e desenvolva um modelo de custo que inclua os custos para implementar e operar todos os serviços envolvidos. A Calculadora de Preços do Azure ajuda a estimar os custos operacionais e de inicialização.
Em algumas áreas, um custo único pode ser mais eficaz do que os custos recorrentes. Por exemplo, em segurança em que as técnicas de hacking estão sempre mudando, pode ser melhor importar um sistema operacional comercial confiável e um módulo, como o Azure Sphere. Para um pagamento único, esses serviços fornecem patches de segurança mensais contínuos do dispositivo.
Estime os custos da solução com base na execução em escala na produção, não na arquitetura de PoC (prova de conceito). A arquitetura e os custos evoluem rapidamente após o PoC. De acordo com o relatório IoT Signals EDITION 3, o principal motivo para a falha do PoC é o alto custo de dimensionamento. O alto custo de dimensionamento de projetos de IoT vem das complexidades da integração entre camadas, como dispositivos, conectividade de borda e compatibilidade entre aplicativos.
Seu modelo de custo deve incluir as seguintes áreas:
Dispositivos: começando com um número limitado de dispositivos conectados, estime o crescimento no número de dispositivos implantados e seus padrões de mensagens. Tanto os dispositivos quanto as mensagens podem ter crescimento linear ou não linear ao longo do tempo.
Infraestrutura: para avaliar os custos de infraestrutura, considere primeiro o básico: armazenamento, computação e rede. Em seguida, considere todos os serviços de que sua solução precisa para ingerir, sair e preparar dados.
Operações: inclua custos operacionais de longo prazo que aumentam em paralelo com os custos de infraestrutura, como empregar operadores, fornecedores e equipes de suporte ao cliente.
Monitoramento: Monitore e revise continuamente os custos para identificar lacunas entre os custos planejados e reais. Uma reunião regular de revisão de custos ajuda a alcançar a otimização de custos.
Camadas da arquitetura de IoT
Os princípios de design de otimização de custos ajudam a esclarecer as considerações para garantir que sua carga de trabalho de IoT atenda aos requisitos nas camadas básicas da arquitetura de IoT.
Entender as camadas de arquitetura de IoT ajuda a definir uma linha de base de custo e considerar várias arquiteturas para comparação de custos. Cada camada tem várias opções de tecnologias e ecossistemas, como dispositivos, telecomunicações ou o local de borda, portanto, você precisa estabelecer uma estratégia de custo para cada camada.
As camadas principais da IoT: dispositivo e gateway, gerenciamento e modelagem de dispositivos e ingestão e comunicação, identificam soluções específicas de IoT. As outras camadas e atividades transversais também são comuns e muitas vezes compartilhadas com outras cargas de trabalho. No entanto, o TCO e a otimização de custos devem levar todos os custos em consideração, portanto, você precisa considerar os custos relacionados à IoT de atividades comuns e transversais, bem como as camadas específicas da IoT.
Camada de dispositivo e gateway
Essa camada é responsável por gerar, em alguns casos otimizar e transferir dados para a nuvem. O custo é uma consideração importante para projetar essa camada. A otimização de custos deve levar em conta todo o ciclo de vida do dispositivo de planejar, provisionar, configurar, monitorar e desativar.
As soluções de borda exigem que os dispositivos IoT sejam implantados em campo. A implantação pode precisar de infraestrutura de rede e fonte de alimentação que afete os custos. A infraestrutura pré-existente pode minimizar os custos de instalação, mas pode exigir a garantia de que a instalação não afete os sistemas existentes.
O desenvolvimento ou instalação de dispositivos IoT pode exigir treinamento e contratação de pessoal interno ou externo dedicado. As habilidades necessárias incluem design de hardware, desenvolvimento de aplicativos incorporados, conectividade local e em nuvem, segurança e privacidade e arquitetura de soluções de IoT. Conhecimentos específicos do setor também podem ser necessários. Inclua esses custos nos custos gerais do dispositivo.
Os custos do dispositivo incluem a organização da logística, como armazenamento, gerenciamento de estoque e transporte. Inclua o custo de quaisquer atividades de descomissionamento quando os dispositivos atingirem o fim de seu ciclo de vida operacional.
Para dispositivos conectados à nuvem, otimize as transmissões de dados para manter os limites de custo. As estratégias incluem minimizar o tamanho da carga útil, enviar mensagens em lote e transmitir fora dos períodos de pico. Essas otimizações também incorrem em custos de implementação.
Para saber mais sobre dispositivos IoT do Azure, confira:
- Visão geral dos tipos de dispositivo de Internet das Coisas do Azure
- Práticas recomendadas para configuração do dispositivo em uma solução de IoT
Seleção de hardware
A maior parte do processo de desenvolvimento do dispositivo depende da seleção de hardware. Uma decisão de fazer ou comprar dispositivos leva em consideração fatores qualitativos, como certificação WiFi, e fatores quantitativos, como lista de materiais, custo e tempo de lançamento no mercado. A escolha entre hardware pronto para uso ou um design personalizado afeta o custo do dispositivo IoT e o tempo de lançamento no mercado.
Os dispositivos prontos para uso podem custar mais por unidade, mas têm custos e prazos de entrega previsíveis. Dispositivos prontos para uso também eliminam a necessidade de gerenciamento complexo da cadeia de suprimentos.
Os dispositivos personalizados podem reduzir os custos unitários, mas envolvem tempo de desenvolvimento e incorrem em custos de engenharia não recorrentes, como design, teste, envios de certificação e fabricação.
Componentes ou módulos de sistema pré-certificados podem reduzir o tempo de lançamento no mercado e criar um dispositivo semi-personalizado, mas são mais caros do que chips discretos. Você precisa fornecer recursos adequados para a cadeia de suprimentos e o gerenciamento de estoque.
O catálogo de dispositivos certificados pelo Azure oferece dispositivos que funcionam bem com o Azure IoT e podem ajudar a reduzir os custos e o tempo de lançamento no mercado. Você se concentrará em projetar e arquitetar a solução de IoT com a flexibilidade de selecionar o hardware de uma extensa lista de dispositivos certificados. Os dispositivos IoT Plug and Play podem reduzir os custos de desenvolvimento de dispositivos e nuvem. Ao selecionar um Dispositivo Certificado pelo Azure, você pode ignorar as personalizações e a integração do dispositivo diretamente para a integração em sua Solução IoT.
Padrão arquitetônico Lambda
As soluções de IoT geralmente usam o padrão de arquitetura lambda quente/morno/frio na nuvem. Esse padrão também se aplica à borda quando você usa dispositivos de borda com mais desempenho ou o runtime do Azure IoT Edge. A otimização desse padrão na borda reduz os custos gerais da solução. Você pode escolher o serviço mais econômico para ingestão e processamento de dados na nuvem.
O processamento de hot path inclui processamento quase em tempo real, alertas de processo ou notificações de borda. Você pode usar fluxos de eventos do Hub IoT do Azure para processar alertas na nuvem.
O processamento de caminho quente inclui o uso de soluções de armazenamento na borda, como bancos de dados de série temporal de software livre ou SQL do Azure no Edge. O SQL do Azure no Edge inclui recursos de processamento de fluxo de borda e armazenamento otimizado para séries temporais.
O processamento de caminho frio inclui o envio em lote, eventos de menor importância e o uso de uma opção de transferência de arquivos por meio do módulo Armazenamento de Blobs do Azure. Essa abordagem usa um mecanismo de transferência de dados de custo mais baixo em comparação com o streaming por meio do Hub IoT. Depois que os dados frios chegam ao armazenamento de Blobs do Azure, há muitas opções para processar os dados na nuvem.
Segurança do dispositivo
O Hub IoT com o DPS (Serviço de Provisionamento de Dispositivos) e o IoT Central dão suporte à autenticação de dispositivo com chaves simétricas, atestado TPM (módulo de plataforma confiável) e certificados X.509. Há um fator de custo associado a cada opção.
Os certificados X.509 são a opção mais segura para autenticação no Hub IoT do Azure, mas o gerenciamento de certificados pode ser caro. A falta de planejamento do gerenciamento do ciclo de vida do certificado pode tornar os certificados ainda mais caros. Normalmente, você trabalha com fornecedores terceirizados que oferecem soluções de gerenciamento de certificados e CA. Essa opção requer o uso de uma PKI (infraestrutura de chave pública). As opções incluem uma PKI autogerenciada, uma PKI de terceiros ou o serviço de segurança do Azure Sphere, que está disponível apenas com dispositivos do Azure Sphere.
Os TPMs com certificados X.509 oferecem uma camada adicional de segurança. O DPS também dá suporte à autenticação por meio de chaves de endosso do TPM. Os principais custos são de hardware, possível redesenho da placa e complexidade.
A autenticação de chave simétrica é a opção mais simples e de menor custo, mas você deve avaliar o impacto na segurança. Você precisa proteger as chaves no dispositivo e na nuvem, e armazenar a chave com segurança no dispositivo geralmente requer uma opção mais segura.
Analise os custos associados a cada uma dessas opções e equilibre os custos de hardware ou serviços potencialmente mais altos com maior segurança. A integração com seu processo de fabricação também pode influenciar os custos gerais.
Para obter mais informações, consulte Práticas de segurança para fabricantes de dispositivos IoT do Azure.
Azure RTOS
O Azure RTOS é um pacote de desenvolvimento inserido para dispositivos. O Azure RTOS inclui um sistema operacional pequeno, mas poderoso, que fornece desempenho confiável e ultrarrápido para dispositivos com recursos limitados. O Azure RTOS é fácil de usar e foi implantado em mais de 10 bilhões de dispositivos. O Azure RTOS dá suporte aos microcontroladores de 32 bits mais populares e às ferramentas de desenvolvimento inseridas, para que você possa aproveitar ao máximo as habilidades existentes do criador de dispositivos.
O Azure RTOS é gratuito para implantação comercial usando hardware pré-licenciado. O Azure RTOS vem com recursos e recursos de nuvem do Azure IoT, como atualização e segurança do dispositivo. Esses recursos ajudam a reduzir os custos de desenvolvimento de dispositivos e nuvem.
O Azure RTOS é certificado para segurança e proteção, ajudando a reduzir o tempo e o custo da criação de dispositivos compatíveis para verticais específicas, como médica, automotiva e de fabricação.
Dispositivos LPWAN
Se os dispositivos LPWAN, como LoRaWAN, NB-IoT ou LTE-M, já estiverem conectados a outra nuvem de IoT, a Ponte de Dispositivos do Azure IoT Central poderá ajudar a fazer a ponte para o Azure IoT Central. O Azure IoT Central Device Bridge permite que você se concentre em adicionar conhecimento do setor e avaliar a solução sem incorrer em custos para alterar os dispositivos existentes.
Ao criar sua solução pronta para a empresa, você precisará considerar os custos para integrar dispositivos LPWAN ao Hub IoT do Azure.
Azure Sphere
O Azure Sphere é uma plataforma de solução de IoT segura e de ponta a ponta com recursos internos de comunicação e segurança para dispositivos conectados à Internet. O Azure Sphere compreende uma MCU (unidade de microcontrolador) cruzada e segura, um sistema operacional (SO) baseado em Linux personalizado de alto nível e um serviço de segurança baseado em nuvem que fornece segurança contínua e renovável. O Azure Sphere reduz o esforço para criar e manter um ambiente seguro do dispositivo para a nuvem.
O Azure Sphere fornece atualizações do sistema operacional e segurança renovável de dia zero por 10 anos, além da PKI baseada em X.509, atualizações de aplicativos do usuário, relatórios de erros e gerenciamento de dispositivos além de 10 anos sem custo extra. O Azure Sphere reduz o custo operacional de manter milhões de dispositivos atualizados com a segurança mais recente.
Azure Stack Hub
As soluções do Azure Stack estendem os serviços e os recursos do Azure para ambientes além dos datacenters do Azure, como datacenters locais ou locais de borda. As soluções do Azure Stack incluem o Azure Stack Edge e o Azure Stack HCI.
O Azure Stack Edge é um dispositivo gerenciado pelo Azure ideal para cargas de trabalho de aprendizado de máquina aceleradas por hardware em locais de borda. O Azure Stack Edge é executado em pilhas de tecnologia moderna, como contêineres, portanto, o Azure Stack Edge implantado em um local de borda pode atender a várias cargas de trabalho. O compartilhamento de poder computacional entre cargas de trabalho reduz o TCO.
O Azure Stack HCI é uma solução hiperconvergente criada especificamente com integração nativa do Azure. O Azure Stack HCI oferece virtualização escalonável para hospedar soluções de IoT. A virtualização traz benefícios extras, como segurança, escalabilidade e ambientes flexíveis, que podem reduzir o TCO compartilhando o hardware com outras cargas de trabalho. O Azure Stack HCI oferece mais poder de computação do que o Azure Stack Edge e é ideal para a transformação de processos do setor.
As soluções do Azure Stack trazem a funcionalidade do Azure para a borda, mas o dimensionamento de hardware restringe o poder de computação total. Identifique casos de uso e poder computacional estimado e considere o dimensionamento para combinar os custos com as necessidades de desempenho.
MEC pública ou privada do Azure
Os dispositivos IoT podem gerar grandes quantidades de dados e também podem ter fortes requisitos de baixo consumo de energia e baixos custos. Dispositivos IoT pequenos e baratos são projetados para uma ou algumas tarefas, como coletar dados de sensores ou locais e descarregá-los para processamento posterior.
A computação de borda de acesso múltiplo (MEC) pública ou privada do Azure e o 5G ajudam a otimizar os custos de descarregamento de dados dos dispositivos. As soluções de IoT baseadas em MEC permitem o processamento de dados de baixa latência na borda, em vez de em dispositivos ou na nuvem. A latência é de 1 a 5 ms em vez dos típicos 100 a 150 ms para a nuvem. As soluções de IoT baseadas em MEC são flexíveis e os próprios dispositivos são baratos, operam com manutenção mínima e usam baterias menores, mais baratas e duradouras. O MEC mantém as funções de análise de dados, IA e otimização na borda, o que mantém as soluções de IoT simples e baratas.
Além de servir como um dispositivo de processamento de borda, computação e comunicação 5G para cargas de trabalho de IoT, o MEC atende a outras cargas de trabalho como um dispositivo de comunicação para estabelecer conexões de alta velocidade com a nuvem pública ou sites remotos.
Azure IoT Edge
O Azure IoT Edge tem recursos internos para altos volumes de mensagens. Os dispositivos gerenciados do Azure IoT Edge com recursos de gateway podem reduzir os custos de rede e minimizar o número de mensagens por meio de processamento local e cenários de borda.
Evite comunicações de borda de dispositivo para dispositivo ou módulo para módulo ou interações de dispositivo para nuvem que usam muitas mensagens pequenas. Use recursos internos de envio em lote de mensagens para enviar várias mensagens de telemetria para a nuvem. Esses recursos podem ajudar a reduzir os custos de uso do Hub IoT. Reduzir o número de mensagens diárias e o número de operações do dispositivo para a nuvem por segundo pode permitir a escolha de uma camada inferior no Hub IoT. Para saber mais, confira Estendendo os limites de desempenho do IoT Edge.
Para reduzir os custos de troca de dados, você pode implantar serviços do Azure, como Azure Stream Analytics e Azure Functions no IoT Edge. O Azure Stream Analytics e o Azure Functions podem agregar e filtrar grandes volumes de dados na borda e enviar apenas dados importantes para a nuvem. O Armazenamento de Blobs do Azure no IoT Edge pode reduzir a necessidade de transferir grandes quantidades de dados pela rede. O armazenamento de borda é útil para transformar e otimizar grandes quantidades de dados antes de enviá-los para a nuvem.
Módulos gratuitos do Azure IoT Edge para protocolos abertos, como OPC Publisher e Modbus , ajudam a conectar vários dispositivos com desenvolvimento mínimo. Se o desempenho de upload for crítico, escolher um módulo IoT Edge comprovado de um fornecedor pode ser mais econômico do que criar um módulo personalizado. Você pode pesquisar e baixar módulos do IoT Edge no Azure Marketplace.
Camada de ingestão e comunicação
Um gateway IoT na nuvem é uma ponte entre dispositivos e serviços em nuvem. Como um serviço de front-end para a plataforma de nuvem, um gateway pode agregar todos os dados com tradução de protocolo e fornecer comunicação bidirecional com dispositivos.
Há muitos fatores a serem levados em consideração para comunicações de dispositivo para gateway IoT, como conectividade de dispositivo, rede e protocolo. Uma compreensão dos protocolos de comunicação IoT, tipos de rede e padrões de mensagens ajuda você a projetar e otimizar uma arquitetura econômica.
Para conectividade do dispositivo, é importante especificar o tipo de rede. Se você selecionar uma solução de LAN ou WAN privada, como WiFi ou LoraWAN, considere o TCO da rede como parte dos custos gerais. Se você usa redes de operadoras, como 4G, 5G ou LPWAN, inclua custos recorrentes de conectividade.
Plataforma de soluções IoT
Para criar uma solução de IoT para sua empresa, você normalmente avalia sua solução usando a abordagem de plataforma de aplicativo gerenciado e cria sua solução pronta para a empresa usando os serviços de plataforma.
Os serviços de plataforma permitem ajustar os serviços e controlar os custos gerais. Ele fornece todos os blocos de construção para aplicativos IoT personalizados e flexíveis. Você tem mais opções de escolha e codificação ao conectar dispositivos e ingerir, armazenar e analisar seus dados. Os serviços da plataforma IoT do Azure incluem os produtos Hub IoT do Azure e Gêmeos Digitais do Azure.
O Azure IoT Central é uma plataforma de aplicativo gerenciado que permite avaliar rapidamente sua solução de IoT reduzindo o número de decisões necessárias para obter resultados. O IoT Central cuida da maioria dos elementos de infraestrutura em sua solução, para que você possa se concentrar em adicionar conhecimento do setor e avaliar a solução.
Camadas do Hub IoT
A maioria das soluções de IoT requer comunicação bidirecional entre dispositivos e a nuvem para ser totalmente funcional e segura. A camada básica do Hub IoT fornece a funcionalidade principal, mas exclui o controle bidirecional. Para algumas implementações de solução antecipadas, você pode reduzir custos usando a camada básica. À medida que sua solução progride, você pode alternar para uma camada padrão para otimizar um canal de comunicação seguro para reduzir os custos de mensagens da nuvem para o dispositivo. Para mais informações, confira Escolher a camada certa do Hub IoT para sua solução.
Tamanho e frequência das mensagens do Hub IoT
Os custos de mensagens dependem muito da conversa do dispositivo e do tamanho da mensagem. Os dispositivos tagarelas enviam muitas mensagens para a nuvem a cada minuto, enquanto os dispositivos relativamente silenciosos enviam dados apenas a cada hora ou mais. Evite interações do dispositivo com a nuvem que usam muitas mensagens pequenas. A clareza sobre a conversa do dispositivo e o tamanho da mensagem ajuda a reduzir a probabilidade de provisionamento excessivo, o que leva à capacidade de nuvem não utilizada, ou ao provisionamento insuficiente, o que leva a desafios de escala. Considere o tamanho e a frequência das cargas úteis de mensagens para garantir que sua infraestrutura tenha o tamanho correto e esteja pronta para escalar.
Evite interações da nuvem para o dispositivo que usam muitas mensagens pequenas. Por exemplo, agrupe várias atualizações de dispositivo ou módulo gêmeo em uma única atualização, que têm sua própria limitação. Lembre-se do tamanho da mensagem usada para a cota diária, 4 K bytes para camadas não livres do Hub IoT. O envio de mensagens menores deixa alguma capacidade não utilizada, enquanto as mensagens maiores são cobradas em blocos de 4 KB.
Use um único método direto para obter feedback direto. Use uma única atualização de status de dispositivo ou módulo gêmeo para trocar informações de configuração e status de forma assíncrona.
Dica
Você pode monitorar interações tagarelas usando o Microsoft Defender para IoT no Hub IoT do Azure e o microagente do Defender para IoT. Você pode criar alertas personalizados do Hub IoT para interações de dispositivo para nuvem ou de nuvem para dispositivo que excedam um determinado limite.
Se o tamanho da mensagem for crítico para o gerenciamento de custos, a redução da sobrecarga é especialmente importante com longos ciclos de vida do dispositivo ou grandes implantações. As opções para reduzir essa sobrecarga incluem:
- Use um ID de dispositivo, ID de módulo, nome de gêmeo e tópico de mensagem mais curtos para reduzir a carga útil em pacotes MQTT. Uma carga MQTT se parece com
devices/{device_id}/modules/{module_id}/messages/events/
. - Abrevie a sobrecarga de comprimento fixo e a mensagem.
- Comprima a carga, por exemplo, usando Gzip.
Cotas de mensagens do Hub IoT e limites de limitação
As camadas do Hub IoT têm tamanhos diferentes com cotas específicas e limites de limitação para operações. Entenda os limites e as cotas do Hub IoT para otimizar os custos de mensagens de dispositivo para nuvem e de nuvem para dispositivo.
Por exemplo, a camada Standard S1 tem uma cota diária de 400.000 mensagens. As cobranças aumentam em blocos de 4 KB com base em vários fatores:
- Uma mensagem D2C (dispositivo para nuvem) pode ter até 4 KB.
- As mensagens D2C que excedem 4 KB são cobradas em partes de 4 KB.
- Mensagens menores que 4 KB podem usar o método SDK
SendEventBatchAsync
do IoT do Azure para otimizar o envio em lote no lado do dispositivo. Por exemplo, agrupar até quatro mensagens de 1 KB na borda aumenta o medidor diário em apenas uma mensagem. O envio em lote só é aplicável para AMQP ou HTTPS. - A maioria das operações, como mensagens da nuvem para o dispositivo ou operações do dispositivo gêmeo, também cobra mensagens em partes de 4 KB. Todas essas operações aumentam a taxa de transferência diária e a cota máxima de mensagens.
Examine a documentação de informações de preços do Hub IoT do Azure para obter exemplos detalhados de preços.
Além das cotas diárias de mensagens, as operações de serviço têm limites de limitação. Uma parte fundamental da otimização de custos do Hub IoT é otimizar as cotas de mensagens e os limites de limitação de operações. Estude as diferenças entre os limites na forma de operações por segundo ou bytes por segundo. Para obter mais informações, confira Cotas e limitação do Hub IoT.
Diferentes limites de limitação se aplicam a diferentes operações do Hub IoT. As operações de dispositivo para nuvem têm uma limitação de operações por segundo que depende da camada. Além do tamanho da mensagem, que é medido em partes de 4 KB, considere o número de operações. O envio em lote na borda permite enviar mais mensagens em uma única operação.
Uma única mensagem de 2 KB, uma mensagem em lote de 10 KB ou uma mensagem em lote de 256 KB conta apenas como uma única operação, permitindo que você envie mais dados para o ponto de extremidade sem atingir os limites de limitação.
Dimensionamento automático do Hub IoT
Ajustar dinamicamente o número de unidades do Hub IoT ajuda a otimizar os custos quando o volume de mensagens flutua. Você pode implementar um serviço de dimensionamento automático que monitora e dimensiona automaticamente o serviço do Hub IoT. Consulte Dimensionar automaticamente o Hub IoT do Azure para obter um exemplo personalizável para implementar a funcionalidade de dimensionamento automático. Você pode usar sua própria lógica personalizada para otimizar a camada e o número de unidades do Hub IoT.
Selos de implantação para dimensionamento
A marcação de implantação é um padrão de design comum para estratégias de implantação flexíveis, escala previsível e custo. Esse padrão oferece várias vantagens para soluções de IoT, como distribuição geográfica de grupos de dispositivos, implantação de novos recursos em selos específicos e observação do custo por dispositivo. Para obter mais informações, consulte Dimensionar soluções de IoT com selos de implantação.
Camada de modelagem e gerenciamento de dispositivo
O gerenciamento de dispositivos é uma tarefa que orquestra processos complexos, como gerenciamento da cadeia de suprimentos, inventário de dispositivos, implantação, instalação, prontidão operacional, atualização de dispositivos, comunicação bidirecional e provisionamento. A modelagem de dispositivos pode reduzir os custos de gerenciamento e os volumes de tráfego de mensagens.
IoT Plug and Play
Para redução do TCO, considere casos de uso estendidos como parte da seleção da plataforma. O IoT Plug and Play permite que os criadores de soluções integrem dispositivos ao Hub IoT ou aos Gêmeos Digitais do Azure sem nenhuma configuração manual. O IoT Plug and Play usa a DTDL (Linguagem de Definição de Gêmeos Digitais) V2. Ambos se baseiam em padrões W3C abertos, tais como JSON-LD e RDF, o que permite uma adoção mais fácil entre serviços e ferramentas.
Não há custo extra para usar o IoT Plug and Play e a DTDL. As taxas padrão para Hub IoT, Gêmeos Digitais do Azure e outros serviços do Azure permanecem as mesmas.
Para obter mais informações, consulte Como converter um dispositivo existente em um dispositivo IoT Plug and Play.
IoT Hub DPS
O DPS do Hub IoT é um serviço auxiliar para o Hub IoT que permite o provisionamento just-in-time de baixo custo, sem toque e just-in-time para o hub IoT correto sem exigir intervenção humana. O DPS permite o provisionamento seguro e escalável de milhões de dispositivos para reduzir erros e custos.
O DPS permite o provisionamento de dispositivos com pouco ou nenhum toque, para que você não precise treinar e enviar pessoas ao local. O uso do DPS reduz o custo de visitas técnicas e o tempo gasto em treinamento e configuração. O DPS também reduz o risco de erros devido ao provisionamento manual.
O DPS dá suporte ao gerenciamento do ciclo de vida do dispositivo com o Hub IoT por meio de políticas de alocação de registro, provisionamento sem toque, definição de configuração inicial, reprovisionamento e desprovisionamento. Para saber mais, veja:
Modelagem de estado de ativos e dispositivos
Compare as diferenças de custo entre várias topologias de dispositivo e repositórios de entidades, como Azure Cosmos DB, Gêmeos Digitais do Azure e Banco de Dados SQL do Azure. Cada serviço tem uma estrutura de custos diferente e oferece recursos diferentes para sua solução de IoT. Dependendo do uso necessário, escolha o serviço mais econômico.
Os Gêmeos Digitais do Azure podem implementar um modelo baseado em grafo do ambiente IoT para gerenciamento de ativos, status do dispositivo e dados de telemetria. Você pode usar os Gêmeos Digitais do Azure como uma ferramenta para modelar ambientes inteiros, com streaming de dados de IoT em tempo real e mesclar dados corporativos de fontes não IoT. Você pode criar ontologias personalizadas ou usar ontologias baseadas em padrões, como RealEstateCore, CIM ou NGSI-LD, para simplificar a troca de dados com terceiros. Os Gêmeos Digitais do Azure têm um modelo de preços de pagamento por uso sem taxa fixa.
O Azure Cosmos DB é um banco de dados multimodelo distribuído globalmente. O custo é afetado pelo armazenamento e pela taxa de transferência, com opções de dados distribuídos e replicados regionais ou globalmente.
O Banco de Dados SQL do Azure pode ser uma solução eficiente para modelagem de dispositivos e ativos. O Banco de Dados SQL tem vários modelos de preços para ajudá-lo a otimizar os custos.
Modelo de implantação de ativos
Você pode implantar soluções de borda com diferentes arquiteturas: vários endpoints, dispositivos IoT, conectados diretamente à nuvem ou conectados por meio de um gateway de borda e/ou nuvem. Diferentes opções para o fornecimento de dispositivos de borda podem afetar o TCO e o tempo de lançamento no mercado. A manutenção e o suporte contínuos da frota de dispositivos também afetam o custo geral da solução.
Onde os dados são armazenados e processados em uma determinada solução de IoT afeta muitos fatores, como latência, segurança e custo. Analise cada caso de uso e examine onde faz mais sentido usar o processamento de borda e o armazenamento de dados e como isso afeta os custos. Armazenar e processar dados na borda pode economizar custos de armazenamento, transporte e processamento. Mas quando você leva em conta a escala, os serviços em nuvem geralmente são opções melhores devido ao custo e à sobrecarga de desenvolvimento.
A calculadora de preços do Azure é uma ferramenta útil para comparar essas opções.
Camada de processamento e análise de eventos
O objetivo da camada de processamento e análise de eventos é permitir decisões baseadas em dados. O tempo do evento e o objetivo da análise são fatores-chave a serem considerados. A escolha certa do serviço aumenta a eficiência arquitetônica e reduz o custo de processamento de dados e eventos.
Com base em seus requisitos, implemente o processamento de caminho quente, morno ou frio para análise de dados de IoT. A arquitetura de referência do Azure IoT ajuda você a entender a diferença entre esses caminhos de análise e examina os serviços de análise disponíveis em cada caminho.
Para começar, determine quais tipos de dados passam pelo caminho frequente, morno ou frio:
- Os dados de caminho quente são mantidos na memória e analisados quase em tempo real, normalmente usando processamento de fluxo. A saída pode disparar um alerta ou ser gravada em um formato estruturado que as ferramentas de análise podem consultar imediatamente.
- Os dados de caminho de alta atividade, como do último dia, semana ou mês, são mantidos em um serviço de armazenamento que pode ser consultado imediatamente.
- Os dados históricos do caminho frio são mantidos em armazenamento de baixo custo para serem consultados em grandes lotes.
Camada de armazenamento
Um dos objetivos de uma solução de IoT é fornecer dados aos usuários finais. É importante entender os tipos de armazenamento, a capacidade e os preços para criar uma estratégia para otimizar os custos de armazenamento.
Tipos de armazenamento
A escolha de um repositório para telemetria depende do caso de uso de seus dados de IoT. Se a finalidade for apenas monitorar dados de IoT e os volumes forem baixos, você poderá usar um banco de dados. Se o cenário incluir análise de dados, você deverá salvar os dados de telemetria no armazenamento. Para armazenamento e consulta otimizados para séries temporais, somente acréscimo, considere soluções projetadas para fins específicos, como o Azure Data Explorer.
O armazenamento e os bancos de dados não são mutuamente exclusivos. Ambos os serviços podem trabalhar juntos, especialmente com caminhos de análise quentes, mornos e frios bem definidos. O Azure Data Explorer e os bancos de dados são comumente usados para cenários de caminho quente e quente.
Para o Armazenamento do Azure, também é importante considerar fatores de ciclo de vida de dados, como frequência de acesso, requisitos de retenção e backups. O Armazenamento do Azure ajuda você a definir o ciclo de vida dos dados e automatizar o processo de movimentação de dados da camada frequente para outras camadas, o que reduz os custos de armazenamento de longo prazo. Para obter mais informações, consulte Configurar uma política de gerenciamento de ciclo de vida.
Soluções de banco de dados
Para recursos de banco de dados, é comum escolher entre soluções SQL e no-SQL. Os bancos de dados SQL são mais adequados para telemetria de esquema fixo com requisitos simples de transformação ou agregação de dados. Para saber mais, consulte Tipos de bancos de dados no Azure.
O Banco de Dados SQL do Azure e o TimescaleDB para PostgreSQL são opções comuns para o Banco de Dados SQL. Para obter mais informações, consulte os seguintes artigos:
- Planejar e gerenciar custos do Banco de Dados SQL do Azure
- Banco de Dados SQL do Azure e otimização de custo
- Extensão do Banco de Dados SQL do Azure para PostgreSQL
- Ajuste de desempenho para Bancos de Dados SQL do Azure
Se os dados forem melhor representados como um objeto ou documento sem um esquema fixo, o no-SQL será uma opção melhor. O Azure Cosmos DB fornece várias APIs, como SQL ou MongoDB. Para qualquer banco de dados, as estratégias de partição e índice são importantes para otimizar o desempenho e reduzir custos desnecessários. Para saber mais, veja:
- Particionamento e escala horizontal no Azure Cosmos DB
- Planejar e gerenciar custos do Azure Cosmos DB
O Azure Synapse Analytics é um data warehouse moderno do Azure. O Synapse Analytics é dimensionado por DWU (Unidades de Data Warehouse) e você deve escolher a capacidade certa para lidar com os requisitos da solução. Dependendo do caso de uso, você pode pausar a computação quando nenhum trabalho estiver em execução para reduzir os custos operacionais.
Camada de transporte
A camada de transporte transfere e roteia dados entre outras camadas. À medida que os dados trafegam entre camadas e serviços, a escolha do protocolo afeta os custos. Casos de uso como gateways de campo, protocolo aberto do setor e seleção de rede IoT também afetam os custos na camada de transporte.
Para reduzir os tamanhos e custos de transmissão, escolha o protocolo certo para seus dispositivos IoT enviarem telemetria.
Os clientes de dispositivo enviam regularmente mensagens keep-alive para o Hub IoT. De acordo com Cobranças por operação, não há cobrança para mensagens keep-alive. Mas você não precisa adicionar uma propriedade keep-alive na telemetria se não houver nenhum requisito específico para isso. Para flexibilidade, alguns SDKs do Dispositivo IoT do Azure fornecem a opção de definir um período de tempo para essas mensagens se você estiver usando os protocolos AMQP ou MQTT.
Para dispositivos IoT alimentados por bateria, você pode escolher entre manter as conexões ativas ou reconectar quando os dispositivos forem ativados. Essa escolha afeta o consumo de energia e os custos de rede.
A reconexão consome pacotes em torno de 6 KB para conexão TLS, autenticação de dispositivo e recuperação de um dispositivo gêmeo, mas economiza a capacidade da bateria se o dispositivo for ativado apenas uma ou duas vezes por dia. Você pode agrupar mensagens para diminuir a sobrecarga de TLS. Manter ativo consome centenas de bytes, mas manter a conexão ativa economiza custos de rede se o dispositivo for ativado a cada poucas horas ou menos.
Para obter diretrizes de alto nível sobre a conectividade e os recursos de mensagens confiáveis nos SDKs de dispositivo IoT do Azure, consulte Gerenciar conectividade e mensagens confiáveis usando SDKs de dispositivo no Hub IoT do Azure. Essas diretrizes ajudam você a reduzir os custos de lidar com comportamentos inesperados entre o dispositivo e os serviços de IoT do Azure.
O DPS reduz os custos de gerenciamento do ciclo de vida do dispositivo, desde o provisionamento sem toque até a desativação, mas a conexão com o DPS consome o custo da rede para TLS e autenticação. Para reduzir o tráfego de rede, os dispositivos devem armazenar em cache as informações do Hub IoT durante o provisionamento e, em seguida, conectar-se diretamente ao Hub IoT até que precisem ser reprovisionados. Para obter mais informações, consulte Enviar uma solicitação de provisionamento do dispositivo.
Camada de interação e relatórios
Como a IoT lida com dados de séries temporais, há muitas interações de um grande número de dispositivos. Relatar e visualizar percebe o valor desses dados. Experiências de usuário intuitivas e simplificadas e interações de dados bem projetadas podem ser caras de construir.
O Grafana é uma ferramenta de visualização de dados de código aberto que fornece painéis otimizados para dados de séries temporais. As comunidades do Grafana fornecem exemplos que você pode reutilizar e personalizar em seu ambiente. Você pode implementar métricas e painéis de dados de séries temporais com pouco esforço. O Azure fornece um plug-in do Grafana para o Azure Monitor.
Ferramentas de relatórios e painéis, como o Power BI, permitem um início rápido a partir de dados de IoT não estruturados. O Power BI fornece uma interface do usuário e recursos intuitivos. Você pode desenvolver facilmente painéis e relatórios usando dados de séries temporais e obter os benefícios de segurança e implantação a baixo custo.
Camada de integração
A integração com outros sistemas e serviços pode ser complexa. Muitos serviços podem ajudar a maximizar a eficiência para otimizar os custos na camada de integração.
Os Gêmeos Digitais do Azure podem integrar vários sistemas e serviços com dados de IoT. Os Gêmeos Digitais do Azure transformam todos os dados em sua própria entidade digital, portanto, é importante entender seus limites de serviço e pontos de ajuste para reduções de custo. Examine os limites de serviço dos Gêmeos Digitais do Azure ao projetar sua arquitetura. Entenda as limitações funcionais para ajudar a integrar efetivamente os sistemas de negócios.
Quando você usa a API de consulta, os Gêmeos Digitais do Azure cobram por Unidade de Consulta (QU). Você pode rastrear o número de QUs que a consulta consumiu no cabeçalho de resposta. Reduza a complexidade da consulta e o número de resultados para otimizar os custos. Para obter mais informações, consulte Localizar o consumo de QU nos Gêmeos Digitais do Azure.
Camada de DevOps
As plataformas em nuvem transformam despesas de capital (CAPEX) em despesas operacionais (OPEX). Embora esse modelo forneça flexibilidade e agilidade, você ainda precisa de um modelo operacional e de implantação bem definido para aproveitar ao máximo a plataforma de nuvem. Uma implantação bem planejada cria ativos repetíveis para reduzir o tempo de lançamento no mercado.
Uma plataforma de nuvem fornece agilidade para os desenvolvedores implantarem recursos em segundos, mas há o risco de provisionamento de recursos involuntariamente ou provisionamento excessivo. Um modelo adequado de governança de nuvem pode minimizar esses riscos e ajudar a evitar custos indesejados.
Ambientes de desenvolvimento
Os desenvolvedores podem aproveitar a flexibilidade que o Azure oferece para otimizar o custo de desenvolvimento. A camada gratuita do Hub IoT, limitada a uma instância por assinatura, oferece recursos padrão, mas é limitada a 8000 mensagens por dia. Essa camada é suficiente para o desenvolvimento em estágio inicial com um número limitado de dispositivos e mensagens.
Para ambientes de computação, você pode adotar a arquitetura sem servidor para soluções de IoT nativas da nuvem. Alguns serviços populares do Azure para cargas de trabalho de IoT incluem Azure Functions e Azure Stream Analytics. O mecanismo de cobrança depende do serviço. Alguns serviços, como o Azure Stream Analytics para processamento em tempo real, permitem que os desenvolvedores pausem serviços sem incorrer em custos extras. Outros serviços são cobrados por uso. Por exemplo, o Azure Functions cobra com base no número de transações. Os desenvolvedores podem aproveitar esses recursos nativos da nuvem para otimizar o custo operacional e de desenvolvimento.
Um ambiente de desenvolvimento integrado (IDE) acelera o desenvolvimento e a implantação. Alguns IDEs de software livre, como o Visual Studio Code, fornecem extensões do Azure IoT que permitem que os desenvolvedores desenvolvam e implantem código nos serviços do Azure IoT sem nenhum custo.
O Azure IoT fornece exemplos de código GitHub gratuitos com diretrizes. Esses exemplos ajudam os desenvolvedores a estender os aplicativos de dispositivo, IoT Edge, Hub IoT e Gêmeos Digitais do Azure. O GitHub também possui recursos para implementar ambientes de integração contínua e implantação contínua (CI/CD) com baixo custo e esforço. O GitHub Actions é gratuito para projetos de código aberto. Para obter mais informações, consulte Planos e recursos do GitHub.
Teste de carga para estimativa de custos
Você pode usar o teste de carga para estimar os custos gerais, incluindo serviços de nuvem, para soluções de IoT de ponta a ponta. Como as soluções de IoT usam grandes quantidades de dados, um simulador pode ajudar no teste de carga. Exemplos de código de simulação, como o Simulador de Telemetria de Dispositivo IoT do Azure, ajudam você a testar e estimar custos em escala com vários parâmetros.
Ambientes de implantação
É comum implantar cargas de trabalho em vários ambientes, como desenvolvimento e produção. Por meio da infraestrutura como código (IaC), você pode acelerar a implantação e reduzir o tempo de lançamento no mercado reutilizando o código. A IaC pode ajudar a evitar implantações não intencionais, como camadas incorretas. Serviços do Azure, como Azure Resource Manager e Azure Bicep, ou serviços de terceiros, como Terraform e Pulumi, são opções comuns de IaC.
Você pode aplicar práticas de implantação de DevOps a soluções de IoT usando pipelines de build e lançamento em diferentes ambientes. Para obter um exemplo, consulte Usar um pipeline de DevOps para implantar uma solução de manutenção preditiva.
Suporte e manutenção
O suporte e a manutenção de longo prazo de dispositivos de campo podem aumentar para se tornar o maior fardo de custo para uma solução implantada. A consideração cuidadosa do TCO do sistema é crucial para obter o retorno sobre o investimento (ROI).
Você precisa dar suporte e manter dispositivos IoT durante o tempo de vida da solução. As tarefas incluem reparos de hardware, atualizações de software, manutenção do sistema operacional e patches de segurança. Considere os custos contínuos de licenciamento para software comercial e drivers e protocolos proprietários. Se você não puder fazer manutenção remota, precisará fazer um orçamento para reparos e atualizações no local. Para reparos ou substituições de hardware, você deve manter peças sobressalentes adequadas em estoque.
Para soluções que usam mídia de conectividade celular ou paga, selecione um plano de dados adequado com base no número de dispositivos, no tamanho e na frequência das transmissões de dados e no local de implantação do dispositivo. Se você tiver um SLA (contrato de nível de serviço), precisará de uma combinação econômica de hardware, infraestrutura e equipe treinada para atender ao SLA.
Governança de nuvem
A governança de nuvem é essencial para conformidade, segurança e prevenção de custos desnecessários.
As APIs de gerenciamento de custos permitem que você explore dados de custo e uso por meio de análise multidimensional. Você pode criar filtros e expressões personalizados que ajudam a responder a perguntas relacionadas ao consumo de recursos do Azure. As APIs de gerenciamento de custos podem gerar alertas quando o consumo atinge os limites configurados. As APIs de gerenciamento de custos estão disponíveis para IoT Central, Hub IoT e DPS.
A marcação de recursos aplica rótulos aos recursos implantados. Juntamente com o Gerenciamento de Custos da Microsoft, a marcação fornece insights sobre os custos contínuos com base nos rótulos. Para obter mais informações, consulte Usos comuns da análise de custo.
O Azure Policy vem com políticas internas para rotular recursos automaticamente ou sinalizar recursos sem marcação. Para saber mais, consulte Atribuir definições de política para conformidade com tags. Outro caso de uso do Azure Policy é impedir o provisionamento de determinadas camadas, o que ajuda a evitar o provisionamento excessivo em ambientes de desenvolvimento ou produção.
Monitoramento
Muitas ferramentas incluídas em sua assinatura do Azure podem ajudar sua organização a implementar a governança financeira e obter mais valor de seus serviços de IoT. Essas ferramentas ajudam você a rastrear o uso de recursos e gerenciar custos em todas as suas nuvens com uma visão única e unificada. Você pode acessar insights operacionais e financeiros avançados para tomar decisões informadas.
O log de telemetria geralmente usa workspaces do Log Analytics no Azure Monitor. O Log Analytics inclui 5 GB de armazenamento e os primeiros 30 dias de retenção são gratuitos. Dependendo das necessidades de negócios, você pode precisar de um período de retenção mais longo. Revise e decida o período de retenção correto para evitar custos não intencionais.
O Log Analytics fornece um ambiente de workspace para consultar logs interativamente. Você pode exportar logs periodicamente para locais externos, como o Azure Data Explorer, ou arquivar logs em uma conta de armazenamento para uma opção de armazenamento mais barata. Para obter mais informações, consulte Monitorar o uso e os custos estimados no Azure Monitor.
Assistente do Azure
O Assistente do Azure é um consultor de nuvem personalizado que ajuda a seguir as práticas recomendadas para otimizar as implantações do Azure. O Advisor analisa a configuração de recursos e a telemetria de uso e recomenda soluções que podem ajudá-lo a melhorar a economia, o desempenho, a confiabilidade e a segurança.
O Assistente ajuda você a otimizar e reduzir seus gastos gerais do Azure identificando recursos ociosos e subutilizados. Você pode obter recomendações de custo na guia de custo no painel do Assistente.
Embora o Assistente não ofereça recomendações específicas para serviços de IoT, ele pode fornecer recomendações úteis para serviços de infraestrutura, armazenamento e análise do Azure. Para obter mais informações, consulte Reduzir os custos de serviço usando o Assistente do Azure.