CN113918627A - 数据转换方法、装置和可读存储介质 - Google Patents
数据转换方法、装置和可读存储介质 Download PDFInfo
- Publication number
- CN113918627A CN113918627A CN202111027004.5A CN202111027004A CN113918627A CN 113918627 A CN113918627 A CN 113918627A CN 202111027004 A CN202111027004 A CN 202111027004A CN 113918627 A CN113918627 A CN 113918627A
- Authority
- CN
- China
- Prior art keywords
- data
- conversion
- data conversion
- target
- entities
- 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
Images
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
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/288—Entity relationship models
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种数据转换方法、装置和可读存储介质。其中,方法包括:响应于数据转换请求,获取数据转换请求中包含的多个源实体、多个目标实体、多个源实体的实体类型和多个源实体的第一数据;根据实体类型,从多个预设数据转换模型中,确定目标数据转换模型;根据目标数据转换模型,确定多个源实体与多个目标实体之间的映射关系;根据目标数据转换模型,确定对多个源实体的第一数据的进行数据转换的转换顺序;根据目标数据转换模型、转换顺序和映射关系,对第一数据进行数据转换,生成第二数据,将第二数据写入多个目标实体。本发明提供的技术方案不依赖于具体的业务系统和中间件产品,实现了较好的通用性。
Description
技术领域
本发明涉及数据处理技术领域,具体而言,涉及一种数据转换方法、一种数据转换装置和一种可读存储介质。
背景技术
相关技术中,源系统文件通过数据库中间件实现基于数据库表的数据复制和同步,对数据结构的一致性和中间件部署构架都有较重的依赖。
发明内容
本发明旨在至少解决现有技术或相关技术中存在的技术问题之一。
为此,本发明的第一方面提供了一种数据转换方法。
本发明的第二方面还提供了一种数据转换装置。
本发明的第三方面还提供了一种数据转换装置。
本发明的第四方面还提供了一种可读存储介质。
有鉴于此,本发明的第一方面提出了一种数据转换方法,包括:响应于数据转换请求,获取数据转换请求中包含的多个源实体、多个目标实体、多个源实体的实体类型和多个源实体的第一数据;根据实体类型,从多个预设数据转换模型中,确定目标数据转换模型;根据目标数据转换模型,确定多个源实体与多个目标实体之间的映射关系;根据目标数据转换模型,确定对多个源实体的第一数据的进行数据转换的转换顺序;根据目标数据转换模型、转换顺序和映射关系,对第一数据进行数据转换,生成第二数据,将第二数据写入多个目标实体。
在该技术方案中,接收到数据转换请求后,获取数据转换请求中所包含的多个源实体、与多个源实体对应的多个目标实体、多个源实体的实体类型以及多个源实体内存储的第一数据,其中,数据转换请求指示对多个源实体内的第一数据进行转换,写入对应的多个目标实体。
进一步地,根据多个源实体的实体类型,在多个预设数据转换模型中,确定目标数据转换模型,其中,预设数据转换模型为预先基于不同业务场景构建的标准数据转换模型,目标数据转换模型为源实体和目标实体对应的数据转换模型。
进一步地,预设数据转换模型中包含预先根据业务需求配置好的各业务实体之间的映射关系,根据确定的目标转换模型,能够确定源实体与目标实体之间的映射关系。
进一步地,第一数据的数据转换以流水线形式执行,目标数据转换模型中包含预先配置好的第一数据的优先级,其中,优先级为流水线在整个数据转换中的优先级,用于决定不同第一数据的转换顺序。根据目标数据转换模型的转换逻辑,确定第一数据的转换顺序。
进一步地,根据目标数据转换模型、第一数据的转换顺序以及源实体和目标实体之间的映射关系,将第一数据转换为第二数据,进而将第二数据同步到目标实体中。
其中,第一数据可以包括数据属性信息,例如:属性名称、属性类型、属性分类以及计量单位等。
通过上述方式,基于数据转换模型提供了灵活的配置数据转换逻辑,按照数据转换逻辑对第一数据进行数据转换,以实现业务数据的灵活转换,以及业务系统中复杂数据关系的快速传递,有效提高了数据转换的效率。同时,通过不同的业务实体,确定其对应的目标数据转换模型,实现不同的业务场景之间跨类数据转换模型的调用,满足不同业务场景下的数据转换处理,实现异构业务系统或不同业务实体之间的数据转换。相较于现有技术中依赖数据库中间件实现基于数据库表的数据复制和同步,对数据结构的中间件部署构建有较重的依赖性,本申请针对业务实体选择数据转换模型,基于不同的数据转换模型配置的数据转换逻辑实现业务应用中数据转换功能,不依赖于具体的业务系统和中间件产品,实现了较好的通用性,解决了现有技术中系统功能单一、耦合紧密的问题。
根据本发明提供的上述的数据转换方法,还可以具有以下附加技术特征:
在上述技术方案中,进一步地,根据目标数据转换模型,确定对多个源实体的第一数据的进行数据转换的转换顺序的步骤,具体包括:根据目标数据转换模型,确定第一数据的优先级;按照优先级,对第一数据进行排序,得到转换顺序。
在该技术方案中,第一数据为具有依赖性的关联数据,通常情况下,对关联数据中被依赖的第一数据设置高优先级先转换,产生依赖的第一数据设置低优先级,在被依赖数据生成后再执行转换。按照目标数据转换模型配置的转换逻辑,确定第一数据在整个转换过程中的优先级,按照优先级的高低对第一数据的执行顺序进行排序,进而决定第一数据的转换顺序。此外,各个转换步骤不必然是先后执行的,也可以是同时执行,相同优先级的流水线在数据转换时可以并行执行。
通过上述方式,基于目标转换模型提供的转换逻辑,确定第一数据在整个数据转换过程中的优先级,以实现对多个流水线之间并行执行或串行执行的配置,在提高数据转换执行效率的同时,保证有关联依赖的数据的转换顺序,确保数据转换的完整性,避免混乱出错,提高数据转换的准确性。
在上述任一技术方案中,进一步地,根据目标数据转换模型、转换顺序和映射关系,对第一数据进行数据转换,生成第二数据的步骤,具体包括:根据映射关系,确定第一数据的转换方式;将第一数据输入目标数据转换模型,按照转换方式和转换顺序,以将第一数据转换为第二数据。
在该技术方案中,根据多个源实体和多个目标实体的映射关系,自动同步数据的转换方式。具体地,源实体和目标实体的映射关系可以是一对一的关系,即一个源实体对应一个目标实体;也可以是多对一的关系,即多个源实体对应一个目标实体;还可以是一个源实体的某一部分对应一个目标实体。将第一数据输入目标数据转换模型,基于不同实体间的映射关系,自动同步第一数据与第二数据之间的对照关系,确定对第一数据进行组合、拆分或映射,生成对应的第二数据,将生成的第二数据写入目标实体。
通过上述方式,基于目标数据转换模型定义转换逻辑,能够快速便捷地实现数据关系的定义,配置和应用,对于复杂数据无需编辑插件,只要做简单配置即可,提升了数据转换的广度,有效覆盖更多业务类型的数据转换,快速实现异构系统中复杂数据的关系传递,有效提升了数据转换的效率。
在上述任一技术方案中,进一步地,转换方式包括以下至少一种:数据组合、数据拆分和数据映射。
在该技术方案中,根据多个源实体和多个目标实体的映射关系,确定多个源实体和多个目标实体间数据的对照关系,即源实体内存储的某一第一数据,转换为目标实体的某一第二数据,根据第一数据与第二数据的对照关系,对第一数据进行合并、拆分和映射处理,进而生成对应的第二数据。
通过上述方式,根据目标数据转换模型定义的转换逻辑,能够在异构系统集成、业务系统的版本升级以及业务数据在系统内部流转等实际应用场景中自动进行数据转换,实现了业务系统中复杂数据关系的快速传递,有效提高了数据转换的效率。
在上述任一技术方案中,进一步地,将第二数据信息写入多个目标实体的步骤,具体包括:获取第二数据的数据格式;根据目标数据转换模型,确定目标实体的标准数据格式;将数据格式和标准数据格式进行比较;基于数据格式与标准数据格式相同,将第二数据写入目标实体;基于数据格式与标准数据格式不同,将第二数据删除。
在该技术方案中,预设数据转换模型中包含根据不同业务实体的格式要求预先配置的标准数据格式,获取转换后的第二数据的数据格式,根据目标数据转换模型,确定目标实体对应的标准数据格式,将第二数据的数据格式和目标实体的标准数据格式进行比较。如果第二数据的数据格式和标准数据格式相同,说明多个源实体与多个目标实体之间的数据转换成功,此时将第二数据写入目标实体;如果第二数据的数据格式和标准数据格式不相同,说明多个源实体与多个目标实体之间的数据转换失败,此时将第二数据删除。
通过上述方式,将第二数据写入目标实体过程中,基于目标数据转换模型提供的校验规则,对生成的第二数据进行校验,以确保输出的第二数据的正确性,有效降低业务实体中数据的误差率。
在上述任一技术方案中,进一步地,响应于数据转换请求,获取数据转换请求中包含的多个源实体、多个目标实体、多个源实体的实体类型和多个源实体的第一数据之前,还包括:获取已转换的历史数据;根据历史数据,确定多个源实体和多个目标实体之间的组合逻辑和历史数据的校验规则;根据组合逻辑和校验规则,创建预设数据转换模型。
在该技术方案中,针对不同业务场景下的业务数据,将不同的业务实体的历史数据、业务实体之间的组合逻辑以及业务校验规则导入模型配置界面,建立可视化的数据转换模型。具体地,在模型配置界面中创建请求节点和转换节点,对创建完成的请求节点和转换节点进行连接,根据历史数据的对应不同业务实体的历史数据和数据格式要求,对请求节点的节点属性和转换节点的节点属性进行对应配置,进而以配置后的节点、组合逻辑和校验规则为基础,建立数据转换模型。
通过上述方式,基于不同的业务实体间的组合和数据依赖关系抽象定义不同的数据转换模型,使得创建的数据转换模型能够满足不同业务场景下的数据转换需求,能够自动进行数据转换,避免了人工手动改写插件逻辑代码处理的繁琐流程,无需关注数据的来源,一定程度上避免了各种对接应用的重复性开发,节省系统的研发资源,减少数据转换实施时间以及成本。
在上述任一技术方案中,进一步地,校验规则包括以下至少一种:数据长度校验、默认数据校验和数据是否为空值校验。
在该技术方案中,目标数据转换模型中包含配置的业务实体对应的校验规则,包括长度校验、默认值校验和是否允许为空校验。具体地,当第一数据转换生成第二数据后,根据目标数据转换模型中包含的目标实体对应的数据校验规则,对第二数据进行校验。
通过上述方式,基于目标数据转换模型提供的校验规则,对生成的第二数据进行校验,以确保输出的第二数据的有效性,有效提高了数据转换输出的正确性。
根据本发明的第二方面,提出了一种数据转换装置,包括:数据转换模型确定单元,用于根据多个源实体的实体类型,从多个预设数据转换模型中,确定目标数据转换模型;数据转换模型确定单元还用于根据目标数据转换模型,确定多个源实体与多个目标实体之间的映射关系;数据转换配置单元,用于根据目标数据转换模型,确定对多个源实体的第一数据的进行数据转换的转换顺序;执行单元,用于根据目标数据转换模型、转换顺序和映射关系,对第一数据进行数据转换,生成第二数据,将第二数据信息写入多个目标实体。
在该技术方案中,数据转换装置包括数据转换模型确定单元、数据转换单元、数据转换配置单元和执行单元。数据转换装置在接收到数据转换请求后,获取数据转换请求中所包含的多个源实体、与多个源实体对应的目标实体、多个源实体的实体类型以及多个源实体内存储的第一数据,其中,数据转换请求指示对多个源实体内的第一数据进行转换,写入对应的目标实体。其中,数据转换模型确定单元用于根据多个源实体的实体类型,在多个预设数据转换模型中,确定目标数据转换模型,其中,预设数据转换模型为预先基于不同业务场景构建的标准数据转换模型,目标数据转换模型为源实体和目标实体对应的数据转换模型。
进一步地,数据转换模型确定单元还用于定义拟转换数据的多个源实体和多个目标实体之间的映射关系。具体地,在业务系统中,业务数据由多个不同的业务实体构成,不同的业务实体间存在组合和依赖关系,这些组合和关系通常体现在数据库表的定义中。预设数据转换模型中包含预先根据业务需求配置好的各业务实体之间的映射关系,根据确定的目标转换模型,能够确定多个源实体与多个目标实体之间的映射关系。
进一步地,数据转换配置单元用于指定数据转换的步骤和转换逻辑,主要包括数据转换配置和任务配置。其中,数据转换配置定义第一数据到第二数据的数据转换规则,数据转换规则包括数据映射规则、数据合并规则和数据拆分规则。任务配置定义数据转换的转换顺序。具体地,第一数据的数据转换以流水线形式执行,目标数据转换模型中包含预先配置好的第一数据的优先级,其中,优先级为流水线在整个数据转换中的优先级,用于决定不同第一数据的转换顺序。根据目标数据转换模型的转换逻辑,确定第一数据的转换顺序。
进一步地,执行单元用于根据目标数据转换模型、第一数据的转换顺序以及源实体和目标实体之间的映射关系,将第一数据转换为第二数据,进而将第二数据同步到目标实体中。
通过上述方式,基于数据转换模型提供了灵活的配置数据转换逻辑,按照数据转换逻辑对第一数据进行数据转换,以实现业务数据的灵活转换,以及业务系统中复杂数据关系的快速传递,有效提高了数据转换的效率。同时,通过不同的业务实体,确定其对应的目标数据转换模型,实现不同的业务场景之间跨类数据转换模型的调用,满足不同业务场景下的数据转换处理,实现异构业务系统或不同业务实体之间的数据转换。相较于现有技术中依赖数据库中间件实现基于数据库表的数据复制和同步,对数据结构的中间件部署构建有较重的依赖性,本申请针对业务实体选择数据转换模型,基于不同的数据转换模型配置的数据转换逻辑实现业务应用中数据转换功能,不依赖于具体的业务系统和中间件产品,实现了较好的通用性,解决了现有技术中系统功能单一、耦合紧密的问题。
在上述任一技术方案中,进一步地,数据转换装置还包括:解析单元,解析单元用于响应于数据转换请求,对数据转换请求进行解析,获取数据转换请求中包括的多个源实体、多个目标实体、多个源实体的实体类型和多个源实体的第一数据;输入数据读取单元,用于对输入的多个源实体的第一数据进行过滤;数据处理集合单元,用于根据第一数据的转换顺序和转换方式,对第一数据进行数据合并、数据拆分、数据映射和数据转换;数据一致性处理单元,用于根据第一数据和第二数据,对目标数据模块进行更新;输出数据生成单元,用于将转换后的第二数据进行汇总,以供后续输出。
在该技术方案中,数据转换装置还包括解析单元、输入数据读取单元、数据处理集合单元、数据一致性处理单元和输出数据生成单元。
具体地,数据转换装置在接收到数据转换请求后,解析单元用于对数据转换请求进行解析,获取数据转换请求中所包含的多个源实体、与多个源实体对应的目标实体、多个源实体的实体类型以及多个源实体内存储的第一数据,并根据数据转换配置单元的配置,在数据转换执行期间创建相应的转换作业,其中,作业包括第一数据流水线、任一流水线中处理工序和扩展插件实例化。
进一步地,输入数据读取单元用于读取输入的第一数据,按照目标数据转换模型中的配置参数对第一数据进行过滤、分页等处理。
进一步地,数据处理集合单元用于实现默认数据处理工序,封装常用数据转换逻辑,其中,默认数据处理工序主要包括:数据合并工序、数据拆分工序、上下文变量解析工序、数据映射工序、主键转换工序以及类型转换工序。
进一步地,数据一致性处理单元用于按照用户自定义的幂等校验规则或重复更新策略,对目标实体以及目标数据模块进行更新,具体地,数据转换请求中包含用户自定义的校验规则,将用户自定义的校验规则导入目标数据转换模型对目标实体进行校验。其中,校验规则可以为幂等校验规则或者重复更新策略,将第二数据写入目标实体时,基于第二数据对目标实体进行遍历,基于提供的幂等校验规则,以决定在执行转换时得到一致的数据结果。此外,还可以通过重复更新策略指定在重复执行数据转换时,判断第一数据转换后,是否要更新到目标数据转换模型中。
进一步地,输出数据生成单元用于实现数据输出控制。具体地,第一数据的数量较多,根据第一数据的数量,对第一数据进行分片转换后,对生成第二数据,进而对生成的第二数据进行汇总或者全量生成第二数据,以供后续的数据输出操作。其中,用户可根据需求自定义在数据转换过程中即时接收已完成转换的第二数据,或在数据转换完成后接收汇总的第二数据。
通过上述方式,提供了数据转换过程中的转换逻辑和核心处理工序,关注解决数据转换过程中转换逻辑和数据处理,不依赖于具体的业务系统和中间件产品,提升了数据转换装置的通用性。
在上述任一技术方案中,进一步地,数据转换装置还包括:规则扩展单元,用于响应于扩展请求,获取扩展请求中包含的对第一数据进行数据转换的扩展规则,根据扩展规则对目标数据转换模型进行更新。
在该技术方案中,规则扩展单元用于接收用户发送的扩展请求,获取扩展请求中包含的扩展规则,其中,扩展规则为用户提供的控制数据转换流程序和逻辑的扩展机制,根据该扩展规则对目标数据转换模型进行更新,使得目标数据转换模型中的通用的转换逻辑与用户所需的转换机制相结合。
通过上述方式,实现了插件化扩展,进而实现了用户对数据转换的各个环节进行干预和控制,使得数据转换逻辑更加符合用户需求,提高了数据转换逻辑的可复用性和灵活性,以满足更多的业务场景。
根据本发明的第三方面,提出了一种数据转换装置,包括:存储器,存储器储存有程序或指令;处理器,与存储器连接,处理器被配置为执行程序或指令时实现第一方面提出的数据转换方法。因此该数据转换装置具备第一方面提出的数据转换方法的全部有益效果,为避免重复,不再过多赘述。
根据本发明的第四方面,提出了一种可读存储介质,其上存储有程序或指令,程序或指令被处理器执行时执行第一方面提出的数据转换方法。因此该可读存储介质具备第一方面提出的数据转换方法的全部有益效果,为避免重复,不再过多赘述。
本发明的附加方面和优点将在下面的描述部分中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1示出了本发明实施例的数据转换方法的流程示意图之一;
图2示出了本发明实施例的数据转换方法的流程示意图之二;
图3示出了本发明实施例的数据转换方法的流程示意图之三;
图4示出了本发明实施例的数据转换方法的流程示意图之四;
图5示出了本发明实施例的数据转换方法的流程示意图之五;
图6示出了本发明具体实施例的数据转换方法的流程示意图;
图7示出了本发明实施例的数据转换装置的示意框图;
图8示出了本发明具体实施例的源实体和目标实体之间数据映射关系的示意图;
图9示出了本发明具体实施例的多个源实体和多个目标实体之间数据映射关系的示意图;
图10示出了本发明具体实施例的第一数据进行数据转换的逻辑图。
其中,图7中附图标记与部件名称之间的对应关系为:
700数据转换装置,702解析单元,704输入数据读取单元,706数据转换模型确定单元,708数据转换配置单元,710数据处理集合单元,712执行单元,714数据一致性处理单元,716输出数据生成单元,718规则扩展单元。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明,在本发明中如涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
另外,本发明各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
下面参照图1至图10描述本发明一些实施例的数据转换方法、数据转换装置和可读存储介质。
实施例1:
如图1所示,根据本发明的一个实施例,提出了一种数据转换方法,该方法包括:
步骤102,响应于数据转换请求,获取数据转换请求中包含的多个源实体、多个目标实体、多个源实体的实体类型和多个源实体的第一数据;
步骤104,根据实体类型,从多个预设数据转换模型中,确定目标数据转换模型;
步骤106,根据目标数据转换模型,确定多个源实体与多个目标实体之间的映射关系;
步骤108,根据目标数据转换模型,确定对多个源实体的第一数据的进行数据转换的转换顺序;
步骤110,根据目标数据转换模型、转换顺序和映射关系,对第一数据进行数据转换,生成第二数据;
步骤112,将第二数据写入多个目标实体。
在该实施例中,接收到数据转换请求后,获取数据转换请求中所包含的多个源实体、与多个源实体对应的多个目标实体、多个源实体的实体类型以及多个源实体内存储的第一数据,其中,数据转换请求指示对多个源实体内的第一数据进行转换,写入对应的多个目标实体。
进一步地,根据多个源实体的实体类型,在多个预设数据转换模型中,确定目标数据转换模型,其中,预设数据转换模型为预先基于不同业务场景构建的标准数据转换模型,目标数据转换模型为源实体和目标实体对应的数据转换模型。
进一步地,预设数据转换模型中包含预先根据业务需求配置好的各业务实体之间的映射关系,根据确定的目标转换模型,能够确定源实体与目标实体之间的映射关系。
进一步地,第一数据的数据转换以流水线形式执行,目标数据转换模型中包含预先配置好的第一数据的优先级,其中,优先级为流水线在整个数据转换中的优先级,用于决定不同第一数据的转换顺序。根据目标数据转换模型的转换逻辑,确定第一数据的转换顺序。
进一步地,根据目标数据转换模型、第一数据的转换顺序以及源实体和目标实体之间的映射关系,将第一数据转换为第二数据,进而将第二数据同步到目标实体中。
其中,第一数据可以包括数据属性信息,例如:属性名称、属性类型、属性分类以及计量单位等。
通过上述方式,基于数据转换模型提供了灵活的配置数据转换逻辑,按照数据转换逻辑对第一数据进行数据转换,以实现业务数据的灵活转换,以及业务系统中复杂数据关系的快速传递,有效提高了数据转换的效率。同时,通过不同的业务实体,确定其对应的目标数据转换模型,实现不同的业务场景之间跨类数据转换模型的调用,满足不同业务场景下的数据转换处理,实现异构业务系统或不同业务实体之间的数据转换。相较于现有技术中依赖数据库中间件实现基于数据库表的数据复制和同步,对数据结构的中间件部署构建有较重的依赖性,本申请针对业务实体选择数据转换模型,基于不同的数据转换模型配置的数据转换逻辑实现业务应用中数据转换功能,不依赖于具体的业务系统和中间件产品,实现了较好的通用性,解决了现有技术中系统功能单一、耦合紧密的问题。
实施例2:
如图2所示,根据本发明的一个实施例,提出了一种数据转换方法,该方法包括:
步骤202,响应于数据转换请求,获取数据转换请求中包含的多个源实体、多个目标实体、多个源实体的实体类型和多个源实体的第一数据;
步骤204,根据实体类型,从多个预设数据转换模型中,确定目标数据转换模型;
步骤206,根据目标数据转换模型,确定多个源实体与多个目标实体之间的映射关系;
步骤208,根据目标数据转换模型,确定第一数据的优先级;
步骤210,按照优先级,对第一数据进行排序,得到转换顺序;
步骤212,根据目标数据转换模型、转换顺序和映射关系,对第一数据进行数据转换,生成第二数据;
步骤214,将第二数据写入多个目标实体。
在该实施例中,第一数据为具有依赖性的关联数据,通常情况下,对关联数据中被依赖的第一数据设置高优先级先转换,产生依赖的第一数据设置低优先级,在被依赖数据生成后再执行转换。按照目标数据转换模型配置的转换逻辑,确定第一数据在整个转换过程中的优先级,按照优先级的高低对第一数据的执行顺序进行排序,进而决定第一数据的转换顺序。此外,各个转换步骤不必然是先后执行的,也可以是同时执行,相同优先级的流水线在数据转换时可以并行执行。
通过上述方式,基于目标转换模型提供的转换逻辑,确定第一数据在整个数据转换过程中的优先级,以实现对多个流水线之间并行执行或串行执行的配置,在提高数据转换执行效率的同时,保证有关联依赖的数据的转换顺序,确保数据转换的完整性,避免混乱出错,提高数据转换的准确性。
在具体实施例中,如图10所示,为第一数据进行数据转换的作业流程,包括数据转换工序和流水线配置,其中,工序是一条数据在某一环节的处理过程,工序包括:顺位,即指定工序在同一流水线中的执行顺位;处理程序,即当前工序的数据转换程序。流水线是一条数据的完整转换过程,流水线包括:优先级,即流水线在整个同步作业中的优先级,用于决定不同数据的转换顺序;工序集合,即指定流水线数据转换需要执行的工序。具体地,输入第一数据集,按照第一数据优先级的高低,确定流水线执行顺序,按照任一流水线中预定的工序的执行顺位,对第一数据进行数据转换,对生成的第二数据汇总,输出第二数据集以供后续操作。
实施例3:
如图3所示,根据本发明的一个实施例,提出了一种数据转换方法,该方法包括:
步骤302,响应于数据转换请求,获取数据转换请求中包含的多个源实体、多个目标实体、多个源实体的实体类型和多个源实体的第一数据;
步骤304,根据实体类型,从多个预设数据转换模型中,确定目标数据转换模型;
步骤306,根据目标数据转换模型,确定多个源实体与多个目标实体之间的映射关系;
步骤308,根据目标数据转换模型,确定对多个源实体的第一数据的进行数据转换的转换顺序;
步骤310,根据映射关系,确定第一数据的转换方式;
步骤312,将第一数据输入目标数据转换模型,按照转换方式,以将第一数据转换为第二数据;
步骤314,将第二数据写入多个目标实体。
在该实施例中,根据多个源实体和多个目标实体的映射关系,自动同步数据的转换方式。具体地,源实体和目标实体的映射关系可以是一对一的关系,即一个源实体对应一个目标实体;也可以是多对一的关系,即多个源实体对应一个目标实体;还可以是一个源实体的某一部分对应一个目标实体。将第一数据输入目标数据转换模型,基于不同实体间的映射关系,自动同步第一数据与第二数据之间的对照关系,确定对第一数据进行组合、拆分或映射,生成对应的第二数据,将生成的第二数据写入目标实体。
通过上述方式,基于目标数据转换模型定义转换逻辑,能够快速便捷地实现数据关系的定义,配置和应用,对于复杂数据无需编辑插件,只要做简单配置即可,提升了数据转换的广度,有效覆盖更多业务类型的数据转换,快速实现异构系统中复杂数据的关系传递,有效提升了数据转换的效率。
在具体实施例中,目标数据转换模型中配置的数据映射规则,为预设的数据映射规则和用户扩展的自定义数据映射规则相结合后生成的数据映射规则。具体地,数据映射规则包括:自动映射,即基于相同属性的简单映射,例如源实体和目标实体都包含“计量单位”属性时,自动建立映射。声明式映射,即用户指定源属性名和目标属性名建立映射关系,如“物料编码”到“商品编码”的映射。常量映射,即指定目标属性转换时使用常量赋值。变量映射:即指定目标属性在转换时基于上下文环境取变量值,如当前时间、业务员等。表达式映射,即指定目标属性在转换时计算设置的表达式取值,例如数值的汇总、金额计算等,在表达式配置中,上下文变量、源实体数据和目标实体数据都可作为表达式参数使用。扩展映射,用于实现用户自定义的映射逻辑。
进一步地,转换方式包括以下至少一种:数据组合、数据拆分和数据映射。根据多个源实体和多个目标实体的映射关系,确定多个源实体和多个目标实体间数据的对照关系,即源实体内存储的某一第一数据,转换为目标实体的某一第二数据,根据第一数据与第二数据的对照关系,对第一数据进行合并、拆分和映射处理,进而生成对应的第二数据。
通过上述方式,根据目标数据转换模型定义的转换逻辑,能够在异构系统集成、业务系统的版本升级以及业务数据在系统内部流转等实际应用场景中自动进行数据转换,实现了业务系统中复杂数据关系的快速传递,有效提高了数据转换的效率。
实施例4:
如图4所示,根据本发明的一个实施例,提出了一种数据转换方法,该方法包括:
步骤402,响应于数据转换请求,获取数据转换请求中包含的多个源实体、多个目标实体、多个源实体的实体类型和多个源实体的第一数据;
步骤404,根据实体类型,从多个预设数据转换模型中,确定目标数据转换模型;
步骤406,根据目标数据转换模型,确定多个源实体与多个目标实体之间的映射关系;
步骤408,根据目标数据转换模型,确定对多个源实体的第一数据的进行数据转换的转换顺序;
步骤410,根据目标数据转换模型、转换顺序和映射关系,对第一数据进行数据转换,生成第二数据;
步骤412,获取第二数据的数据格式;
步骤414,根据目标数据转换模型,确定目标实体的标准数据格式;
步骤416,判断数据格式和标准数据格式是否相同;若是,进入步骤418,若否,进入步骤420;
步骤418,将第二数据写入目标实体;
步骤420,将第二数据删除。
在该实施例中,预设数据转换模型中包含根据不同业务实体的格式要求预先配置的标准数据格式,获取转换后的第二数据的数据格式,根据目标数据转换模型,确定目标实体对应的标准数据格式,将第二数据的数据格式和目标实体的标准数据格式进行比较。如果第二数据的数据格式和标准数据格式相同,说明多个源实体与多个目标实体之间的数据转换成功,此时将第二数据写入目标实体;如果第二数据的数据格式和标准数据格式不相同,说明多个源实体与多个目标实体之间的数据转换失败,此时将第二数据删除。
通过上述方式,将第二数据写入目标实体过程中,基于目标数据转换模型提供的校验规则,对生成的第二数据进行校验,以确保输出的第二数据的正确性,有效降低业务实体中数据的误差率。
实施例5:
如图5所示,根据本发明的一个实施例,提出了一种数据转换方法,该方法包括:
步骤502,获取已转换的历史数据;
步骤504,根据历史数据,确定多个源实体和多个目标实体之间的组合逻辑和历史数据的校验规则;
步骤506,根据组合逻辑和校验规则,创建预设数据转换模型;
步骤508,响应于数据转换请求,获取数据转换请求中包含的多个源实体、多个目标实体、多个源实体的实体类型和多个源实体的第一数据;
步骤510,根据实体类型,从多个预设数据转换模型中,确定目标数据转换模型;
步骤512,根据目标数据转换模型,确定多个源实体与多个目标实体之间的映射关系;
步骤514,根据目标数据转换模型,确定对多个源实体的第一数据的进行数据转换的转换顺序;
步骤516,根据目标数据转换模型、转换顺序和映射关系,对第一数据进行数据转换,生成第二数据;
步骤518,将第二数据写入多个目标实体。
在该实施例中,针对不同业务场景下的业务数据,将不同的业务实体的历史数据、业务实体之间的组合逻辑以及业务校验规则导入模型配置界面,建立可视化的数据转换模型。具体地,在模型配置界面中创建请求节点和转换节点,对创建完成的请求节点和转换节点进行连接,根据历史数据的对应不同业务实体的历史数据和数据格式要求,对请求节点的节点属性和转换节点的节点属性进行对应配置,进而以配置后的节点、组合逻辑和校验规则为基础,建立数据转换模型。
通过上述方式,基于不同的业务实体间的组合和数据依赖关系抽象定义不同的数据转换模型,使得创建的数据转换模型能够满足不同业务场景下的数据转换需求,能够自动进行数据转换,避免了人工手动改写插件逻辑代码处理的繁琐流程,无需关注数据的来源,一定程度上避免了各种对接应用的重复性开发,节省系统的研发资源,减少数据转换实施时间以及成本。
进一步地,校验规则包括以下至少一种:数据长度校验、默认数据校验和数据是否为空值校验。目标数据转换模型中包含配置的业务实体对应的校验规则,包括长度校验、默认值校验和是否允许为空校验。具体地,当第一数据转换生成第二数据后,根据目标数据转换模型中包含的目标实体对应的数据校验规则,对第二数据进行校验。
通过上述方式,基于目标数据转换模型提供的校验规则,对生成的第二数据进行校验,以确保输出的第二数据的有效性,有效提高了数据转换输出的正确性。
进一步地,数据转换请求中还可以包括用户自定义的校验规则,将用户自定义的校验规则导入目标数据转换模型对目标实体和目标数据转换模型进行更新。其中,校验规则可以为幂等校验规则或者重复更新策略,将第二数据写入目标实体时,基于第二数据对目标实体进行遍历,基于提供的幂等校验规则,以决定在执行转换时得到一致的数据结果。避免目标实体中存在重复、冗余的数据,减少对目标实体存储空间的占用。此外,还可以通过重复更新策略指定在重复执行数据转换时,判断第一数据转换后,是否要更新到目标数据转换模型中,提高目标数据转换模型的准确性和一致性。
实施例6:
如图6所示,根据本发明的一个具体实施例,提出了一种数据转换方法,该方法包括:
步骤602,读取输入的第一数据;
步骤604,创建第一数据流水线;
步骤606,对第一数据进行作业分片;
步骤608,判断是否有未执行的第一数据作业分片,若是,进入步骤610,若否,进入步骤616;
步骤610,执行第一数据流水线工序;
步骤612,执行第一数据一致性检查;
步骤614,生成第二数据,进入步骤608;
步骤616,生成待输出的第二数据进行汇总。
在该实施例中,在数据转换过程中可根据资源配置情况,动态调整并行执行的作业数和作业分片数。其中,作业数为并行执行数据转换的第一数据的数量;作业分片数为在任一作业内,并行执行的工序的数量。具体地,数据转换以作业为单元执行,为解决大批量数据的转换和同步需求,执行单元设计为多作业并行执行,同时作业内部也支持多作业分片并行执行,以充分利用服务器资源提高转换效率。
在业务系统尤其是企业应用中,业务数据往往由数据转换模型定义数据结构,不同的业务实体包含不同的结构定义。在实际的应用场景中,经常需要对业务数据进行结构转换处理,例如:业务系统的版本升级、新旧系统更替,需要对原有业务数据进行迁移和升级;项目实施阶段的期初数据,需要从异构系统或用户收集数据同步或导入到实施项目的业务系统中;业务数据在系统内部流转过程中,需要从一种结构转换为另外一种结构,其中包括物料到商品、潜在客户到正式客户,客户到加盟商等扩展或转化处理。针对以上场景需求,相关技术的数据处理方法或系统可以解决部分数据同步或转换问题,但普遍存在局限性和不足,具体表现在与相关的业务系统中间件耦合密切,如传统的DTS(DataTransmission Service,数据传输服务)依赖数据库中间件实现基于数据库表的数据复制和同步,对数据结构的一致性和中间件部署构架都有较重的依赖;多数数据转换和同步系统以独立服务部署方式运行,如较常用的开源系统,大多都需要独立部署,配置过程也比较繁琐,与业务系统的集成难以实现;数据处理逻辑不具备通用性,例如,仅支持基于数据库表的数据处理,或仅用于某一业务领域或场景的数据处理,扩展性较差。
基于以上场景,本申请提供一种基于数据转换模型的数据转换方法和装置,实现业务应用中数据转换功能,并通过可配置性和可扩展性设计,支持业务系统的数据转换、同步、迁移等应用场景。通过数据转换模型定义并基于模型配置转换逻辑,基于内置的数据映射单元提供的处理程序,实现业务数据的灵活转换,并且可以通过配置机制和扩展机制,自定义转换过程和数据处理逻辑,可按数据转换模型和映射关系对数据进行常用的数据组合、拆分、映射等处理,满足不同场景下的数据转换处理。
具体地,数据转换装置包括数据转换模型确定单元用于定义拟转换数据的输入输出的实体结构和关系。通常在业务系统中,业务数据由多个不同的业务实体构成,不同的业务实体间存在组合和依赖关系,这些结构和关系通常体现在数据库表的设计和定义中。本申请中,将数据转换模型作为数据转换的基础,数据转换的配置、扩展和转换执行都基于数据转换模型进行。数据转换模型基于业务实体结构和关系抽象定义,与具体的数据存储介质无关。其中,完整的数据转换模型包括:业务实体的数据,包括实体属性名称和类型,以及业务校验规则,如长度、默认值、是否允许为空、唯一性等;业务实体间的映射关系,如实体类型之间的引用、包含等组合逻辑。
进一步地,数据转换装置还包括数据转换配置单元,用于指定数据转换的步骤和逻辑,主要包括数据映射配置和任务配置。数据映射配置定义源实体的第一数据到目标实体的第二数据的映射规则,包括数据映射规则、数据合并规则和数据拆分规则等;任务配置定义数据转换任务的输入、转换、输出的执行逻辑,包括指定源实体的第一数据获取装置、多个第一数据在执行转换时的执行顺序和依赖关系、数据处理工序,以及数据的输出装置等。
其中,如图8所示,为物料到商品的数据转换映射关系。在数据映射配置中,数据映射规则定义不同业务实体间的属性映射关系,即源实体某一属性,转换为目标实体的一个属性。
进一步地,本申请支持多源多目标间的数据拆分和合并处理。具体地,数据转换配置单元支持对输入、输出数据进行合并或拆分处理,如由源实体的一条第一数据,拆分生成多条目标实体对应的第二数据,或生成到多个不同的目标实体中,同时也支持多个源实体,合并生成单个目标实体。如图9所示,为物料到商品的数据合并和数据拆分,第一商品内的商品数据,来源于物料和物料图册两个源实体的物料数据;源实体的物料数据,在映射配置中生成了两个目标实体的商品数据。
进一步地,数据转换装置还包括规则扩展单元,通过规则扩展单元实现了可扩展机制,进而实现了用户对数据输入、转换和输出过程的自定义控制。通过扩展,可涵盖较多的应用场景,如在业务系统中的涉及数据流转的场景下进行实时数据转换、系统迁移时异构数据转换,或者结合数据库的归档日志实现异构数据库的实时同步等。
进一步地,数据转换装置还包括核心处理单元,通过核心处理单元提供了灵活的配置和扩展机制,并提供了常用操作和核心逻辑,以及灵活的部署和集成方式,解决了以往系统部署、配置复杂的问题,同时实现了数据转换过程中的转换逻辑和核心处理程序,以支持基于用户配置和扩展定义进行数据转换处理,保证数据转换结果的正确性和一致性。
进一步地,数据转换装置还包括执行单元,用于提供数据转换运行过程中的处理服务。
进一步地,本申请还提供了相应装置的两种不同的部署方式,包括:可集成SDK(SoftwareDevelopmentKit,软件开发工具包)形式,以实现输出可集成开发框架组件,可集成到现有服务中,通过接口调用等方式配置生成转换作业,自动或手动执行转换。独立工具包形式,以实现输出可执行文件方式提供工具包,用户可在任意环境部署后,修改配置并在需要时执行。通过两种不同的部署方式,适应不同业务场景下的数据转换需求。
实施例7:
如图7所示,本发明第二方面的实施例,提出了一种数据转换装置700,包括:数据转换模型确定单元706,用于根据多个源实体的实体类型,从多个预设数据转换模型中,确定目标数据转换模型;数据转换模型确定单元706还用于根据目标数据转换模型,确定多个源实体与多个目标实体之间的映射关系;数据转换配置单元708,用于根据目标数据转换模型,确定对多个源实体的第一数据的进行数据转换的转换顺序;执行单元712,用于根据目标数据转换模型、转换顺序和映射关系,对第一数据进行数据转换,生成第二数据,将第二数据信息写入多个目标实体。
在该实施例中,数据转换装置700包括数据转换模型确定单元706、数据转换单元、数据转换配置单元708和执行单元712。数据转换装置700在接收到数据转换请求后,获取数据转换请求中所包含的多个源实体、与多个源实体对应的目标实体、多个源实体的实体类型以及多个源实体内存储的第一数据,其中,数据转换请求指示对多个源实体内的第一数据进行转换,写入对应的目标实体。其中,数据转换模型确定单元706用于根据多个源实体的实体类型,在多个预设数据转换模型中,确定目标数据转换模型,其中,预设数据转换模型为预先基于不同业务场景构建的标准数据转换模型,目标数据转换模型为源实体和目标实体对应的数据转换模型。
进一步地,数据转换模型确定单元706还用于定义拟转换数据的多个源实体和多个目标实体之间的映射关系。具体地,在业务系统中,业务数据由多个不同的业务实体构成,不同的业务实体间存在组合和依赖关系,这些组合和关系通常体现在数据库表的定义中。预设数据转换模型中包含预先根据业务需求配置好的各业务实体之间的映射关系,根据确定的目标转换模型,能够确定多个源实体与多个目标实体之间的映射关系。
进一步地,数据转换配置单元708用于指定数据转换的步骤和转换逻辑,主要包括数据转换配置和任务配置。其中,数据转换配置定义第一数据到第二数据的数据转换规则,数据转换规则包括数据映射规则、数据合并规则和数据拆分规则。任务配置定义数据转换的转换顺序。具体地,第一数据的数据转换以流水线形式执行,目标数据转换模型中包含预先配置好的第一数据的优先级,其中,优先级为流水线在整个数据转换中的优先级,用于决定不同第一数据的转换顺序。根据目标数据转换模型的转换逻辑,确定第一数据的转换顺序。
进一步地,执行单元712用于根据目标数据转换模型、第一数据的转换顺序以及源实体和目标实体之间的映射关系,将第一数据转换为第二数据,进而将第二数据同步到目标实体中。
通过上述方式,基于数据转换模型提供了灵活的配置数据转换逻辑,按照数据转换逻辑对第一数据进行数据转换,以实现业务数据的灵活转换,以及业务系统中复杂数据关系的快速传递,有效提高了数据转换的效率。同时,通过不同的业务实体,确定其对应的目标数据转换模型,实现不同的业务场景之间跨类数据转换模型的调用,满足不同业务场景下的数据转换处理,实现异构业务系统或不同业务实体之间的数据转换。相较于现有技术中依赖数据库中间件实现基于数据库表的数据复制和同步,对数据结构的中间件部署构建有较重的依赖性,本申请针对业务实体选择数据转换模型,基于不同的数据转换模型配置的数据转换逻辑实现业务应用中数据转换功能,不依赖于具体的业务系统和中间件产品,实现了较好的通用性,解决了现有技术中系统功能单一、耦合紧密的问题。
实施例8:
如图7所示,本发明的一个实施例,在上述实施例的基础上,进一步地:数据转换装置700还包括:解析单元702,解析单元702用于响应于数据转换请求,对数据转换请求进行解析,获取数据转换请求中包括的多个源实体、多个目标实体、多个源实体的实体类型和多个源实体的第一数据;输入数据读取单元704,用于对输入的多个源实体的第一数据进行过滤;数据处理集合单元710,用于根据第一数据的转换顺序和转换方式,对第一数据进行数据合并、数据拆分、数据映射和数据转换;数据一致性处理单元714,用于根据第一数据和第二数据,对目标数据模块进行更新;输出数据生成单元716,用于将转换后的第二数据进行汇总,以供后续输出。
在该实施例中,数据转换装置700还包括解析单元702、输入数据读取单元704、数据处理集合单元710、数据一致性处理单元714和输出数据生成单元716。
具体地,数据转换装置700在接收到数据转换请求后,解析单元702用于对数据转换请求进行解析,获取数据转换请求中所包含的多个源实体、与多个源实体对应的目标实体、多个源实体的实体类型以及多个源实体内存储的第一数据,并根据数据转换配置单元708的配置,在数据转换执行期间创建相应的转换作业,其中,作业包括第一数据流水线、任一流水线中处理工序和扩展插件实例化。
进一步地,输入数据读取单元704用于读取输入的第一数据,按照目标数据转换模型定义的配置参数对第一数据进行过滤、分页等处理。
进一步地,数据处理集合单元710用于实现默认数据处理工序,封装常用数据转化逻辑,其中,默认数据处理工序主要包括:数据合并工序、数据拆分工序、上下文变量解析工序、数据映射工序、主键转换工序以及类型转换工序。
进一步地,数据一致性处理单元714用于按照用户自定义的幂等校验规则或重复更新策略,对目标实体以及目标数据模块进行更新,具体地,数据转换请求中包含用户自定义的校验规则,将用户自定义的校验规则导入目标数据转换模型对目标实体进行校验。其中,校验规则可以为幂等校验规则或者重复更新策略,将第二数据写入目标实体时,基于第二数据对目标实体进行遍历,基于提供的幂等校验规则,以决定在执行转换时得到一致的数据结果。此外,还可以通过重复更新策略指定在重复执行数据转换时,判断第一数据转换后,是否要更新到目标数据转换模型中。
进一步地,输出数据生成单元716用于实现数据输出控制。具体地,第一数据的数量较多,根据第一数据的数量,对第一数据进行分片转换后,对生成第二数据,进而对生成的第二数据进行汇总或者全量生成第二数据,以供后续的数据输出操作。其中,用户可根据需求自定义在数据转换过程中即时接收已完成转换的第二数据,或在数据转换完成后接收汇总的第二数据。
通过上述方式,提供了数据转换过程中的转换逻辑和核心处理工序,关注解决数据转换过程中转换逻辑和数据处理,不依赖于具体的业务系统和中间件产品,提升了数据转换装置700的通用性。
实施例9:
如图7所示,本发明的一个实施例,在上述实施例的基础上,进一步地:数据转换装置700还包括:规则扩展单元718,用于响应于扩展请求,获取扩展请求中包含的对第一数据进行数据转换的扩展规则,根据扩展规则对目标数据转换模型进行更新。
在该实施例中,规则扩展单元718用于接收用户发送的扩展请求,获取扩展请求中包含的扩展规则,其中,扩展规则为用户提供的控制数据转换流程序和逻辑的扩展机制,根据该扩展规则对目标数据转换模型进行更新,使得目标数据转换模型中的通用的转换逻辑与用户所需的转换机制相结合。
通过上述方式,实现了插件化扩展,进而实现了用户对数据转换的各个环节进行干预和控制,使得数据转换逻辑更加符合用户需求,提高了数据转换逻辑的可复用性和灵活性,以满足更多的业务场景。
具体地,规则扩展单元718的扩展机制包括:自定义数据输入,即基于目标数据转换模型提供的数据输入接口,用户可自定义转换数据来源,例如,从数据库实例读取数据,或从文件系统或外部服务获取输入数据。根据目标数据转换模型提供的接口上下文,基于上下文参数,用户可自定义数据分页、过滤等操作。自定义数据映射,即可扩展数据映射的处理逻辑,例如,在处理数据映射时,用户可自定义复杂函数或服务调用,对映射过程进行控制和处理,生成需要的结果数值。自定义处理工序,即用户可自定义数据处理工序并配置到转换流水线,在工序内可对当前数据集进行加工。自定义数据校验,即用户可自定义数据校验规则。自定义数据输出,即基于目标数据转换模型提供的数据输出接口,用户可自定义数据输出处理,例如持久化到数据库、保存到文件系统,或通过外部服务接口同步到其他业务系统等。
实施例10:
本发明第三方面的实施例,提出了一种数据转换装置,包括存储器,存储器储存有程序或指令;处理器,与存储器连接,处理器被配置为执行程序或指令时实现第一方面提出的数据转换方法。
在该实施例中,接收到数据转换请求后,获取数据转换请求中所包含的多个源实体、与多个源实体对应的多个目标实体、多个源实体的实体类型以及多个源实体内存储的第一数据,其中,数据转换请求指示对多个源实体内的第一数据进行转换,写入对应的多个目标实体。
进一步地,根据多个源实体的实体类型,在多个预设数据转换模型中,确定目标数据转换模型,其中,预设数据转换模型为预先基于不同业务场景构建的标准数据转换模型,目标数据转换模型为源实体和目标实体对应的数据转换模型。
进一步地,预设数据转换模型中包含预先根据业务需求配置好的各业务实体之间的映射关系,根据确定的目标转换模型,能够确定源实体与目标实体之间的映射关系。
进一步地,第一数据的数据转换以流水线形式执行,目标数据转换模型中包含预先配置好的第一数据的优先级,其中,优先级为流水线在整个数据转换中的优先级,用于决定不同第一数据的转换顺序。根据目标数据转换模型的转换逻辑,确定第一数据的转换顺序。
进一步地,根据目标数据转换模型、第一数据的转换顺序以及源实体和目标实体之间的映射关系,将第一数据转换为第二数据,进而将第二数据同步到目标实体中。
其中,第一数据可以包括数据属性信息,例如:属性名称、属性类型、属性分类以及计量单位等。
通过上述方式,基于数据转换模型提供了灵活的配置数据转换逻辑,按照数据转换逻辑对第一数据进行数据转换,以实现业务数据的灵活转换,以及业务系统中复杂数据关系的快速传递,有效提高了数据转换的效率。同时,通过不同的业务实体,确定其对应的目标数据转换模型,实现不同的业务场景之间跨类数据转换模型的调用,满足不同业务场景下的数据转换处理,实现异构业务系统或不同业务实体之间的数据转换。相较于现有技术中依赖数据库中间件实现基于数据库表的数据复制和同步,对数据结构的中间件部署构建有较重的依赖性,本申请针对业务实体选择数据转换模型,基于不同的数据转换模型配置的数据转换逻辑实现业务应用中数据转换功能,不依赖于具体的业务系统和中间件产品,实现了较好的通用性,解决了现有技术中系统功能单一、耦合紧密的问题。
实施例11:
本发明第四方面的实施例,提出了一种可读存储介质,其上存储有程序或指令,程序或指令被处理器执行时实现如上述任一技术方案的数据转换方法的步骤。
其中,可读存储介质包括只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等。
本发明提供的可读存储介质,程序或指令被处理器执行时实现如上述任一技术方案的数据转换方法的步骤,因此该可读存储介质包括上述任一技术方案的数据转换方法的全部有益效果,在此不再赘述。以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种数据转换方法,其特征在于,包括:
响应于数据转换请求,获取所述数据转换请求中包含的多个源实体、多个目标实体、所述多个源实体的实体类型和所述多个源实体的第一数据;
根据所述实体类型,从多个预设数据转换模型中,确定目标数据转换模型;
根据所述目标数据转换模型,确定多个源实体与所述多个目标实体之间的映射关系;
根据所述目标数据转换模型,确定对所述多个源实体的所述第一数据的进行数据转换的转换顺序;
根据所述目标数据转换模型、所述转换顺序和所述映射关系,对所述第一数据进行数据转换,生成第二数据,将所述第二数据写入所述多个目标实体。
2.根据权利要求1所述的数据转换方法,其特征在于,所述根据所述目标数据转换模型,确定对所述多个源实体的所述第一数据的进行数据转换的转换顺序的步骤,具体包括:
根据所述目标数据转换模型,确定所述第一数据的优先级;
按照所述优先级,对所述第一数据进行排序,得到所述转换顺序。
3.根据权利要求1所述的数据转换方法,其特征在于,所述根据所述目标数据转换模型、所述转换顺序和所述映射关系,对所述第一数据进行数据转换,生成第二数据的步骤,具体包括:
根据所述映射关系,确定所述第一数据的转换方式;
将所述第一数据输入所述目标数据转换模型,按照所述转换方式和所述转换顺序,将所述第一数据转换为所述第二数据。
4.根据权利要求3所述的数据转换方法,其特征在于,
所述转换方式包括以下至少一种:数据组合、数据拆分和数据映射。
5.根据权利要求1所述的数据转换方法,其特征在于,所述将所述第二数据信息写入所述多个目标实体的步骤,具体包括:
获取所述第二数据的数据格式;
根据所述目标数据转换模型,确定所述目标实体的标准数据格式;
将所述数据格式和所述标准数据格式进行比较;
基于所述数据格式与所述标准数据格式相同,将所述第二数据写入所述目标实体;
基于所述数据格式与所述标准数据格式不同,将所述第二数据删除。
6.根据权利要求1至5中任一项所述的数据转换方法,其特征在于,所述响应于数据转换请求,获取所述数据转换请求中包含的所述多个源实体、多个目标实体、所述多个源实体的实体类型和所述多个源实体的第一数据之前,还包括:
获取已转换的历史数据;
根据所述历史数据,确定所述多个源实体和所述多个目标实体之间的组合逻辑和所述历史数据的校验规则;
根据所述组合逻辑和所述校验规则,创建所述预设数据转换模型。
7.根据权利要求6所述的数据转换方法,其特征在于,
所述校验规则包括以下至少一种:数据长度校验、默认数据校验和数据是否为空值校验。
8.一种数据转换装置,其特征在于,包括:
数据转换模型确定单元,用于根据多个源实体的实体类型,从多个预设数据转换模型中,确定目标数据转换模型;
所述数据转换模型确定单元还用于根据所述目标数据转换模型,确定多个源实体与所述多个目标实体之间的映射关系;
数据转换配置单元,用于根据所述目标数据转换模型,确定对所述多个源实体的第一数据的进行数据转换的转换顺序;
执行单元,用于根据所述目标数据转换模型、所述转换顺序和所述映射关系,对所述第一数据进行数据转换,生成第二数据,将所述第二数据信息写入所述多个目标实体。
9.根据权利要求8所述的数据转换装置,其特征在于,还包括:
解析单元,所述解析单元用于响应于数据转换请求,对所述数据转换请求进行解析,获取所述数据转换请求中包括的所述多个源实体、多个目标实体、所述多个源实体的实体类型和所述多个源实体的第一数据;
输入数据读取单元,用于对输入的所述多个源实体的所述第一数据进行过滤;
数据处理集合单元,用于根据所述第一数据的所述转换顺序和所述转换方式,对所述第一数据进行数据合并、数据拆分、数据映射和数据转换;
数据一致性处理单元,用于根据所述第一数据和所述第二数据,对所述目标数据模块进行更新;
输出数据生成单元,用于将转换后的所述第二数据进行汇总,以供后续输出。
10.根据权利要求8或9所述的数据转换装置,其特征在于,还包括:
规则扩展单元,用于响应于扩展请求,获取所述扩展请求中包含的对所述第一数据进行数据转换的扩展规则,根据所述扩展规则对所述目标数据转换模型进行更新。
11.一种数据转换装置,其特征在于,包括:
存储器,所述存储器储存有程序或指令;
处理器,所述存储器连接,所述处理器执行所述程序或指令时实现如权利要求1至7中任一项所述的数据转换方法的步骤。
12.一种可读存储介质,其上存储有程序或指令,其特征在于,所述程序或指令被处理器执行时实现如权利要求1至7中任一项所述的数据转换方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111027004.5A CN113918627A (zh) | 2021-09-02 | 2021-09-02 | 数据转换方法、装置和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111027004.5A CN113918627A (zh) | 2021-09-02 | 2021-09-02 | 数据转换方法、装置和可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113918627A true CN113918627A (zh) | 2022-01-11 |
Family
ID=79233809
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111027004.5A Pending CN113918627A (zh) | 2021-09-02 | 2021-09-02 | 数据转换方法、装置和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113918627A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114979251A (zh) * | 2022-04-26 | 2022-08-30 | 东莞市海数云电子科技有限公司 | 一种跨系统协同服务异构数据交换工具 |
CN115048439A (zh) * | 2022-04-25 | 2022-09-13 | 中银金融科技有限公司 | 数据转换方法、装置、电子设备及存储介质 |
-
2021
- 2021-09-02 CN CN202111027004.5A patent/CN113918627A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115048439A (zh) * | 2022-04-25 | 2022-09-13 | 中银金融科技有限公司 | 数据转换方法、装置、电子设备及存储介质 |
CN114979251A (zh) * | 2022-04-26 | 2022-08-30 | 东莞市海数云电子科技有限公司 | 一种跨系统协同服务异构数据交换工具 |
CN114979251B (zh) * | 2022-04-26 | 2023-08-11 | 广东海术云电子科技有限公司 | 一种跨系统协同服务异构数据交换系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2500023C2 (ru) | Синхронизация документа по протоколу, не использующему информацию о состоянии | |
CN110554958B (zh) | 图数据库测试方法、系统、设备和存储介质 | |
CN113918627A (zh) | 数据转换方法、装置和可读存储介质 | |
CN111104103B (zh) | 一种软件编辑微服务的可视化方法及系统 | |
JP6673359B2 (ja) | システム構築支援システム、方法およびプログラム | |
CN111309734B (zh) | 自动生成表数据的方法及系统 | |
CN111818175B (zh) | 企业服务总线配置文件生成方法、装置、设备和存储介质 | |
CN112906206B (zh) | 数字孪生模型构建方法和装置 | |
KR20130139724A (ko) | 컴퓨팅 시스템 및 그 실행 제어 방법과, 그 실행 제어 프로그램을 기록한 기록 매체 | |
CN113986241A (zh) | 一种基于知识图谱的业务规则的配置方法以及装置 | |
CN115220697A (zh) | Api开发管理方法、装置、车辆及存储介质 | |
CN111124382A (zh) | Java中的属性赋值方法、装置及服务器 | |
CN101136780A (zh) | 获取用户命令信息的方法、系统及用户命令注册的装置 | |
CN112947896B (zh) | 一种基于有向图的组件依赖分析方法 | |
CN114020840A (zh) | 一种数据处理方法、装置、服务器、存储介质及产品 | |
CN115525534A (zh) | 基于swagger的接口测试的测试用例生成方法、生成平台 | |
JP2011248852A (ja) | システム連携装置 | |
CN116560629A (zh) | 一种数据传输对象的序列化方法、装置、介质和设备 | |
CN114003220B (zh) | 工作流模型实现方法、系统、可读存储介质及计算机设备 | |
CN115543428A (zh) | 一种基于策略模板的模拟数据生成方法和装置 | |
CN114565285A (zh) | 一种流程控制方法及系统 | |
CN113486637A (zh) | 智能化动态自定义合同生成方法和装置 | |
CN113806327A (zh) | 一种数据库设计方法、装置及相关设备 | |
CN112363700A (zh) | 智能合约的协同创建方法、装置、计算机设备和存储介质 | |
CN111651196B (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 |