CN106874493A - 一种数据转换方法及装置 - Google Patents
一种数据转换方法及装置 Download PDFInfo
- Publication number
- CN106874493A CN106874493A CN201710099807.9A CN201710099807A CN106874493A CN 106874493 A CN106874493 A CN 106874493A CN 201710099807 A CN201710099807 A CN 201710099807A CN 106874493 A CN106874493 A CN 106874493A
- Authority
- CN
- China
- Prior art keywords
- xml
- converted
- field
- data
- corresponding relation
- 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.)
- Pending
Links
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/14—Tree-structured documents
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Document Processing Apparatus (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种数据转换方法及装置,该方法包括:构建至少一个数据表与至少一个可扩展标记语言xml数据文档之间的第一对应关系、至少一个数据表中的至少一个字段与至少一个xml节点的第二对应关系,以及至少一个字段对应的至少一个元数据与至少一个属性值的第三对应关系;获取待转换数据表;根据第一对应关系,生成与待转换数据表相对应的目标xml数据文档;确定待转换数据表中的至少一个待转换字段;根据第二对应关系,在目标xml数据文档中生成分别与每一个待转换字段相对应的目标xml节点;根据第三对应关系,生成每一个所述目标xml节点的属性值。本方案能实现不同信息系统之间的数据交互。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种数据转换方法及装置。
背景技术
随着信息技术的发展,企业中各个部门均设置有各自的信息系统,用于管理大量的数据。
根据各个部门的运营情况差异,各个信息系统的开发时间或运行平台等也有所差异,这使各个信息系统生成的数据格式也有所不同,例如,信息系统A生成数据表形式的数据,信息系统B生成xml(Extensible Markup Language,可扩展标记语言)文档形式的数据。
由于不同格式的数据之间无法互相识别,导致不同信息系统之间难以进行数据交互。
发明内容
本发明实施例提供了一种数据处理方法及装置,能实现不同信息系统之间的数据交互。
第一方面,本发明实施例提供了一种数据转换方法,包括:
构建至少一个数据表与至少一个可扩展标记语言xml数据文档之间的第一对应关系、所述至少一个数据表中的至少一个字段与至少一个xml节点的第二对应关系,以及所述至少一个字段对应的至少一个元数据与至少一个属性值的第三对应关系;
获取待转换数据表;
根据所述第一对应关系,生成与所述待转换数据表相对应的目标xml数据文档;
确定所述待转换数据表中的至少一个待转换字段;
根据所述第二对应关系,在所述目标xml数据文档中生成分别与每一个所述待转换字段相对应的目标xml节点;
确定每一个所述待转换字段对应的至少一个元数据,并根据所述第三对应关系,生成每一个所述目标xml节点的属性值。
优选地,
在所述确定所述待转换数据表中的至少一个待转换字段之后,在所述根据所述第二对应关系,在所述目标xml数据文档中生成分别与每一个所述待转换字段相对应的至少一个目标xml节点之前,进一步包括:
将所述至少一个待转换字段进行排序;
所述根据所述第二对应关系,在所述目标xml数据文档中生成分别与每一个所述待转换字段相对应的至少一个目标xml节点,包括:
根据所述第二对应关系和各个所述待转换字段的顺序,依次生成每一个所述待转换字段相对应的目标xml节点。
优选地,
所述根据所述第三对应关系,生成每一个所述目标xml节点的属性值之前,进一步包括:
根据各个所述目标xml节点的生成顺序,将各个所述目标xml节点进行排列,生成xml索引文档;
所述根据所述第三对应关系,生成每一个所述目标xml节点的属性值,包括:
根据所述xml索引文档和所述第三对应关系,依次生成每一个所述目标xml节点的属性值。
第二方面,本发明实施例提供了一种数据转换方法,包括:
构建至少一个数据表与至少一个可扩展标记语言xml数据文档之间的第一对应关系、所述至少一个数据表中的至少一个字段与至少一个xml节点的第二对应关系,以及所述至少一个字段对应的至少一个元数据与至少一个属性值的第三对应关系;
获取待转换xml数据文档;
根据所述第一对应关系,生成与所述待转换xml数据文档对应的目标数据表;
确定所述待转换xml数据文档中的至少一个待转换xml节点;
根据所述第二对应关系,在所述目标数据表中生成与分别与每一个所述待转换xml节点对应的至少一个目标字段;
根据所述第三对应关系,生成每一个所述目标字段对应的元数据。
优选地,
在所述生成分别与每一个所述待转换xml节点相对应的至少一个目标字段之前,进一步包括:
获取与所述待转换xml数据文档相对应的xml索引文档;
根据所述xml索引文档,确定所述至少一个待转换xml节点的生成顺序;
所述根据所述第二对应关系,在所述目标数据表中生成分别与每一个所述待转换xml节点对应的至少一个目标字段,包括:
根据所述第二对应关系和所述至少一个待转换xml节点的生成顺序,依次生成与每一个所述待转换xml节点相对应的目标字段;
所述根据所述第三对应关系,生成每一个所述目标字段相对应的至少一个元数据,包括:
根据所述第三对应关系和各个所述目标字段的生成顺序,依次生成每一个所述目标字段对应的至少一个元数据。
第三方面,本发明实施例提供了一种数据转换装置,包括:构建单元、文档生成单元、节点生成单元和属性值生成单元;其中,
所述构建单元,用于构建至少一个数据表与至少一个可扩展标记语言xml数据文档之间的第一对应关系、所述至少一个数据表中的至少一个字段与至少一个xml节点的第二对应关系,以及所述至少一个字段对应的至少一个元数据与至少一个属性值的第三对应关系;
所述文档生成单元,用于获取待转换数据表,并根据所述构建单元构建的第一对应关系,生成与所述待转换数据表相对应的目标xml数据文档;
所述节点生成单元,用于确定所述待转换数据表中的至少一个待转换字段,并根据所述构建单元构建的第二对应关系,在所述文档生成单元生成的目标xml数据文档中生成分别与每一个所述待转换字段相对应的至少一个目标xml节点;
所述属性值生成单元,用于确定每一个所述待转换字段对应的至少一个元数据,并根据所述构建单元构建的第三对应关系,生成所述节点生成单元生成的每一个所述目标xml节点的属性值。
优选地,
所述节点生成单元,进一步用于将所述至少一个待转换字段进行排序,并根据所述第二对应关系和各个所述待转换字段的顺序,依次生成每一个所述待转换字段相对应的目标xml节点。
优选地,
所述节点生成单元,进一步用于根据各个所述目标xml节点的生成顺序,将各个所述目标xml节点进行排列,生成xml索引文档;
所述属性值生成单元,用于根据所述xml索引文档和所述第三对应关系,依次生成每一个所述目标xml节点的属性值。
第四方面,本发明实施例提供了一种数据转换装置,包括:构建单元,数据表生成单元、字段生成单元和元数据生成单元;其中,
所述构建单元,用于构建至少一个数据表与至少一个可扩展标记语言xml数据文档之间的第一对应关系、所述至少一个数据表中的至少一个字段与至少一个xml节点的第二对应关系,以及所述至少一个字段对应的至少一个元数据与至少一个属性值的第三对应关系;
所述数据表生成单元,用于获取待转换xml数据文档,并根据所述构建单元构建的第一对应关系,生成与所述待转换xml数据文档对应的目标数据表;
所述字段生成单元,用于确定所述待转换xml数据文档中的至少一个待转换xml节点,并根据所述构建单元构建的第二对应关系,在所述数据表生成单元生成的目标数据表中生成与分别与每一个所述待转换xml节点对应的至少一个目标字段;
所述元数据生成单元,用于根据所述构建单元构建的第三对应关系,生成所述字段生成单元生成的每一个所述目标字段对应的元数据。
优选地,
所述字段生成单元,进一步用于获取与所述待转换xml数据文档相对应的xml索引文档,根据所述xml索引文档,确定所述至少一个待转换xml节点的生成顺序,并根据所述第二对应关系和所述至少一个待转换xml节点的生成顺序,依次生成与每一个所述待转换xml节点相对应的目标字段;
所述元数据生成单元,用于根据所述第三对应关系和各个所述目标字段的生成顺序,依次生成每一个所述目标字段对应的至少一个元数据。
本发明实施例提供了一种数据转化方法及装置,根据预先构建的数据表与xml数据文档之间的对应关系,生成与待转换数据表相对应的目标xml数据文档,并根据预先构建的字段与xml节点的对应关系,在目标xml数据文档中生成与待转换数据表中的每一个待转换字段相对应的目标xml节点,然后确定每一个待转换字段对应的至少一个元数据,利用预先构建的元数据与属性值的对应关系,分别生成与各个待转换字段相对应的目标xml节点的属性值。由此,可将数据表转化为xml数据文档,从而避免了各个信息系统生成的数据的格式差异,实现了数据格式的统一,进而实现了不同信息系统之间的数据交互。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例提供的一种数据转换方法的流程图;
图2是本发明另一个实施例提供的一种数据转换方法的流程图;
图3是本发明又一个实施例提供的一种数据转换方法的流程图;
图4是本发明一个实施例提供的一种数据转换装置的结构示意图;
图5是本发明另一个实施例提供的一种数据转换装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种数据转换方法,该方法可以包括以下步骤:
步骤101,构建至少一个数据表与至少一个可扩展标记语言xml数据文档之间的第一对应关系、所述至少一个数据表中的至少一个字段与至少一个xml节点的第二对应关系,以及所述至少一个字段对应的至少一个元数据与至少一个属性值的第三对应关系;
步骤102,获取待转换数据表;
步骤103,根据所述第一对应关系,生成与所述待转换数据表相对应的目标xml数据文档;
步骤104,确定所述待转换数据表中的至少一个待转换字段;
步骤105,根据所述第二对应关系,在所述目标xml数据文档中生成分别与每一个所述待转换字段相对应的目标xml节点;
步骤106,确定每一个所述待转换字段对应的至少一个元数据,并根据所述第三对应关系,生成每一个所述目标xml节点的属性值。
上述实施例中,根据预先构建的数据表与xml数据文档之间的对应关系,生成与待转换数据表相对应的目标xml数据文档,并根据预先构建的字段与xml节点的对应关系,在目标xml数据文档中生成与待转换数据表中的每一个待转换字段相对应的目标xml节点,然后确定每一个待转换字段对应的至少一个元数据,利用预先构建的元数据与属性值的对应关系,分别生成与各个待转换字段相对应的目标xml节点的属性值。由此,可将数据表转化为xml数据文档,从而避免了各个信息系统生成的数据的格式差异,实现了数据格式的统一,进而实现了不同信息系统之间的数据交互。
为了提高数据转化效率,本发明一个实施例中,在步骤104之后,在步骤105之前,可以进一步包括:
将所述至少一个待转换字段进行排序;
步骤105的具体实施方式,可以包括:
根据所述第二对应关系和各个所述待转换字段的顺序,依次生成与每一个所述待转换字段相对应的目标xml节点。
例如,某销售部门的销售统计表如表1所示,在该表中,可确定出3个字段,分别为年、月和日,月销售额通过叠加多个日销售额而确定,年销售额通过叠加多个月销售额而确定,由此,可将3个字段按照数据关系进行排序:年-月-日。从而在根据字段与xml节点的对应关系,生成目标xml节点时,可知字段“月”对应的第一目标xml节点为字段“年”对应的第二目标xml节点的子节点,且字段“日”对应的第三目标xml节点为字段“月”对应的第一目标xml节点的子节点。由此,可根据各个字段的顺序,确定对应的各个目标xml节点的顺序,按照主节点到子节点的顺序依次生成各个目标xml节点。此目标xml节点生成的过程与在一个文件夹中生成多个第一子文件夹,并分别在各个第一子文件夹下再生成第二子文件夹类似。否则,若先生成第二目标xml节点和第三目标xml节点,则在生成第一目标xml节点前,需先确定第二目标xml节点和第三目标xml节点的位置,再将第一目标xml节点插入二者之间。当待转换数据表中字段的数量较多时,由于顺序错乱带来的工作量会进一步增大。因此,按照字段的顺序,依次生成各个目标xml节点,可减少生成各个目标xml节点时的工作量,从而提高转换效率。
表1
为了进一步提高转换效率,发明一个实施例中,在步骤106之前,可以进一步包括:
根据各个所述目标xml节点的生成顺序,将各个所述目标xml节点进行排列,生成xml索引文档;
本步骤106的具体实施方式,可以包括:
根据所述xml索引文档和所述第三对应关系,依次生成每一个所述目标xml节点的属性值。
例如,首先生成字段“年”对应的第一目标xml节点,然后生成字段“月”对应的第二目标xml节点,再生成字段“日”对应的第三目标xml节点,则根据此顺序,生成xml索引文档,xml索引文档中还可包括各个目标xml节点的之间的路径,则在根据元数据与属性值之间的对应关系,生成各个目标xml节点的属性值时,可利用xml索引文档中的路径关系,直接确定下一个目标xml节点的位置,在生成下一个目标xml节点的属性值,从而减少了生成各个目标xml节点的属性值的过程中,查询路径的过程,减少了生成各个属性值的工作量,从而进一步提高了转换效率。
如图2所示,本发明实施例提供了一种数据转换方法,包括:
步骤201,构建至少一个数据表与至少一个可扩展标记语言xml数据文档之间的第一对应关系、所述至少一个数据表中的至少一个字段与至少一个xml节点的第二对应关系,以及所述至少一个字段对应的至少一个元数据与至少一个属性值的第三对应关系;
步骤202,获取待转换xml数据文档;
步骤203,根据所述第一对应关系,生成与所述待转换xml数据文档对应的目标数据表;
步骤204,确定所述待转换xml数据文档中的至少一个待转换xml节点;
步骤205,根据所述第二对应关系,在所述目标数据表中生成与分别与每一个所述待转换xml节点对应的至少一个目标字段;
步骤206,根据所述第三对应关系,生成每一个所述目标字段对应的元数据。
上述实施例中,根据预先构建的数据表与xml数据文档之间的对应关系,生成与待转换xml数据文档相对应的目标数据表,并根据预先构建的字段与xml节点的对应关系,在目标数据表中生成与待转换xml数据文档中的每一个待转换xml节点相对应的目标字段,然后确定每一个待转换xml节点对应的至少一个属性值,利用预先构建的元数据与属性值的对应关系,分别生成与各个待转换xml节点相对应的目标字段的元数据。由此,可将xml数据文档转化为数据表,从而避免了各个信息系统生成的数据的格式差异,实现了数据格式的统一,进而实现了不同信息系统之间的数据交互。
值得一提的是,当生成目标数据表之后,查验目标数据表中是否存在转化过程中生成的冗余数据,如果存在,则清空所有冗余数据后,再生成目标字段。这可以避免转化过程引起的数据误差,提高转化准确率。
为了提高数据转化效率,本发明一个实施例中,在步骤205之前,可以进一步包括:
获取与所述待转换xml数据文档相对应的xml索引文档;
根据所述xml索引文档,确定所述至少一个待转换xml节点的生成顺序;
步骤205的具体实施方式,可以包括:
根据所述第二对应关系和所述至少一个待转换xml节点的生成顺序,依次生成与每一个所述待转换xml节点相对应的目标字段;
步骤206的具体实施方式,可以包括:
根据所述第三对应关系和各个所述目标字段的生成顺序,依次生成每一个所述目标字段对应的至少一个元数据。
上述实施例中,xml索引文档中可包括各个待转换xml节点的生成顺序以及各个待转换xml节点的路径,在生成与待转换xml节点对应的目标字段时,根据各个待转换xml节点的生成顺序,生成各个相对应的目标字段。生成过程中,还可利用待xml索引文档中的路径关系,确定与下一个待转换xml节点相对应的下一个字段的位置,从而减少了生成各个目标字段的过程中,查询路径的过程,减少了字段生成过程中的工作量,提高了转换效率。
另外,根据各个目标字段的生成顺序,依次生成每一个目标字段对应的元数据,可避免由于顺序错乱而导致工作量增加的情况,从而可进一步提高数据转化效率。
下面以将表2转化为xml数据文档为例,对本发明实施例提供的数据转换方法进行详细说明,如图3所示,该方法可以包括以下步骤:
步骤301,构建至少一个数据表与至少一个可扩展标记语言xml数据文档之间的第一对应关系、所述至少一个数据表中的至少一个字段与至少一个xml节点的第二对应关系,以及所述至少一个字段对应的至少一个元数据与至少一个属性值的第三对应关系。
步骤302,获取表2,并根据所述第一对应关系,生成与表2相对应的目标xml数据文档。
例如,在规则文件中查找到与表2相对应的xml数据文档为文档A,则根据此对应关系,生成文档A。
步骤303,确定所述表2中的至少一个待转换字段。
例如,在表2中确定出3个待转换字段,分别为年、月和日。
步骤304,将所述至少一个待转换字段进行排序。
例如,表2为某销售部门的总结报表,如下表2所示。其中,月销售额通过叠加多个日销售额而确定,年销售额通过叠加多个月销售额而确定,由此,可将3个字段按照数据关系进行排序:年-月-日。
表2
步骤305,根据所述第二对应关系和各个所述待转换字段的顺序,在所述目标xml数据文档中,依次生成每一个所述待转换字段相对应的目标xml节点。
例如,根据字段与xml节点的对应关系,可知字段“月”对应的第一目标xml节点为字段“年”对应的第二目标xml节点的子节点,且字段“日”对应的第三目标xml节点为字段“月”对应的第一目标xml节点的子节点。由此,可根据各个字段的顺序,确定对应的各个目标xml节点的顺序,按照主节点到子节点的顺序依次生成各个目标xml节点,这可减少生成各个目标xml节点时的工作量,从而提高转换效率。
步骤306,根据各个所述目标xml节点的生成顺序,将各个所述目标xml节点进行排列,生成xml索引文档。
例如,首先生成字段“年”对应的第二目标xml节点,然后生成字段“月”对应的第一目标xml节点,再生成字段“日”对应的第三目标xml节点,则根据此顺序,生成xml索引文档。
步骤307,根据所述xml索引文档和所述第三对应关系,依次生成每一个所述目标xml节点的属性值。
具体地,根据元数据与属性值之间的对应关系,生成各个目标xml节点的属性值时,可利用xml索引文档中包括的路径关系,直接确定下一个目标xml节点的位置,在生成下一个目标xml节点的属性值,从而减少了生成各个目标xml节点的属性值的过程中,查询路径的过程,减少了生成各个属性值的工作量,从而进一步提高了转换效率。
进一步地,还可将xml索引文档和xml数据文档进行压缩,并将压缩文件输出给客户端,以方便用户下载。
本实施例中的方法至少可通过以下程序实现:
上述实施例中,根据预先构建的数据表与xml数据文档之间的对应关系,生成与待转换数据表相对应的目标xml数据文档,并根据预先构建的字段与xml节点的对应关系,在目标xml数据文档中生成与待转换数据表中的每一个待转换字段相对应的目标xml节点,然后确定每一个待转换字段对应的至少一个元数据,利用预先构建的元数据与属性值的对应关系,分别生成与各个待转换字段相对应的目标xml节点的属性值。由此,可将数据表转化为xml数据文档,从而避免了各个信息系统生成的数据的格式差异,实现了数据格式的统一,进而实现了不同信息系统之间的数据交互。
另外,可用相同的对应关系将xml数据文档转化为数据表,实现数据表与xml数据文档之间的相互转化。将xml数据文档转化为数据表的方法至少可通过以下程序实现:
如图4所示,本发明实施例提供了一种数据转换装置,包括:构建单元401、文档生成单元402、节点生成单元403和属性值生成单元404;其中,
所述构建单元401,用于构建至少一个数据表与至少一个可扩展标记语言xml数据文档之间的第一对应关系、所述至少一个数据表中的至少一个字段与至少一个xml节点的第二对应关系,以及所述至少一个字段对应的至少一个元数据与至少一个属性值的第三对应关系;
所述文档生成单元402,用于获取待转换数据表,并根据所述构建单元401构建的第一对应关系,生成与所述待转换数据表相对应的目标xml数据文档;
所述节点生成单元403,用于确定所述待转换数据表中的至少一个待转换字段,并根据所述构建单元401构建的第二对应关系,在所述文档生成单元402生成的目标xml数据文档中生成分别与每一个所述待转换字段相对应的至少一个目标xml节点;
所述属性值生成单元404,用于确定每一个所述待转换字段对应的至少一个元数据,并根据所述构建单元401构建的第三对应关系,生成所述节点生成单元403生成的每一个所述目标xml节点的属性值。
上述实施例中,根据预先构建的数据表与xml数据文档之间的对应关系,生成与待转换数据表相对应的目标xml数据文档,并根据预先构建的字段与xml节点的对应关系,在目标xml数据文档中生成与待转换数据表中的每一个待转换字段相对应的目标xml节点,然后确定每一个待转换字段对应的至少一个元数据,利用预先构建的元数据与属性值的对应关系,分别生成与各个待转换字段相对应的目标xml节点的属性值。由此,可将数据表转化为xml数据文档,从而避免了各个信息系统生成的数据的格式差异,实现了数据格式的统一,进而实现了不同信息系统之间的数据交互。
为了提高数据转化效率,本发明一个实施例中,所述节点生成单元403,进一步用于将所述至少一个待转换字段进行排序,并根据所述第二对应关系和各个所述待转换字段的顺序,依次生成每一个所述待转换字段相对应的目标xml节点。
例如,某销售部门的销售统计表如表3所示,在该表中,可确定出3个字段,分别为年、月和日,月销售额通过叠加多个日销售额而确定,年销售额通过叠加多个月销售额而确定,由此,可将3个字段按照数据关系进行排序:年-月-日。从而在根据字段与xml节点的对应关系,生成目标xml节点时,可知字段“月”对应的第一目标xml节点为字段“年”对应的第二目标xml节点的子节点,且字段“日”对应的第三目标xml节点为字段“月”对应的第一目标xml节点的子节点。由此,可根据各个字段的顺序,确定对应的各个目标xml节点的顺序,按照主节点到子节点的顺序依次生成各个目标xml节点。此目标xml节点生成的过程与在一个文件夹中生成多个第一子文件夹,并分别在各个第一子文件夹下再生成第二子文件夹类似。否则,若先生成第二目标xml节点和第三目标xml节点,则在生成第一目标xml节点前,需先确定第二目标xml节点和第三目标xml节点的位置,再将第一目标xml节点插入二者之间。当待转换数据表中字段的数量较多时,由于顺序错乱带来的工作量会进一步增大。因此,按照字段的顺序,依次生成各个目标xml节点,可减少生成各个目标xml节点时的工作量,从而提高转换效率。
表3
为了进一步提高转换效率,发明一个实施例中,所述节点生成单元403,进一步用于根据各个所述目标xml节点的生成顺序,将各个所述目标xml节点进行排列,生成xml索引文档;
所述属性值生成单元404,用于根据所述xml索引文档和所述第三对应关系,依次生成每一个所述目标xml节点的属性值。
例如,首先生成字段“年”对应的第一目标xml节点,然后生成字段“月”对应的第二目标xml节点,再生成字段“日”对应的第三目标xml节点,则根据此顺序,生成xml索引文档,xml索引文档中还可包括各个目标xml节点的之间的路径,则在根据元数据与属性值之间的对应关系,生成各个目标xml节点的属性值时,可利用xml索引文档中的路径关系,直接确定下一个目标xml节点的位置,在生成下一个目标xml节点的属性值,从而减少了生成各个目标xml节点的属性值的过程中,查询路径的过程,减少了生成各个属性值的工作量,从而进一步提高了转换效率。
如图5所示,本发明实施例提供了一种数据转换装置,包括:构建单元501,数据表生成单元502、字段生成单元503和元数据生成单元504;其中,
所述构建单元501,用于构建至少一个数据表与至少一个可扩展标记语言xml数据文档之间的第一对应关系、所述至少一个数据表中的至少一个字段与至少一个xml节点的第二对应关系,以及所述至少一个字段对应的至少一个元数据与至少一个属性值的第三对应关系;
所述数据表生成单元502,用于获取待转换xml数据文档,并根据所述构建单元构建501的第一对应关系,生成与所述待转换xml数据文档对应的目标数据表;
所述字段生成单元503,用于确定所述待转换xml数据文档中的至少一个待转换xml节点,并根据所述构建单元501构建的第二对应关系,在所述数据表生成单元502生成的目标数据表中生成与分别与每一个所述待转换xml节点对应的至少一个目标字段;
所述元数据生成单元504,用于根据所述构建单元501构建的第三对应关系,生成所述字段生成单元503生成的每一个所述目标字段对应的元数据。
上述实施例中,根据预先构建的数据表与xml数据文档之间的对应关系,生成与待转换xml数据文档相对应的目标数据表,并根据预先构建的字段与xml节点的对应关系,在目标数据表中生成与待转换xml数据文档中的每一个待转换xml节点相对应的目标字段,然后确定每一个待转换xml节点对应的至少一个属性值,利用预先构建的元数据与属性值的对应关系,分别生成与各个待转换xml节点相对应的目标字段的元数据。由此,可将xml数据文档转化为数据表,从而避免了各个信息系统生成的数据的格式差异,实现了数据格式的统一,进而实现了不同信息系统之间的数据交互。
为了提高数据转化效率,本发明一个实施例中,所述字段生成单元603,进一步用于获取与所述待转换xml数据文档相对应的xml索引文档,根据所述xml索引文档,确定所述至少一个待转换xml节点的生成顺序,并根据所述第二对应关系和所述至少一个待转换xml节点的生成顺序,依次生成与每一个所述待转换xml节点相对应的目标字段;
所述元数据生成单元604,用于根据所述第三对应关系和各个所述目标字段的生成顺序,依次生成每一个所述目标字段对应的至少一个元数据。
上述实施例中,xml索引文档中可包括各个待转换xml节点的生成顺序以及各个待转换xml节点的路径,在生成与待转换xml节点对应的目标字段时,根据各个待转换xml节点的生成顺序,生成各个相对应的目标字段。生成过程中,还可利用待xml索引文档中的路径关系,确定与下一个待转换xml节点相对应的下一个字段的位置,从而减少了生成各个目标字段的过程中,查询路径的过程,减少了字段生成过程中的工作量,提高了转换效率。
另外,根据各个目标字段的生成顺序,依次生成每一个目标字段对应的元数据,可避免由于顺序错乱而导致工作量增加的情况,从而可进一步提高数据转化效率。
本发明还提供了一种可读介质,包括执行指令,当存储控制器的处理器执行所述执行指令时,所述存储控制器执行本发明上述任一实施例提供的数据转换方法。
另外,本发明还提供了一种存储控制器,包括:处理器、存储器和总线;所述存储器用于存储执行指令,所述处理器与所述存储器通过所述总线连接,当所述存储控制器运行时,所述处理器执行所述存储器存储的所述执行指令,以使所述存储控制器执行本发明上述任一实施例提供的数据转换方法。
上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
综上所述,本发明至少具有如下有益效果:
1、在本发明实施例中,根据预先构建的数据表与xml数据文档之间的对应关系,生成与待转换数据表相对应的目标xml数据文档,并根据预先构建的字段与xml节点的对应关系,在目标xml数据文档中生成与待转换数据表中的每一个待转换字段相对应的目标xml节点,然后确定每一个待转换字段对应的至少一个元数据,利用预先构建的元数据与属性值的对应关系,分别生成与各个待转换字段相对应的目标xml节点的属性值。由此,可将数据表转化为xml数据文档,从而避免了各个信息系统生成的数据的格式差异,实现了数据格式的统一,进而实现了不同信息系统之间的数据交互。
2、在本发明实施例中,将各个待转换字段进行排序,并根据第二对应关系和各个待转换字段的顺序,依次生成与每一个待转换字段相对应的目标xml节点。由此减少了生成各个目标xml节点时的工作量,从而提高了转换效率。
3、在本发明实施例中,根据各个目标xml节点的生成顺序,将各个目标xml节点进行排列,生成索引文档,并根据xml索引文档和第三对应关系,依次生成各个xml节点的属性值。由此减少了生成各个目标xml节点的属性值的过程中,查询路径的过程,从而减少了生成各个属性值的工作量,进而进一步提高了转换效率。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种数据转换方法,其特征在于,构建至少一个数据表与至少一个可扩展标记语言xml数据文档之间的第一对应关系、所述至少一个数据表中的至少一个字段与至少一个xml节点的第二对应关系,以及所述至少一个字段对应的至少一个元数据与至少一个属性值的第三对应关系;还包括:
获取待转换数据表;
根据所述第一对应关系,生成与所述待转换数据表相对应的目标xml数据文档;
确定所述待转换数据表中的至少一个待转换字段;
根据所述第二对应关系,在所述目标xml数据文档中生成分别与每一个所述待转换字段相对应的目标xml节点;
确定每一个所述待转换字段对应的至少一个元数据,并根据所述第三对应关系,生成每一个所述目标xml节点的属性值。
2.根据权利要求1所述的方法,其特征在于,
在所述确定所述待转换数据表中的至少一个待转换字段之后,在所述根据所述第二对应关系,在所述目标xml数据文档中生成分别与每一个所述待转换字段相对应的至少一个目标xml节点之前,进一步包括:
将所述至少一个待转换字段进行排序;
所述根据所述第二对应关系,在所述目标xml数据文档中生成分别与每一个所述待转换字段相对应的至少一个目标xml节点,包括:
根据所述第二对应关系和各个所述待转换字段的顺序,依次生成与每一个所述待转换字段相对应的目标xml节点。
3.根据权利要求2所述的方法,其特征在于,
所述根据所述第三对应关系,生成每一个所述目标xml节点的属性值之前,进一步包括:
根据各个所述目标xml节点的生成顺序,将各个所述目标xml节点进行排列,生成xml索引文档;
所述根据所述第三对应关系,生成每一个所述目标xml节点的属性值,包括:
根据所述xml索引文档和所述第三对应关系,依次生成每一个所述目标xml节点的属性值。
4.一种数据转换方法,其特征在于,构建至少一个数据表与至少一个可扩展标记语言xml数据文档之间的第一对应关系、所述至少一个数据表中的至少一个字段与至少一个xml节点的第二对应关系,以及所述至少一个字段对应的至少一个元数据与至少一个属性值的第三对应关系;还包括:
获取待转换xml数据文档;
根据所述第一对应关系,生成与所述待转换xml数据文档对应的目标数据表;
确定所述待转换xml数据文档中的至少一个待转换xml节点;
根据所述第二对应关系,在所述目标数据表中生成与分别与每一个所述待转换xml节点对应的至少一个目标字段;
根据所述第三对应关系,生成每一个所述目标字段对应的元数据。
5.根据权利要求4所述的方法,其特征在于,
在所述根据所述第二对应关系,在所述目标数据表中生成分别与每一个所述待转换xml节点相对应的至少一个目标字段之前,进一步包括:
获取与所述待转换xml数据文档相对应的xml索引文档;
根据所述xml索引文档,确定所述至少一个待转换xml节点的生成顺序;
所述根据所述第二对应关系,在所述目标数据表中生成分别与每一个所述待转换xml节点对应的至少一个目标字段,包括:
根据所述第二对应关系和所述至少一个待转换xml节点的生成顺序,依次生成与每一个所述待转换xml节点相对应的目标字段;
所述根据所述第三对应关系,生成每一个所述目标字段相对应的至少一个元数据,包括:
根据所述第三对应关系和各个所述目标字段的生成顺序,依次生成每一个所述目标字段对应的至少一个元数据。
6.一种数据转换装置,其特征在于,包括:构建单元、文档生成单元、节点生成单元和属性值生成单元;其中,
所述构建单元,用于构建至少一个数据表与至少一个可扩展标记语言xml数据文档之间的第一对应关系、所述至少一个数据表中的至少一个字段与至少一个xml节点的第二对应关系,以及所述至少一个字段对应的至少一个元数据与至少一个属性值的第三对应关系;
所述文档生成单元,用于获取待转换数据表,并根据所述构建单元构建的第一对应关系,生成与所述待转换数据表相对应的目标xml数据文档;
所述节点生成单元,用于确定所述待转换数据表中的至少一个待转换字段,并根据所述构建单元构建的第二对应关系,在所述文档生成单元生成的目标xml数据文档中生成分别与每一个所述待转换字段相对应的至少一个目标xml节点;
所述属性值生成单元,用于确定每一个所述待转换字段对应的至少一个元数据,并根据所述构建单元构建的第三对应关系,生成所述节点生成单元生成的每一个所述目标xml节点的属性值。
7.根据权利要求6所述的转换装置,其特征在于,
所述节点生成单元,进一步用于将所述至少一个待转换字段进行排序,并根据所述第二对应关系和各个所述待转换字段的顺序,依次生成每一个所述待转换字段相对应的目标xml节点。
8.根据权利要求7所述的转换装置,其特征在于,
所述节点生成单元,进一步用于根据各个所述目标xml节点的生成顺序,将各个所述目标xml节点进行排列,生成xml索引文档;
所述属性值生成单元,用于根据所述xml索引文档和所述第三对应关系,依次生成每一个所述目标xml节点的属性值。
9.一种数据转换装置,其特征在于,包括:构建单元,数据表生成单元、字段生成单元和元数据生成单元;其中,
所述构建单元,用于构建至少一个数据表与至少一个可扩展标记语言xml数据文档之间的第一对应关系、所述至少一个数据表中的至少一个字段与至少一个xml节点的第二对应关系,以及所述至少一个字段对应的至少一个元数据与至少一个属性值的第三对应关系;
所述数据表生成单元,用于获取待转换xml数据文档,并根据所述构建单元构建的第一对应关系,生成与所述待转换xml数据文档对应的目标数据表;
所述字段生成单元,用于确定所述待转换xml数据文档中的至少一个待转换xml节点,并根据所述构建单元构建的第二对应关系,在所述数据表生成单元生成的目标数据表中生成与分别与每一个所述待转换xml节点对应的至少一个目标字段;
所述元数据生成单元,用于根据所述构建单元构建的第三对应关系,生成所述字段生成单元生成的每一个所述目标字段对应的元数据。
10.根据权利要求9所述的数据转换装置,其特征在于,
所述字段生成单元,进一步用于获取与所述待转换xml数据文档相对应的xml索引文档,根据所述xml索引文档,确定所述至少一个待转换xml节点的生成顺序,并根据所述第二对应关系和所述至少一个待转换xml节点的生成顺序,依次生成与每一个所述待转换xml节点相对应的目标字段;
所述元数据生成单元,用于根据所述第三对应关系和各个所述目标字段的生成顺序,依次生成每一个所述目标字段对应的至少一个元数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710099807.9A CN106874493A (zh) | 2017-02-23 | 2017-02-23 | 一种数据转换方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710099807.9A CN106874493A (zh) | 2017-02-23 | 2017-02-23 | 一种数据转换方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106874493A true CN106874493A (zh) | 2017-06-20 |
Family
ID=59168357
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710099807.9A Pending CN106874493A (zh) | 2017-02-23 | 2017-02-23 | 一种数据转换方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106874493A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110569456A (zh) * | 2019-07-26 | 2019-12-13 | 广州视源电子科技股份有限公司 | Web端数据离线缓存方法及装置、电子设备 |
CN111125441A (zh) * | 2019-11-08 | 2020-05-08 | 广东电网有限责任公司 | 一种Xml文件信息处理系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101634942A (zh) * | 2008-07-24 | 2010-01-27 | 北大方正集团有限公司 | 一种动态创建数据表的方法和系统 |
CN102339314A (zh) * | 2011-09-24 | 2012-02-01 | 国网电力科学研究院 | 一种基于xml的跨终端的数据表单描述与展现方法 |
US8572125B2 (en) * | 2005-08-22 | 2013-10-29 | International Business Machines Corporation | Scalable storage schemes for native XML column data of relational tables |
CN103678575A (zh) * | 2013-12-11 | 2014-03-26 | 四川九洲电器集团有限责任公司 | 通过中间件实现多种数据库数据统一处理的方法和系统 |
CN105740250A (zh) * | 2014-12-09 | 2016-07-06 | 北大方正集团有限公司 | 一种创建 xml 节点的属性索引的方法及装置 |
CN106021594A (zh) * | 2016-06-06 | 2016-10-12 | 福建榕基软件股份有限公司 | 数据库表和xml报文的映射处理方法及其系统 |
-
2017
- 2017-02-23 CN CN201710099807.9A patent/CN106874493A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8572125B2 (en) * | 2005-08-22 | 2013-10-29 | International Business Machines Corporation | Scalable storage schemes for native XML column data of relational tables |
CN101634942A (zh) * | 2008-07-24 | 2010-01-27 | 北大方正集团有限公司 | 一种动态创建数据表的方法和系统 |
CN102339314A (zh) * | 2011-09-24 | 2012-02-01 | 国网电力科学研究院 | 一种基于xml的跨终端的数据表单描述与展现方法 |
CN103678575A (zh) * | 2013-12-11 | 2014-03-26 | 四川九洲电器集团有限责任公司 | 通过中间件实现多种数据库数据统一处理的方法和系统 |
CN105740250A (zh) * | 2014-12-09 | 2016-07-06 | 北大方正集团有限公司 | 一种创建 xml 节点的属性索引的方法及装置 |
CN106021594A (zh) * | 2016-06-06 | 2016-10-12 | 福建榕基软件股份有限公司 | 数据库表和xml报文的映射处理方法及其系统 |
Non-Patent Citations (1)
Title |
---|
代丽等: "XML与关系型数据库数据转换技术的研究", 《重庆科技学院学报(自然科学版)》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110569456A (zh) * | 2019-07-26 | 2019-12-13 | 广州视源电子科技股份有限公司 | Web端数据离线缓存方法及装置、电子设备 |
CN110569456B (zh) * | 2019-07-26 | 2022-03-08 | 广州视源电子科技股份有限公司 | Web端数据离线缓存方法及装置、电子设备 |
CN111125441A (zh) * | 2019-11-08 | 2020-05-08 | 广东电网有限责任公司 | 一种Xml文件信息处理系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Meier et al. | Nosql databases | |
US9607061B2 (en) | Using views of subsets of nodes of a schema to generate data transformation jobs to transform input files in first data formats to output files in second data formats | |
Karnitis et al. | Migration of relational database to document-oriented database: Structure denormalization and data transformation | |
CN101479697B (zh) | 用于数据存储和检索的系统和方法 | |
WO2017019879A1 (en) | Multi-query optimization | |
CN105630881B (zh) | 一种rdf的数据存储方法和查询方法 | |
US8713041B2 (en) | Peer to peer (P2P) missing fields and field valuation feedback | |
WO2013057937A1 (en) | Transformation of complex data source result sets to normalized sets for manipulation and presentation | |
CN102708203A (zh) | 一种基于xml元数据的数据库动态管理方法 | |
US8533200B2 (en) | Apparatus and method for organizing, storing and retrieving data using a universal variable-length data structure | |
JP2009537906A (ja) | データの記憶及び検索を行うためのシステム及び方法 | |
Bao et al. | XML2HBase: Storing and querying large collections of XML documents using a NoSQL database system | |
CN106874493A (zh) | 一种数据转换方法及装置 | |
CN104133891A (zh) | 一种基于关系型数据库的海量结构化数据的存储方法 | |
Chellappan et al. | MongoDB Recipes: With Data Modeling and Query Building Strategies | |
Schildgen et al. | NotaQL is not a query language! it’s for data transformation on wide-column stores | |
Sinthong et al. | AFrame: Extending DataFrames for large-scale modern data analysis (Extended Version) | |
Moro et al. | Schema advisor for hybrid relational-XML DBMS | |
CN105740997A (zh) | 一种控制任务流程的方法、装置及数据库管理系统 | |
Cheng et al. | A cloud computing approach to partial exchange of BIM models | |
CN115114297A (zh) | 数据轻量存储及查找方法、装置、电子设备及存储介质 | |
CN110109866A (zh) | 一种文件系统目录的管理方法及设备 | |
WO2017019889A1 (en) | Maintaining performance in the presence of insertions, deletions, and streaming queries | |
CN111859899A (zh) | Word文档的解析与填充方法、装置、设备和存储介质 | |
Tomic et al. | A novel UML profile for representation of a relational database schema |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170620 |
|
RJ01 | Rejection of invention patent application after publication |