CN114327493A - 数据处理方法及装置、电子设备、计算机可读介质 - Google Patents
数据处理方法及装置、电子设备、计算机可读介质 Download PDFInfo
- Publication number
- CN114327493A CN114327493A CN202111576032.2A CN202111576032A CN114327493A CN 114327493 A CN114327493 A CN 114327493A CN 202111576032 A CN202111576032 A CN 202111576032A CN 114327493 A CN114327493 A CN 114327493A
- Authority
- CN
- China
- Prior art keywords
- conversion
- data
- data model
- meta
- target
- 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
Landscapes
- Stored Programmes (AREA)
Abstract
本申请的实施例揭示了一种数据处理方法及装置、电子设备、计算机可读介质,该方法包括:获取源数据模型以及源数据模型的转换需求信息,之后基于源数据模型与转换需求信息构建匹配树,之后对匹配树中含有的叶子节点进行解析,并基于解析结果确定叶子节点对应的数据转换策略,之后基于数据转换策略获取叶子节点匹配的目标数据,并基于目标数据得到目标数据模型。本申请实施例的技术方案极大地优化了数据模型转换方案,降低了数据模型的转换难度。
Description
技术领域
本申请涉及计算机通信技术领域,具体而言,涉及一种数据处理方法、数据处理装置、电子设备以及计算机可读介质。
背景技术
目前各个系统间会涉及到不同数据模型的转换,但是相关技术中不同数据模型的转换都是针对各个数据模型转换设计对应的编码,即定制化代码开发,开发量大,且维护较为困难,给相关开发工作人员带来一定困扰。
由此,如何降低数据模型的转换难度是亟待解决的问题。
发明内容
为解决上述技术问题,本申请的实施例提供了一种数据处理方法及装置、电子设备、计算机可读介质,进而至少在一定程度上降低了数据模型的转换难度。
根据本申请实施例的一个方面,提供了一种数据处理方法,所述方法包括:获取源数据模型以及所述源数据模型的转换需求信息;基于所述源数据模型与所述转换需求信息构建匹配树;对所述匹配树中含有的叶子节点进行解析,并基于解析结果确定所述叶子节点对应的数据转换策略;基于所述数据转换策略获取所述叶子节点匹配的目标数据,并基于所述目标数据得到目标数据模型。
根据本申请实施例的一个方面,提供了一种数据处理装置,所述装置包括:获取模块,配置为获取源数据模型以及所述源数据模型的转换需求信息;构建模块,配置为基于所述源数据模型与所述转换需求信息构建匹配树;解析与确定模块,配置为对所述匹配树中含有的叶子节点进行解析,并基于解析结果确定所述叶子节点对应的数据转换策略;获取与得到模块,配置为基于所述数据转换策略获取所述叶子节点匹配的目标数据,并基于所述目标数据得到目标数据模型。
在本申请的一个实施例中,基于前述方案,所述构建模块包括:解析单元,配置为对所述源数据模型进行解析,得到多个元素项;第一获取单元,配置为基于所述多个元素项和所述转换需求信息,获取多个目标转换逻辑组件;生成单元,配置为将所述多个目标转换逻辑组件进行组合,生成转换数据模板;构建单元,配置为基于所述转换数据模板构建所述匹配树。
在本申请的一个实施例中,基于前述方案,所述转换需求信息包括源数据模型待转换至的目标数据模型的类型信息;所述获取单元,具体配置为:从预设转换逻辑库中获取与所述类型信息匹配的多个转换逻辑组件;从所述多个转换逻辑组件中确定各个元素项匹配的转换逻辑组件,并将所述各个元素项匹配的转换逻辑组件作为所述目标转换逻辑组件。
在本申请的一个实施例中,基于前述方案,所述构建单元,具体配置为:对所述转换数据模板进行解析,得到各个元素项所属的层次以及各个元素项之间的关联关系;基于所述各个元素项所属的层次以及各个元素项之间的关联关系,构建所述匹配树。
在本申请的一个实施例中,基于前述方案,所述数据转换策略包括元服务调用策略、映射处理策略以及正则处理策略;所述获取与得到模块包括:第二获取单元,配置为若基于解析结果确定所述叶子节点对应的数据转换策略为元服务调用策略,则从预设元服务库中获取所述叶子节点匹配的元服务组件;第三获取单元,配置为基于所述元服务组件获取所述叶子节点匹配的目标数据。
在本申请的一个实施例中,基于前述方案,所述装置还包括:接收模块,配置为基于接收到的输入操作生成多个元服务组件;存储模块,配置为将所述多个元服务组件存储至所述预设元服务库中。
在本申请的一个实施例中,基于前述方案,所述解析与确定模块包括:遍历单元,配置为遍历所述匹配树中含有的所有节点;解析单元,配置为从所述所有节点中确定出叶子节点,并对所述叶子节点进行解析。
根据本申请实施例的一个方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现如前所述的数据处理方法。
根据本申请实施例的一个方面,提供了一种计算机可读介质,其上存储有计算机程序,当所述计算机程序被计算机的处理器执行时实现如前所述的数据处理方法。
根据本申请实施例的一个方面,提供了一种计算机程序产品,包括计算机指令,该计算机指令被处理器执行时实现如前所述的数据处理方法。
在本申请的实施例所提供的技术方案中:
一方面,通过基于源数据模型与源数据模型的转换需求信息构建匹配树,由此相关开发工作人员无需设计大量重复的编码,例如无需设计大量的判断语句,并且相关技术中设计大量的判断语句,对于相关开发工作人员而言,其是需要构建较为复杂的转换逻辑的,大大增加了开发难度,因而本申请实施例中的技术方案可以降低数据模型的转换难度,在一定程度上提升了相关开发工作人员的开发便利性;同时,通过基于源数据模型与源数据模型的转换需求信息构建匹配树,可以更为直观明了的查看到转换逻辑,便于后期的维护,提升了可维护性,进一步提升了相关开发工作人员的开发便利性。
另一方面,通过对匹配树中含有的叶子节点进行解析,并基于解析结果确定叶子节点对应的数据转换策略,进而基于确定的数据转换策略获取到与叶子节点匹配的目标数据,这样根据不同数据转换策略获取对应的目标数据,灵活性更高,适用场景更广。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是可以应用本申请实施例的技术方案的示例性实施环境的示意图;
图2是本申请的一示例性实施例示出的数据处理方法的流程图;
图3是图2所示实施例中的步骤S202在一示例性实施例中的流程图;
图4是图3所示实施例中的步骤S302在一示例性实施例中的流程图;
图5是图3所示实施例中的步骤S304在一示例性实施例中的流程图;
图6是图2所示实施例中的步骤S203在一示例性实施例中的流程图;
图7是图2所示实施例中的步骤S204在一示例性实施例中的流程图;
图8是本申请的一示例性实施例示出的数据处理方法的流程图;
图9是本申请的一示例性实施例示出的数据处理方法的流程图;
图10是本申请的一示例性实施例示出的数据处理方法的示意图;
图11是本申请的一示例性实施例示出的数据处理装置的结构示意图;
图12是适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
还需要说明的是:在本申请中提及的“多个”是指两个或者两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
目前各个系统间会涉及到不同数据模型的转换,例如针对于产品服务中心而言,其会涉及到大量不同数据模型之间的转换。但是相关技术中不同数据模型的转换都是针对各个数据模型转换设计对应的编码,例如针对各个数据模型转换都需要设计大量的判断语句,由于要设计大量的判断语句,对于相关开发工作人员而言,其是需要构建较为复杂的转换逻辑的,由此大大增加了开发难度,从而在极大程度上增加了数据模型转换的难度;并且后期维护也较为困难,由此给相关开发工作人员带来一定困扰。
基于此,本申请实施例提出了一种数据处理方法,不仅降低了数据模型的转换难度,而且还便于后期的维护,可维护性强,为相关开发工作人员的开发带来了诸多便利。
请参阅图1,图1是本申请一种示例性实施环境的示意图。该实施环境中包括终端设备101和服务器102,终端设备101和服务器102之间通过有线或者无线网络进行通信。
应该理解,图1中的终端设备101和服务器102的数目仅仅是示意性的。根据实际需要,可以具有任意数目的终端设备101和服务器102。
其中,终端设备101对应客户端,其可以是任意具有用户输入接口的电子设备,包括但不限于智能手机、平板、笔记本电脑、计算机等等,其中,用户输入接口包括但不限于触摸屏、键盘、物理按键、音频拾取装置等。
其中,服务器102对应服务端,其可以是提供各种服务的服务器,其可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)以及大数据和人工智能平台等基础云计算服务的云服务器,本处不对此进行限制。
在本申请的一些实施例中,数据处理方法可以由服务器102执行,相应地,数据处理装置配置于服务器102中。可选地,服务器102可以获取到终端设备101发送的源数据模型以及源数据模型的转换需求信息,之后,基于源数据模型与转换需求信息构建匹配树,之后,对匹配树中含有的叶子节点进行解析,并基于解析结果确定叶子节点对应的数据转换策略,之后,基于数据转换策略获取叶子节点匹配的目标数据,并基于目标数据得到目标数据模型。
在本申请的一些实施例中,数据处理方法可以由终端设备101执行,相应地,数据处理装置配置于终端设备101中。可选地,终端设备101可以获取到上传的源数据模型以及源数据模型的转换需求信息,之后,基于源数据模型与转换需求信息构建匹配树,之后,对匹配树中含有的叶子节点进行解析,并基于解析结果确定叶子节点对应的数据转换策略,之后,基于数据转换策略获取叶子节点匹配的目标数据,并基于目标数据得到目标数据模型,以及可以将目标数据模型发送至服务器102。
以下对本申请实施例的技术方案的各种实现细节进行详细阐述:
请参阅图2,图2是本申请的一个实施例示出的数据处理方法的流程图。该方法可以应用于图1所示的实施环境中,并由图1所示实施环境中的终端设备101或者服务器102执行。如图2所示,数据处理方法至少包括步骤S201至步骤S204,详细介绍如下:
步骤S201,获取源数据模型以及源数据模型的转换需求信息。
本申请实施例中源数据模型指的是未经转换的数据模型,也即是待转换的数据模型;其中,源数据模型可以是任意形式的源数据模型,例如可以是excel文件格式、word文件格式、记事本文件格式等。
本申请实施例中转换需求信息指的是源数据模型待转换至的目标数据模型的信息,也即是源数据模型需要转换为哪一种/哪一个目标数据模型的信息。
可选地,转换需求信息包括但不限于源数据模型待转换至的目标数据模型的类型信息、标识信息、名称信息等。其中,类型信息指的是目标数据模型的类型;标识信息指的是目标数据模型的标识,例如标识号,标识号可以与类型一一对应;名称信息指的是目标数据模型的名称,目标数据模型的名称可以与类型、标识号一一对应。
步骤S202,基于源数据模型与转换需求信息构建匹配树。
本申请实施例中获取源数据模型以及源数据模型的转换需求信息,之后可以基于源数据模型与转换需求信息构建匹配树。
本申请实施例中匹配树指的是一种树形数据结构,其具有的特性是每个节点有零个或多个子节点,没有父节点的节点则称为根节点,每个非根节点有且只有一个父节点。其中,匹配树是一种专用于处理匹配相关的数据结构。
在本申请的一个实施例中,请参阅图3,步骤S202中基于源数据模型与转换需求信息构建匹配树的过程,可以包括步骤S301至步骤S304,详细介绍如下:
步骤S301,对源数据模型进行解析,得到多个元素项;
步骤S302,基于多个元素项和转换需求信息,获取多个目标转换逻辑组件;
步骤S303,将多个目标转换逻辑组件进行组合,生成转换数据模板;
步骤S304,基于转换数据模板构建匹配树。
也即,可选实施例中基于源数据模型与转换需求信息构建匹配树具体实现可以是通过对源数据模型进行解析得到多个元素项,之后基于多个元素项和转换需求信息获取多个目标转换逻辑组件,之后将多个目标转换逻辑组件进行组合,生成转换数据模板,之后基于转换数据模块构建匹配树。
其中,可选实施例中元素项指的是源数据模型中所含有的源数据对应的名称项;例如源数据模型中含有的源数据有a1、a2和a3,那么元素项则有a1对应的a1元素项、a2对应的a2元素项、a3对应的a3元素项。
其中,可选实施例中目标转换逻辑组件指的是和目标转换逻辑相关的编码集合。
其中,可选实施例中转换数据模板指的是一个或多个目标转换逻辑组件组合得到的数据模板,其用于构建匹配树,也即是匹配树的构建要基于转换数据模板。
在本申请的一个实施例中,转换需求信息包括源数据模型待转换至的目标数据模型的类型信息;请参阅图4,步骤S302中基于多个元素项和转换需求信息,获取多个目标转换逻辑组件的过程,可以包括步骤S401至步骤S402,详细介绍如下:
步骤S401,从预设转换逻辑库中获取与类型信息匹配的多个转换逻辑组件;
步骤S402,从多个转换逻辑组件中确定各个元素项匹配的转换逻辑组件,并将各个元素项匹配的转换逻辑组件作为目标转换逻辑组件。
也即,可选实施例中基于多个元素项和转换需求信息,获取多个目标转换逻辑组件具体实现可以是通过从预设转换逻辑库中获取与类型信息匹配的多个转换逻辑组件,之后从多个转换逻辑组件中确定各个元素项匹配的转换逻辑组件,并将各个元素项匹配的转换逻辑组件作为目标转换逻辑组件。
其中,可选实施例中预设转换逻辑库中预置有多个类型信息,以及与各个类型信息分别对应的多个转换逻辑组件;例如请参阅下表1所示,为一种示例的预设转换逻辑库。
类型信息 | 转换逻辑组件 |
A | t1、t2、t3、t4、t5、t6、t7、t8 |
B | t3、t6、t7、t8、t9、t10、t11、t12 |
…… | …… |
表1
其中,如表1所示,A类型信息对应多个转换逻辑组件t1、t2、t3、t4、t5、t6、t7、t8,B类型信息对应多个转换逻辑组件t3、t6、t7、t8、t9、t10、t11、t12;其中不同类型信息对应的多个转换逻辑组件可以相同可以不同,在实际应用中,可以根据具体应用场景进行灵活设置。
举例说明,例如设转换需求信息所包括的源数据模型待转换至的目标数据模型的类型信息为A,则可以从表1所示的预设转换逻辑库中获取与A类型信息匹配的多个转换逻辑组件t1、t2、t3、t4、t5、t6、t7、t8;同时设元素项匹配的转换逻辑组件为t1、t2、t3、t4,则此时从多个转换逻辑组件t1、t2、t3、t4、t5、t6、t7、t8中确定出t1、t2、t3、t4,即将t1、t2、t3、t4作为目标转换逻辑组件。
可以理解的是,通过实施可选实施例,相关开发工作人员只需要设置好预设转换逻辑库中的各个类型信息对应的转换逻辑组件,这样只要获取到源数据模型以及源数据模型的转换需求信息,就可以从预设转换逻辑库中匹配出目标转换逻辑组件,从而生成转换数据模板,为匹配树的构建提供支持,后期只需要维护预设转换逻辑库中各个类型信息对应的转换逻辑组件即可,而不用再单独为每个数据模型转换设计对应的编码,大大降低了开发难度。
在本申请的一个实施例中,请参阅图5,步骤S304中基于转换数据模板构建匹配树的过程,可以包括步骤S501至步骤S502,详细介绍如下:
步骤S501,对转换数据模板进行解析,得到各个元素项所属的层次以及各个元素项之间的关联关系;
步骤S502,基于各个元素项所属的层次以及各个元素项之间的关联关系,构建匹配树。
也即,可选实施例中基于转换数据模板构建匹配树具体实现可以是对转换数据模板进行解析,得到各个元素项所属的层次以及各个元素项之间的关联关系,之后基于各个元素项所属的层次以及各个元素项之间的关联关系,构建匹配树。
其中,可选实施例中元素项所属的层次指的是元素项所在源数据模板中的层级,其由元素项本身数据的特性而决定;例如源数据模型中包括a1元素项,a2元素项、a3元素项,其中a1元素项、a2元素项均为第二层级,a3元素项为第三层级。可以理解的是,匹配树中层级为由上至下依次计数,根节点为第一层级;同时处于同一层级的元素项为并列关系,处于不同层级的元素项可能没有关系,或者可能为包含关系,或者可能为被包含关系。
其中,可选实施例中各个元素项之间的关联关系指的是各个元素项可以存在的关联关系,其中关联关系包括但不限于没有关系,包含关系,被包含的关系等。
举例说明,设对转换数据模板进行解析,得到各个元素项所属的层次分别为:a1元素项、a2元素项均为第二层级,a3元素项为第三层级,以及得到各个元素项之间的关联关系分别为:a1元素项包含a3元素项(也可以理解为a3元素项被a1元素项所包含),a2元素项与a1元素项、a3元素项没有关系。因此,可以基于解析得到的各个元素项所属的层次以及各个元素项之间的关联关系,构建得到匹配树;具体地,a1元素项、a2元素项可以作为第二层级的节点,a3元素项可以作为第三层级的节点,且其是a1元素项这一节点的子节点。
可以理解的是,通过实施可选实施例,对转换数据模板进行解析,并基于解析得到的各个元素项所属的层次以及各个元素项之间的关联关系即可快速构建得到准确的匹配树,该构建过程简单,且易于实现。
步骤S203,对匹配树中含有的叶子节点进行解析,并基于解析结果确定叶子节点对应的数据转换策略。
本申请实施例中基于源数据模型与转换需求信息构建匹配树,之后可以对匹配树中含有的叶子节点进行解析,并基于解析结果确定叶子节点对应的数据转换策略。
本申请实施例中叶子节点指的是匹配树中没有子节点的节点,也即是匹配树中最底端的节点。
本申请实施例中数据转换策略指的是叶子节点所对应的源数据转换为目标数据的转换策略。可以理解的是,数据转换策略包括但不限于元服务调用策略、映射处理策略以及正则处理策略。其中,元服务调用策略指的是通过调用逻辑相关的编码集合以得到目标数据的策略,其适用于复杂的数据转换的叶子节点;映射处理策略指的是通过简单映射关系的编码以得到目标数据的策略,其适用于简单的数据转换的叶子节点;正则处理策略指的是通过正则表达式的处理以得到目标数据的策略。
在本申请的一个实施例中,请参阅图6,步骤S203中对匹配树中含有的叶子节点进行解析的过程,可以包括步骤S601至步骤S602,详细介绍如下:
步骤S601,遍历匹配树中含有的所有节点;
步骤S602,从所有节点中确定出叶子节点,并对叶子节点进行解析。
也即,可选实施例中对匹配树中含有的叶子节点进行解析具体实现可以是通过遍历匹配树中含有的所有节点,之后从所有节点中确定出叶子节点,并对叶子节点进行解析。
其中,可选实施例中可以从根节点从上往下、从左往右的顺序遍历匹配树中的节点,直至遍历完匹配树中含有的所有节点,当遍历到的节点没有子节点时,即可确定出该没有子节点的节点为叶子节点,进而对叶子节点进行解析即可。
步骤S204,基于数据转换策略获取叶子节点匹配的目标数据,并基于目标数据得到目标数据模型。
本申请实施例中对匹配树中含有的叶子节点进行解析,并基于解析结果确定叶子节点对应的数据转换策略,之后可以基于数据转换策略获取叶子节点匹配的目标数据,并基于目标数据得到目标数据模型。
在本申请的一个实施例中,请参阅图7,步骤S204中基于数据转换策略获取叶子节点匹配的目标数据的过程,可以包括步骤S701至步骤S702,详细介绍如下:
步骤S701,若基于解析结果确定叶子节点对应的数据转换策略为元服务调用策略,则从预设元服务库中获取叶子节点匹配的元服务组件;
步骤S702,基于元服务组件获取叶子节点匹配的目标数据。
也即,可选实施例中如果基于解析结果确定叶子节点对应的数据转换策略为元服务调用策略,则可以从预设元服务库中获取叶子节点匹配的元服务组件,之后基于元服务组件获取叶子节点匹配的目标数据。
其中,可选实施例中预设元服务库中预置有多个元服务组件,其中元服务组件指的是和元服务相关的编码集合;例如请参阅下表2所示,为一种示例的预设元服务库。
元服务组件 | 名称 |
元服务组件1 | 获取UUID服务 |
元服务组件2 | 获取关联外键服务 |
元服务组件3 | 字符串拼接服务 |
元服务组件4 | 数据类型转换服务 |
…… | …… |
表2
在本申请的一个实施例中,请参阅图8,在步骤S204中从预设元服务库中获取叶子节点匹配的元服务组件的过程之前,还可以包括步骤S801至步骤S802,详细介绍如下:
步骤S801,基于接收到的输入操作生成多个元服务组件;
步骤S802,将多个元服务组件存储至预设元服务库中。
也即,可选实施例中可以基于接收到的输入操作生成多个元服务组件,之后将多个元服务组件存储至预设元服务库中。
其中,可选实施例中输入操作可以是任意形式的输入操作,例如可以是键盘输入操作、鼠标输入操作、语音输入操作等。
可以理解的是,通过实施可选实施例,相关开发工作人员只需要设置好预设元服务库中的各个元服务组件,这样针对较为复杂的数据转换的叶子节点便可以通过与该叶子节点对应的元服务组件,快速准确地获取到该叶子节点对应的源数据待转换至的目标数据,而不用每次针对该叶子节点都要编写大量代码才能获得目标数据,不仅提升了获取目标数据的效率,而且减少了大量代码的重复编写,大大降低了开发难度。
在本申请的一个实施例中,步骤S204中基于数据转换策略获取叶子节点匹配的目标数据的过程,可以包括以下步骤:
若基于解析结果确定叶子节点对应的数据转换策略为映射处理策略,则从映射处理策略中含有的映射关系对叶子节点对应的源数据进行处理,以获取叶子节点匹配的目标数据。
也即,可选实施例中如果基于解析结果确定叶子节点对应的数据转换策略为映射处理策略,那么此时可以从映射处理策略中含有的映射关系对叶子节点对应的源数据进行相应的映射处理,从而获取到叶子节点匹配的目标数据。
其中,可选实施例中映射处理策略中可以含有映射关系,或者该映射关系可以存储在某一预设映射库中,预设映射库中预置有多个映射关系,因而可以通过查找预设映射库查找到叶子节点匹配的映射关系。
在本申请的一个实施例中,步骤S204中基于数据转换策略获取叶子节点匹配的目标数据的过程,可以包括以下步骤:
若基于解析结果确定叶子节点对应的数据转换策略为正则处理策略,则从正则处理策略中含有的正则表达式对叶子节点对应的源数据进行处理,以获取叶子节点匹配的目标数据。
也即,可选实施例中如果基于解析结果确定叶子节点对应的数据转换策略为正则处理策略,那么此时从正则处理策略中含有的正则表达式对叶子节点对应的源数据进行正则表达式的计算,从而获取到叶子节点匹配的目标数据。
其中,可选实施例中正则处理策略中可以含有正则表达式,或者该正则表达式可以存储在某一预设正则表达库中,预设正则表达库中预置有多个正则表达式,因而可以通过查找预设正则表达库查找到叶子节点匹配的映射关系。
本申请实施例中通过基于源数据模型与源数据模型的转换需求信息构建匹配树,由此相关开发工作人员无需设计大量重复的编码,降低了数据模型的转换难度,并且通过匹配树可以更为直观明了的查看到转换逻辑,便于后期的维护,可维护性强,在极大程度上提升了相关开发工作人员的开发便利性;同时当基于解析结果确定叶子节点对应的数据转换策略为元服务调用策略时,可以从预设元服务库中获取叶子节点匹配的元服务组件,进而可以基于元服务组件快速准确地获取到与叶子节点匹配的目标数据,从而在极大程度上提升了数据模型的转换效率。
以下对本申请实施例的具体应用场景进行详细说明:
请参阅图9,图9是本申请的一个实施例示出的数据处理方法的流程图。如图9所示,数据处理方法至少包括步骤S901至步骤S910,详细介绍如下:
步骤S901,获取源数据模型以及源数据模型的转换需求信息。
步骤S902,对源数据模型进行解析,得到多个元素项。
步骤S903,基于多个元素项和转换需求信息,获取多个目标转换逻辑组件。
可选地,转换需求信息包括源数据模型待转换至的目标数据模型的类型信息;基于多个元素项和转换需求信息,获取多个目标转换逻辑组件具体可以是从预设转换逻辑库中获取与类型信息匹配的多个转换逻辑组件,之后从多个转换逻辑组件中确定各个元素项匹配的转换逻辑组件,并将各个元素项匹配的转换逻辑组件作为目标转换逻辑组件。
可选地,预设转换逻辑库中预置有多个类型信息,以及与各个类型信息分别对应的多个转换逻辑组件;其中,预设转换逻辑库中存储的内容具体可以是接收到的输入操作所生成的,之后将其存储至预设元服务库中即可。
步骤S904,将多个目标转换逻辑组件进行组合,生成转换数据模板。
可选地,转换数据模板可以采用Yaml/Json等文件格式。
步骤S905,基于转换数据模板构建匹配树。
可选地,基于转换数据模板构建匹配树具体可以是对转换数据模板进行解析,得到各个元素项所属的层次以及各个元素项之间的关联关系,之后基于各个元素项所属的层次以及各个元素项之间的关联关系,构建匹配树。
步骤S906,对匹配树中含有的叶子节点进行解析,并基于解析结果确定叶子节点对应的数据转换策略。
可选地,对匹配树中含有的叶子节点进行解析具体可以是遍历匹配树中含有的所有节点,之后从所有节点中确定出叶子节点,并对叶子节点进行解析。
步骤S907,若基于解析结果确定叶子节点对应的数据转换策略为元服务调用策略,则从预设元服务库中获取叶子节点匹配的元服务组件,基于元服务组件获取叶子节点匹配的目标数据。
可选地,预设元服务库中预置有多个元服务组件;其中,预设元服务库中存储的内容具体可以是接收到的输入操作所生成的,之后将其存储至预设元服务库中即可。
步骤S908,若基于解析结果确定叶子节点对应的数据转换策略为映射处理策略,则从映射处理策略中含有的映射关系对叶子节点对应的源数据进行处理,以获取叶子节点匹配的目标数据。
步骤S909,若基于解析结果确定叶子节点对应的数据转换策略为正则处理策略,则从正则处理策略中含有的正则表达式对叶子节点对应的源数据进行处理,以获取叶子节点匹配的目标数据。
步骤S910,基于目标数据得到目标数据模型。
可选地,步骤S901至步骤S910的具体实施过程可以参照前述实施例的技术方案。
可选地,请参阅图10,为一种示例的数据处理方法的示意图。如图10所示,源数据模型可以为excel文件格式的数据模型,其中一个元素项如“环节信息”对应的工作薄包括多个元素项“使用区域”、“流程名称”、“环节名称”、“API名称”等。其中,图10中仅示例出部分源数据。
之后,根据源数据模型以及源数据模型的转换需求信息,获取多个目标转换逻辑组件,进而将多个目标转换逻辑组件进行组合,生成转换数据模板。
之后,基于转换数据模板构建匹配树。其中,构建得到的匹配树包括根节点(ROOT),二级节点(TacheTable、APITable),三级节点(Id、Name、APIId、UsedRegion……)(Id……),四级节点(RegionCode、StatusId……)。可以理解的是,各个节点都为前述所提及的元素项,各个元素项的关系如图10中匹配树所示,这里不再赘述。同时对于三级节点(Id)而言,其对应元服务调用策略,具体地,从预设元服务库中获取与其对应的获取UUID服务,对于三级节点(APIId)而言,其对应元服务调用策略,具体地,从预设元服务库中获取与其对应的获取关联外键服务。可选地,预设元服务库中还预置有字符串拼接服务、数据类型转换服务等。对于其他节点可以通过其对应的数据转换策略如映射处理策略或正则处理策略获取对应的目标数据。
之后,基于获取到的各个节点匹配的目标数据得到目标数据模型。其中,图10中仅示例出部分目标数据。
其中,图10所示的源数据模板可以如下(仅示例出部分内容):
本申请实施例中通过基于源数据模型与源数据模型的转换需求信息构建匹配树,由此相关开发工作人员无需设计大量重复的编码,降低了数据模型的转换难度,并且通过匹配树可以更为直观明了的查看到转换逻辑,便于后期的维护,可维护性强,在极大程度上提升了相关开发工作人员的开发便利性;同时当基于解析结果确定叶子节点对应的数据转换策略为元服务调用策略时,可以从预设元服务库中获取叶子节点匹配的元服务组件,进而可以基于元服务组件快速准确地获取到与叶子节点匹配的目标数据,从而在极大程度上提升了数据模型的转换效率。
图11是本申请的一个实施例示出的数据处理装置的框图。如图11所示,该数据处理装置可以包括:
获取模块1101,配置为获取源数据模型以及源数据模型的转换需求信息;
构建模块1102,配置为基于源数据模型与转换需求信息构建匹配树;
解析与确定模块1103,配置为对匹配树中含有的叶子节点进行解析,并基于解析结果确定叶子节点对应的数据转换策略;
获取与得到模块1104,配置为基于数据转换策略获取叶子节点匹配的目标数据,并基于目标数据得到目标数据模型。
在本申请的一个实施例中,构建模块1102可以包括:
解析单元,配置为对源数据模型进行解析,得到多个元素项;
第一获取单元,配置为基于多个元素项和转换需求信息,获取多个目标转换逻辑组件;
生成单元,配置为将多个目标转换逻辑组件进行组合,生成转换数据模板;
构建单元,配置为基于转换数据模板构建匹配树。
在本申请的一个实施例中,转换需求信息包括源数据模型待转换至的目标数据模型的类型信息;获取单元具体配置为:
从预设转换逻辑库中获取与类型信息匹配的多个转换逻辑组件;
从多个转换逻辑组件中确定各个元素项匹配的转换逻辑组件,并将各个元素项匹配的转换逻辑组件作为目标转换逻辑组件。
在本申请的一个实施例中,构建单元具体配置为:
对转换数据模板进行解析,得到各个元素项所属的层次以及各个元素项之间的关联关系;
基于各个元素项所属的层次以及各个元素项之间的关联关系,构建匹配树。
在本申请的一个实施例中,数据转换策略包括元服务调用策略、映射处理策略以及正则处理策略;获取与得到模块1104可以包括:
第二获取单元,配置为若基于解析结果确定叶子节点对应的数据转换策略为元服务调用策略,则从预设元服务库中获取叶子节点匹配的元服务组件;
第三获取单元,配置为基于元服务组件获取叶子节点匹配的目标数据。
在本申请的一个实施例中,数据处理装置还可以包括:
接收模块,配置为基于接收到的输入操作生成多个元服务组件;
存储模块,配置为将多个元服务组件存储至预设元服务库中。
在本申请的一个实施例中,解析与确定模块1103可以包括:
遍历单元,配置为遍历匹配树中含有的所有节点;
解析单元,配置为从所有节点中确定出叶子节点,并对叶子节点进行解析。
需要说明的是,上述实施例所提供的数据处理装置与前述实施例所提供的数据处理方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,这里不再赘述。
本申请的实施例还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行时,使得电子设备实现前述各个实施例中提供的数据处理方法。
图12示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图12示出的电子设备的计算机系统1200仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图12所示,计算机系统1200包括中央处理单元(Central Processing Unit,CPU)1201,其可以根据存储在只读存储器(Read-Only Memory,ROM)1202中的程序或者从存储部分1208加载到随机访问存储器(Random Access Memory,RAM)1203中的程序而执行各种适当的动作和处理,例如执行上述实施例中的方法。在RAM 1203中,还存储有系统操作所需的各种程序和数据。CPU 1201、ROM 1202以及RAM 1203通过总线1204彼此相连。输入/输出(Input/Output,I/O)接口1205也连接至总线1204。
以下部件连接至I/O接口1205:包括键盘、鼠标等的输入部分1206;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1207;包括硬盘等的存储部分1208;以及包括诸如LAN(Local AreaNetwork,局域网)卡、调制解调器等的网络接口卡的通信部分1209。通信部分1209经由诸如因特网的网络执行通信处理。驱动器1210也根据需要连接至I/O接口1205。可拆卸介质1211,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1210上,以便于从其上读出的计算机程序根据需要被安装入存储部分1208。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分1209从网络上被下载和安装,和/或从可拆卸介质1211被安装。在该计算机程序被中央处理单元(CPU)1201执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
本申请的另一方面还提供了一种计算机可读介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如前的数据处理方法。该计算机可读介质可以是上述实施例中描述的电子设备中所包含的,也可以是单独存在,而未装配入该电子设备中。
本申请的另一方面还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读介质中。计算机设备的处理器从计算机可读介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各个实施例中提供的数据处理方法。
上述内容,仅为本申请的较佳示例性实施例,并非用于限制本申请的实施方案,本领域普通技术人员根据本申请的主要构思和精神,可以十分方便地进行相应的变通或修改,故本申请的保护范围应以权利要求书所要求的保护范围为准。
Claims (10)
1.一种数据处理方法,其特征在于,所述方法包括:
获取源数据模型以及所述源数据模型的转换需求信息;
基于所述源数据模型与所述转换需求信息构建匹配树;
对所述匹配树中含有的叶子节点进行解析,并基于解析结果确定所述叶子节点对应的数据转换策略;
基于所述数据转换策略获取所述叶子节点匹配的目标数据,并基于所述目标数据得到目标数据模型。
2.如权利要求1所述的方法,其特征在于,所述基于所述源数据模型与所述转换需求信息构建匹配树,包括:
对所述源数据模型进行解析,得到多个元素项;
基于所述多个元素项和所述转换需求信息,获取多个目标转换逻辑组件;
将所述多个目标转换逻辑组件进行组合,生成转换数据模板;
基于所述转换数据模板构建所述匹配树。
3.如权利要求2所述的方法,其特征在于,所述转换需求信息包括源数据模型待转换至的目标数据模型的类型信息;所述基于所述多个元素项和所述转换需求信息,获取多个目标转换逻辑组件,包括:
从预设转换逻辑库中获取与所述类型信息匹配的多个转换逻辑组件;
从所述多个转换逻辑组件中确定各个元素项匹配的转换逻辑组件,并将所述各个元素项匹配的转换逻辑组件作为所述目标转换逻辑组件。
4.如权利要求2所述的方法,其特征在于,所述基于所述转换数据模板构建匹配树,包括:
对所述转换数据模板进行解析,得到各个元素项所属的层次以及各个元素项之间的关联关系;
基于所述各个元素项所属的层次以及各个元素项之间的关联关系,构建所述匹配树。
5.如权利要求1至4中任一项所述的方法,其特征在于,所述数据转换策略包括元服务调用策略、映射处理策略以及正则处理策略;所述基于所述数据转换策略获取所述叶子节点匹配的目标数据,包括:
若基于解析结果确定所述叶子节点对应的数据转换策略为元服务调用策略,则从预设元服务库中获取所述叶子节点匹配的元服务组件;
基于所述元服务组件获取所述叶子节点匹配的目标数据。
6.如权利要求5所述的方法,其特征在于,在所述从预设元服务库中获取所述叶子节点匹配的元服务组件之前,所述方法还包括:
基于接收到的输入操作生成多个元服务组件;
将所述多个元服务组件存储至所述预设元服务库中。
7.如权利要求1至4中任一项所述的方法,其特征在于,所述对所述匹配树中含有的叶子节点进行解析,包括:
遍历所述匹配树中含有的所有节点;
从所述所有节点中确定出叶子节点,并对所述叶子节点进行解析。
8.一种数据处理装置,其特征在于,所述装置包括:
获取模块,配置为获取源数据模型以及所述源数据模型的转换需求信息;
构建模块,配置为基于所述源数据模型与所述转换需求信息构建匹配树;
解析与确定模块,配置为对所述匹配树中含有的叶子节点进行解析,并基于解析结果确定所述叶子节点对应的数据转换策略;
获取与得到模块,配置为基于所述数据转换策略获取所述叶子节点匹配的目标数据,并基于所述目标数据得到目标数据模型。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现如权利要求1至7中任一项所述的数据处理方法。
10.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111576032.2A CN114327493A (zh) | 2021-12-21 | 2021-12-21 | 数据处理方法及装置、电子设备、计算机可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111576032.2A CN114327493A (zh) | 2021-12-21 | 2021-12-21 | 数据处理方法及装置、电子设备、计算机可读介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114327493A true CN114327493A (zh) | 2022-04-12 |
Family
ID=81054159
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111576032.2A Pending CN114327493A (zh) | 2021-12-21 | 2021-12-21 | 数据处理方法及装置、电子设备、计算机可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114327493A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115935722A (zh) * | 2023-03-09 | 2023-04-07 | 北京集度科技有限公司 | 过程失效模式与影响分析方法、设备及计算机程序产品 |
CN117728064A (zh) * | 2024-02-07 | 2024-03-19 | 长沙矿冶研究院有限责任公司 | 一种退役动力电池拆解工艺的优化方法 |
-
2021
- 2021-12-21 CN CN202111576032.2A patent/CN114327493A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115935722A (zh) * | 2023-03-09 | 2023-04-07 | 北京集度科技有限公司 | 过程失效模式与影响分析方法、设备及计算机程序产品 |
CN117728064A (zh) * | 2024-02-07 | 2024-03-19 | 长沙矿冶研究院有限责任公司 | 一种退役动力电池拆解工艺的优化方法 |
CN117728064B (zh) * | 2024-02-07 | 2024-04-30 | 长沙矿冶研究院有限责任公司 | 一种退役动力电池拆解工艺的优化方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109491989B (zh) | 数据处理方法及装置、电子设备、存储介质 | |
US9959607B2 (en) | Automatic verification of graphic rendition of JSON data | |
CN111291103B (zh) | 接口数据的解析方法、装置、电子设备及存储介质 | |
CN112711581A (zh) | 医疗数据校验方法、装置、电子设备及存储介质 | |
CN114528044B (zh) | 一种接口调用方法、装置、设备及介质 | |
US9396448B2 (en) | Distributed and open schema interactions management system and method | |
CN114327493A (zh) | 数据处理方法及装置、电子设备、计算机可读介质 | |
CN112084179B (zh) | 一种数据处理的方法、装置、设备及存储介质 | |
CN113204555B (zh) | 数据表处理方法、装置、电子设备和存储介质 | |
US8396877B2 (en) | Method and apparatus for generating a fused view of one or more people | |
CN111078230A (zh) | 一种代码生成方法和装置 | |
KR101719926B1 (ko) | 데이터 수집 api를 통해 저장된 이질적인 데이터 간 변환 시스템 및 방법 | |
CN115660880A (zh) | 费用计算管理方法、装置、电子设备、存储介质及产品 | |
CN116244387A (zh) | 实体关系构建方法、装置、电子设备及存储介质 | |
CN113190517B (zh) | 数据集成方法、装置、电子设备和计算机可读介质 | |
CN111078773B (zh) | 一种数据处理方法及装置 | |
CN112965943A (zh) | 一种数据处理方法、装置、电子设备以及存储介质 | |
CN112364617A (zh) | 文件信息的处理方法、装置、电子设备和存储介质 | |
CN112579312A (zh) | 参数映射方法及装置、存储介质、接口调用平台、服务系统 | |
CN116149632A (zh) | 业务逻辑定制方法和装置、计算机设备、存储介质 | |
CN115295166A (zh) | 一种指标数据处理方法和装置 | |
CN112148847B (zh) | 一种语音信息的处理方法及装置 | |
CN115544081A (zh) | 数据查询方法、装置、电子设备及存储介质 | |
CN114490718A (zh) | 数据输出方法、装置、电子设备和计算机可读介质 | |
US9652308B2 (en) | Sharing a partitioned data set across parallel applications |
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 |