本公开实施例涉及计算机,具体涉及一种hdf5数据文件的数据处理方法和装置。
背景技术:
1、hdf5(hierarchical data format 5)是一种用于存储和组织大量数据的文件格式。hdf5 文件采用层次化的数据结构,可以存储丰富的元数据,支持并行 i/o 和多种压缩技术,能够处理大规模数据集,并提供高性能的数据读写能力。
2、在进行材料实验场景中,将测量材料的相关参数特性直接使用hdf5格式保存原始的实验数据,其中表数据用来存储参数特性值,元数据用来记录不同的实验条件,并且每次实验结果都是分别存储为hdf5数据文件,这样的数据直接存储,导致数据存储分散,且存储的均为原始数据,不利于数据绘图和实验结果分析
3、相关的hdf5数据文件的数据处理均是通过代码的方式实现,需要专业人员执行,人力成本比较高。
技术实现思路
1、有鉴于此,本申请提供一种hdf5数据文件的数据处理方法和装置,能够通过配置配置文件的方式低成本实现对hdf5数据文件中的数据进行处理。
2、为解决上述技术问题,本申请的技术方案是这样实现的:
3、在一个实施例中,提供了一种hdf5数据文件的数据处理方法,基于yml配置配置文件;其中,所述配置文件定义第一类顶层级对象和第二类顶层级对象,以及目的hdf5数据文件的生成方法;针对所述第一类顶层级对象定义复用信息和待处理的hdf5数据文件的入口变量;配置所述第二类顶层级对象的属性信息,所述属性信息包括:数据抽取信息、继承信息和数据计算过程,所述方法包括:
4、获取所述配置文件;
5、基于所述配置文件中所述待处理的hdf5数据文件的入口变量查找到待处理的hdf5数据文件;其中,所述待处理的hdf5数据文件为进行材料实验时直接以hdf5格式存储的实验数据;
6、根据所述配置文件中的所述复用信息,以及所述数据抽取信息、所述继承信息和所述数据计算过程对所述待处理的hdf5数据文件中的源元数据和源表数据进行相应处理,并基于处理后的数据结果生成目的表数据;
7、根据所述配置文件中所述目的hdf5数据文件的生成方法使用所述目的表数据和内容为空的目的元数据生成目的hdf5数据文件,并存储;所述目的hdf5数据文件用于进行实验数据绘图,以及实验分析。
8、其中,所述复用信息包括:全局变量和全局别名变量;
9、其中,所述全局变量用于定义yml中所述全局变量之外的对象中用到的变量值;
10、所述全局别名变量,用于针对复用变量中长的字符串定义别名。
11、其中,所述数据抽取信息,包括:
12、所述第二类顶层级对象是否能被抽取,以及是否满足抽取条件;
13、其中,所述第二类顶层级对象是否满足抽取条件通过数组方式定义:数组中cc表示源表数据是否包含指定的列,cm用于检查源元数据,其中,cm有两个参数,第一个参数为元数据名称,第二个参数为需要匹配的值;cc和cm是配置文件处理程序内置的函数。
14、其中,所述继承信息,包括:基础对象和局部别名变量;
15、其中,所述基础对象用于指定会继承基础对象的所有第二类顶层级对象;
16、所述局部别名变量,用于针对继承的变量中长的字符串定义别名;
17、若全局别名变量和所述局部别名变量重名,则使用局部别名变量。
18、其中,所述数据计算过程,包括:
19、通过所述抽取信息获取待计算的变量的值;
20、按照定义的计算方法进行计算;
21、将计算结果作为所述第二类顶层级对象的计算结果。
22、其中,所述方法进一步包括:
23、若定义的计算方法中存在多个计算步骤,则将最后一个计算步骤的计算结果作为所述第二类顶层级对象的计算结果。
24、其中,所述基于处理后的数据结果生成目的表数据,包括:
25、将针对每个所述第二类顶层级对象获得的计算结果,分别与通过所述抽取信息抽取的数据,获得一组名称和值;
26、将所有所述第二类顶层级对象对应的所有组名称和值整合在一起生成目的表数据。
27、在另一个实施例中,提供了一种hdf5数据文件的数据处理装置,所述装置包括:
28、配置单元,用于基于yml配置配置文件;其中,所述配置文件定义第一类顶层级对象和第二类顶层级对象,以及目的hdf5数据文件的生成方法;针对所述第一类顶层级对象定义复用信息和待处理的hdf5数据文件的入口变量;配置所述第二类顶层级对象的属性信息,所述属性信息包括:数据抽取信息、继承信息和数据计算过程,
29、获取单元,用于获取所述配置文件;
30、查找单元,用于基于所述配置文件中所述待处理的hdf5数据文件的入口变量查找到待处理的hdf5数据文件;其中,所述待处理的hdf5数据文件为进行材料实验时直接以hdf5格式存储的实验数据;
31、处理单元,用于根据所述配置文件中的所述复用信息,以及所述数据抽取信息、所述继承信息和所述数据计算过程对所述待处理的hdf5数据文件中的源元数据和源表数据进行相应处理,并基于处理后的数据结果生成目的表数据;根据所述配置文件中所述目的hdf5数据文件的生成方法使用所述目的表数据和内容为空的目的元数据生成目的hdf5数据文件,并存储;所述目的hdf5数据文件用于进行实验数据绘图,以及实验分析。
32、在另一个实施例中,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现hdf5数据文件的数据处理方法。
33、在另一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现hdf5数据文件的数据处理方法。
34、由上面的技术方案可见,上述实施例中提供了先通过yml配置配置文件,该配置文件中定义第一类顶层级对象和第二类顶层级对象,以及目的hdf5数据文件的生成方法;基于该配置文件查找到待处理的hdf5数据文件,处理该hdf5数据文件中的源元数据和源表数据获得目的表数据;并根据目的hdf5数据文件生成方法使用目的表数据和内容为空的目的元数据生成目的hdf5数据文件,并存储;该目的hdf5数据文件可以用于进行实验结果数据绘图,以及实验分析。该方法能够通过配置配置文件的方式低成本实现对hdf5数据文件中数据的处理。
1.一种hdf5数据文件的数据处理方法,其特征在于,基于yml配置配置文件;其中,所述配置文件定义第一类顶层级对象和第二类顶层级对象,以及目的hdf5数据文件的生成方法;针对所述第一类顶层级对象定义复用信息和待处理的hdf5数据文件的入口变量;配置所述第二类顶层级对象的属性信息,所述属性信息包括:数据抽取信息、继承信息和数据计算过程,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述复用信息包括:全局变量和全局别名变量;
3.根据权利要求1所述的方法,其特征在于,所述数据抽取信息,包括:
4.根据权利要求1所述的方法,其特征在于,所述继承信息,包括:基础对象和局部别名变量;
5.根据权利要求1所述的方法,其特征在于,所述数据计算过程,包括:
6.根据权利要求5所述的方法,其特征在于,所述方法进一步包括:
7.根据权利要求1所述的方法,其特征在于,所述基于处理后的数据结果生成目的表数据,包括:
8.一种hdf5数据文件的数据处理装置,其特征在于,所述装置包括:
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-7任一项所述的方法。