新能源电站运维巡检表单数据存储方法、装置及系统转让专利

申请号 : CN202110109394.4

文献号 : CN112800059B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 汤逸中王传秀成月良王伟张滔董雪何正东叶海瑞

申请人 : 国电南瑞南京控制系统有限公司国家电投集团江苏新能源有限公司

摘要 :

本发明公开了一种新能源电站运维巡检表单数据存储方法、装置及系统,所述方法包括:遍历新能源电站运维巡检表单中所有的数据单元,形成数据单元集合;获取数据单元集合中各个数据单元中的条目名称和条目内容,并组成键值对;将所有拼接键值对组成键值对集合;将所述键值对集合保存到关系型数据库的数据库表中的某一字段里,完成数据存储。本发明只需要对一张共用的关系型数据库的数据库表进行操作,提高了关系型数据库运维巡检数据存取速度,降低了在关系型数据库中建设和维护运维巡检业务相关数据库表的成本。

权利要求 :

1.一种新能源电站运维巡检表单数据存储方法,其特征在于,包括:遍历新能源电站运维巡检表单中所有的数据单元,形成数据单元集合;

获取数据单元集合中各个数据单元中的条目名称和条目内容,并组成键值对;

将所有拼接键值对组成键值对集合;

将所述键值对集合保存到关系型数据库的数据库表中的某一字段里,完成数据存储;

所述新能源电站运维巡检表单为网页表单;所述条目名称为数据单元行号和列号的组合;所述条目内容为填报内容;

所述条目名称和条目内容的获取方法为:

利用迭代器对数据单元集合进行操作,获取每个数据单元中的条目名称和条目内容;

所述键值对的组成方法包括:

按照所需的数据结构,将每个数据单元的条目名称和条目内容进行映射组成键值对;

所述键值对集合的组成方法包括:

将获得的所有键值对,按照约定好的字符串格式拼接后组成键值对集合;

所述关系型数据库中包括一张至少含三个字段以上的关系型数据库表,所述三个字段存储的数据内容包括:运维巡检表记录ID、运维巡检表类型和运维巡检表数据内容;所述三个字段中均没有使用大字段格式;

在所述将所有拼接键值对组成键值对集合步骤之后,还包括:在关系型数据库的数据库表中的另一字段里,保存待分析数据,当需要对待分析数据进行分析时,直接从该字段里获得待分析数据。

2.根据权利要求1所述的一种新能源电站运维巡检表单数据存储方法,其特征在于:所述关系型数据库为开源关系型数据库MySQL、开源关系型数据库Maria DB、微软SQL Server关系型数据库、甲骨文Oracle关系型数据库中的一种或者多种。

3.根据权利要求1所述的一种新能源电站运维巡检表单数据存储方法,其特征在于,还包括:当需要对存储在关系型数据库的数据库表中的数据进行分析时,解析所述键值对集合获得待分析数据。

4.一种新能源电站运维巡检表单数据存储装置,其特征在于,包括:数据单元集合形成单元,用于遍历新能源电站运维巡检表单中所有的数据单元,形成数据单元集合;

键值对组成单元,用于获取数据单元集合中各个数据单元中的条目名称和条目内容,并组成键值对;

键值对集合组成单元,用于将所有拼接键值对组成键值对集合;

保存单元,用于将所述键值对集合保存到关系型数据库的数据库表中的某一字段里,完成数据存储;

所述新能源电站运维巡检表单为网页表单;所述条目名称为数据单元行号和列号的组合;所述条目内容为填报内容;

所述条目名称和条目内容的获取方法为:

利用迭代器对数据单元集合进行操作,获取每个数据单元中的条目名称和条目内容;

所述键值对的组成方法包括:

按照所需的数据结构,将每个数据单元的条目名称和条目内容进行映射组成键值对;

所述键值对集合的组成方法包括:

将获得的所有键值对,按照约定好的字符串格式拼接后组成键值对集合;

所述关系型数据库中包括一张至少含三个字段以上的关系型数据库表,所述三个字段存储的数据内容包括:运维巡检表记录ID、运维巡检表类型和运维巡检表数据内容;所述三个字段中均没有使用大字段格式;

在所述将所有拼接键值对组成键值对集合步骤之后,还包括:在关系型数据库的数据库表中的另一字段里,保存待分析数据,当需要对待分析数据进行分析时,直接从该字段里获得待分析数据。

5.一种新能源电站运维巡检表单数据存储系统,其特征在于:包括存储器、处理器以及计算机程序,所述计算机程序存储在所述存储器中,所述处理器运行所述计算机程序执行权利要求1至3中任一所述的方法。

说明书 :

新能源电站运维巡检表单数据存储方法、装置及系统

技术领域

[0001] 本发明新能源电站运维巡检技术领域,具体涉及一种新能源电站运维巡检表单数据存储方法、装置及系统。

