CN108388640A - 一种数据转换方法、装置以及数据处理系统 - Google Patents
一种数据转换方法、装置以及数据处理系统 Download PDFInfo
- Publication number
- CN108388640A CN108388640A CN201810160120.6A CN201810160120A CN108388640A CN 108388640 A CN108388640 A CN 108388640A CN 201810160120 A CN201810160120 A CN 201810160120A CN 108388640 A CN108388640 A CN 108388640A
- Authority
- CN
- China
- Prior art keywords
- data
- file
- target
- processed
- conversion
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012545 processing Methods 0.000 title claims abstract description 113
- 238000006243 chemical reaction Methods 0.000 claims abstract description 132
- 238000000034 method Methods 0.000 claims abstract description 33
- 230000008569 process Effects 0.000 claims description 18
- 238000010276 construction Methods 0.000 claims description 5
- 238000004458 analytical method Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013524 data verification Methods 0.000 description 3
- 238000007405 data analysis Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/164—File meta data generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/178—Techniques for file synchronisation in file systems
- G06F16/1794—Details of file format conversion
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及一种数据转换方法、装置以及数据处理系统,该方法包括:构建元数据配置文件;其中,所述元数据配置文件包括:至少一种数据类型对应的至少一个元数据定义;获取待处理文件;根据所述待处理文件的文件头信息,确定所述待处理文件的数据类型;从所述元数据配置文件中确定与所述待处理文件的数据类型对应的目标元数据定义;根据所述目标元数据定义,对所述待处理文件进行转换。本方案能对不同数据类型的数据进行格式转换,以满足不同的数据处理需求。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种数据转换方法、装置以及数据处理系统。
背景技术
为了保证军用元器件的质量,国家军用标准对元器件制定了一系列的标准和要求。而在元器件的制造过程中会产生大量的数据,为了便于这些数据的处理和交换,国家军用标准也制定了各种数据标准,例如GJB2435和GJB5252等。
目前,国家军用标准制定的多个数据标准中,数据类型各有不同。数据处理系统对不同数据类型的数据进行存储时,按照其数据类型分别存储,而无法对不同数据类型的数据进行格式转换。在后续数据处理过程中,工作人员需根据数据的数据类型对其进行相应的处理,即数据处理过程受到数据类型的限制,从而难以满足不同的数据处理需求。
因此,针对以上不足,需要提供一种能对不同数据类型的数据进行格式转换的方案,以满足不同的数据处理需求。
发明内容
本发明要解决的技术问题在于,针对现有技术中的缺陷,提供一种能对不同数据类型的数据进行格式转换的方案。
为了解决上述技术问题,本发明提供了一种数据转换方法,包括:
构建元数据配置文件;其中,所述元数据配置文件包括:至少一种数据类型对应的至少一个元数据定义;
获取待处理文件;
根据所述待处理文件的文件头信息,确定所述待处理文件的数据
类型;
从所述元数据配置文件中确定与所述待处理文件的数据类型对应的目标元数据定义;
根据所述目标元数据定义,对所述待处理文件进行转换。
可选地,
所述根据所述目标元数据定义,对所述待处理文件进行转换,包括:
读取所述待处理文件中的文件头信息,以确定所述文件头信息中的至少一个数据行;
从每一个所述数据行中确定出至少一对键值,并对每一对所述键值进行分割,得到关键字和所述关键字对应的值;
根据所述关键字,从所述目标元数据定义中确定对应的数据项定义;
根据所述数据项定义,对所述关键字对应的值进行转换。
可选地,
所述待处理文件进一步包括:数据块;
所述根据所述目标元数据定义,对所述待处理文件进行转换,包括:
根据所述目标元数据定义中的数据块定义,确定每一个所述数据块对应的至少一个目标转换列,以及每一个所述目标转换列的目标数据容量;
将每一个所述目标转换列作为当前目标转换列,执行:
从所述数据块进行逐行读取,将每一行作为当前行循环执行A1和A2,直至所述数据块的每一行数据被写入所述目标转换列中;
A1:从所述当前行读取出数据列标识和数据值,并将所述数据列标识和数据值写入所述当前目标转换列中;
A2:确定写入后的所述当前目标转换列的当前数据容量是否小于所述目标数据容量,如果是,将所述当前行的下一行作为当前行,执行A1,否则,从各个所述目标转换列中选择一个未被写入的目标转换列作为所述当前目标列。
可选地,
在所述根据所述目标元数据定义,对所述待处理文件进行转换之后,进一步包括:
获取用户的数据处理请求;
根据所述数据处理请求,调用对应的数据处理装置;
将转换后的所述待处理文件以及所述目标元数据定义发送给所述数据处理装置,以使所述数据处理装置根据所述目标元数据定义,对所述待处理文件进行读取,对读取的所述待处理文件进行处理。
本发明还提供了一种数据转换装置,包括:构建单元、类型确定单元和转换单元;其中,
所述构建单元,用于构建元数据配置文件;其中,所述元数据配置文件包括:至少一种数据类型对应的至少一个元数据定义;
所述类型确定单元,用于获取待处理文件,并根据所述待处理文件的文件头信息,确定所述待处理文件的数据类型;
所述转换单元,用于从所述元数据配置文件中确定与所述待处理文件的数据类型对应的目标元数据定义,并根据所述目标元数据定义,对所述待处理文件进行转换。
可选地,
所述转换单元,用于读取所述待处理文件中的文件头信息,以确定所述文件头信息中的至少一个数据行;从每一个所述数据行中确定出至少一对键值,并对每一对所述键值进行分割,得到关键字和所述关键字对应的值;根据所述关键字,从所述目标元数据定义中确定对应的数据项定义;根据所述数据项定义,对所述关键字对应的值进行转换。
可选地,
所述待处理文件进一步包括:数据块;
所述转换单元包括:转换列确定子单元和数据块转换子单元;其中,
所述转换列确定子单元,用于根据所述目标元数据定义中的数据块定义,确定所述数据块对应的至少一个目标转换列,以及每一个所述目标转换列的目标数据容量;
所述数据块转换子单元,用于将每一个所述目标转换列作为当前目标转换列执行:对所述数据块进行逐行读取,将每一行作为当前行循环执行A1和A2,直至所述数据块的每一行数据被写入所述目标转换列中;
A1:从所述当前行读取出数据列标识和数据值,并将所述数据列标识和数据值写入所述当前目标转换列中;
A2:确定写入后的所述当前目标转换列的当前数据容量是否小于所述目标数据容量,如果是,将所述当前行的下一行作为当前行,执行A1,否则,从各个所述目标转换列中选择一个未被写入的目标转换列作为当前目标列。
可选地,
进一步包括:数据处理单元;其中,
所述数据处理单元,用于获取用户的数据处理请求,根据所述数据处理请求,调用相应的数据处理装置,并将转换后的所述待处理文件以及所述目标元数据定义发送给所述数据处理装置,以使所述数据处理装置根据所述目标元数据定义,对所述待处理文件进行读取,并对读取的所述待处理文件进行处理。
本发明还提供了一种数据处理系统,包括:本发明上述任一实施例提供的数据转换装置,以及数据处理装置;其中,
所述数据转换装置,用于对待处理文件进行转换,并将转换后的所述待处理文件发送给所述数据处理装置;
所述数据处理装置,用于根据所述待处理文件对应的目标元数据定义,对所述待处理文件进行读取,并对读取的所述待处理文件进行处理。
可选地,
所述数据转换装置与所述数据处理装置以桥接模式连接。
实施本发明的数据转换方法、装置以及数据处理系统,具有以下
有益效果:
1、根据待处理文件的数据类型以及预先构建的元数据配置文件,对待处理文件进行格式转化。由于用户可根据实际需求对元数据配置文件中的数据类型和元数据定义进行配置,因此可实现根据用户需求对不同数据类型的数据进行转换,从而可满足不同的数据处理需求。
2、对待处理文件进行转换后,可直接调用与用户的数据处理请求相对应的数据处理装置对转换后的文件进行进一步处理,而无需考虑文件的数据类型,由此提高了数据处理的效率。
3、数据转换装置与所述数据处理装置以桥接模式连接,使得数据转换装置和数据处理装置相互独立,减少了数据转换装置和数据处理装置之间的耦合,便于二者的独立扩展。
附图说明
图1是本发明实施例一提供的一种数据转换方法的流程图;
图2是本发明实施例三提供的一种元数据配置文件的数据结构示意图;
图3是本发明实施例五提供的一种数据转换方法的流程图;
图4是本发明实施例六提供的一种数据转换装置的结构示意图;
图5是本发明实施例八提供的一种数据转换装置的结构示意图;
图6是本发明实施例九提供的一种数据转换装置的结构示意图;
图7是本发明实施例十提供的一种数据处理系统的结构示意图;
图8是本发明实施例十提供的一种数据处理系统的数据结构示意图。
图中:401:构建单元;402:类型确定单元;403:转换单元;4031:转换列确定子单元;4032:数据块转换子单元;601:数据处理单元;701:数据转换装置;702:数据处理装置。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
如图1所示,本发明实施例提供的一种数据转换方法,该方法可以包括以下步骤:
步骤101:构建元数据配置文件;其中,所述元数据配置文件包括:至少一种数据类型对应的至少一个元数据定义;
步骤102:获取待处理文件;
步骤103:根据所述待处理文件的文件头信息,确定所述待处理文件的数据类型;
步骤104:从所述元数据配置文件中确定与所述待处理文件的数据类型对应的目标元数据定义;
步骤105:根据所述目标元数据定义,对所述待处理文件进行转换。
使用时,根据待处理文件的数据类型以及预先构建的元数据配置文件,对待处理文件进行格式转化。由于用户可根据实际需求对元数据配置文件中的数据类型和元数据定义进行配置,因此可实现根据用户需求对不同数据类型的数据进行转换,从而可满足不同的数据处理需求。
实施例二
本实施例二与实施例一基本相同,相同之处不再赘述,不同之处在于:
步骤105的具体实施方式,可以包括:
读取所述待处理文件中的文件头信息,以确定所述文件头信息中的至少一个数据行;
从每一个所述数据行中确定出至少一对键值,并对每一对所述键值进行分割,得到关键字和所述关键字对应的值;
根据所述关键字,从所述目标元数据定义中确定对应的数据项定义;
根据所述数据项定义,对所述关键字对应的值进行转换。
国家军用标准规定的数据格式中,文件头信息一般采用“key=value”形式进行存储,即以键值对的形式进行存储。在对数据进行转换时,逐行读取文件头信息,每从一个数据行中读取出一对键值,即对其进行分割,得到关键字及其对应的值。然后根据关键字查询元数据定义,确定出目标元数据定义与该关键字对应的数据项定义,根据此数据项定义即可处理该关键字对应的值。由此重新构建关键字key及其对应的值value的映射关系,即构建新的map,以对文件头信息进行全面转换。
实施例三
本实施例三与实施例一基本相同,相同之处不再赘述,不同之处在于:
所述待处理文件进一步包括:数据块;
步骤105的具体实施方式,可以包括:
根据所述目标元数据定义中的数据块定义,确定所述数据块对应的至少一个目标转换列,以及每一个所述目标转换列的目标数据容量;
将每一个所述目标转换列作为当前目标转换列,执行:
对所述数据块进行逐行读取,将每一行作为当前行循环执行A1和A2,直至所述数据块的每一行数据被写入所述目标转换列中;
A1:从所述当前行读取出数据列标识和数据值,并将所述数据列标识和数据值写入所述当前目标转换列中;
A2:确定写入后的所述当前目标转换列的当前数据容量是否小于所述目标数据容量,如果是,将所述当前行的下一行作为当前行,执行A1,否则,从各个所述目标转换列中选择一个未被写入的目标转换列作为所述当前目标列。
国家军用标准规定的数据文件的一般格式如表1所示,即一般包括文件头信息和数据块两部分。其中,文件头信息定义了该数据文件的来源、时间、目标、测量信息、校验信息和测试条件等信息,并对数据块的大小、个数等属性进行了定义。数据块则以表格形式存储数据,可指向关联的外部文件,例如图像等大文件的索引信息。
表1
对文件头信息进行转换后,需继续对数据块进行转换。在构建元数据配置文件时,对不同数据格式的数据块需转化成的目标转化列也进行了定义,并定义了每一个目标转化列的目标数据容量。当对数据块进行转化时,对数据块进行逐行读取,依次从当前行中读取出数据列标识和数据值之后,将其写入当前目标转换列中,当当前目标转换列的当前数据容量达到其对应的目标数据容量时,将读取的到数据块=列标识和数据值继续写入下一个目标转化列,以此完成对数据块的转换。
基于此,针对国家军用标准的规定,可针对国家军用标准数据文件构建xml形式的元数据配置文件,其数据结构如图2所示。其中,某一数据类型的数据文件对应的元数据定义由文件头信息MetaHeader和数据块MetaDataBlock组成。文件头信息MetaHeader记录了文件的头部描述信息,如数据类型名称和注释等,MetaHeader包含多个信息块MHeaderSection,一个MHeaderSection包含一个或多个数据项MHeaderField,MHeaderField记录了该项数据的名称、数据类型、长度、约束条件、默认值和用途等信息。数据块MetaDataBlock记录了文件的数据块信息,如数据块的存储格式等,其中包含多个列MDColumn,每个MDColumn对应DATA中的一列数据,通过设定列MDColumn名称、字段类型和位置等信息,程序可正确读取对应的数据块内容。由此可以看出,该元数据配置文件的数据结构呈树形展示,便于后续根据待处理文件的数据类型确定对应的目标元数据定义,以及目标元数据定义中的数据项定义和数据块定义。
实施例四
本实施例四与实施例一基本相同,相同之处不再赘述,不同之处在于:
在步骤105之后,可以进一步包括:
获取用户的数据处理请求;
根据所述数据处理请求,调用对应的数据处理装置;
将转换后的所述待处理文件以及所述目标元数据定义发送给所述数据处理装置,以使所述数据处理装置根据所述目标元数据定义,对所述待处理文件进行读取,对读取的所述待处理文件进行处理。
现有技术中,在对不同数据类型的数据进行处理时,工作人员需要针对数据文件对应的数据类型,选择其对应的处理方式及相应的数据处理工具。而对待处理文件进行转换后,可直接调用与用户的数据处理请求相对应的数据处理装置对转换后的文件进行进一步处理,而无需考虑文件的数据类型。例如,需对转换后的文件进行绘图展示时,直接调用相应的绘图展示工具,根据目标元数据定义读取转换后的文件,然后对读取到的数据进行处理。由于无需考虑数据类型对处理过程的影响,即无需查找待处理文件的数据类型对应的处理方式,由此提高了数据处理的效率。
实施例五
如图3所示,本发明实施例提供了一种数据转换方法,该方法可以包括以下步骤:
步骤301:构建元数据配置文件;其中,所述元数据配置文件包括:至少一种数据类型对应的至少一个元数据定义。
每一种数据类型的数据文件包括文件头信息和数据块,因此每一个元数据定义中包括文件头信息对应的数据项定义和数据块对应的数据块定义。
部分元数据定义如下所示:
步骤302:获取待处理文件,根据所述待处理文件的文件头信息,确定所述待处理文件的数据类型。
文件头信息中包括数据类型标识符,通过读取该数据类型标识符,确定出待处理文件的数据类型。
步骤303:从所述元数据配置文件中确定与所述待处理文件的数据类型对应的目标元数据定义。
步骤304:读取所述待处理文件中的文件头信息,以确定所述文件头信息中的至少一个数据行,从每一个所述数据行中确定出至少一对键值,并对每一对所述键值进行分割,得到关键字和所述关键字对应的值。
步骤305:根据所述关键字,从所述目标元数据定义中确定对应的数据项定义,根据所述数据项定义,对所述关键字对应的值进行转换。
国家军用标准规定的数据格式中,文件头信息一般采用“key=value”形式进行存储,即以键值对的形式进行存储。在对数据进行转换时,逐行读取文件头信息,每从一个数据行中读取出一对键值,即对其进行分割,得到关键字及其对应的值。然后根据关键字查询元数据定义,确定出目标元数据定义与该关键字对应的数据项定义,根据此数据项定义即可处理该关键字对应的值。由此重新构建关键字key及其对应的值value的映射关系,即构建新的map,以对文件头信息进行全面转换。
步骤306:根据所述目标元数据定义中的数据块定义,确定所述数据块对应的至少一个目标转换列,以及每一个所述目标转换列的目标数据容量。
步骤307:将每一个所述目标转换列作为当前目标转换列:对所述数据块进行逐行读取。
步骤308:从数据块的当前行中读取出数据列标识和数据值,并将所述数据列标识和数据值写入所述当前目标转换列中。
步骤309:判断写入后的所述当前目标转换列的当前数据容量是否小于所述目标数据容量,如果是,执行步骤310,否则执行步骤311。
步骤310:将所述当前行的下一行作为当前行,执行步骤308。
步骤311:判断是否存在未被写入的目标转换列,如果是,执行步骤312,否则执行步骤313。
步骤312:从各个所述目标转换列中选择一个未被写入的目标转换列作为当前目标列,执行步骤308。
步骤313:获取用户的数据处理请求,根据所述数据处理请求,调用对应的数据处理装置。
步骤314:将转换后的所述待处理文件以及所述目标元数据定义发送给所述数据处理装置,以使所述数据处理装置根据所述目标元数据定义,对所述待处理文件进行读取,对读取的所述待处理文件进行处理。
对待处理文件进行转换后,可直接调用与用户的数据处理请求相对应的数据处理装置对转换后的文件进行进一步处理,而无需考虑文件的数据类型,从而有利于提高数据处理的效率。
实施例六
如图4所示,本发明实施例提供的一种数据转换装置,包括:构建单元401、类型确定单元402和转换单元403;其中,
所述构建单元401,用于构建元数据配置文件;其中,所述元数据配置文件包括:至少一种数据类型对应的至少一个元数据定义;
所述类型确定单元402,用于获取待处理文件,并根据所述待处理文件的文件头信息,确定所述待处理文件的数据类型;
所述转换单元403,用于从所述元数据配置文件中确定与所述待处理文件的数据类型对应的目标元数据定义,并根据所述目标元数据定义,对所述待处理文件进行转换。
实施例七
所述转换单元403,用于读取所述待处理文件中的文件头信息,以确定所述文件头信息中的至少一个数据行;从每一个所述数据行中确定出至少一对键值,并对每一对所述键值进行分割,得到关键字和所述关键字对应的值;根据所述关键字,从所述目标元数据定义中确定对应的数据项定义;根据所述数据项定义,对所述关键字对应的值进行转换。
实施例八
所述待处理文件进一步包括:数据块;
如图5所示,所述转换单元403包括:转换列确定子单元4031和数据块转换子单元4032;其中,
所述转换列确定子单元4031,用于根据所述目标元数据定义中的数据块定义,确定所述数据块对应的至少一个目标转换列,以及每一个所述目标转换列的目标数据容量;
所述数据块转换子单元4032,用于将每一个所述目标转换列作为当前目标转换列执行:对所述数据块进行逐行读取,将每一行作为当前行循环执行A1和A2,直至所述数据块的每一行数据被写入所述目标转换列中;
A1:从所述当前行读取出数据列标识和数据值,并将所述数据列标识和数据值写入所述当前目标转换列中;
A2:确定写入后的所述当前目标转换列的当前数据容量是否小于所述目标数据容量,如果是,将所述当前行的下一行作为当前行,执行A1,否则,从各个所述目标转换列中选择一个未被写入的目标转换列作为当前目标列。
实施例九
如图6所示,该装置可以进一步包括:数据处理单元601;其中,
所述数据处理单元601,用于获取用户的数据处理请求,根据所述数据处理请求,调用相应的数据处理装置,并将转换后的所述待处理文件以及所述目标元数据定义发送给所述数据处理装置,以使所述数据处理装置根据所述目标元数据定义,对所述待处理文件进行读取,并对读取的所述待处理文件进行处理。
实施例十
如图7所示,本发明实施例还提供了一种数据处理系统,包括:本发明上述任一实施例提供的数据转换装置701,以及数据处理装置702;其中,
所述数据转换装置701,用于对待处理文件进行转换,并将转换后的所述待处理文件发送给所述数据处理装置702;
所述数据处理装置702,用于根据所述待处理文件对应的目标元数据定义,对所述待处理文件进行读取,并对读取的所述待处理文件进行处理。
现有技术中,在对不同数据类型的数据进行处理时,工作人员需要针对数据文件对应的数据类型,选择其对应的处理方式及相应的数据处理工具。而对待处理文件进行转换后,可直接调用与用户的数据处理请求相对应的数据处理装置对转换后的文件进行进一步处理,而无需考虑文件的数据类型,从而有利于提高数据处理效率。
其中,所述数据转换装置701与所述数据处理装置702以桥接模式连接。由此数据转换装置和数据处理装置相互独立,减少了数据转换装置和数据处理装置之间的耦合,便于二者的独立扩展。
为了实现上述数据处理系统,可设计如图8所示的数据结构和对应的类图。其中,MetaDataType为数据类型的元数据定义,MetaDataSet为元数据集合;PasredData存储了解析后数据,数据块内容存储在ParsedDataBlock中。IParser为数据解析基类,定义了解析过程中所需的接口,真正的实现在ParsedMeaData(解析实测数据)和ParsedSimData(解析仿真数据)中。解析过程中,会根据数据类型读取相应的元数据,并将解析后的结果存储到ParsedData中。IHandler定义了数据处理装置的接口,数据校验、绘图分析、数据入库等具体操作由其派生类实现,如Validate类用于数据校验,DrawGraph类进行绘图分析展示等。数据处理应用采用桥接方式,可分别独立扩展,减少了耦合。以绘图分析为例,DrawGraph定义了相应的绘图逻辑,真正的绘图实现在IGraph派生类中,绘图逻辑与实现相分离,可支持多种绘图方式。
在具体的实施过程中,可采用面向对象编程方式实现,程序为C++编写的MFC程序,使用TinyXML解析xml元数据配置文件,使用TeeChart5作为绘图控件,处理的国家军用标准数据文件编码格式为Ascii。程序可做成可安装文件,安装部署在Windows XP及以上机器上运行。该数据处理系统可应用于转换和处理符合国家军用标准的数据文件,可用于数据分析、数据校验、数据标准化、数据入库与管理等。
综上所述,根据待处理文件的数据类型以及预先构建的元数据配置文件,对待处理文件进行格式转化。由于用户可根据实际需求对元数据配置文件中的数据类型和元数据定义进行配置,因此可实现根据用户需求对不同数据类型的数据进行转换,从而可满足不同的数据处理需求。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种数据转换方法,其特征在于,包括:
构建元数据配置文件;其中,所述元数据配置文件包括:至少一种数据类型对应的至少一个元数据定义;
获取待处理文件;
根据所述待处理文件的文件头信息,确定所述待处理文件的数据类型;
从所述元数据配置文件中确定与所述待处理文件的数据类型对应的目标元数据定义;
根据所述目标元数据定义,对所述待处理文件进行转换。
2.根据权利要求1所述的方法,其特征在于,
所述根据所述目标元数据定义,对所述待处理文件进行转换,包括:
读取所述待处理文件中的文件头信息,以确定所述文件头信息中的至少一个数据行;
从每一个所述数据行中确定出至少一对键值,并对每一对所述键值进行分割,得到关键字和所述关键字对应的值;
根据所述关键字,从所述目标元数据定义中确定对应的数据项定义;
根据所述数据项定义,对所述关键字对应的值进行转换。
3.根据权利要求1所述的方法,其特征在于,
所述待处理文件进一步包括:数据块;
所述根据所述目标元数据定义,对所述待处理文件进行转换,包括:
根据所述目标元数据定义中的数据块定义,确定每一个所述数据块对应的至少一个目标转换列,以及每一个所述目标转换列的目标数据容量;
将每一个所述目标转换列作为当前目标转换列,执行:
从所述数据块进行逐行读取,将每一行作为当前行循环执行A1和A2,直至所述数据块的每一行数据被写入所述目标转换列中;
A1:从所述当前行读取出数据列标识和数据值,并将所述数据列标识和数据值写入所述当前目标转换列中;
A2:确定写入后的所述当前目标转换列的当前数据容量是否小于所述目标数据容量,如果是,将所述当前行的下一行作为当前行,执行A1,否则,从各个所述目标转换列中选择一个未被写入的目标转换列作为所述当前目标列。
4.根据权利要求1所述的方法,其特征在于,
在所述根据所述目标元数据定义,对所述待处理文件进行转换之后,进一步包括:
获取用户的数据处理请求;
根据所述数据处理请求,调用对应的数据处理装置;
将转换后的所述待处理文件以及所述目标元数据定义发送给所述数据处理装置,以使所述数据处理装置根据所述目标元数据定义,对所述待处理文件进行读取,对读取的所述待处理文件进行处理。
5.一种数据转换装置,其特征在于,包括:构建单元、类型确定单元和转换单元;其中,
所述构建单元,用于构建元数据配置文件;其中,所述元数据配置文件包括:至少一种数据类型对应的至少一个元数据定义;
所述类型确定单元,用于获取待处理文件,并根据所述待处理文件的文件头信息,确定所述待处理文件的数据类型;
所述转换单元,用于从所述元数据配置文件中确定与所述待处理文件的数据类型对应的目标元数据定义,并根据所述目标元数据定义,对所述待处理文件进行转换。
6.根据权利要求5所述的装置,其特征在于,
所述转换单元,用于读取所述待处理文件中的文件头信息,以确定所述文件头信息中的至少一个数据行;从每一个所述数据行中确定出至少一对键值,并对每一对所述键值进行分割,得到关键字和所述关键字对应的值;根据所述关键字,从所述目标元数据定义中确定对应的数据项定义;根据所述数据项定义,对所述关键字对应的值进行转换。
7.根据权利要求5所述的装置,其特征在于,
所述待处理文件进一步包括:数据块;
所述转换单元包括:转换列确定子单元和数据块转换子单元;其中,
所述转换列确定子单元,用于根据所述目标元数据定义中的数据块定义,确定所述数据块对应的至少一个目标转换列,以及每一个所述目标转换列的目标数据容量;
所述数据块转换子单元,用于将每一个所述目标转换列作为当前目标转换列执行:对所述数据块进行逐行读取,将每一行作为当前行循环执行A1和A2,直至所述数据块的每一行数据被写入所述目标转换列中;
A1:从所述当前行读取出数据列标识和数据值,并将所述数据列标识和数据值写入所述当前目标转换列中;
A2:确定写入后的所述当前目标转换列的当前数据容量是否小于所述目标数据容量,如果是,将所述当前行的下一行作为当前行,执行A1,否则,从各个所述目标转换列中选择一个未被写入的目标转换列作为当前目标列。
8.根据权利要求5所述的装置,其特征在于,
进一步包括:数据处理单元;其中,
所述数据处理单元,用于获取用户的数据处理请求,根据所述数据处理请求,调用相应的数据处理装置,并将转换后的所述待处理文件以及所述目标元数据定义发送给所述数据处理装置,以使所述数据处理装置根据所述目标元数据定义,对所述待处理文件进行读取,并对读取的所述待处理文件进行处理。
9.一种数据处理系统,其特征在于,包括:权利要求5至8中任一所述的数据转换装置,以及数据处理装置;其中,
所述数据转换装置,用于对待处理文件进行转换,并将转换后的所述待处理文件发送给所述数据处理装置;
所述数据处理装置,用于根据所述待处理文件对应的目标元数据定义,对所述待处理文件进行读取,并对读取的所述待处理文件进行处理。
10.根据权利要求9所述的数据处理系统,其特征在于,
所述数据转换装置与所述数据处理装置以桥接模式连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810160120.6A CN108388640B (zh) | 2018-02-26 | 2018-02-26 | 一种数据转换方法、装置以及数据处理系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810160120.6A CN108388640B (zh) | 2018-02-26 | 2018-02-26 | 一种数据转换方法、装置以及数据处理系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108388640A true CN108388640A (zh) | 2018-08-10 |
CN108388640B CN108388640B (zh) | 2020-11-13 |
Family
ID=63068532
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810160120.6A Active CN108388640B (zh) | 2018-02-26 | 2018-02-26 | 一种数据转换方法、装置以及数据处理系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108388640B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109240998A (zh) * | 2018-08-24 | 2019-01-18 | 网宿科技股份有限公司 | 可配置的文件解析方法 |
CN109558443A (zh) * | 2018-11-29 | 2019-04-02 | 北京数聚鑫云信息技术有限公司 | 一种整合数据源中的数据的方法及装置 |
CN111104548A (zh) * | 2019-12-18 | 2020-05-05 | 腾讯科技(深圳)有限公司 | 一种数据反馈方法、系统及存储介质 |
CN112995339A (zh) * | 2021-04-16 | 2021-06-18 | 湖南联智科技股份有限公司 | 一种基于动态字节码技术自动适配传感器数据解析方法 |
CN113177025A (zh) * | 2021-03-25 | 2021-07-27 | 北京城建智控科技有限公司 | 一种数据操作方法及系统 |
CN113360490A (zh) * | 2021-06-22 | 2021-09-07 | 北京百度网讯科技有限公司 | 数据处理方法、装置、设备、介质及程序产品 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102118709A (zh) * | 2011-02-22 | 2011-07-06 | 中兴通讯股份有限公司 | 提高彩信群发业务时格式转换效率的方法及系统 |
CN102693286A (zh) * | 2012-05-10 | 2012-09-26 | 华中科技大学 | 一种对文件内容与元数据进行组织管理的方法 |
CN103345518A (zh) * | 2013-07-11 | 2013-10-09 | 清华大学 | 基于数据块的自适应数据存储管理方法及系统 |
CN103369355A (zh) * | 2012-04-10 | 2013-10-23 | 华为技术有限公司 | 一种在线媒体数据转换的方法、播放视频方法及相应装置 |
CN103425772A (zh) * | 2013-08-13 | 2013-12-04 | 东北大学 | 一种具有多维信息的海量数据查询方法 |
CN103559189A (zh) * | 2013-08-22 | 2014-02-05 | 国家电网公司 | 基于元数据集成模型的电力仿真培训资源管理系统及方法 |
US20140281325A1 (en) * | 2013-03-15 | 2014-09-18 | International Business Machines Corporation | Synchronization and order detection in a memory system |
CN105260153A (zh) * | 2015-10-15 | 2016-01-20 | 西安诺瓦电子科技有限公司 | 图像输出装置和图像输出方法 |
US9294543B2 (en) * | 2014-04-09 | 2016-03-22 | International Business Machines Corporation | Generation of representational state transfer interface from application programming interfaces |
CN105740295A (zh) * | 2014-12-12 | 2016-07-06 | 中国移动通信集团公司 | 一种分布式数据的处理方法及装置 |
-
2018
- 2018-02-26 CN CN201810160120.6A patent/CN108388640B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102118709A (zh) * | 2011-02-22 | 2011-07-06 | 中兴通讯股份有限公司 | 提高彩信群发业务时格式转换效率的方法及系统 |
CN103369355A (zh) * | 2012-04-10 | 2013-10-23 | 华为技术有限公司 | 一种在线媒体数据转换的方法、播放视频方法及相应装置 |
CN102693286A (zh) * | 2012-05-10 | 2012-09-26 | 华中科技大学 | 一种对文件内容与元数据进行组织管理的方法 |
US20140281325A1 (en) * | 2013-03-15 | 2014-09-18 | International Business Machines Corporation | Synchronization and order detection in a memory system |
CN103345518A (zh) * | 2013-07-11 | 2013-10-09 | 清华大学 | 基于数据块的自适应数据存储管理方法及系统 |
CN103425772A (zh) * | 2013-08-13 | 2013-12-04 | 东北大学 | 一种具有多维信息的海量数据查询方法 |
CN103559189A (zh) * | 2013-08-22 | 2014-02-05 | 国家电网公司 | 基于元数据集成模型的电力仿真培训资源管理系统及方法 |
US9294543B2 (en) * | 2014-04-09 | 2016-03-22 | International Business Machines Corporation | Generation of representational state transfer interface from application programming interfaces |
CN105740295A (zh) * | 2014-12-12 | 2016-07-06 | 中国移动通信集团公司 | 一种分布式数据的处理方法及装置 |
CN105260153A (zh) * | 2015-10-15 | 2016-01-20 | 西安诺瓦电子科技有限公司 | 图像输出装置和图像输出方法 |
Non-Patent Citations (1)
Title |
---|
姚远: "海量动态数据流分类方法研究", 《中国博士学位论文全文数据库 信息科技辑》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109240998A (zh) * | 2018-08-24 | 2019-01-18 | 网宿科技股份有限公司 | 可配置的文件解析方法 |
CN109240998B (zh) * | 2018-08-24 | 2022-03-01 | 网宿科技股份有限公司 | 可配置的文件解析方法 |
CN109558443A (zh) * | 2018-11-29 | 2019-04-02 | 北京数聚鑫云信息技术有限公司 | 一种整合数据源中的数据的方法及装置 |
CN111104548A (zh) * | 2019-12-18 | 2020-05-05 | 腾讯科技(深圳)有限公司 | 一种数据反馈方法、系统及存储介质 |
CN111104548B (zh) * | 2019-12-18 | 2021-09-14 | 腾讯科技(深圳)有限公司 | 一种数据反馈方法、系统及存储介质 |
CN113177025A (zh) * | 2021-03-25 | 2021-07-27 | 北京城建智控科技有限公司 | 一种数据操作方法及系统 |
CN112995339A (zh) * | 2021-04-16 | 2021-06-18 | 湖南联智科技股份有限公司 | 一种基于动态字节码技术自动适配传感器数据解析方法 |
CN112995339B (zh) * | 2021-04-16 | 2021-08-03 | 湖南联智科技股份有限公司 | 一种基于动态字节码技术自动适配传感器数据解析方法 |
CN113360490A (zh) * | 2021-06-22 | 2021-09-07 | 北京百度网讯科技有限公司 | 数据处理方法、装置、设备、介质及程序产品 |
CN113360490B (zh) * | 2021-06-22 | 2023-07-28 | 北京百度网讯科技有限公司 | 数据处理方法、装置、设备、介质及程序产品 |
Also Published As
Publication number | Publication date |
---|---|
CN108388640B (zh) | 2020-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108388640B (zh) | 一种数据转换方法、装置以及数据处理系统 | |
CN110990390B (zh) | 数据协同处理方法、装置、计算机设备和存储介质 | |
CN112148509A (zh) | 数据处理方法、装置、服务器及计算机可读存储介质 | |
CN110659282B (zh) | 数据路由的构建方法、装置、计算机设备和存储介质 | |
CN106407360B (zh) | 一种数据的处理方法及装置 | |
US20200286100A1 (en) | Payment complaint method, device, server and readable storage medium | |
CN111061733B (zh) | 数据处理方法、装置、电子设备和计算机可读存储介质 | |
CN112328631A (zh) | 一种生产故障分析方法、装置、电子设备及存储介质 | |
CN111144493A (zh) | 一种自动识别算法指标测试的方法、存储介质及电子终端 | |
CN111552704A (zh) | 一种数据报表生成方法、装置、计算机设备及存储介质 | |
CN112286934A (zh) | 数据库表导入方法、装置、设备及介质 | |
CN111598535A (zh) | 一种基础物料的导入方法、系统、计算机设备 | |
CN111813744A (zh) | 文件的搜索方法、装置、设备及存储介质 | |
CN116680270A (zh) | 数据表转换方法、装置和存储介质 | |
CN114385679A (zh) | 一种表结构巡检方法、表结构巡检装置和电子设备 | |
CN116401212B (zh) | 一种基于数据分析的人事文书档案快速查找系统 | |
WO2019080419A1 (zh) | 标准知识库的构建方法、电子装置及存储介质 | |
CN114840497B (zh) | 一种数据库的行迁移预处理方法、系统、装置及存储介质 | |
CN115842861A (zh) | 边缘连接设备适配方法、装置及计算机可读存储介质 | |
CN114416847A (zh) | 一种数据转换的方法、装置、服务器及存储介质 | |
CN112632687A (zh) | 一种bim正向设计方法、系统、计算机设备及存储介质 | |
CN111914008A (zh) | 工单数据批量导出的方法、装置、电子设备以及介质 | |
CN115242612B (zh) | 一种故障诊断方法和装置 | |
CN113535770B (zh) | 数据查询的方法和装置 | |
CN112463818B (zh) | 一种存储底层信息查询方法、介质、设备及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |