Información de facturación de Azure IoT Hub
En Precios de Azure IoT Hub se proporciona información general sobre diferentes SKU y precios de IoT Hub. Este artículo contiene detalles acerca de cómo IoT Hub mide el uso de las distintas funcionalidades de IoT Hub como mensajes.
Nota
Algunas de las características que se mencionan en este artículo, como la mensajería de la nube al dispositivo, los dispositivos gemelos y la administración de dispositivos, solo están disponibles en el nivel estándar de IoT Hub. Para obtener más información sobre los niveles Básico y Estándar o Gratis de IoT Hub, consulte Elección del nivel adecuado de IoT Hub para la solución.
Cargos por operación
Use la tabla siguiente para determinar qué operaciones se cobran. Todas las operaciones facturables se cobran en bloques de 4000 bytes en centros de IoT de nivel básico y estándar. Las operaciones se miden en fragmentos de 500 bytes en centros de IoT gratuitos. Los detalles de cada categoría se proporcionan en la columna Información de facturación. Esta columna incluye la información siguiente:
- Detalles acerca de cómo se miden las operaciones facturables en centros de IoT de nivel básico y estándar. No todas las operaciones están disponibles en el nivel básico.
- Las operaciones que dan lugar a cargos, con los elementos siguientes:
- Un vínculo a la documentación de la API de REST si existe.
- El punto de conexión de la operación si la documentación de la API de REST no está disponible o si la operación solo está disponible a través de MQTT o AMQP. El valor del punto de conexión omite la referencia inicial al centro de IoT de destino;
{fully-qualified-iothubname}.azure-devices.net
.
- Uno o varios términos en cursiva después de cada operación (o punto de conexión). Estos términos representan operaciones facturables que se cobran con respecto a la cuota de su centro de IoT. Es posible que vea que estos términos se proporcionan como parte de la información de uso de cuota al iniciar una solicitud de soporte técnico en Azure Portal. También es posible que los proporcione el servicio de atención al cliente. Puede usar la tabla siguiente para hacer referencia cruzada a estos términos con la operación correspondiente para ayudarle a comprender cómo funciona el uso de cuota y la facturación de la solución de IoT. Para obtener más información, vea el ejemplo 4.
Categoría de operación | Información de facturación |
---|---|
Operaciones de registro de identidad (create, update, get, list, delete, bulk update, statistics) |
No se aplicará ningún cargo. |
Mensajes de dispositivo a nube | Los mensajes enviados correctamente se cobran en fragmentos de 4 KB por cada ingreso en IoT Hub. Por ejemplo, un mensaje de 100 bytes se cobra como un mensaje y un mensaje de 6 KB se cobra como dos mensajes. Evento de envío de dispositivo, ya sea Telemetría de dispositivo a la nube o Enrutamiento de telemetría de dispositivo a la nube, en función de si el centro de IoT tiene configuradas las características de enrutamiento de mensajes. |
Mensajes de nube a dispositivo | Los mensajes enviados correctamente se cobran en fragmentos de 4 KB. Por ejemplo, un mensaje de 6 KB se cobra como si fueran dos mensajes. Recibir notificación enlazada al dispositivo: comando de la nube al dispositivo |
Cargas de archivos | IoT Hub no mide el uso de la transferencia de archivos a Azure Storage. Los mensajes de inicio y finalización de transferencia de archivos se cobran como mensajes medidos en incrementos de 4 KB. Por ejemplo, por transferir un archivo de 10 MB se cobra el precio de dos mensajes, además del costo de Azure Storage. Crear URI de SAS de carga de archivo: carga de archivos de un dispositivo a la nube Actualizar estado de carga de archivo: carga de archivos de un dispositivo a la nube |
Métodos directos | Las solicitudes de métodos correctas se cobrarán en fragmentos de 4 KB, y las respuestas se cobran en fragmentos de 4 KB como mensajes adicionales. Las solicitudes o respuestas sin carga se cobran como un mensaje. Por ejemplo, un método con un cuerpo de 4 KB que genera una respuesta sin cuerpo carga el dispositivo se cobra como dos mensajes. Un método con un cuerpo de 6 KB que genera una respuesta de 1 KB desde el dispositivo se cobra como dos mensajes para la solicitud más otro mensaje para la respuesta. Las solicitudes a los dispositivos desconectados se cobran como mensajes en fragmentos de 4 KB más un mensaje para una respuesta que indica que el dispositivo no está en línea. Dispositivo: invocar método: invocación de un método directo de un dispositivo Módulo: invocar método: invocación de un método directo en un módulo |
Lecturas de dispositivos gemelos y módulos gemelos | Las lecturas desde dispositivos gemelos o módulos gemelos y desde el back-end de la solución se cobran como mensajes en fragmentos de 4 KB. Por ejemplo, la lectura de un dispositivo gemelo de 8 KB se cobra como 2 mensajes. Obtener gemelo: obtener gemelo Obtener módulo gemelo: obtener módulo gemelo Leer gemelos de dispositivos y gemelos desde un dispositivo: Punto de conexión: /devices/{id}/twin (solo MQTT, AMQP): obtener gemelo D2C Punto de conexión: /devices/{deviceid}/modules/{moduleid}/twin (solo MQTT, AMQP): Obtener gemelo D2C de módulo |
Actualizaciones de dispositivos gemelos y módulos gemelos (etiquetas y propiedades) | Las actualizaciones desde dispositivos o módulos gemelos y desde el back-end de la solución se cobran como mensajes en fragmentos de 4 KB. Por ejemplo, una actualización de 12 KB de un gemelo se cobra como 3 mensajes. Actualizar gemelo: actualizar gemelo Actualizar módulo gemelo: actualizar módulo gemelo Reemplazar gemelo: reemplazar gemelo Reemplazar módulo gemelo: reemplazar módulo gemelo Actualizar las propiedades notificadas del gemelo del dispositivo o del módulo desde un dispositivo: Punto de conexión: /twin/PATCH/properties/reported/ (solo MQTT, AMQP): D2 Patch ReportedProperties o Module D2 Patch ReportedProperties Recibir notificaciones de actualización de propiedades deseadas en un dispositivo: Punto de conexión: /twin/PATCH/properties/desired/ (solo MQTT, AMQP): D2C Notify DesiredProperties o Module D2C Notify DesiredProperties |
Consultas de dispositivos y módulos gemelos | Las consultas en devices o devices.modules se cobran como mensajes según el tamaño de los resultados en fragmentos de 4 KB. Las consultas en jobs no se cobran. Obtener gemelos (consulta en recopilaciones devices o devices.modules): dispositivos de consulta |
Lecturas de gemelo digital | Las lecturas de gemelos digitales desde el back-end de la solución se cobran como mensajes en fragmentos de 4 KB. Por ejemplo, la lectura de un dispositivo gemelo de 8 KB se cobra como 2 mensajes. Obtener gemelo digital: obtener gemelo digital |
Actualizaciones de gemelos digitales | Las actualizaciones de gemelos digitales desde el back-end de la solución se cobran como mensajes en fragmentos de 4 KB. Por ejemplo, una actualización de 12 KB de un gemelo se cobra como 3 mensajes. Actualizar gemelo digital: revisar gemelo digital |
Comandos de gemelos digitales | Los comandos correctos se cobran en fragmentos de 4 KB y las respuestas se cobran en fragmentos de 4 KB como mensajes adicionales. Las solicitudes o respuestas sin cuerpo se cobran como un mensaje. Por ejemplo, un comando con un cuerpo de 4 KB que genera una respuesta sin cuerpo desde el dispositivo se cobra como dos mensajes. Un comando con un cuerpo de 6 KB que genera una respuesta de 1 KB desde el dispositivo se cobra como dos mensajes para el comando más otro mensaje para la respuesta. Los comandos a los dispositivos desconectados se cobran como mensajes en fragmentos de 4 KB más un mensaje para una respuesta que indica que el dispositivo no está en línea. Invocar comando de componente: comando de componente de gemelo digital Invocar comando de nivel raíz: comando raíz de gemelo digital |
Operaciones de trabajos (create, cancel, get, query) |
No se aplicará ningún cargo. |
Operaciones por dispositivo de trabajos | Las operaciones de trabajos (como actualizaciones de gemelos y métodos) se cobran en fragmentos de 4 KB. Por ejemplo, un trabajo que da como resultado 1000 llamadas de método con solicitudes de 1 KB y respuestas de carga vacía se cobra como 2000 mensajes (un mensaje para cada solicitud y respuesta). Actualizar trabajo de dispositivo gemelo Invocar trabajo de dispositivo de método |
Operaciones de configuración (create, update, get, list, delete, test query) |
No se aplicará ningún cargo. |
Operaciones de configuración por dispositivo | Las operaciones de configuración se cobran como mensajes en fragmentos de 4 KB. Las respuestas no se cobran. Por ejemplo, una operación de aplicación de configuración con un cuerpo de 6 KB se cobra como dos mensajes. Aplicar en el dispositivo perimetral: aplicación de servicio de configuración. |
Mensajes de mantenimiento | Al usar los protocolos AMQP o MQTT, no se cobran los mensajes intercambiados para establecer la conexión y los mensajes intercambiados en la negociación o para mantener la conexión abierta. |
Flujos de dispositivos (versión preliminar) | Los flujos de dispositivo están en versión preliminar y las operaciones aún no se cobran. Punto de conexión: /twins/{deviceId}/streams/{streamName} : flujos de dispositivo Punto de conexión: /twins/{deviceId}/modules/{moduleId}/streams/{streamName} : módulo de flujos de dispositivo |
Nota
Todos los tamaños se calculan teniendo en cuenta el tamaño de carga en bytes (se omiten las tramas de protocolo). En el caso de los mensajes, que tienen propiedades y cuerpo, el tamaño se calcula independiente del protocolo. Para más información, consulte Formato de mensaje de IoT Hub.
Los tamaños máximos de mensaje difieren para los distintos tipos de operaciones. Para obtener más información, consulte Cuotas y límites de IoT Hub.
Para determinadas operaciones, puede usar estrategias de procesamiento por lotes y compresión para reducir los costes. Para obtener un ejemplo sobre el uso de la telemetría de dispositivo a la nube, consulte el Ejemplo 3.
Ejemplo 1
Un dispositivo envía un mensaje de dispositivo a nube de 1 KB por minuto a IoT Hub, que Azure Stream Analytics lee después. El back-end de solución invoca un método (con una carga útil de 512 bytes) en el dispositivo cada 10 minutos para desencadenar una acción específica. El dispositivo responde al método con un resultado de 200 bytes.
El dispositivo consume:
Un mensaje * 60 minutos * 24 horas = 1440 mensajes por día para los mensajes del dispositivo a la nube.
Dos mensajes (solicitud más respuesta) * 6 veces por hora * 24 horas = 288 mensajes para los métodos.
Este cálculo da un total de 1728 mensajes por día.
Ejemplo 2
Un dispositivo envía un mensaje del dispositivo a la nube de 100 KB cada hora. También actualiza su dispositivo gemelo con cargas útiles de 1 KB cada cuatro horas. El back-end de solución, una vez al día, lee el dispositivo gemelo de 14 KB y lo actualiza con cargas útiles de 512 bytes para cambiar las configuraciones.
El dispositivo consume:
25 (100 KB / 4 KB) mensajes * 24 horas para los mensajes del dispositivo a la nube.
Un mensaje (1 KB/4 KB) * seis veces por día para las actualizaciones de dispositivo gemelo.
Este cálculo da un total de 606 mensajes por día.
El back-end de solución consume 4 mensajes (14 KB/4 KB) para leer el dispositivo gemelo, además de un mensaje (512/4 KB) para actualizarlo, con un total de 5 mensajes.
En total, el dispositivo y el back-end de solución consumen 611 mensajes al día.
Ejemplo n.º 3
Dependiendo de su escenario, el procesamiento por lotes de mensajes puede reducir el uso de la cuota.
Por ejemplo, considere un dispositivo que tiene un sensor que solo genera 100 bytes de datos cada vez que se lee:
Si el dispositivo realiza un lote de 40 lecturas del sensor en un único mensaje de dispositivo a la nube con una carga de 4 KB (40 * 100 bytes), solo se cobra un mensaje con respecto a la cuota. Si el dispositivo lee el sensor 40 veces cada hora y los agrupa las lecturas por lotes en un único mensaje de dispositivo a la nube por hora, enviaría 24 mensajes/día.
Si el dispositivo envía un mensaje de dispositivo a la nube con una carga de 100 bytes para cada lectura del sensor, consume 40 mensajes con respecto a la cuota de la misma cantidad de datos. Si el dispositivo lee el sensor 40 veces cada hora y envía cada mensaje individualmente, enviaría 960 mensajes/día (40 mensajes * 24).
La estrategia de procesamiento por lotes depende de su escenario y del nivel de importancia del tiempo de los datos. Si envía grandes cantidades de datos, también puede considerar la posibilidad de implementar la compresión de datos para reducir aún más el impacto en la cuota de mensajes.
Ejemplo n.º 4
Al abrir una solicitud de soporte técnico en Azure Portal, se ejecutan diagnósticos específicos del problema notificado. El resultado se muestra como una conclusión en la pestaña Soluciones de la solicitud. Una de estas conclusiones notifica el uso de cuota de IoT Hub mediante los términos en cursiva de la tabla anterior. La devolución de esta información concreta dependerá de los resultados de los diagnósticos que se realizan en el centro de IoT para el problema que está notificando. Si se notifica la información de uso de cuota, puede usar la tabla para hacer referencia cruzada al término de uso notificado o a los términos con las operaciones a las que hacen referencia.
Por ejemplo, en la captura de pantalla siguiente se muestra una solicitud de soporte técnico que se inició para un problema con la telemetría del dispositivo a la nube.
Tras seleccionar Soluciones siguientes, el diagnóstico devuelve la información de uso de cuota en Desglose de la cuota de mensajes diarios de IoT Hub. Este muestra el desglose de los mensajes del dispositivo a la nube que se enviaron a IoT Hub. En este caso, el enrutamiento de mensajes está habilitado en IoT Hub, por lo que los mensajes se muestran como Enrutamiento de telemetría de dispositivo a la nube. Tenga en cuenta que es posible que la información de uso de cuota no se devuelva para el mismo problema en un centro de IoT diferente. El contenido que se devuelve depende de la actividad y del estado de dicho centro de IoT.