背景技术

[0002] 随着新能源电站信息化程度不断深化,覆盖“大云物移智”等海量数据场景的5G通信技术即将投入至商业应用,新能源电站信息化运维巡检已日趋规范化,运维巡检采用信息化表单填报,运维巡检精度可精确到设备零件,并按“年、月、周、日、时”不同周期指定运维巡检计划,实现设备、生产、运营全生命周期覆盖。新能源电站信息化运维巡检表存在表单数量大、表结构复杂、各表间相似度低等问题。
[0003] 在新能源电站集群化管理的场景下,运维巡检表单的数量和对应的数据库表数量随着接入的场站数量的增加还在不断增加。同时,运维巡检人员在同一时间完成表单上报和存储的场景也越发频繁。这种高并发场景下使用不同表单对数据库进行存取操作时,数据库易发生阻塞。此外,随着数据库表数量激增,还会大大增加数据库表管理难度。针对大规模新能源电站集群化运维巡检,优化表单数据库存储方法既是热点也是难点。
[0004] 目前,新能源电站集群运维巡检表单的数据库存储模式主要有两种:一种是字段式存储,将表单内各个填报条目与数据库的字段(域)一一对应,一张运维巡检表单对应一张数据库表;另一种是文本文件存储,将整个运维巡检表单的代码按照字符或者二进制格式存储到数据库中。
[0005] 在新能源电站集群运维巡检场景下,使用字段式存储方法持久化运维巡检表单时,存在一些问题:
[0006] 1)建设和维护数据库表的效率低、数据库表可复用性差、单张数据库表字段总数较大且查询效率低,前后端数据结构复杂。
[0007] 2)文件保存是常见于基于HTML文本或者PHP语言编写的表单。表单文件在存入数据库时,表单文本中大量布局和格式也一同被存入数据库,因此,表单文件体积大,在进行数据持久化时通常使用数据库的大字段格式进行存储。大字段在数据库存取过程中效率低、资源消耗高,面对集群运维高并发场景下会阻塞数据库I/O,占用大量消息队列资源影响其他服务的响应性和稳定性。此外,数据作为文本内容存入数据库后数据将失去其属性和意义,在海量数据场景下,如果无法进行数据统计、分析和挖掘,其市场价值将大打折扣。

发明内容

[0008] 针对上述问题,本发明提出一种新能源电站运维巡检表单数据存储方法、装置及系统,只需要对一张共用的关系型数据库的数据库表进行操作,提高了关系型数据库运维巡检数据存取速度,降低了在关系型数据库中建设和维护运维巡检业务相关数据库表的成本。
[0009] 为了实现上述技术目的,达到上述技术效果,本发明通过以下技术方案实现:
[0010] 第一方面,本发明提供了一种新能源电站运维巡检表单数据存储方法,包括:
[0011] 遍历任意一张或多张新能源电站运维巡检表单中所有的数据单元,形成数据单元集合,作为原始数据;
[0012] 获取数据单元集合中各个数据单元中的条目名称和条目内容,并组成键值对;
[0013] 将所有拼接键值对组成键值对集合;
[0014] 将所述键值对集合保存到关系型数据库的数据库表中的某一字段里,完成数据存储。
[0015] 可选地,所述新能源电站运维巡检表单为网页表单,允许用户输入发送到数据服务器进行处理,所述新能源电站运维巡检表单可以类似于纸质、Excel表或数据库表单,将数据安排成行与列,或是更为复杂的结构;所述条目名称为数据单元行号和列号的组合;所述条目内容为填报内容。
[0016] 可选地,所述条目名称和条目内容的获取方法为:
[0017] 利用迭代器对数据单元集合进行操作,获取每个数据单元中的条目名称和条目内容。
[0018] 可选地,所述键值对的组成方法包括:
[0019] 按照所需的数据结构,将每个数据单元的条目名称和条目内容进行映射组成键值对;具体地,在将条目名称和条目内容按文本规则拼接成字符串时,拼接规则和拼接格式不受限定,可以是JSON格式也可以是Map格式,只要解析时按拼接规则解析即可。
[0020] 所述键值对集合的组成方法包括:
[0021] 将获得的所有键值对,按照约定好的字符串格式拼接后组成键值对集合。在解析存储在关系型数据数据表中的键值对集合时,按照拼接规则对键值对集合进行解析,解析后得到键值对中的条目名称和条目内容,依据新能源电站运维巡检表单各个数据单元的条目名称匹配条目内容。
[0022] 可选地,所述关系型数据库中包括一张至少含三个字段以上的关系型数据库表,所述三个字段存储的数据内容包括:运维巡检表记录ID、运维巡检表类型和运维巡检表数据内容;所述三个字段中均没有使用大字段格式。
[0023] 可选地,所述关系型数据库为开源关系型数据库MySQL、开源关系型数据库Maria DB、微软SQL Server关系型数据库、甲骨文Oracle关系型数据库中的一种或者多种。
[0024] 可选地,所述的一种新能源电站运维巡检表单数据存储方法,还包括:
[0025] 当需要对存储在关系型数据库的数据库表中的数据进行分析时,解析所述键值对集合获得待分析数据。
[0026] 或者在所述将所有拼接键值对组成键值对集合步骤之后,还包括:在关系型数据库的数据库表中的另一字段里,保存待分析数据,当需要对待分析数据进行分析时,直接从该字段里获得待分析数据。
[0027] 基于本发明中的存储方法,在处理同类型运维巡检表单数据,需要对特定条目内容进行数据分析的场景下,由于运维巡检表单格式固定,其条目名称也是固定的,可通过条目名称快速获取到需要进行数据分析的条目映射。在处理不同类型运维巡检表单数据,并进行数据分析的场景下,可以统一条目名称,实现跨运维巡检表单映射到对应的条目内容。
[0028] 第二方面,本发明提供了一种新能源电站运维巡检表单数据存储装置,包括:
[0029] 数据单元集合形成单元,用于遍历新能源电站运维巡检表单中所有的数据单元,形成数据单元集合;
[0030] 键值对组成单元,用于获取数据单元集合中各个数据单元中的条目名称和条目内容,并组成键值对;
[0031] 键值对集合组成单元,用于将所有拼接键值对组成键值对集合;
[0032] 保存单元,用于将所述键值对集合保存到关系型数据库的数据库表中的某一字段里,完成数据存储。
[0033] 第三方面,本发明提供了一种新能源电站运维巡检表单数据存储系统,包括存储器、处理器以及计算机程序,所述计算机程序存储在所述存储器中,所述处理器运行所述计算机程序执行第一方面中任一所述的方法。
[0034] 与现有技术相比,本发明的有益效果:
[0035] 本发明可以只提取新能源电站运维巡检表单的条目名称和条目内容,没有保存表单格式和样式,因此,运维巡检表单内容体积小,在数据库中无需采用大字段格式存储,大大的提高了存取效率。此外,将运维巡检表单条目名称与条目内容做映射,从而将运维巡检表单由二维表降维至一维表,只需一个数据库字段即可保存运维巡检表单内容,大大减少了数据库表字段数量,提高了数据库表查询速度。最后,多张运维巡检表单可共用一张数据库表,降低了运维表单的数据库表建设和维护成本。

