1.本公开涉及大数据和金融技术领域,更具体地涉及信息匹配方法、装置、设备、介质和程序产品。
背景技术:
2.随着计算机技术的不断发展,交易系统一般设置于分布式环境中,由分布式环境中的多个服务节点执行不同的交易功能。在执行交易后,需要将多个服务节点产生的交易信息进行匹配,以保证交易信息的一致性。
3.现有技术中,信息匹配主要通过http接口实现,例如,将同一个交易信息涉及的多个交易系统或服务节点的服务器进行联机,以其中一个交易系统或一个服务节点作为主机,通过主机接口获取来自其他交易系统或服务节点的交易信息,之后将获取的交易信息与主机中存储的交易信息进行匹配,完成信息匹配。
4.在实现本公开构思的过程中,发明人发现相关技术中至少存在如下问题:信息匹配处理方式较为单一,仅能对联机相关的一个交易进行匹配,导致存在处理大批量信息匹配需求难度大、效率低的问题。
技术实现要素:
5.鉴于上述问题,本公开提供了的信息匹配方法、装置、设备、介质和程序产品。
6.根据本公开的第一个方面,提供了一种信息匹配方法,包括:响应于接收到用于执行匹配操作的请求,确定第一匹配信息和第二匹配信息,其中,上述第一匹配信息包括至少一个数据源的m个交易记录,上述第二匹配信息包括至少一个数据源的n个交易记录,m≥2,n≥2;确定上述第一匹配信息与上述第二匹配信息之间的差集数据和交集数据,其中,上述交集数据包括同时处于上述第一匹配信息和上述第二匹配信息中的至少一个交易记录,上述差集数据包括处于上述第一匹配信息或上述第二匹配信息其中之一的至少一个交易记录;基于上述第一匹配信息和上述第二匹配信息,对上述交集数据中的每个交易记录进行内容比对,得到比对结果;以及根据上述比对结果和上述差集数据,确定匹配结果数据。
7.根据本公开的实施例,上述第一匹配信息包括第一匹配表,上述第二匹配信息包括第二匹配表,上述第一匹配表和上述第二匹配表均包括交易编号,上述确定上述第一匹配信息与上述第二匹配信息之间的差集数据和交集数据,包括:根据上述第一匹配表的表名和上述第二匹配表的表名,生成第一数据库代码语句;以及通过执行上述第一数据库代码语句,比对上述m个交易记录的交易编号和上述n个交易记录的交易编号,得到上述交集数据和上述差集数据。
8.根据本公开的实施例,上述通过执行上述第一数据库代码语句,比对上述m个交易记录的交易编号和上述n个交易记录的交易编号,得到上述交集数据和上述差集数据包括:以上述m个交易记录为基准,从上述n个交易记录中确定不与上述m个交易记录的交易编号相匹配的q个交易记录,n≥q≥1;以上述n个交易记录为基准,从上述m个交易记录中确定不
与上述n个交易记录的交易编号相匹配的p个交易记录,m≥p≥1;将上述p个交易记录和上述q个交易记录组成上述差集数据;以及从上述m个交易记录中确定与上述n个交易记录的交易编号相匹配的(m-p)个交易记录,并将上述(m-p)个交易记录确定为交集数据;或者从上述n个交易记录中确定与上述m个交易记录的交易编号相匹配的(n-q)个交易记录,并将上述(n-q)个交易记录确定为交集数据。
9.根据本公开的实施例,上述第一匹配信息包括上述m个交易记录各自的第一字段值,上述第二匹配信息包括上述n个交易记录各自的第二字段值,上述第一字段值和上述第二字段值用于表征上述交易记录的交易特征;上述基于上述第一匹配信息和上述第二匹配信息,对上述交集数据中的每个交易记录进行内容比对,得到比对结果,包括:根据上述第一匹配信息和上述第二匹配信息,生成第二数据库代码语句;通过执行上述第二数据库代码语句,比对上述第一字段值和上述第二字段值,得到比对结果。
10.根据本公开的实施例,上述第一字段值或第二字段值包括多个字符串,每个字符串用于表征上述交易记录的一个交易数据;上述多个字符串通过拼接得到上述第一字段值或上述第二字段值。
11.根据本公开的实施例,上述匹配结果数据包括匹配明细数据和匹配统计数据;上述根据上述比对结果和上述差集数据,确定匹配结果数据,包括:将上述比对结果表征上述第一字段值和上述第二字段值不匹配的至少一个交易记录与上述差集数据组成匹配差异数据;将上述比对结果表征上述第一字段值和上述第二字段值相匹配的至少一个交易记录组成匹配一致数据;根据上述匹配差异数据和上述匹配一致数据,生成上述匹配明细数据和上述匹配统计数据。
12.根据本公开的实施例,上述方法还包括:将上述匹配结果数据导出为二进制数据格式的第一匹配结果文件;利用大数据引擎将上述匹配结果文件转换为目标数据格式的第二匹配结果文件;以及将上述第二匹配结果文件传输至分布式系统中的文件处理服务器。
13.本公开的第二方面提供了一种信息匹配装置,包括:第一确定模块,用于响应于接收到用于执行匹配操作的请求,确定第一匹配信息和第二匹配信息,其中,上述第一匹配信息包括至少一个数据来源的m个交易记录,上述第二匹配信息包括至少一个数据来源的n个交易记录,m≥2,n≥2;第二确定模块,用于确定上述第一匹配信息与上述第二匹配信息之间的差集数据和交集数据,其中,上述交集数据包括同时处于上述第一匹配信息和上述第二匹配信息中的至少一个交易记录,上述差集数据包括处于上述第一匹配信息或上述第二匹配信息其中之一的至少一个交易记录;第一比对模块,用于基于上述第一匹配信息和上述第二匹配信息,对上述交集数据中的每个交易记录进行内容比对,得到比对结果;第二比对模块,用于根据上述比对结果和上述差集数据,确定匹配结果数据。
14.本公开的第三方面提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当上述一个或多个程序被上述一个或多个处理器执行时,使得一个或多个处理器执行上述信息匹配方法。
15.本公开的第四方面还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行上述信息匹配方法。
16.本公开的第五方面还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述信息匹配方法。
17.根据本公开的实施例,在处理大批量信息匹配需求时,响应于接收到用于执行匹配操作的请求,确定第一匹配信息和第二匹配信息;确定第一匹配信息与上述第二匹配信息之间的差集数据和交集数据;基于第一匹配信息和第二匹配信息,对交集数据中的每个交易记录进行内容比对,得到比对结果;以及根据比对结果和差集数据,确定匹配结果数据。本公开的实施例通过上述技术手段可以实现大批量信息匹配的处理,至少部分克服了现有技术中存在的处理大批量信息匹配需求难度大、效率低的技术问题。
18.在本公开的实施例中,将来自多个数据源的数据都先存储至数据湖中,响应于接收到用于执行匹配操作的请求,直接基于数据湖中的第一匹配信息和第二匹配信息得到包括多个交易记录的交集数据和差集数据;之后基于差集、交集数据能够直接实现多个数据来源的批量匹配,不依赖联机匹配,无需依赖两个数据源之间的接口实现单笔信息匹配,提高了匹配效率,实现了操作简单的批量对账。
附图说明
19.通过以下参照附图对本公开实施例的描述,本公开的上述内容以及其他目的、特征和优点将更为清楚,在附图中:
20.图1示意性示出了根据本公开实施例的信息匹配方法的应用场景;
21.图2示意性示出了根据本公开实施例的信息匹配方法的流程图;
22.图3示意性示出了根据本公开实施例的差集数据确定方法的流程图;
23.图4示意性示出了根据本公开实施例的交集数据确定方法的流程图;
24.图5示意性示出了根据本公开实施例的作业调度方法的流程图;
25.图6示意性示出了根据本公开实施例的信息匹配装置的结构框图;以及
26.图7示意性示出了根据本公开实施例的适于信息匹配方法的电子设备的方框图。
具体实施方式
27.以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
28.在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
29.在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
30.在使用类似于“a、b和c等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有a、b和c中至少一个的系统”应包括但不限于单独具有a、单独具有b、单独具有c、具有a和b、具有a和c、具有b和c、和/或具有a、b、c的系统等)。
31.在本公开的技术方案中,所涉及的用户信息(包括但不限于用户个人信息、用户图像信息、用户设备信息,例如位置信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、存储、使用、加工、传输、提供、公开和应用等处理,均遵守相关国家和地区的相关法律法规和标准,采取了必要保密措施,不违背公序良俗,并提供有相应的操作入口,供用户选择授权或者拒绝。
32.现有技术中,联机进行信息匹配的过程包括:对于交易信息a,将交易信息a涉及的服务器a、服务器b和服务器c进行连接,将服务器a、服务器b和服务器c其中之一作为主机,通过两个服务器之间的接口从另一个服务器获取与交易信息a相关的信息,并将获取的信息与主机本地存储的交易信息进行匹配,以确定主机与其他服务器中关于交易信息a的信息是否一致。
33.但是,通过联机进行信息匹配仅能针对交易信息相关的服务器进行联机,无法针对其他交易信息进行匹配,导致信息匹配效率低。此外,由于每次信息匹配过程都通过联机http接口获取对应的信息,无法很难实现批量场景下从多个服务器获取信息的操作。
34.因此,现有技术存在处理方式较为单一,处理大批量信息匹配需求难度大、效率低的问题。
35.本公开的实施例提供了一种信息匹配方法,该方法包括响应于接收到用于执行匹配操作的请求,确定第一匹配信息和第二匹配信息,其中,第一匹配信息包括至少一个数据源的m个交易记录,第二匹配信息包括至少一个数据源的n个交易记录,m≥2,n≥2;确定第一匹配信息与第二匹配信息之间的差集数据和交集数据,其中,交集数据包括同时处于第一匹配信息和第二匹配信息中的至少一个交易记录,差集数据包括处于第一匹配信息或第二匹配信息其中之一的至少一个交易记录;基于第一匹配信息和第二匹配信息,对交集数据中的每个交易记录进行内容比对,得到比对结果;以及根据比对结果和差集数据,确定匹配结果数据。
36.图1示意性示出了根据本公开实施例的信息匹配的应用场景。
37.如图1所示,根据该实施例的应用场景100可以包括第一终端设备101、第二终端设备102、第三终端设备103、网络104以及服务器105。网络104用以在第一终端设备101、第二终端设备102、第三终端设备103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
38.用户可以使用第一终端设备101、第二终端设备102、第三终端设备103中的至少一个通过网络104与服务器105交互,以接收或发送消息等。第一终端设备101、第二终端设备102、第三终端设备103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
39.第一终端设备101、第二终端设备102、第三终端设备103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
40.服务器105可以是提供各种服务的服务器,例如对用户利用第一终端设备101、第二终端设备102、第三终端设备103所浏览的网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根
据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。
41.需要说明的是,本公开实施例所提供的信息匹配方法一般可以由服务器105执行。相应地,本公开实施例所提供的信息匹配装置一般可以设置于服务器105中。本公开实施例所提供的信息匹配方法也可以由不同于服务器105且能够与第一终端设备101、第二终端设备102、第三终端设备103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的信息匹配装置也可以设置于不同于服务器105且能够与第一终端设备101、第二终端设备102、第三终端设备103和/或服务器105通信的服务器或服务器集群中。
42.例如,用户可以在第一终端设备101、第二终端设备102、第三终端设备103中的手机银行客户端执行交易操作,由第一终端设备101、第二终端设备102、第三终端设备103向服务器105发送交易信息,其中,服务器105中配备数据湖。服务器105响应于接收到用于执行匹配操作的请求,确定第一匹配信息和第二匹配信息;确定第一匹配信息与第二匹配信息之间的差集数据和交集数据,;基于第一匹配信息和第二匹配信息,对交集数据中的每个交易记录进行内容比对,得到比对结果;以及根据比对结果和差集数据,确定匹配结果数据。
43.应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
44.以下将基于图1描述的场景,通过图2~图5对公开实施例的信息匹配方法进行详细描述。
45.图2示意性示出了根据本公开实施例的信息匹配方法的流程图。
46.如图2所示,该方法200包括操作s210~s240。
47.在操作s210,响应于接收到用于执行匹配操作的请求,确定第一匹配信息和第二匹配信息。
48.根据本公开的实施例,在服务器空闲时刻,例如每天凌晨,服务器可以通过作业调度任务加载来自不同数据源的信息,并将信息加工后录入到数据湖,其中,来自不同数据源的信息包括用于执行信息匹配操作所需的信息。
49.根据本公开的实施例,数据源包括提供信息匹配所需要的信息的来源,例如分布式环境中提供匹配信息的计算机。
50.根据本公开的实施例,第一匹配信息包括至少一个数据源的至少两个交易记录;第二匹配信息包括至少一个数据源的至少两个交易记录。第一匹配信息和第二匹配信息分别来自不同数据源,例如同一分布式环境下的不同服务器。
51.根据本公开的实施例,在客户端发起匹配操作后,服务器响应于接收到用于执行匹配操作的请求,从数据湖中确定执行匹配操作需要的信息,并根据信息的数据源确定为第一匹配信息和第二匹配信息。
52.例如,第一匹配信息的数据源可以为存储一个收款方的多个收款账户的交易记录的服务器;第二匹配信息的数据源可以为存储多个付款方对应的付款账户的交易记录的服务器。服务器在空闲时刻通过作业调度任务,加载一个收款方的多个收款账户的交易记录和多个付款方对应的付款账户的交易记录,并录入到数据湖。在客户端发起匹配操作时,服务器从数据湖中确定执行匹配操作需要的匹配信息,确定数据源为一个收款方的多个收款账户的交易记录的匹配信息为第一匹配信息,确定数据源为多个付款方对应的付款账户的
交易记录的匹配信息为第二匹配信息。
53.在操作s220,确定第一匹配信息与第二匹配信息之间的差集数据和交集数据。
54.根据本公开的实施例,交集数据包括同时处于第一匹配信息和第二匹配信息中的至少一个交易记录;差集数据包括处于第一匹配信息或第二匹配信息其中之一的至少一个交易记录。
55.根据本公开的实施例,交集数据和差集数据可以为具有预设格式的数据表。交集数据与差集数据中的每一个交易记录至少包含交易编号和交易记录内容,其中,同一笔交易记录的交易编号相同,即位于第一匹配信息、第二匹配信息中同一笔交易记录的交易编号相同。
56.根据本公开的实施例,第一匹配信息中的交易记录内容称为第一交易记录内容,第二匹配信息中的交易记录内容称为第二交易记录内容。其中,交集数据和差集数据仅包括第一交易记录内容和第二交易记录内容。在交集数据中,第一交易记录内容和第二交易记录内容均不为空;在差集数据中的第一交易记录内容和第二交易记录内容有一个为空。
57.根据本公开的实施例,可以将第一匹配信息和第二匹配信息中交易编号不同的交易记录组成差集数据;将第一匹配信息和第二匹配信息中交易编号不同的交易记录组成交集数据。
58.例如,第一匹配信息可以为表a、第二匹配信息可以为表b。表a中包含交易编号为1的交易记录,交易编号为2的交易记录;表b中包含交易编号为1的交易记录,交易编号为3的交易记录。由于表a和表b均包括交易编号为1的数据,因此,可以根据表a中交易编号为1的交易记录、表b中交易编号为1的交易记录生成交集数据。由于交易编号为2的交易记录仅包括在表a中,交易编号为3的交易记录仅包括在表b中,因此,可以根据交易编号为2的交易记录、交易编号为3的交易记录生成差集数据。其中,差集数据中,交易编号为2的第一交易记录内容与表a中的记录内容相同,第二交易记录内容为空;交易编号为3的第一交易记录内容为空,第二交易记录内容与表b中的记录内容相同。
59.在操作s230,基于第一匹配信息和第二匹配信息,对交集数据中的每个交易记录进行内容比对,得到比对结果。
60.根据本公开的实施例,比对结果用于表示交集数据中每个交易记录包含的第一交易记录内容和第二交易记录内容是否相同。
61.根据本公开的实施例,可以为每个交易记录对应的比对结果赋值,例如,可以将第一交易记录内容和第二交易记录内容相同的交易记录的比对结果赋值为1,将第一交易记录内容和第二交易记录内容不同的交易记录的比对结果赋值为0。
62.根据本公开的实施例,可以基于交易编号以及对应的比对结果生成具有预设格式的比对结果表,比对结果表可以至少包括交易编号和比对结果,通过交易编号将比对结果和交易记录进行联系。
63.在操作s240,根据比对结果和差集数据,确定匹配结果数据。
64.根据本公开的实施例,匹配结果数据可以包括信息匹配一致的数据和信息匹配不一致的数据。
65.由于交集数据中包含交易记录内容相同的交易记录和交易记录内容不同的交易记录,因此,可以将交集数据中交易记录内容不同的多个交易记录与差集数据中的多个交
易记录共同作为信息匹配不一致的数据,,将交易记录内容相同的多个交易记录组成信息匹配一致的数据。
66.例如,可以将交集数据中比对结果为0的交易记录与差异数据中的交易记录组成信息匹配不一致的数据,将交集数据中比对结果为1的交易记录组成信息匹配一致的数据。
67.根据本公开的实施例,在处理大批量信息匹配需求时,响应于接收到用于执行匹配操作的请求,确定第一匹配信息和第二匹配信息;确定第一匹配信息与第二匹配信息之间的差集数据和交集数据;基于第一匹配信息和第二匹配信息,对交集数据中的每个交易记录进行内容比对,得到比对结果;以及根据比对结果和差集数据,确定匹配结果数据,能够实现来自多个数据源的批量信息匹配。本公开的实施例通过上述技术手段可以实现大批量信息匹配的处理,至少部分克服了现有技术中存在的处理大批量信息匹配需求难度大、效率低的技术问题。
68.在本公开的实施例中,来自多个数据源的数据都先存储至数据湖中,响应于接收到用于执行匹配操作的请求,直接基于数据湖中的第一匹配信息和第二匹配信息得到包括多个交易记录的交集数据和差集数据;之后基于差集、交集数据能够直接多个数据来源的批量匹配,不依赖联机匹配,无需依赖两个数据源之间的接口实现单笔信息匹配,提高了匹配效率,实现了操作简单的批量对账。
69.根据本公开的实施例,第一匹配信息包括第一匹配表,第二匹配信息包括第二匹配表,第一匹配表和第二匹配表均包括交易编号。
70.根据本公开的实施例,确定第一匹配信息与第二匹配信息之间的差集数据和交集数据,包括:根据第一匹配表的表名和第二匹配表的表名,生成第一数据库代码语句;通过执行第一数据库代码语句,比对m个交易记录的交易编号和n个交易记录的交易编号,得到交集数据和差集数据。
71.根据本公开的实施例,第一匹配信息和第二匹配信息可以以预设格式的数据表的方式记录,第一匹配信息对应的数据表为第一匹配表,第二匹配信息对应的数据表为第二匹配表,第一匹配表和第二匹配表均至少包括交易编号,并且第一匹配表和第二匹配表均有对应的表名。
72.根据本公开的实施例,第一数据库代码语句可以用于对第一匹配信息和第二匹配信息进行比对操作,可以通过大数据平台spark执行,交集数据和差集数据。大数据平台spark具有运行速度快、易用性强、支持复杂查询、支持实时流处理及容错性好等特点。通过在数据湖中加载信息,运用大数据平台spark执行信息匹配方法,能够快速实现在分布式环境中进行批量信息匹配,解决通过联机进行信息匹配存在的问题。
73.根据本公开的实施例,第一数据库代码语句可以为sql(structured query language,结构化查询语言)语句,根据第一匹配表和第二匹配表的表名生成。
74.根据本公开的另一实施例,第一数据库代码语句也可以为hql(hibernate query language,hibernate查询语言)语句,根据第一匹配信息和第二匹配信息中的对象类名生成,例如交易编号。
75.根据本公开的实施例,可以根据待执行的数据匹配的逻辑或数据库代码语句编写模板生成第一数据库代码语句。
76.根据本公开的实施例,服务器生成第一数据库代码语句后,通过spark执行第一数
据库代码语句,以确定差集数据和交集数据。
77.例如,第一数据库代码语句逐一将第一匹配信息中的交易编号与第二匹配信息中的交易编号进行匹配,并将交易编号相同的多个交易记录组成交集数据、将交易编号不同的多个交集记录组成差集数据。
78.例如,有如下对于表征第一匹配信息的表1和表征第二匹配信息的表2:表1中包含交易编号为1的交易记录,交易编号为2的交易记录;表2中包含交易编号为1的交易记录,交易编号为3的交易记录。
79.表1
80.交易编号交易记录内容1ht00002|||2|||02ht00004|||1|||5000000
81.表2
82.交易编号交易记录内容1ht0002|||1|||10003ht00006|||1|||6000000
83.通过执行第一数据库代码语句后,可以根据交易编号均为1的两个数据记录生成交集数据,根据交易编号为2和交易编号为3的两个数据记录生成差集数据。
84.表3
85.交易编号表1交易记录内容表2交易记录内容2ht00004|||1|||5000000 3 ht00006|||1|||6000000
86.表4
87.交易编号表1交易记录内容表2交易记录内容1ht00002|||2|||0ht0002|||1|||1000
88.根据本公开的实施例,差集数据和交集数据均可以以数据表的形式进行存储。例如,交集数据表和差集数据表如表3和表4所示。
89.根据本公开的实施例,通过第一数据库代码语句确定第一匹配信息和第二匹配信息中的交集数据和差集数据,在数据库中就可以实现信息匹配操作,无需通过联机进行匹配。
90.根据本公开的实施例,通过执行第一数据库代码语句,比对m个交易记录的交易编号和n个交易记录的交易编号,得到交集数据和差集数据包括:以m个交易记录为基准,从n个交易记录中确定不与m个交易记录的交易编号相匹配的q个交易记录,n≥q≥1;以n个交易记录为基准,从m个交易记录中确定不与n个交易记录的交易编号相匹配的p个交易记录,m≥p≥1;将p个交易记录和q个交易记录组成差集数据;以及从m个交易记录中确定与n个交易记录的交易编号相匹配的(m-p)个交易记录,并将(m-p)个交易记录确定为交集数据;或者从n个交易记录中确定与m个交易记录的交易编号相匹配的(n-q)个交易记录,并将(n-q)个交易记录确定为交集数据。
91.根据本公开的实施例,由于交易记录可能仅属于第一匹配信息或第二匹配信息,
仅在一侧进行交易编号的匹配会导致遗漏差集数据中的交易记录,因此,可以通过双侧的交易编号匹配避免遗漏差集数据中的交易记录。
92.例如,以第一匹配信息为基准,确定第二匹配信息中交易记录的交易编号与第一匹配信息中交易记录的交易编号是否相同,交易编号相同则生成交集数据,不同则生成差集数据;再以第二匹配信息为基准,确定第一匹配信息中交易记录的交易编号与第二匹配信息中交易记录的交易编号是否相同,交易编号相同则生成交集数据,不同则生成差集数据。
93.根据本公开的实施例,交集数据和差集数据可以为预设格式的数据表,至少包含交易编号、第一交易记录内容和第二交易记录内容,其中,交集数据的第一交易记录内容和第二交易记录内容均不为空,差集数据的第一交易记录内容和第二交易记录内容有一个为空,但不能同时为空。
94.例如,以第一匹配信息为基准生成的差集数据,第一交易记录内容为空;以第二匹配信息为基准生成的差集数据,第二交易记录内容为空。
95.根据本公开的实施例,第一数据库代码语句包括差集确定语句和交集确定语句,其中,差集确定语句包括第一差集确定语句、第二差集确定语句和差集组合语句,交集确定语句包括第一交集确定语句和第二交集确定语句。
96.具体地,第一差集确定语句可以是基于第二匹配信息和第一匹配信息表的表名生成的数据库代码语句;第二差集确定语句可以是基于第一匹配信息和第二匹配信息表的表名生成的数据库代码语句;差集组合语句可以是基于第一差集确定语句确定的交易记录和第二差集确定语句确定的交易记录,生成差集数据的数据库代码语句;第一交集确定语句可以是基于第一匹配信息和第二匹配信息表的表名生成的数据库代码语句;第二交集语句可以是基于第二匹配信息和交集数据生成的数据库代码语句。
97.根据本公开的实施例,可以先以第一匹配信息中交易记录的交易编号为基准,执行第一差集确定语句,从第二匹配信息的交易记录中确定不与第一匹配信息的交易记录的交易编号相匹配的交易记录;再以第二匹配信息中交易记录的交易编号为基准,执行第二差集确定语句,从第一匹配信息的交易记录中确定不与第二匹配信息的交易记录的交易编号相匹配的交易记录;最后执行差集组合语句,将第一差集确定语句确定的交易记录与第二差集确定语句确定的交易记录组成差集数据。
98.根据本公开的实施例,第一匹配信息中可能含有不与第二匹配信息的交易记录的交易编号相匹配的交易记录,第二匹配信息中也可能含有不与第一匹配信息的交易记录的交易编号相匹配的交易记录,所以要分别以第一匹配信息和第二匹配信息为基准,进行两次比对,避免遗漏差集数据。
99.根据本公开的实施例,可以执行第一交集确定语句,先从第一匹配信息的交易记录中确定与第二匹配信息中交易记录的交易编号相同的交易记录,生成交集数据,此时生成的交集数据交易编号及第一交易记录内容不为空,第二交易记录内容为空。之后,执行第二交集确定语句,从第二匹配信息的交易记录中确定与交集数据中交易记录的交易编号相同的交易记录,并根据第二匹配信息中交易记录的交易特征,生成交集数据中的第二交易记录内容。
100.根据本公开的另一实施例,也可以执行第二交集确定语句,从第二匹配信息的交
易记录中确定与第一匹配信息中交易记录的交易编号相同的交易记录,生成交集数据,此时生成的交集数据交易编号及第二交易记录内容不为空,第一交易记录内容为空,下一步,执行第一交集确定语句,从第一匹配信息的交易记录中确定与交集数据中交易记录的交易编号相同的交易记录,生成交集数据中的第一交易记录内容。
101.图3示意性示出了根据本公开实施例的确定差集数据方法的流程图。
102.如图3所示,该实施例的确定差集数据方法300包括操作s321~操作s327可以作为操作s220的一个具体实施例。
103.根据本公开的实施例,操作s220是确定第一匹配信息与第二匹配信息之间的差集数据和交集数据。
104.在操作s321,生成并执行第一差集确定语句。
105.在操作s322,确定第二匹配信息中的交易记录是否存在与第一匹配信息中交易编号不同的交易记录。
106.根据本公开的实施例,如果第二匹配信息中存在与第一匹配信息中的交易编号不同的交易记录,执行操作s323;如果第二匹配信息中不存在与第一匹配信息中的交易编号不同的交易记录,执行操作s324。
107.在操作s323,存储交易记录。
108.在操作s324,生成并执行第二差集确定语句。
109.在操作s325,确定第一匹配信息中的交易记录是否存在与第二匹配信息中的交易记录的交易编号不同的交易记录。
110.根据本公开的实施例,如果第一匹配信息中的交易记录存在与第二匹配信息中的交易记录的交易编号不同的交易记录,执行操作s326;如果第一匹配信息中的交易记录不存在与第二匹配信息中的交易记录的交易编号不同的交易记录,执行操作s327。
111.在操作s326,存储交易记录。
112.根据本公开的实施例,基于操作s323和操作s326得到的交易记录,执行操作s327。
113.在操作s327,执行差集组合语句,生成差集数据。
114.图4示意性示出了根据本公开实施例的确定交集数据方法的流程图。
115.如图4所示,该实施例的确定交集数据方法400包括操作s421~操作s427可以作为操作s220的一个具体实施例。
116.根据本公开的实施例,操作s220是确定第一匹配信息与第二匹配信息之间的差集数据和交集数据。
117.在操作s421,生成并执行第一交集确定语句。
118.在操作s422,确定第一匹配信息中的交易记录是否存在与第二匹配信息中的交易记录的交易编号相同的交易记录。
119.根据本公开的实施例,如果第一匹配信息中的交易记录存在与第二匹配信息中的交易记录的交易编号相同的交易记录,执行操作s423;如果第一匹配信息中的交易记录不存在与第二匹配信息中的交易记录的交易编号相同的交易记录,执行操作s424。
120.在操作s423,生成交集数据,写入交易编号及第一交易记录内容。
121.在操作s424,生成并执行第二交集确定语句。
122.在操作s425,确定第二匹配信息中的交易记录是否存在与交集数据中的交易记录
的交易编号相同的交易记录。
123.根据本公开的实施例,如果第二匹配信息中的交易记录存在与交集数据中的交易记录的交易编号相同的交易记录,执行操作s426;如果第二匹配信息中的交易记录不存在与交集数据中的交易记录的交易编号相同的交易记录,执行操作s427。
124.在操作s426,在交集数据中写入第二交易记录内容。
125.根据本公开的实施例,在交集数据中写入第二交易记录内容之后,执行操作s427。
126.在操作s427,生成交集数据。
127.例如,以上述表1中的交易记录为基准,执行第一差集确定语句,从表2中的交易记录中确定不与表1中的交易记录的交易编号相匹配的交易记录,存储的交易记录如表5所示:
128.表5
129.交易编号表1交易记录内容表2交易记录内容3 ht00006|||1|||6000000
130.以表2中的交易记录为基准,执行第二差集确定语句,从表1中的交易记录中确定不与表2中的交易记录的交易编号相匹配的交易记录,存储的交易记录如表6所示:
131.表6
132.交易编号表1交易记录内容表2交易记录内容2ht00004|||1|||5000000 133.执行差集组合语句,将第一差集确定语句确定的交易记录和第二差集确定语句确定的交易记录组合成差集数据,差集数据如表7所示;
134.表7
135.交易编号表1交易记录内容表2交易记录内容2ht00004|||1|||5000000 3 ht00006|||1|||6000000
136.执行第一交集确定语句,从表1的交易记录中确定与表2中交易记录的交易编号相同的交易记录,生成交集数据时,此时生成的交集数据交易编号及表1交易记录内容不为空,表2交易记录内容为空,此时生成的交集数据如表8所示;
137.表8
138.交易编号表1交易记录内容表2交易记录内容1ht00002|||2|||0 139.下一步,执行第二交集确定语句,从表2的交易记录中确定与交集数据的交易编号相同的交易记录,根据表2中交易记录,生成交集数据中的表2交易记录内容,此时生成的交集数据如表9所示;
140.表9
141.交易编号表1交易记录内容表2交易记录内容1ht00002|||2|||0ht0002|||1|||1000
142.根据本公开的实施例,分别以第一匹配信息和第二匹配信息为基准,进行双侧比对,确定差集数据和交集数据,使第一匹配信息和第二匹配信息的差集数据和交集数据无
遗漏,保证了信息匹配的准确率。
143.根据本公开的实施例,第一匹配信息包括m个交易记录各自的第一字段值,第二匹配信息包括n个交易记录各自的第二字段值,第一字段值和第二字段值用于表征交易记录的交易特征。
144.根据本公开的实施例,基于第一匹配信息和第二匹配信息,对交集数据中的每个交易记录进行内容比对,得到比对结果,包括:根据第一匹配信息和第二匹配信息,生成第二数据库代码语句;通过执行第二数据库代码语句,比对第一字段值和第二字段值,得到比对结果。
145.根据本公开的实施例,第一字段值和第二字段值包括多个字符串,每个字符串用于表征交易记录的一个交易数据;多个字符串通过拼接得到第一字段值或第二字段值。
146.根据本公开的实施例,交易特征可以表征交易记录内容的多个特征,如交易类型、用户身份、交易状态、交易时间、交易金额等。
147.例如,表1的第一字段值为:ht00002|||2|||0,“ht00002”可以表征交易类型,“2”表征收款方,“0”表征交易失败等。
148.根据本公开的实施例,交易记录中也可以通过设置多个字段表征多个交易特征。
149.根据本公开的实施例,通过对交集数据中的第一字段值和第二字段值进行比对,生成比对结果,实现对同一交易编号不同数据源的交易特征的比较,进一步体现了使用数据库实现大批量信息匹配需求,无需使用联机进行匹配。
150.根据本公开的实施例,匹配结果数据包括匹配明细数据和匹配统计数据。
151.根据本公开的实施例,根据比对结果和差集数据,确定匹配结果数据,包括:将比对结果表征第一字段值和第二字段值不匹配的至少一个交易记录与差集数据组成匹配差异数据;将比对结果表征第一字段值和第二字段值相匹配的至少一个交易记录组成匹配一致数据;根据匹配差异数据和匹配一致数据,生成匹配明细数据和匹配统计数据。
152.根据本公开的实施例,匹配明细数据包括详细的信息匹配结果,匹配统计数据包括对信息匹配结果的统计结果,匹配明细数据和匹配统计数据由匹配差异数据和匹配一致数据生成。
153.根据本公开的实施例,匹配差异数据可以包括比对结果中结果为0对应的交易编号的交易记录和差集数据中的交易记录,匹配一致数据可以包括比对结果中结果为1对应的交易编号的交易记录。
154.根据本公开的实施例,匹配差异数据和匹配一致数据可以为预设格式的数据表,至少包括序号,交易编号,匹配日期,匹配结果,第一交易记录内容,第二交易记录内容,差异值,失败信息等。
155.根据本公开的实施例,序号可以与交易编号有关,也可以与交易特征有关,表征交易记录在匹配差异数据或匹配一致数据中的位置。匹配日期可以表征进行匹配操作的日期。差异值可以表征第一交易记录内容和第二交易记录内容的差值,如果第一交易记录内容和第二交易记录内容中存在空值,则差异值为空。失败信息可以表征信息匹配失败的原因。
156.根据本公开的实施例,匹配结果表征交易记录进行信息匹配的结果,例如信息匹配结果一致,匹配结果为1;交易记录为第一匹配信息独有的交易记录,匹配结果为2;交易
记录为第二匹配信息独有的交易记录,匹配结果为3;第一匹配信息和第二匹配信息中交易编号相同但是交易特征不同的交易记录,匹配结果为4;由于网络中断等原因导致信息匹配失败的,匹配结果为5。
157.根据本公开的实施例,将比对结果表征第一字段值和第二字段值不匹配的至少一个交易记录与差集数据组成匹配差异数据,包括:在比对结果中,确定结果为0的对应的第一交易编号;在交集数据中,确定第一交易编号对应的第一交易记录;将第一交易记录处理后写入匹配差异数据;将差集数据中的所有交易记录处理后写入匹配差异数据。
158.根据本公开的实施例,根据匹配差异数据和匹配一致数据,生成匹配明细数据和匹配统计数据,包括:在比对结果中,确定结果为1的对应的第二交易编号;在交集数据中,确定第二交易编号对应的第二交易记录;将第二交易记录处理后写入匹配一致数据。
159.表10
160.交易编号表1交易记录内容表2交易记录内容1ht00002|||2|||0ht0002|||1|||1000
161.例如,根据如上述得到的比对结果表,确定结果为0的对应的交易编号1,在交集数据中确定交易编号为1的交易记录如表10所示。
162.由于交集数据表中表1交易记录内容与表2交易记录内容不同,因此,因此,可以将交易编号为1的交易记录写入匹配差异数据表,如表11所示:
163.表11
[0164][0165]
根据本公开的实施例,基于比对结果、交集数据和差集数据,生成匹配差异数据和匹配一致数据,之后再根据匹配差异数据和匹配一致数据进一步生成匹配明细数据和匹配统计数据,得到匹配结果数据,提高效率。
[0166]
根据本公开的实施例,信息匹配方法还包括:将匹配结果数据导出为二进制数据格式的第一匹配结果文件;利用大数据引擎将匹配结果文件转换为目标数据格式的第二匹
配结果文件;以及将第二匹配结果文件传输至分布式系统中的文件处理服务器。
[0167]
根据本公开的实施例,第一匹配结果文件可以为binary格式的文件;第二匹配结果文件可以为txt文本格式的文件和check格式的文件。
[0168]
根据本公开的实施例,将匹配结果数据导出为二进制数据格式的第一匹配结果文件,包括:服务器执行作业,将匹配明细数据中的当日内容导出,生成binary格式的文件。
[0169]
根据本公开实施例,利用大数据引擎将匹配结果文件转换为目标数据格式的第二匹配结果文件,包括:大数据引擎对binary格式的文件进行转移作业,生成txt文本格式的文件和check格式的文件。
[0170]
根据本公开的实施例,第二匹配结果文件传输至分布式系统中的文件处理服务器,包括:服务器自动执行etrancfg任务,将产生的txt文本格式的文件和check格式的文件传递到下游文件服务器。
[0171]
根据本公开的实施例,通过执行作业完成文件格式的转换,并且通过自动执行任务将文件传输至下游文件服务器,对信息匹配产生的文件进行处理和传输,提高了效率。
[0172]
图5示意性示出了根据本公开实施例的作业调用方法的流程图。
[0173]
如图5所示,该实施例的作业调用500包括操作s521~操作s522。
[0174]
在操作s501,作业调度加载匹配文件。
[0175]
在操作s502,加工匹配文件并录入到数据湖。
[0176]
在操作s503,spark执行信息匹配作业。例如,可以将数据湖中的匹配文件作为第一匹配信息或第二匹配信息执行信息匹配操作。
[0177]
在操作s504,确定是否成功生成匹配结果数据。
[0178]
根据本公开的实施例,如果未成功生成匹配结果数据,执行操作s505;如果成功生成匹配结果数据,执行操作s506。
[0179]
在操作s505,数据生成失败。
[0180]
在操作s506,导出作业,生成第一匹配结果文件。
[0181]
在操作s507,确定是否成功生成第一匹配结果文件。
[0182]
根据本公开的实施例,如果未成功生成第一匹配结果文件,执行操作s508;如果成功生成第一匹配结果文件,执行操作s509。
[0183]
例如,可以根据第一结果字符串确定是否成功生成第一匹配结果文件。第一结果字符串为/datafs/bdsp/export/f-gcms/#yyyymmdd#,表示成功生成第一匹配结果文件,反之则表示未成功生成第一匹配结果文件。
[0184]
在操作s508,第一匹配结果文件生成失败。
[0185]
在操作s509,转移作业编号,生成第二匹配结果文件。
[0186]
在操作s510,确定是否成功生成第二匹配结果文件。
[0187]
根据本公开的实施例,如果未成功生成第二匹配结果文件,执行操作s511;如果成功产生第二匹配结果文件,执行操作s512。例如,可以根据第二结果字符串确定是否成功生成第二匹配结果文件。如果第二结果字符串为/datafs/bdsp/export/f-gcms/scfin_lakerecon,表示成功生成第二匹配结果文件,反之则表示未成功生成第二匹配结果文件。
[0188]
在操作s511,第二匹配结果文件生成失败。
[0189]
在操作s512,将第二匹配结果文件传输至分布式系统文件处理服务器。
[0190]
在操作s513,确定文件处理服务器是否成功接收到第二匹配结果文件。
[0191]
根据本公开的实施例,如果文件处理服务器成功接收到第二匹配结果文件,执行操作s515;如果文件处理服务器未成功收到第二匹配结果文件,执行操作s514。
[0192]
在操作s514,信息匹配失败。
[0193]
在操作s515,信息匹配成功。
[0194]
根据本公开的实施例,通过调度加载匹配文件,将匹配文件加工录入数据湖,执行信息匹配,匹配结果文件转移等作业,组成业务组,满足信息匹配方法不同阶段的不同需求。
[0195]
图6示意性示出了根据本公开实施例的信息匹配装置的结构框图。
[0196]
如图6所示,该实施例的信息匹配装置600包括第一确定模块610、第二确定模块620、第一比对模块630和第二比对模块640。
[0197]
第一确定模块610,用于响应于接收到用于执行匹配操作的请求,确定第一匹配信息和第二匹配信息,其中,第一匹配信息包括至少一个数据来源的m个交易记录,第二匹配信息包括至少一个数据来源的n个交易记录,m≥2,n≥2。在一实施例中,第一确定模块610可以用于执行前文描述的操作s210,此不再赘述。
[0198]
第二确定模块620,用于确定第一匹配信息与第二匹配信息之间的差集数据和交集数据,其中,交集数据包括同时处于第一匹配信息和第二匹配信息中的至少一个交易记录,差集数据包括处于第一匹配信息或第二匹配信息其中之一的至少一个交易记录。在一实施例中,第二确定模块620可以用于执行前文描述的操作s220,此不再赘述。
[0199]
第一比对模块630,用于基于第一匹配信息和第二匹配信息,对交集数据中的每个交易记录进行内容比对,得到比对结果。在一实施例中,第一比对模块630可以用于执行前文描述的操作s230,此不再赘述。
[0200]
第二比对模块640,用于根据比对结果和差集数据,确定匹配结果数据。在一实施例中,第二比对模块640可以用于执行前文描述的操作s240,此不再赘述。
[0201]
根据本公开的实施例,第二确定模块620包括第一生成子模块和第二生成子模块。
[0202]
第一生成子模块用于根据第一匹配表的表名和第二匹配表的表名,生成第一数据库代码语句。
[0203]
第二生成子模块用于通过执行第一数据库代码语句,比对m个交易记录的交易编号和n个交易记录的交易编号,得到交集数据和差集数据。
[0204]
根据本公开的实施例,第二生成子模块包括第一确定单元、第二确定单元、第一生成单元和第三确定单元。
[0205]
第一确定单元用于以m个交易记录为基准,从n个交易记录中确定不与m个交易记录的交易编号相匹配的q个交易记录,n≥q≥1。
[0206]
第二确定单元用于以n个交易记录为基准,从m个交易记录中确定不与n个交易记录的交易编号相匹配的p个交易记录,m≥p≥1。
[0207]
第一生成单元用于将p个交易记录和q个交易记录组成差集数据。
[0208]
第三确定单元用于从m个交易记录中确定与n个交易记录的交易编号相匹配的(m-p)个交易记录,并将(m-p)个交易记录确定为交集数据;或者从n个交易记录中确定与m个交易记录的交易编号相匹配的(n-q)个交易记录,并将(n-q)个交易记录确定为交集数据。
702以及ram 703通过总线704彼此相连。处理器701通过执行rom 702和/或ram 703中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除rom 702和ram 703以外的一个或多个存储器中。处理器701也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
[0225]
根据本公开的实施例,电子设备700还可以包括输入/输出(i/o)接口705,输入/输出(i/o)接口705也连接至总线704。电子设备700还可以包括连接至输入/输出i/o接口705的以下部件中的一项或多项:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至i/o接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
[0226]
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
[0227]
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的rom 702和/或ram 703和/或rom 702和ram 703以外的一个或多个存储器。
[0228]
本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。当计算机程序产品在计算机系统中运行时,该程序代码用于使计算机系统实现本公开实施例所提供上述方法。
[0229]
在该计算机程序被处理器701执行时执行本公开实施例的系统/装置中限定的上述功能。根据本公开的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。
[0230]
在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分709被下载和安装,和/或从可拆卸介质711被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
[0231]
在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被处理器701执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
[0232]
根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执
行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如java,c ,python,“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0233]
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0234]
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
[0235]
以上所述的具体实施例,对本公开的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,以上所述仅为本公开的具体实施例而已,并不用于限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。