论文部分内容阅读
随着现代工业技术的快速发展,重大机械装备运行状态的安全监测愈加必要,也成为业界研究热点。光纤光栅传感器以其体积小、重量轻、柔韧性好、耐高温腐蚀、强抗电磁干扰能力等优点,取代传统电测传感器,广泛应用于重大机械装备状态的智能感知与监测中。如何为这些海量光纤传感监测数据建立高并发性、高扩展性和高可用性的高效存储系统,为实时监测、信息分析和故障分析系统提供稳定可靠的数据支持,也成为目前人们关注的关键问题。本文针对基于光纤传感技术的重大机械装备运行状态在线监测系统的存储需求,结合配置管理信息与传感监测数据的不同特点,采用传统关系型数据库和NoSQL数据库实现数据的分离存储,并设计实现了多级缓冲机制以满足数据存储的高效、实时、精准性,较好的缓解了内存与磁盘I/O的响应延迟。本文主要研究工作如下:(1)针对重大机械装备运行状态在线监测系统不同功能模块的应用需求,结合各类数据特点,将存储分为多级缓存、传统关系数据库系统和NoSQL分布式数据库系统三个部分。采用多级缓存队列实现及时、精准、高效的实时数据分析与显示;采用传统关系型数据库作为系统数据库,实现具有高一致性,高结构化特点的配置管理信息的存储;采用MongoDB作为综合状态数据库,实现海量、非结构化的光纤传感监测数据的存储,为机械装备后期生命周期管理打下良好的数据基础。(2)光纤传感监测数据的海量、大规模、高并发特点势必对存储系统的高效、高并发、高响应性能提出较高需求。为协调高响应需求下高速数据接收和低速磁盘I/O延时造成的不一致性,本文设计并实现了一种高效数据接收和多级缓存模型,该模型采用基于UDP通信协议的多线程接收、Socket缓冲区调整机制来实现数据接收和解析的异步处理;采用基于表置换机制的多线程技术以及ADO.NET的批处理技术,实现对数据库读写的实时性和准确性;采用基于生产者-消费者算法建立二级数据缓存,实现临界区并发读写互斥。(3)针对光纤传感监测数据海量、小文件、松散结构的特点,本文从研究对比传统关系型数据库和NoSQL数据库的存储机制和系统性能着手,进行了全面详尽的可行性分析,从而选择MongoDB作为最优存储方案,设计并实现了基于MongoDB的光纤光栅海量传感监测数据的存储模型。同时,根据传感监测数据的海量、只读的实际应用需求,在MongoDB自动分片技术的基础上,运用基于数据操作频率的均衡算法对MongoDB高扩展性集群进行改进,采用WebService通用服务标准,实现了基于MongoDB的平台独立、多用户差异化、高可扩展性的海量数据存储接口。(4)设计和实现了海量光纤传感监测数据存储系统,并将此系统应用于大型旋转机械轴承振动监测平台。通过实验模拟亿级海量数据情况下的压力测试实验和大型旋转机械轴承振动监测平台在实际生产运行状态下的良好性能,有力证明了论文提出的存储方法的高效性和稳定性。