附图说明

[0036] 为了使本发明的内容更容易被清楚地理解,下面根据具体实施例并结合附图,对本发明作进一步详细的说明,其中:
[0037] 图1为本发明一种实施例的新能源电站运维巡检表单数据存储方法的流程示意图。
[0038] 图2为本发明一种实施例的新能源电站运维巡检表单数据存储系统的结构示意图具体实施方式
[0039] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明的保护范围。
[0040] 下面结合附图对本发明的应用原理作详细的描述。
[0041] 实施例1
[0042] 如图1所示为本发明的新能源电站运维巡检表存储方法的流程图。本发明实施例中充分考虑了当前新能源电站大规模集群化运维的带来的运维巡检表数量激增、填报频繁的实际工作场景,提出了一种新能源电站运维巡检表单数据存储方法,实现了在关系型数据库中高效建立和管理新能源电站运维巡检表单的数据库表,能够快速存储复杂表单数据,降低了高并发场景下,数据库被阻塞的情况,提高了数据库运行稳定性。
[0043] 在本发明实施例的一种具体实施方式中,以Oracle为关系型数据库实例,以实际应用中的大规模新能源电站集群化运维管理系统的风机移动巡检表为新能源电站移动巡检表单的应用实例,对本发明实施例中所提供的新能源电站运维巡检表存储方法做详细说明。但不局限于所述的风机移动巡检表,在实际应用过程中可以根据实际需求自行调整,达到同样的技术效果。
[0044] 其方法步骤如图1所示,如下:
[0045] (1)遍历一张新能源电站运维巡检表单中所有的可填数据单元,组成数据单元集合,作为原始数据;
[0046] 本实施例中,以某新能源电站风机移动巡检纸质表单为实例,某新能源电站风机移动巡检纸质表单的可填报列数为2列,可填报行数为95行。基于运维巡检纸质表单,制作一张运维巡检Web表单,将填报列单元格的行号和列号组合作为条目名称,将填报内容作为条目内容。
[0047] (2)用迭代器对数据单元集合进行操作,获取每个数据单元中的条目名称和条目内容;
[0048] 所述的迭代器是表示对数据单元集合逐一进行操作,不受限于迭代器的实现方式。本实施例中,采用ECMAScrpit 6.0标准语法的JavaScript语言中的Iterator(object,[keyOnly])函数实现迭代器。
[0049] (3)按照所需的数据结构,将每个数据单元的条目名称和条目内容进行映射组成键值对;
[0050] (4)根据所述获得的键值对,按照约定好的字符串格式拼接键值对组成键值对集合;
[0051] 其中,所述的组成键值对和拼接好的键值对集合的变量类型、数据类型和数据格式不受限制,可以根据实现系统、数据库系统支持的类型和格式不同而变化。实施例中,采用ECMAScrpit 6.0标准语法的JavaScript语言中的let变量类型和json数据格式暂时将组合好的键值对和拼接好的键值对集合存储在内存中。
[0052] (5)保存键值对集合到关系型数据库的数据库表中的一个字段里,完成运维巡检表数据入库;
[0053] 其中,所述传统关系型数据库,包括:开源关系型数据库MySQL、开源关系型数据库Maria DB、微软SQL Server关系型数据库、甲骨文Oracle关系型数据库中的一种或者多种。
[0054] 其中,所述的用来存储运维巡检表单数据,与运维巡检表单在关系型数据库中对应的数据库表需要进行如下操作,包括:建立一张至少含三个字段以上的关系型数据库表,所述三个字段存储的数据内容包括:运维巡检表记录ID、运维巡检表类型、运维巡检表数据内容;所述三个字段中均没有使用大字段格式。本实施例中使用的Oracle数据库,上述三个字段的类型和命名如表1所述,分别为:
[0055] 表1
[0056]字段名称 类型 命名
运维巡检表记录ID number key
运维巡检表类型 varchar type
运维巡检表数据内容 varchar content
[0057] 其中,所述的三个字段是最低的字段要求,通过key字段区分各条新能源运维巡检表单记录;通过type字段区分各条新能源运维巡检表单的类型,使不同新能源电站运维巡检表单的数据,能够存储在同一张关系型数据库数据表中;通过content字段存储新能源电站运维巡检表单的数据。此外,还可以根据不同场景和需求增加关系型数据库中存储新能源电站运维巡检表单数据的字段数量,不限于,增加运维巡检表填报时间字段,增加用于数据分析的字段。
[0058] 当需要对存储在关系数据库中的运维巡检表的数据进行数据分析时,可以通过解析键值对集合获得待分析数据,也可以在运维巡检表数据进行入库前,增加一个数据库字段,用来存储待分析数据。
[0059] 在处理同类型运维巡检表单数据,需要对特定条目内容进行数据分析的场景下,由于运维巡检表单格式固定,其条目名称也是固定的,可通过条目名称快速从K‑V格式字符串中获取到需要进行数据分析的条目映射。在处理不同类型运维巡检表单数据,并进行数据分析的场景下,可以统一条目名称,实现跨运维巡检表单映射到对应的条目内容。
[0060] 实施例2
[0061] 基于与实施例1相同的发明构思,本发明实施例中提供了一种新能源电站运维巡检表单数据存储装置,包括:
[0062] 数据单元集合形成单元,用于遍历新能源电站运维巡检表单中所有的数据单元,形成数据单元集合;
[0063] 键值对组成单元,用于获取数据单元集合中各个数据单元中的条目名称和条目内容,并组成键值对;
[0064] 键值对集合组成单元,用于将所有拼接键值对组成键值对集合;
[0065] 保存单元,用于将所述键值对集合保存到关系型数据库的数据库表中的某一字段里,完成数据存储。
[0066] 其余部分均与实施例1相同。
[0067] 实施例3
[0068] 基于与实施例1相同的发明构思,本发明实施例中提供了一种新能源电站运维巡检表单数据存储系统,如图2所示,包括存储器、处理器以及计算机程序,所述计算机程序存储在所述存储器中,所述处理器运行所述计算机程序执行实施例1中任一所述的方法。
[0069] 本发明充分考虑到了大规模新能源电站集群化运维巡检的实际工作情况,根据大规模新能源电站集群运维巡检的实际工作情况对其运维巡检表单数据存储至关系型数据库的数据表进行数据降维,使得不同类型的新能源运维巡检表单数据可以共用一张关系型数据库数据表单,同时,无需在关系型数据库的数据表中,逐一将各个填报条目建立对应的数据库字段,因而,可以大幅减少数据库表和数据库表字段数量,提高了数据库存储速度和数据库表建设、管理效率。此外,只提取新能源电站运维巡检Web表单的填报数据内容,剔除了新能源电站运维巡检Web表单的格式和样式,降低了填报数据内容的体积,使得存储填报数据内容的关系型数据库的数据库表字段无需采用大字段格式,提高了数据库存储效率。同时充分考虑了当前新能源电站大规模集群化运维的带来的运维巡检表数量激增、填报频繁的实际工作场景,降低了高并发场景下,数据库被阻塞的情况,提高了数据库运行稳定性。
[0070] 以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。