在企业生产管理过程中, 设备运行状态实时分析至关重要, 直接与企业生产效率和经济效益挂钩. 本文提出一种基于 Kafka,Storm,Redis 架构实现设备运行状态实时分析系统设计. Kafka+Storm+Redis 是一种经典的大数据流式计算框架, 可用于实时运行数据分析, 实时告警数据分析等, 核心思路是将流式计算分解成 3 个模块. 如下图所示:
流式计算框架
设备运行状态实时分析系统主要功能是实时收集设备运行状态数据, 并对这些数据实时计算, 最后将结果保存起来, 以便于展示. 具体过程如下:
1, 在设备运行状态实时分析系统中, 采用 Kafka 作为数据缓冲. 目标是解决数据采集与数据处理速度不一致性问题, 另外, 考虑到 Kafka 是一个分布式的, 支持多副本的消息队列, 因而可用在设备运行状态数据量超大的应用场景.
2, 系统采用 Storm 不断地从 Kafka 中拉取数据进行实时分析, 数据分析过程中可能会检索历史数据 (从 Redis 或其它存储系统中), 对当前结果和历史数据合并后进一步写入后端存储系统.
3,Storm 将计算产生的结果存储到 Redis 中, 以应对后端高并发查询. 如果数据量较大, 单机 Redis 实例无法满足存储和性能要求, 则可使用 Redis Cluster 解决方案.
我们知道, Storm 对 Kafka 和 Redis 均提供很好的支持, 设备运行状态实时分析系统集成示例如下:
Strom 集成 Kafka 和 Redis
来源: http://www.jianshu.com/p/c8c253eaba43