Informações de cobrança do Hub IoT do Azure
O Preço do Hub IoT do Azure fornece as informações gerais sobre SKUs e preços diferentes para o Hub IoT. Este artigo contém detalhes sobre como as várias funcionalidades do Hub IoT são medidas como mensagens pelo Hub IoT.
Observação
Alguns dos recursos mencionados neste artigo, como mensagens de nuvem para dispositivo, dispositivos gêmeos e gerenciamento de dispositivo estão disponíveis somente na camada Standard do Hub IoT. Para obter mais informações sobre as camadas básica e padrão/gratuita do Hub IoT, confira Escolher a camada certa do Hub IoT para a sua solução.
Encargos por operação
Usar a tabela a seguir para ajudar a determinar quais operações são cobradas. Todas as operações faturáveis são cobradas em blocos de 4K bytes em hubs IoT de camada standard e básica. As operações são limitadas em partes de 0,5 mil bytes em hubs IoT de camada livre. Os detalhes de cada categoria são fornecidos na coluna informações de cobrança. Essa coluna inclui as seguintes informações:
- Detalhes de como as operações faturáveis são limitadas em hubs IoT de camada standard e básica. Nem todas as operações estão disponíveis na camada básica.
- As operações que resultam em encargos, com:
- Um link para a documentação da API REST, se ela existir.
- O ponto de extremidade de operação se a documentação da API REST não estiver disponível ou se a operação estiver disponível somente por MQTT e/ou AMQP. O valor do ponto de extremidade omite a referência de entrelinhamento para o hub IoT de destino;
{fully-qualified-iothubname}.azure-devices.net
.
- Um ou mais termos em itálico após cada operação (ou ponto de extremidade). Esses termos representam operações faturáveis cobradas em relação à cota do hub IoT. Você poderá ver esses termos fornecidos como parte de um insight de uso de cota ao iniciar uma solicitação de suporte no portal do Azure. Eles também podem ser retornados pelo suporte ao cliente. Você pode usar a tabela abaixo para fazer referência cruzada desses termos com a operação correspondente para ajudá-lo a entender o uso e a cobrança da cota para sua solução de IoT. Para obter mais informações, consulte Exemplo 4.
Categoria da operação | Informações de cobrança |
---|---|
Operações de registro de identidade (criar, atualizar, obter, listar, excluir, atualização em massa, estatísticas) |
Não será cobrado. |
Mensagens do dispositivo para a nuvem | As mensagens enviadas com êxito são cobradas em partes de 4 KB na entrada no Hub IoT. Por exemplo, uma mensagem de 100 bytes é cobrada como uma mensagem e uma mensagem de 6 KB é carregada como duas mensagens. Enviar Evento de Dispositivo: Dispositivo para Telemetria em Nuvem ou Dispositivo de Roteamento para Telemetria em Nuvem dependendo se o hub IoT tem recursos de roteamento de mensagens configurados. |
Mensagens da nuvem para o dispositivo | As mensagens enviadas com êxito são cobradas em partes de 4 KB. Por exemplo, uma mensagem de 6 KB é cobrada como duas mensagens. Receber Notificação Limitada ao Dispositivo: Comando Nuvem Para Dispositivo |
Carregamentos de arquivos | A transferência de arquivos para o Armazenamento do Azure não é medida pelo Hub IoT. Mensagens de conclusão e inicialização de transferência de arquivo são cobradas como mensagens limitadas com incrementos de 4 KB. Por exemplo, a transferência de um arquivo de 10 MB é cobrada como duas mensagens além do custo de Armazenamento do Azure. Criar Upload de Arquivo Sas Uri: Upload de Arquivo do Dispositivo Para Nuvem Atualizar Status de Upload do Arquivo: Upload de Arquivo do Dispositivo Para Nuvem |
Métodos diretos | As solicitações de métodos bem-sucedidas são cobradas em partes de 4 KB, e as respostas são cobradas em partes de 4 KB como mensagens adicionais. Solicitações ou respostas sem conteúdo são cobradas como uma mensagem. Por exemplo, um método com um corpo de 4 KB que resulta em uma resposta sem conteúdo do dispositivo é cobrado como duas mensagens. Um método com um corpo de 6 KB que resulta em uma resposta de 1 KB do dispositivo é cobrado como duas mensagens para a solicitação mais outra mensagem para a resposta. As solicitações para dispositivos desconectados são cobradas como mensagens em partes de 4 KB mais uma mensagem para uma resposta que indica que o dispositivo não está online. Dispositivo - Método Invoke: Método de Invocação Direta do Dispositivo, Módulo - Método Invoke: Método de Invocação Direta do Módulo |
Leituras de dispositivos e módulos gêmeos | Leituras de dispositivos ou módulos gêmeos e de back-end de solução são cobradas como mensagens em partes de 4 KB. Por exemplo, a leitura de um gêmeo de 8 KB é cobrada como duas mensagens. Obter Gêmeo: Obter Gêmeo Obter Módulo Gêmeo: Obter Módulo Gêmeo Fazer a leitura de dispositivos e módulos gêmeos de um dispositivo: Ponto de extremidade: /devices/{id}/twin (MQTT, somente AMQP): Obter Gêmeo D2C Ponto de extremidade: /devices/{deviceid}/modules/{moduleid}/twin (MQTT, somente AMQP): Obter Gêmeo do Módulo D2C |
Atualizações do dispositivo e módulo gêmeo (marcas e propriedades) | Atualizações de dispositivos ou módulos gêmeos e de back-end de solução são cobradas como mensagens em partes de 4 KB. Por exemplo, uma atualização de 12 KB para um gêmeo é cobrada como três mensagens. Atualizar Gêmeo: Atualizar Gêmeo Atualizar Módulo Gêmeo: Atualizar Módulo Gêmeo Substituir Gêmeo: Substituir Gêmeo Substituir Módulo Gêmeo: Substituir Módulo Gêmeo Atualizar as propriedades relatadas do dispositivo ou módulo gêmeo de um dispositivo: Ponto de extremidade: /twin/PATCH/properties/reported/ (MQTT, somente AMQP): D2 Patch ReportedProperties ou Module D2 Patch ReportedProperties Receba notificações de atualização de propriedades desejadas em um dispositivo: Ponto de extremidade: /twin/PATCH/properties/desired/ (MQTT, somente AMQP): D2C Notify DesiredProperties ou Module D2C Notify DesiredProperties |
Consultas de dispositivos e módulos gêmeos | Consultas em dispositivos ou devices.modules são cobradas como mensagens, dependendo do tamanho do resultado em partes de 4 KB. As consultas em trabalhos não são cobradas. Obter Gêmeos (consulta em dispositivos ou coleções devices.modules): Dispositivos de Consulta |
Leituras do gêmeo digital | Leituras de gêmeo digital do back-end de solução são cobradas como mensagens em partes de 4 KB. Por exemplo, a leitura de um gêmeo de 8 KB é cobrada como duas mensagens. Obter Gêmeo Digital: Obter Gêmeo Digital |
Atualizações do gêmeo digital | Atualizações de gêmeo digital do back-end de solução são cobradas como mensagens em partes de 4 KB. Por exemplo, uma atualização de 12 KB para um gêmeo é cobrada como três mensagens. Atualizar Gêmeo Digital: Fazer Patch de Gêmeo Digital |
Comandos do gêmeo digital | Os comandos bem-sucedidos são cobrados em partes de 4 KB, e as respostas são cobradas em partes de 4 KB como mensagens adicionais. Solicitações ou respostas sem corpo são cobradas como uma mensagem. Por exemplo, um comando com um corpo de 4 KB que resulta em uma resposta sem corpo do dispositivo é cobrado como duas mensagens. Um comando com um corpo de 6 KB que resulta em uma resposta de 1 KB do dispositivo é cobrado como duas mensagens para o comando mais outra mensagem para a resposta. Os comandos para dispositivos desconectados são cobrados como mensagens em partes de 4 KB mais uma mensagem para uma resposta que indica que o dispositivo não está online. Comando do Componente Invoke: Comando do Componente do Gêmeo Digital Comando de Nível Raiz Invoke: Comando Raiz do Gêmeo Digital |
Operações de trabalhos (criar, cancelar, obter, consulta) |
Não será cobrado. |
Operações de trabalhos por dispositivo | As operações de trabalhos (como atualizações de gêmeos e métodos) são cobradas em partes de 4 KB. Por exemplo, um trabalho que resulta em 1.000 chamadas de método com solicitações de 1 KB e respostas de carga vazia é cobrado por 2.000 mensagens (uma mensagem para cada solicitação e resposta). Atualizar trabalho de dispositivo gêmeo Trabalho de dispositivo do método Invoke |
Operações de configuração (criar, atualizar, obter, listar, excluir, testar consulta) |
Não será cobrado. |
Configurar operações por dispositivo | As operações de configuração são cobradas como mensagens em partes de 4 KB. As respostas não são cobradas. Por exemplo, uma operação de configuração de aplicação com um corpo de 6 KB é cobrada como duas mensagens. Aplicar no Dispositivo de Borda: Aplicação de Serviço de Configuração. |
Mensagens keep alive | Ao usar protocolos AMQP ou MQTT, as mensagens trocadas para estabelecer a conexão e as mensagens trocadas durante a negociação ou para manter a conexão em aberto e ativa não são cobradas. |
Fluxos de dispositivo (versão prévia) | Os fluxos de dispositivo estão em versão prévia e as operações ainda não são cobradas. Ponto de extremidade: /twins/{deviceId}/streams/{streamName} : Fluxos de Dispositivos Ponto de extremidade: /twins/{deviceId}/modules/{moduleId}/streams/{streamName} : Módulo de Fluxos de Dispositivos |
Observação
Todos os tamanhos são computados considerando-se o tamanho da carga em bytes (o enquadramento de protocolo é ignorado). Para mensagens que têm propriedades e o corpo, o tamanho é calculado de maneira independente de protocolo. Para obter mais informações, consulte formato de mensagem do Hub IoT.
Os tamanhos máximos de mensagem diferem para tipos de operações diferentes. Saiba mais em Limitação da largura de banda e cotas do Hub IoT.
Para algumas operações, você pode usar estratégias de envio em lote e compactação para economizar. Para obter um exemplo usando a telemetria do dispositivo para a nuvem, consulte o Exemplo nº 3.
Exemplo 1
Um dispositivo envia uma mensagem de 1 KB do dispositivo para nuvem por minuto para Hub IoT, que é lida pelo Azure Stream Analytics. O back-end de solução invoca um método (com uma carga de 512 bytes) no dispositivo a cada 10 minutos para disparar uma ação específica. O dispositivo responde ao método com um resultado de 200 bytes.
O dispositivo consume:
Uma mensagem * 60 minutos * 24 horas = 1440 mensagens por dia para as mensagens de dispositivo para a nuvem.
Duas mensagens (solicitação e resposta) * 6 vezes por hora * 24 horas = 288 mensagens para os métodos.
Esse cálculo oferece um total de 1728 mensagens por dia.
Exemplo 2:
Um dispositivo envia uma mensagem de 100 KB do dispositivo para a nuvem a cada hora. Ele também atualiza seu dispositivo gêmeo com cargas de 1 KB a cada quatro horas. O back-end de solução, uma vez por dia, lê o dispositivo gêmeo de 14 KB e atualiza-o com cargas de 512 bytes para alterar as configurações.
O dispositivo consume:
25 mensagens (100 KB/4 KB) * 24 horas para mensagens de dispositivo para nuvem.
Uma mensagem (1 KB/4 KB) * seis vezes por dia para as atualizações do dispositivo gêmeo.
Esse cálculo oferece um total de 606 mensagens por dia.
O back-end da solução consome 4 mensagens (14 KB/4 KB) para ler o dispositivo gêmeo, além de uma mensagem (512/4 KB) para atualizá-lo, em um total de 5 mensagens.
No total, o dispositivo e o back-end da solução consomem 611 mensagens por dia.
Exemplo nº 3
Dependendo do cenário, o envio em lote de mensagens pode reduzir o uso da cota.
Por exemplo, considere um dispositivo que tem um sensor que gera somente 100 bytes de dados cada vez que ele é lido:
Se o sensor de 40 lotes do dispositivo fizer a leitura em uma única mensagem de dispositivo para nuvem com um conteúdo de 4 KB (40 * 100 bytes), somente uma mensagem será cobrada para a cota. Se o dispositivo fizer a leitura do sensor 40 vezes por hora e colocar em lotes as leituras em uma única mensagem de dispositivo para nuvem por hora, ele enviará 24 mensagens/dia.
Se o dispositivo enviar uma mensagem do dispositivo para a nuvem com um conteúdo de 100 bytes para cada leitura do sensor, ele consumirá 40 mensagens na cota para a mesma quantidade de dados. Se o dispositivo fizer a leitura do sensor 40 vezes por hora e enviar cada mensagem individualmente, ele enviará 960 mensagens/dia (40 mensagens * 24).
Sua estratégia de envio em lote depende do seu cenário e do nível de urgência dos dados. Se você estiver enviando grandes quantidades de dados, também poderá considerar implementar a compactação de dados para reduzir ainda mais o impacto na cota de mensagens.
Exemplo nº 4
Quando você abre uma solicitação de suporte no portal do Azure é executado o diagnóstico específico do problema relatado. O resultado é exibido como um insight na guia Soluções de sua solicitação. Um desses insights relata o uso da cota para o hub IoT usando os termos em itálico na tabela anterior. Retornar esse insight específico dependerá dos resultados dos diagnósticos executados no hub IoT para o problema que você está relatando. Se o insight de uso da cota for relatado, você poderá usar a tabela para fazer referência cruzada dos termos de uso relatados com as operações às quais eles se referem.
Por exemplo, a captura de tela a seguir mostra uma solicitação de suporte iniciada para um problema com a telemetria do dispositivo para a nuvem.
Depois de selecionar as Próximas Soluções, o insight de uso da cota é retornado pelo diagnóstico em Detalhamento diário da cota de mensagens do Hub IoT. Ele mostra o detalhamento das mensagens de dispositivo para nuvem enviadas para o Hub IoT. Nesse caso, o roteamento de mensagens está habilitado no hub IoT, portanto, as mensagens são mostradas como Roteamento de Telemetria de Dispositivo para Nuvem. Não esqueça de que o insight de uso da cota pode não retornar no mesmo problema em um hub IoT diferente. O que é retornado dependerá da atividade e do estado desse hub IoT.