数据订阅概述¶
数据订阅功能是EnOS为提高用户获取和利用资产数据效率而推出的一种数据主动推送服务。推送的内容包括时序数据(资产实时数据和历史数据)、告警数据、和事件数据。
基于该推送服务,应用获取资产数据不再需要轮询API,订阅的数据会被主动推送到应用,大大提高应用消费数据的效率、降低API使用费用。
数据订阅服务的主要功能组成和架构,如下图所示:
主要功能¶
多数据源订阅
数据订阅服务支持对时序数据(资产实时数据和历史数据)、告警数据、和事件数据的订阅。
可视化订阅配置
通过EnOS管理门户 数据订阅 页面,创建数据订阅任务、配置订阅内容、启停订阅任务、以及查看订阅任务运行情况。
数据订阅SDK
开发者可使用配套的数据订阅 Java SDK、Python SDK、.NET SDK 快速开发应用,消费订阅数据。
创建数据订阅任务的步骤,参见 开发数据订阅任务。
性能优势¶
数据生产与消费解耦
数据生产与数据消费解耦,消费数据采用 pull 的消费模式,实现了客户端的流控。
丰富的数据过滤条件
支持多种数据过滤条件,可订阅指定客户、指定设备的测点数据、告警数据、和事件数据。
跨组织订阅
通过应用授权(购买应用),支持订阅多个组织的资产数据。
数据完整性
保证at-least-once语义,确保订阅数据不会丢失。
运行监控
支持查看和监控订阅任务的运行情况,对比产生订阅数据的速率和消费订阅数据的速率,查看是否有消费数据延迟,确保订阅数据被及时消费。
集群消费数据
支持集群消费数据,即同一个Topic可以被同一个Consumer Group内的多个Consumer Client均摊消费(目前支持2个Consumer Client),也可以被多个Consumer Group重复消费。
断点续传
支持断点续传,即Consumer Client停止消费数据后的24小时内,可使用相同的Consumer Group在断点处继续消费订阅的数据。