首页 / 一种数据存储方法、系统、计算机设备及存储介质

一种数据存储方法、系统、计算机设备及存储介质实质审查 发明

技术领域

[0001] 本发明属于电力电子技术领域,具体为一种数据存储方法、系统、计算机设备及存储介质。

相关背景技术

[0002] 随着能源结构的调整、产业结构的升级和智能电网的发展,分布式电源和柔性负荷的大规模接入配电网,配电网的运营管控从中压向低压延伸,企业和组织需要处理的数据量急剧增加。但现有配电自动化主站系统缺乏高效的存储手段,且存储往往依赖单机,为了满足海量数据存储,需提升单机性能,但单机瓶颈性能提升难度大;因此,现有的数据存储方案难以满足高并发、低延迟及快速读写的需求。

具体实施方式

[0060] 现结合附图和实施例进一步阐述本发明的技术方案。
[0061] 实施例1:
[0062] 本实施例提出了一种配电网海量数据存储方法,主要包括:采用内存数据库集群存储配电物联网关系型设备的模型、参数和配置信息;本实施例采用的内存数据库集群由不同的分片存储节点采用集群模式部署构成,每个分片存储节点均具有一本地实时库,在每个分片存储节点中存储有全量数据。
[0063] 本实施例通过构建不同的分片存储节点对配电网海量数据进行存储,可大大满足大容量存储、高可靠访问需求,同时保持数据一致性。
[0064] 实施例2:
[0065] 本实施例提出了一种配电网海量数据存储方法,主要包括:采用内存数据库集群存储配电物联网关系型设备的模型、参数和配置信息;本实施例采用的内存数据库集群由不同的分片存储节点采用集群模式部署构成,每个分片存储节点均具有一本地实时库,每个本地实时库运行有全量数据。本实施例的每个分片存储节点的读取服务、写入服务分离。每个分片存储节点上运行多个读取服务和一个写入服务,集群环境下的全部读取服务和写入服务分别通过Nginx反向代理对外提供访问能力,写入服务之间通过内存数据库集群的同步服务将数据同步到其他分片存储节点。
[0066] 如图1所示,本发明的一种配电网海量数据存储与管理的方法的流程大致为:当应用程序发起数据读写请求。内存数据库集群首先检查是否已存在相应的缓存项。如果缓存中不存在该项,应用程序将直接写入内存数据库集群中的一个分片存储节点,该分片存储节点将数据写入本地实时库存储,并通过集群内部的复制机制将数据同步到其他分片存储节点,以确保数据的一致性。数据库集群确认数据写入成功后,返回成功响应给应用程序。
[0067] 如图2所示,本实施例提出的内存数据库集群通过提供以下服务实现对存储在内存数据库集群中的数据进行管理,包括:
[0068] 读取服务:提供对各分片存储节点的本地实时库中的数据查询功能,包括全表查询、按关键字查询、按条件域值筛选、按sql查询、引用显示翻译、查询表、域结构等元数据信息及其他的辅助方法;
[0069] 写入服务:提供对各分片存储节点的本地实时库中的数据进行修改的功能,包括按关键字修改、批量更新记录、插入记录、删除记录等进行修改;
[0070] 同步服务:写入线程在提交成功后,将修改数据提交到日志队列,再由写入服务的发送线程写入到日志文件中。本机的同步服务读取日志文件,调用其它节点的接收服务写入各节点本地的实时库;
[0071] 分级存储,包括主键索引分级存储、域索引分级存储、数据表分级存储、分级下装;例如,在对设备表数据进行分段存储时,确定每一个分片存储节点的数据容量及范围,设备表关键字可根据其记录ID决定落在哪个分片存储节点上。
[0072] 本实施例方法基于内存数据库集群技术,通过内存数据库集群提供的读取服务、写入服务、同步服务、分级存储等,可大大满足配电物联网关系型设备的模型、参数和配置信息的存储与管理需求。
[0073] 实施例3:
[0074] 本实施例提出了一种配电网海量数据存储方法,主要包括:采用分布式数据缓存集群存储数据,且数据以键值对形式存储在分布式数据缓存集群中;该分布式数据缓存集群由多个Redis采用集群模式部署构成。采用分布式数据缓存集群存储的数据包括热点数据和量测数据,该热点数据包括:动态模型数据、引用显示数据和元数据。
[0075] 本实施例通过缓存实例+代理服务模式构建分布式数据缓存集群,可实现对海量实时量测数据的存储及访问需求,实现快速存取,满足对数据的高性能访问需求。
[0076] 实施例4:
[0077] 为了应对实时量测数据的存储规模、访问性能的需求持续增长,本实施例提出了一种配电网海量数据存储方法,主要包括:采用分布式数据缓存集群存储数据,且数据以键值对形式存储在分布式数据缓存集群中,其中数据键由标识符和测点ID组成,数据值由时间戳、值、状态码组成;该分布式数据缓存集群由多个Redis采用集群模式部署构成。采用分布式数据缓存集群存储的数据包括热点数据和量测数据,该热点数据包括:动态模型数据、引用显示数据和元数据。
[0078] 如图3所示,本实施例提出的分布式数据缓存集群通过提供以下服务实现对存储在分布式数据缓存集群中的数据进行管理,包括:
[0079] 缓存数据下装:包含3种模式:下装元数据、下装动态域类型、下装量测数据;
[0080] 缓存代理,即本实施例提出的分布式数据缓存集群可以作为缓存代理,去访问分布式数据缓存集群以外的数据库:完成对Redis和实时库的统一透明访问,Redis的性能更高(高性能低延迟),再有大量的实时数据请求时,redis能够满足时效性的要求,并通过主从机制保证高可用,为客户端提供高性能访问,主从机制是一种技术架构,数据发生变化后主节点负责操作,从节点复制数据保证数据一致性,读操作在从节点进行;缓存代理提供读、写服务;写服务支持Redis集群数据和实时库数据的同步,读服务支持缓存数据读取以及缓存穿透时加载数据,即支持从实时库中加载量测数据到Redis集群。
[0081] 缓存监控:实时监控非集群的模式的Redis或代理服务,当出现故障时,自动拉起。
[0082] 缓存数据转发:为保证数据的一致性,需要向缓存和实时库提交。写入缓存成功后,通过异步方式将修改的数据提交到共享内存,由转发服务将共享内存中的数据写到实时库中,共享内存被写满则会转储到文件中,循环滚动。此处提及的共享内存为分布式数据缓存集群的所有Redis共享的内存,存储在分布式数据缓存集群中的数据都同时存储在Redis和实时库中,Redis和实时库是配合使用,一个云平台既有redis也有实时库。
[0083] 进一步的缓存数据转发模块,为保证数据的一致性,需要向缓存和实时库提交。通过异步方式将修改的数据提交到共享内存里,由转发服务将内存中的数据写到实时库中。
[0084] 热点数据缓存,该热点数据包括动态模型数据缓存、引用显示缓存、元数据缓存。
[0085] 动态模型数据缓存通过初始化和触发式两种方式更新。系统启动时,通过下装方式将设备表“动态数据”列属性为“数据缓存”的数据写入分布式数据缓存集群中;系统运行时,当内容发生变化,通过接收模型修改消息的方式同步更新。
[0086] 引用显示缓存,系统启动时,通过下装方式将所有设备id的引用显示内容和设备表的各个域名写入分布式数据缓存集群中;系统运行时,当引用域的内容发生变化,需要通过接收修改消息的方式同步更新。
[0087] 元数据缓存通过json的格式将实时库表结构和域结构在表下装时写入分布式数据缓存集群中。
[0088] 本实施例通过缓存实例+代理服务模式构建分布式数据缓存集群,具备持久化功能,通过提供缓存监控、分区扩展,并可实现故障快速恢复与故障转移,同时提供缓存转发和热点数据缓存服务。本实施例可实现快速存取,有效缩短了响应时间,降低实时库和商用数据库负载和对数据源的依赖。
[0089] 提及的分区扩展是指通过增加更多的缓存节点或服务器来增强整个缓存系统的存储能力和处理能力。这种扩展方式不需要升级现有节点的硬件,而是通过增加节点数量来实现。
[0090] 提及的故障恢复是基于分布式缓存的哨兵机制,当分布式缓存系统中的某个节点或组件发生故障时,系统能够自动或手动地将故障节点上的数据和服务转移到其他正常节点上,从而确保系统的持续运行和数据的可用性。
[0091] 本实施例2和实施例4提出的存储方法均可基于微服务架构进行开发,贯彻高内聚,低耦合的开发思想。通过分解巨大单体式应用为多个服务方法解决了复杂性问题;每个服务都可以有专门开发团队来开发,开发者自由选择开发技术,提供公共接口服务;微服务架构模式是每个微服务独立的部署,开发者不再需要协调其它服务部署对本服务的影响,加快部署速度。
[0092] 实施例5:
[0093] 在实施例2的基础上,本实施例提出了一种配电网海量数据存储系统,包括内存数据库集群;该内存数据库集群用来存储配电物联网关系型设备的模型、参数和配置信息;本实施例采用的内存数据库集群由不同的分片存储节点采用集群模式部署构成,每个分片存储节点均具有一本地实时库,每个本地实时库运行有全量数据。
[0094] 本实施例的内存数据库集群可提供读取服务、写入服务、同步服务、分级存储等,可大大满足配电物联网关系型设备的模型、参数和配置信息的存储与管理需求。
[0095] 实施例6:
[0096] 在实施例4的基础上,本实施例提出了一种配电网海量数据存储方法,包括分布式数据缓存集群,热点数据和量测数据以键值对形式存储在分布式数据缓存集群中,其中数据键由标识符和测点ID组成,数据值由时间戳、值、状态码组成;该分布式数据缓存集群由多个Redis采用集群模式部署构成。该热点数据包括:动态模型数据、引用显示数据和元数据。
[0097] 本实施例通过缓存实例+代理服务模式构建分布式数据缓存集群,可应对实时量测数据的存储规模、访问性能的需求持续增长,以及实现对海量实时量测数据的存储及访问需求,实现快速存取,满足对数据的高性能访问需求。
[0098] 实施例7:
[0099] 本实施例公开了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述任意一实施例公开的步骤。
[0100] 实施例8:
[0101] 本实施例公开了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任意一实施例公开的步骤。
[0102] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read‑Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
[0103] 以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0104] 以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

当前第1页 第1页 第2页 第3页
相关技术
存储方法相关技术
数据存储相关技术
黄汉远发明人的其他相关专利技术