掌桥专利:专业的专利平台
掌桥专利
首页

基于业务架构的数据存储方法、装置、设备及介质

文献发布时间:2023-06-19 19:35:22


基于业务架构的数据存储方法、装置、设备及介质

技术领域

本公开涉及大数据领域,更具体地涉及一种基于业务架构的数据存储方法、装置、设备、介质和程序产品。

背景技术

企业的业务数据,通常会按照一定的周期,在特定的时间段(例如业务不繁忙的时候),将业务系统在此前某一时段(如12小时或24小时)中运行产生的数据,一次性或批量同步存储到企业中可以共享使用的数据库中。这种方式下,每次数据同步转存时,数据量大,耗时长。而且由于每一次数据同步时,通常是以数据表为基本单位进行同步更新,这样会导致数据表中没有发生过更新的数据记录也进行同步更新,会带来数据更新工作的冗余,从而造成很多系统资源的浪费。而且由于数据的同步总是滞后的,导致基于业务数据进行的归集计算,也存在有滞后性。

发明内容

鉴于上述问题,本公开提供了可以提高数据同步的实时性并可以控制数据同步规模的基于业务架构的数据存储方法、装置、设备、介质和程序产品。

本公开实施例的第一方面,提供了一种基于业务架构的数据存储方法。所述方法包括:接收第一业务处理指令;获取业务架构库中由所述第一业务处理指令触发的第一活动流程模型的信息,所述第一活动流程模型的信息包括所述第一活动流程模型中的任务的标识,其中,所述业务架构库中的每个活动流程模型包括至少一个任务;响应于对所述第一活动流程模型中的任意的第一任务的数据保存指令,基于所述第一任务的标识,获取在业务架构模型标识库中预置的与所述第一任务对应的第一映射关系,其中,在所述业务架构模型标识库中,配置有与所述业务架构库中每个活动流程模型中的每个任务对应的映射关系,每个所述映射关系包括从每个任务的标识映射到数据库中的一个字段组,其中,所述字段组包括至少一个字段;以及,将响应于所述数据保存指令而得到的所述第一任务的数据,存储到所述数据库中所述第一映射关系中的第一字段组的各个字段中,以使得在所述数据库中生成对所述第一任务的记录。

根据本公开的实施例,所述方法还包括:在所述数据库中生成对所述第一任务的记录的同时,在所述数据库中对所生成的记录添加用于唯一标识该记录的任务戳。

根据本公开的实施例,所述将响应于所述数据保存指令而得到的所述第一任务的数据,存储到所述数据库中所述第一映射关系中的第一字段组的各个字段中包括:基于所述第一映射关系,在所述数据库中查找具有所述第一字段组中的全部字段的业务报表;以及当查找到至少一个业务报表时,将响应于所述数据保存指令而得到的所述第一任务的数据,存储到所述至少一个业务报表的每个业务报表中。

根据本公开的实施例,当所述至少一个业务报表包括多个业务报表时,在所述多个业务报表中生成的所述第一任务的记录的任务戳不同。

根据本公开的实施例,所述将响应于所述数据保存指令而得到的所述第一任务的数据,存储到所述数据库中所述第一映射关系中的第一字段组的各个字段中还包括:当所述至少一个业务报表中的任意的第一业务报表,除了所述第一字段组中的字段以外还包括其他字段时,在所述第一字段组的各个字段中记录数据的同时,对所述其他字段进行留空处理。

根据本公开的实施例,所述方法还包括:当在数据库中查找不到具有所述第一字段组中的全部字段的业务报表时,进行报错处理。

根据本公开的实施例,不同的所述映射关系中的任务的标识不同,以及不同的所述映射关系中的字段组也不同。

根据本公开的实施例,所述方法还包括预先构建所述业务架构模型标识库,具体包括:在所述业务架构模型标识库中,针对所述业务架构库中的每个活动流程模型中的每个任务,设置唯一标识;以及在所述业务架构模型标识库中,基于每个任务的标识设置与每个任务对应的所述映射关系。

根据本公开的实施例,所述基于每个任务的标识设置与每个任务对应的所述映射关系还包括:从所述数据库中获取用于描述每个任务的所述字段组,得到每个任务和所述字段组的匹配关系;以及基于所述匹配关系和每个任务的标识,设置与每个任务对应的所述映射关系。

根据本公开的实施例,所述针对所述业务架构库中的每个活动流程模型中的每个任务,设置唯一标识包括:当所述业务架构库中的每个活动流程模型为由多个活动节点连接而成的业务处理流程,且每个活动节点包括至少一个任务时,在所述业务架构模型标识库中,针对所述业务架构库中的每个活动流程模型、每个活动流程模型中的活动节点、每个活动节点中的每个任务,分别设置唯一标识。

根据本公开的实施例,所述业务架构模型标识库中具有层级关系的活动流程模型、活动节点和任务的标识之间,包含所述层级关系的信息。

根据本公开的实施例,所述针对所述业务架构库中的每个活动流程模型、每个活动流程模型中的活动节点、每个活动节点中的每个任务,分别设置唯一标识还包括:当所述业务架构库中的活动流程模型、每个活动流程模型中的活动节点、或这每个活动节点中的任务中的任意一个发生变更时,更新所述业务架构模型标识库中对应的标识。

本公开实施例的第二方面,提供了一种基于业务架构的数据存储装置。所述装置包括:指令接收模块、第一获取模块、第二获取模块和存储模块。指令接收模块用于接收第一业务处理指令。第一获取模块用于获取业务架构库中由所述第一业务处理指令触发的第一活动流程模型的信息;所述第一活动流程模型的信息包括所述第一活动流程模型中的任务的标识;其中,所述业务架构库中的每个活动流程模型包括至少一个任务。第二获取模块用于响应于对所述第一活动流程模型中的任意的第一任务的数据保存指令,基于所述第一任务的标识,获取在业务架构模型标识库中预置的与所述第一任务对应的第一映射关系;其中,在所述业务架构模型标识库中,配置有与所述业务架构库中每个活动流程模型中的每个任务对应的映射关系,每个所述映射关系包括从每个任务的标识映射到数据库中的一个字段组,其中,所述字段组包括至少一个字段。存储模块用于将响应于所述数据保存指令而得到的所述第一任务的数据,存储到所述数据库中所述第一映射关系中的第一字段组的各个字段中,以使得在所述数据库中生成对所述第一任务的记录。

本公开实施例的第三方面,提供了一种电子设备。所述电子设备包括一个或多个处理器、以及存储器。所述存储器用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得一个或多个处理器执行上述方法。

本公开实施例的第四方面,还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行上述方法。

本公开实施例的第五方面,还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述方法。

上述一个或多个实施例具有如下优点或有益效果:通过预先将业务架构库中的每个活动流程模型所包括的每个任务,与数据库中用于描述(或记录)该任务的字段组之间建立映射关系,从而在进行业务处理的过程中,当需要保存某个任务的数据时,可以将该任务的数据实时同步到数据库中与该任务具有映射关系的字段组中。并因此控制向数据库中进行同步的数据规模,避免相关技术中对整个数据表中更新时存在的冗余消耗,可以存储实时处理的业务数据,提高业务数据同步时效性。

附图说明

通过以下参照附图对本公开实施例的描述,本公开的上述内容以及其他目的、特征和优点将更为清楚,在附图中:

图1示意性示出了根据本公开实施例的基于业务架构的数据存储方法、装置、设备、介质和程序产品的应用场景图;

图2示意性示出了根据本公开实施例的基于业务架构的数据存储方法和装置的系统架构示意图;

图3示意性示出了根据本公开一实施例的活动流程模型的结构示意图;

图4示意性示出了根据本公开实施例的基于业务架构的数据存储方法的流程图;

图5示意性示出了根据本公开另一实施例的数据存储方法中在数据库中根据第一映射关系中存储第一任务的数据的流程图;

图6示意性示出了根据本公开一实施例中构建业务架构模型标识库的流程图;

图7示意性示出了根据本公开一实施例的业务架构模型标识库中标识之间所具有的层级关系;

图8示意性示出了根据本公开一实施例的业务架构模型标识库中的映射关系的设置流程;

图9示意性示出了应用本公开实施例的数据存储方法对开立借记卡的业务活动中进行数据同步的流程示意;

图10示意性示出了根据本公开另一实施例的基于业务架构的数据存储方法的流程图;

图11示意性示出了图10所示的流程中更新字段组的具体处理流程;

图12示意性示出了根据本公开实施例的基于业务架构的数据存储装置的方框图;以及

图13示意性示出了适于实现根据本公开实施例的基于业务架构的数据存储方法的电子设备的方框图。

具体实施方式

以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。

在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。

在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。

在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。术语“第一”、“第二”仅用于命名区分,不具有限定意义。

本公开实施例提供了一种基于业务架构的数据存储方法、装置、设备、介质和程序产品。根据本公开的实施例,通过预先将业务架构库中的每个活动流程模型所包括的每个任务,与数据库中用于描述(或记录)该任务的字段组之间建立映射关系,从而在通过业务系统进行业务处理的过程中,当需要保存某个任务的数据时,可以将该任务的数据实时同步到数据库中与该任务具有映射关系的字段组中。以此方式,每一次数据同步时,可以仅同步数据库中与要保存的任务具有映射关系的字段组中的数据,有效控制向数据库中进行同步的数据规模,优化数据存储。而且还可以避免相关技术中对整个数据表更新时可能存在的冗余操作,减少系统资源浪费,提高业务系统运行的整体效率和效果。并且由于可以在业务系统要保存某个任务的数据时,将该任务的数据同步到数据库中,从而可以存储实时处理的业务数据,提高业务数据同步的实时性,有利于企业的业务系统和共享数据库等业务的健康高效运行。

需要说明的是,本公开实施例基于业务架构的数据存储方法、装置、设备、介质和程序产品可用于金融领域,也可用于除金融领域之外的任意领域,本公开对应用领域不做限定。

图1示意性示出了根据本公开实施例的基于业务架构的数据存储方法、装置、设备、介质和程序产品的应用场景图。

如图1所示,根据该实施例的应用场景100可以包括终端设备101、业务系统服务器102、业务架构库103、业务架构模型标识库104和数据库105。

终端设备101与业务系统服务器102之间可以通过网络连接。用户可以使用终端设备101通过网络与业务系统服务器102交互,以接收或发送消息等。

终端设备101上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、政务应用、手机银行、财务管理客户端、社交平台软件等(仅为示例)。

业务系统服务器102可以是为终端设备101中的客户端应用提供后台业务处理服务的服务器。

业务系统服务器102可以与业务架构库103通信连接。业务架构库103可以包括一个或多个服务器,和/或一个或多个存储设备。

此处结合图2和图3对业务架构库103进行简要说明。图2示意性示出了根据本公开实施例的基于业务架构的数据存储方法和装置的系统架构示意图。图3示意性示出了根据本公开一实施例的活动流程模型的结构示意图。

如图2所示,业务架构库103中部署有基于业务架构方法论构建的活动流程模型。一个活动流程模型中至少包括一个任务。任务是业务活动的组成单元,指一个角色在一定时间内执行的,具备明确的业务目的步骤的集合。例如,开立借记卡的业务活动可以包括受理客开立借记卡的申请、审核客户提交的资料、与客户签订协议和借记卡启用生效等多个任务。在一些实施例中,一个任务还可以包括具有包含关系和逻辑顺序的若干子任务。子任务是任务的细分。而且一个任务是否需要进一步细分为若干子任务,可以在设计活动流程模型时,由业务架构师根据任务的复杂程度或复用程度进行自由设计。因此,本公开中不区分任务与子任务。

结合图2和图3的示意,业务架构库103中的每个活动流程模型为由多个活动节点连接而成的业务处理流程,其中,每个活动节点包括至少一个任务。

具体地,活动流程模型可以具有唯一的活动起点和活动终点,在途径每一个活动节点时,对应相关的任务和/或子任务。活动节点本身不产生业务事件和业务内容,活动节点只是活动流程、活动进展、对应时间点的提示和标记,而任务是直接携带业务事件和对接业务信息。例如,当活动流程模型对应的活动为开立借记卡时,任务1可以是受理客户的开立借记卡的申请,子任务为任务1.1到任务1.3,具体为更细节的业务事件,如发起申请要求、填写申请表格、提交申请材料等,都属于任务1受理申请的范畴。

接着回到图1的应用场景100。当用户使用终端设备101向业务系统服务器102发起一个业务处理指令时,业务系统服务器102可以基于该业务处理指令,触发业务架构库103中对应的活动流程模型的执行,进行业务处理,并由业务系统服务器102将处理结果反馈给终端设备101。其中,触发一个活动流程模型的执行的业务事件,为业务活动的起点。一切可以触发企业内部流程的都是事件,例如,客户向银行网点提出开立借记卡的申请就是开立借记卡这一业务活动的起点。

在应用场景100中,业务系统服务器102还可以与业务架构模型标识库104和数据库105分别通信。其中,数据库105可以是企业的共享数据库,例如,企业的数据仓库、共享数据池、或者数据湖等。

业务架构模型标识库104中针对业务架构库103中的每个活动流程模型中的每个任务设置有唯一标识,并基于每个任务的标识,设置有与每个任务对应的映射关系,该映射关系中定义了从每个任务的标识数据库105中的一个字段组的映射。这样,通过每个任务的标识,可以查找到每个任务对应的映射关系,根据该映射关系可以确定出在数据库105中与每个任务对应的字段组。如图2所示,每个任务对应一个字段组。

数据库105中与每个任务对应的字段组,实质是在数据库105中用于记录每个任务的一组字段。具体而言,数据库105中的业务报表的设置,诸如每个报表中的字段的设置,往往是根据报表的需求方(例如统计分析、数据归集需求等)设置的。业务架构中的每个任务,当记录在业务报表中时,通常是使用一个业务报表中的一个或几个字段进行记录。该一个或几个字段即为数据库105中用于描述该任务的字段组。例如,如下文图9中的示意中,在开立借记卡的活动中,受理任务对应的字段组包括“业务编号、业务名称、受理时间、受理网点、受理人、协议编号、协议生效时间、卡状态”这些字段。

从而,根据本公开的实施例,当业务系统服务器102根据终端设备101中的用户操作进行业务处理时,当需要对某个任务(例如,上述受理任务)的数据进行保存时(例如银行柜员在终端设备上点击受理任务页面中的保存按钮),业务系统服务器102可以从业务架构模型标识库104中获取该受理任务的标识及其对应的映射关系,然后按照该映射关系,将银行柜员从终端设备101提交的该受理任务的数据,实时存储到数据库105中对应的字段组中。以此方式,实现了如图2所示的从业务架构库103中的任务,到数据库105中字段组的映射存储,使得业务系统中的时点数据可以实时地存储到数据库105中,促进了时点数据保存的时效性,增强业务系统的使用效率。

本公开实施例所提供的基于业务架构的数据存储方法一般可以由业务系统服务器102执行。相应地,本公开实施例所提供的基于业务架构的数据存储装置一般可以设置于业务系统服务器102中。

应该理解,图1所示仅为可以应用本公开实施例的应用场景的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。例如,在一些实施例中,业务架构模型标识库104可以集成于业务架构库103中,形成业务架构库103的一部分,或者在另一些实施例中,业务架构模型标识库104可以设置于业务系统服务器102中等,对此本公开不予限定。

以下将基于图1描述的场景和图2所示的系统架构,通过图4~图11对本公开实施例的基于业务架构的数据存储方法进行详细描述。应注意,以下方法中各个操作的序号仅作为该操作的表示以便描述,而不应被看作表示该各个操作的执行顺序。除非明确指出,否则该方法不需要完全按照所示顺序来执行。

图4示意性示出了根据本公开实施例的基于业务架构的数据存储方法的流程图。

如图4所示,根据该实施例的基于业务架构的数据存储方法可以包括操作S410~操作S440。该方法可以由业务系统服务器102来执行。

首先在操作S410,接收第一业务处理指令。例如用户在终端设备101的客户端中操作,触发对某一业务事件的处理指令,并将该处理指令发送给业务系统服务器102。

然后在操作S420,获取业务架构库103中由第一业务处理指令触发的第一活动流程模型的信息。第一活动流程模型的信息包括第一活动流程模型中的任务的标识。例如,业务系统服务器102从业务架构库103中定位出由第一业务处理指令触发的第一活动流程模型,然后从业务架构模型标识库中找到第一活动流程模型下的各个模型(尤其是各个任务模型)的标识的存放位置等,以便随时可以拿到任务的标识。

在操作S430,响应于对第一活动流程模型中的任意的第一任务的数据保存指令,基于第一任务的标识,获取在业务架构模型标识库104中预置的与第一任务对应的第一映射关系。第一映射关系的内容为,第一任务的标识到数据库105中用于描述第一任务的数组字段组的映射。

在操作S440,将响应于数据保存指令而得到的第一任务的数据,存储到数据库105中第一映射关系中的第一字段组的各个字段中,以使得在数据库105中生成对第一任务的记录。

在一个实施例中,操作S440中在数据库105中生成对第一任务的记录的同时,可以在数据库105中对所生成的记录添加用于唯一标识该记录的任务戳,如图2所示。任务戳可以是基于任务的标识、数据保存时刻的时间信息、和/或记录所在的报表信息等生成的,用于唯一标记每一条记录,便于后续对数据库105中实时同步的这些业务数据记录的归集整理、分析和溯源。

该第一任务的数据保存指令,可以是终端设备101的用户在客户端页面中操作保存按钮而触发的保存指令,也可以是第一任务中预设的每个预定周期对第一任务进行自动保存而触发的保存指令。

该第一任务的保存指令,可以是第一任务执行完成后对第一任务中的数据的保存,也可以是第一任务暂停时对暂停时刻的第一任务的数据保存。如果对第一任务暂停时刻的数据保存时,基于第一映射关系得到的第一字段组中某些字段的数据可能会出现缺失,在数据库105同步时可以对缺失的字段数据进行留空处理。

例如,参考下文图9,对于开立借记卡业务中受理申请业务,若进行到中途申请人因故离开导致申请暂停,此时协议尚未生效,对该受理申请业务也可以保存该暂停时刻的数据,其中可以对协议生效时间字段以留空或待定标记处理,并对记录形成一个任务戳。然后,等到改天申请人继续办理该开立借记卡业务时,当受理申请任务完成后保持数据,再在数据库105中生成一条受理申请任务的记录,并相应生成新的任务戳。这样,对于一个申请人对受理申请任务由于中间中断过一次,在数据库105中可以存在两条记录,该两条记录具有不同的任务戳,第一条记录中缺失协议生效时间字段的值,第二条记录中协议生效时间字段有具体的值,而该两条记录中的业务编号一致,表明是对同一客户在不同时点办理的具有先后关系同一业务。由此可见,本公开实施例可以跟随业务系统的业务处理流程进度,在数据库105中实时同步业务数据,形成业务数据的详细记录。

在一些极端情形中,数据库105中可以按照与业务架构库103中任务对应的方式来设置数据表,例如,每个任务设置一个数据表,每个数据表中的字段设置根据于该任务具有映射关系的字段组来设置。这样,当一个任务中的数据需要保存时,可以直接保存到数据库105中该任务对应的数据表中。或者在另一些极端情形中,也可以把业务活动中所有涉及的字段都记录在一个大的数据表中,从而每个任务在保存时形成该数据表中的一条记录,其中每个任务仅在与该任务对应的字段组中进行数据更新。然而,在实际生产中,数据库105中往往是面向报表需求方、报表分析方(例如,统计人员、会计人员)来设置业务报表的,这就意味着业务报表和任务之间的对应关系难以清晰界定的。一个任务可以同时记录在多个业务报表中。例如开立借记卡活动中启用卡任务的数据,可以同时记录在开立借记卡报表和借记卡登记报表中。相应地,一个业务报表中也可以同时记录多个任务的数据,如下文图9中在开立借记卡报表中可以记录开立借记卡活动中的所有任务数据。在这种情况下,操作S440中在数据库105中记录任务的数据时,可以参考图5方法流程。

图5示意性示出了根据本公开另一实施例的数据存储方法中在数据库中根据第一映射关系中存储第一任务的数据的流程图。

如图5所示,根据该实施例,操作S440具体可以包括操作S441~操作S444。

在操作S441,基于第一映射关系,在数据库105中查找具有第一字段组中的全部字段的业务报表。

在操作S442,判断是否查找到至少一个业务报表。若是,则执行操作S443;若否,则执行操作S444。

在操作S443,当查找到至少一个业务报表时,将响应于数据保存指令而得到的第一任务的数据,存储到至少一个业务报表的每个业务报表中。

在一个实施例中,当至少一个业务报表中的任意的第一业务报表,除了第一字段组中的字段以外还包括其他字段时,在第一字段组的各个字段中记录数据的同时,对其他字段进行留空处理。例如,图9中受理任务对应的字段组中不包括生效时间字段,而图9所示的业务报表中除了受理任务对应的字段组中所有字段外,还包含有生效时间字段,那么对于受理任务的数据进行存储时,可以对生效时间字段留空。

在一个实施例中,当查找到多个业务报表时,在多个业务报表中生成的第一任务的记录的任务戳不同。其中,任务戳不仅可以反映所要记录的任务,还可以反映记录数据的业务报表。这样便于后续的数据归集统计。

在操作S444,当在数据库105中查找不到具有第一字段组中的全部字段的业务报表时,进行报错处理。例如,数据库105中的的业务报表或某些字段(或字段名)发生了变更,但是在业务架构模型标识库104中未及时更新相关的映射关系中的内容,此时进行报错处理。

具体地,业务系统服务器102获取第一映射关系的配置信息后,判断数据库105中是否存在具有第一映射关系中的第一字段组中的全部字段的业务报表,如果则进行数据同步。例如,在开立借记卡活动中对受理任务的数据同步时,对受理任务模型及其子任务(诸如,发起申请要求、填写申请表格、提交申请材料)等是否有有某一任务/子任务在数据库105中存在具有对应字段组的业务报表,是否到达对应的最小字段组完整性要求。如果是,则将任务发起申请要求的标识,转换为相关业务报表中的数据条目中携带的任务戳,并将任务的数据作为时点数据的更新和存储计入相关业务报表中。

映射关系中配置的每个字段组,可以对字段组内的数据具有保护作用。具体地,只有当一个业务报表中同时包括该字段组中的所有字段时,才可以在该业务报表中生成该任务的一条记录。如涉及某业务活动的X报表中,包含有任务a对应的字段组a、任务b对应的字段组b和任务c对应的字段组c等。字段组a包括三个相关字段a1、a2、a3,锁定了任务a的事件数据属性。若业务报表Y中包含有字段a1,但不包含字段a2、a3时,任务a的数据则不会在Y报表中形成实时记录。只有Y报表中同时包括字段a1、a2、a3时,任务a的时点数据可以实时记录在Y报表中。

数据库105中的业务报表通常是根据有报表需求方的需求,由数据库工程师预先设置的,同时业务架构库103中的活动流程模型及其中的任务通常也是由业务架构师预设开发设置的。业务架构的开发,和业务报表的开发,二者相对独立,且通常是先于本公开实施中的上述映射关系而存在。

结合前文图2。业务架构中的活动流程模型为由事件触发,为满足干系人需求或特定业务目的,而执行的一段端到端的业务处理流程。业务架构中可以部署企业的所有活动,每个活动能实现特定的业务目标,且活动没有重复、活动名称、活动目的、活动流程都具有唯一性。如客户到网点开立借记卡这一业务活动,就能实现银行网点为客户开立借记卡并生效使用这一目的,业务流程的范围包括从受理客户申请到通知业务办理结果。

活动的起点可以称为业务事件,其中,一切可以触发企业内部流程的都是事件。客户向银行网点提出开立借记卡的申请就是这一活动的起点。任务是活动的主要组成单元,指一个角色在一定时间内执行的,具备明确的业务目的的步骤的集合。在开立借记卡活动中,分别体现为受理客开立借记卡的申请、审核客户提交的资料、与客户签订协议、借记卡启用生效。每一活动均包括多个用于实现业务活动的子任务,子任务是为了覆盖对应到业务事件和业务信息;每一业务活动包括的多个子任务之间具有包含关系和逻辑顺序;所以业务架构模型标识库104的每个层级有具有包含关系和逻辑关系的唯一标识码。

活动和任务、子任务的来源通过业务架构的建模人员通过标准操作流程:收集候选活动、对接候选活动和业务事件、对接候选活动和业务对象、对接CPCP(产品模型和市场模型)这四步得到并已输出对应的业务信息。业务架构库103中预置了一套通过业务架构业务活动标准操作流程模型,并包括上述的业务活动、任务、子任务、对应的业务信息、业务信息对应的业务数据。

本公开实施例的目的,是要将业务架构中预置的任务等模型,与数据库105中已设置好的报表中的字段之间建立映射,以实现业务数据可以实时同步到数据库105的报表中。

可见,本公开实施例提供了一种借助于业务架构活动的事件触发的数据实时存储方案,通过业务架构的活动流程模型将每一活动流程中的各任务映射到业务报表中,使得业务数据的更新和存储可以由业务活动中的事件触发。以业务架构方法论中的活动流程模型、任务模型建模结果作为数据存储所需的业务知识基础。

本公开实施例在业务活动处理过程中,当需要保存任务的数据时,采集业务数据,通过预先配置的映射关系,将业务数据转换为指定的数据源,存储到数据库105中在该映射关系中配置的字段组中。与此同时还可以根据该映射关系配置的任务的标识,生成任务戳,并以该任务戳来标记在字段组中生成的记录。以此方式,基于业务架构方法论和数据库数据存储技术,通过业务架构活模型标识库构建业务架构库103中的任务与数据库105中的字段组的映射,并提供了用任务戳记录业务数据唯一性的数据的存储方法,可以有效的控制从业务系统向数据库105中同步数据时的数据规模,避免以数据表为粒度进行数据更新时存在的数据冗余问题,提高生产数据访问效率,减少系统资源浪费,优化了历史时点数据的存储流程,促进了时点数据保存的有效性,增强业务系统的使用效果。

图6示意性示出了根据本公开一实施例中构建业务架构模型标识库的流程图。

如图6所示,根据该实施例,业务架构模型标识库104的构建可以包括操作S610~操作S620。

首先在操作S610,在业务架构模型标识库104中,针对业务架构库103中的每个活动流程模型中的每个任务,设置唯一标识。

在一个实施例中,如图3所示,业务架构库103中的每个活动流程模型可以为由多个活动节点连接而成的业务处理流程,且每个活动节点包括至少一个任务。相应地操作S610中可以针对业务架构库103中的每个活动流程模型、每个活动流程模型中的活动节点、每个活动节点中的每个任务,分别设置唯一标识。进而,在一个实施例中,业务架构模型标识库104中具有层级关系的活动流程模型、活动节点和任务的标识之间,可以包含层级关系的信息,方便对业务架构模型标识库中的标识的管理。

图7示意性示出了根据本公开一实施例的业务架构模型标识库中标识之间所具有的层级关系。

结合图3和图7,业务架构模型标识库104中设置的标识之间可以具有层级关系。其中,每一个标识都有具有唯一的标识码,且标识码中可以体现上下层级的任务关系,如某业务活动标识为A1;该业务活动的一组任务标识分别为A1B1、A1B2、A1B3,其中A1-B序列为该组任务的唯一标识,从活动起点到活动终点分别经过3个活动节点,这三个活动节点分别对应任务1、2、3,并分别包含子任务1.1、1.2、1.3;2.1、2.2、2.3;3.1、3.2、3.3,对应的子任务标识码分别为A1-B1S101、A1-B1S102、A1-B1S103;A1-B1S201、A1-B1S202、A1-B1S203;A1-B1S301、A1-B1S302、A1-B1S303等,以此类推。

然后在操作S620,在业务架构模型标识库104中,基于每个任务的标识设置与每个任务对应的映射关系。

图8示意性示出了根据本公开一实施例的业务架构模型标识库中的映射关系的设置流程。

结合图6和图8,操作S620中设置映射关系时,可以针对每个任务,先从数据库105中获取用于描述每个任务的字段组,得到每个任务和字段组的匹配关系,然后基于匹配关系和业务架构模型标识库104中每个任务的标识,设置与每个任务对应的映射关系。

不同的映射关系中的任务的标识不同。并且,由于不同任务在数据库105中的记录描述字段不同,相应的不同的映射关系中的字段组也不同。以此方式,保证了业务数据到数据库105的数据唯一性和规范性。

在图8的示例中,任务1下的各个子任务对应的字段组之间具有一定的关联性。例如,任务1下的各个子任务的字段组中都包含有字段a1,该字段a1例如可以是图9中所示的业务编号,用于表示这些子任务属于对同一客户进行同一业务处理时所执行的任务。再例如,下游任务的部分数据可能来自于一个或若干上游数据,这样下游任务对应的字段组中就可能具有与上游任务相同的部分字段。各个子任务的字段组的关联性反映的是任务或子任务之间的关联关系,但这不影响每个任务对应的字段组的唯一性,是映射关系设置的结果,非映射关系设置时需要考虑的因素。

当业务架构库103中的活动流程模型、每个活动流程模型中的活动节点、或这每个活动节点中的任务中的任意一个发生变更时,在操作S610中需要相应更新业务架构模型标识库104中对应的标识以及操作S620中的映射关系,否则就可能引发前述操作S444的报错处理。具体地,业务架构模型标识库104中的标识建立完成后,当业务架构随着企业业务的变更、增加、删减而变化时,需要自上而下的对业务架构模型标识库104中的标识进行同步更新,同时还要同步更新所设置的映射关系,从而能够保证业务架构对企业业务的全覆盖。

图9示意性示出了应用本公开实施例的数据存储方法对开立借记卡的业务活动中进行数据同步的流程示意。

图9所示为申请开立借记卡的业务活动,描述了客户到银行网点申请开立借记卡这一业务活动的流程,和相关的任务模型。其中,任务模型包括受理、审核、签订协议、启用卡,根据受理这一任务携带的标识可以映射到“业务编号、受理时间、受理网点、受理人、协议编号、协议生效时间、卡状态”这一字段组,并根据受理任务的标识以及数据存储时间等可以生成任务戳。启用卡这一任务携带的标识码可以映射到图9中包含有“生效时间”的这一字段组,同时根据启用卡这一任务的标识,以及数据存储时间信息等,可以生成对应任务戳。

图10示意性示出了根据本公开另一实施例的基于业务架构的数据存储方法的流程图。

如图10所示,根据该实施例,基于业务架构的数据存储方法可以包括操作S101~操作S104。

首先在操作S101,构建业务架构模型标识库104,业务架构模型标识库104包括了活动流程模型的标识、每个活动流程模型中的每个任务模型的标识。S101是预置条件。

在操作S102中,匹配数据库105中记录业务数据的字段与业务架构模型标识库104的映射关系,映射关系最小集合为业务活动的任务模型的标识到字段组的映射。

在操作S103中,基于业务处理指令,业务架构中活动流程模型被触发,活动流程节点在业务架构模型标识库104中读取相关配置信息(诸如,任务的标识和映射关系),通过上述映射关系在数据库105中更新对应的字段组。

在操作S104,将这些更新的字段组通过字段组携带的任务戳作为唯一标识码同步存储到相关的业务报表。

在业务架构模型标识库中,各层级的标识通过S102中的映射关系在数据库105中形成预备态。在S103接收到业务数据的存储指令时,基于待处理业务需求,业务活动和映射关系成为激活态,活动节点对应的任务被触发。任务模型(包括子任务)对应至少一个面向业务数据库105的字段组;基于业务处理指令,任务模型中的唯一标识码通过映射关系对字段组赋予任务戳,对涉及的字段组中的全部或部分字段进行更新存储,以完成对待处理任务的数据同步。

图11示意性示出了图10所示的流程中更新字段组的具体处理流程。

如图11所示,上述操作S103可以展开实施为操作S301~操作S304。

在操作S301,系统产生业务处理指令,根据业务事件的类型触发不同的活动流程模型,不同类型事件对应不同的活动流程模型。

例如,业务架构库接收到业务处理指令时,基于待处理业务需求中业务信息识别业务活动,触发业务架构库中的活动流程模型。

在操作S302,向业务系统服务器102请求获取活动流程模型的数据以及对应配置的映射关系的信息。通过S302向业务系统服务器102获取与活动流程模型中的任务模型对应的配置信息。

在操作S303,判断S102映射关系的配置信息是否满足所有条件,如果满足,则执行S304。具体地,在S303中判断映射关系中的配置信息是否满足符合到达最小集合最小字段的映射关系要求,是否映射关系中存在信息缺失。并判断数据库105中是否存在具有完整字段组的业务报表。

之后操作在S304,触发任务上报,根据映射关系的配置信息获取对应该业务活动中某一个任务的标识,并基于该配置信息,将任务标识打到对应的字段组中以生成任务戳。基于该任务戳,则可执行上述S104。

以开立借记卡为例。S301当产生输入客户申请开立借记卡的个人相关信息的业务需求时,根据该业务事件触发了客户开立借记卡这一活动流程模型。然后通过S302得到与这一活动流程模型和对应的受理、审核、签订协议、启用卡的任务模型的配置信息。获取配置信息后,对S302中映射关系进行条件满足判断,如判断任务发起申请要求、填写申请表格、提交申请材料对应的映射关系中是否存在或缺失字段组。满足后,可执行S304,如子任务发起申请要求中,对应字段组中存在“申请要求、申请时间”等字段,满足对应条件,则基于发起申请要求的任务的标识码,转换得到客户申请开立借记卡相关业务报表中的数据条目携带的任务戳,作为时点数据的更新和存储计入数据表和数据库105中。

本公开实施例,充分利用业务架构和互联网技术架构的方法对企业数据存储和处理提供了一种新的解决方案,支持由需求事件驱动的数据归集存储。应用场景广泛,可以支持多种事件型数据源和事件型目标源,能够有效地减少数据同步过程中的数据量,增加系统资源可利用率、提高数据存储性能和数据归集时效。

基于上述各个实施例的基于业务架构的数据存储方法,本公开还提供了一种基于业务架构的数据存储装置。以下将结合图12对该装置进行详细描述。

图12示意性示出了根据本公开实施例的基于业务架构的数据存储装置1200的方框图。

如图12所示,根据本公开实施例,该基于业务架构的数据存储装置1200,可以包括指令接收模块1210、第一获取模块1220、第二获取模块1230和存储模块1240。根据本公开另一些实施例,该装置1200还可以进一步包括标识库构建模块1250。该装置1200可以用于执行参考前文图4~图11所介绍的方法。

指令接收模块1210用于接收第一业务处理指令。在一个实施例中,指令接收模块1210可以执行前文介绍的操作S410。

第一获取模块1220用于获取业务架构库中由第一业务处理指令触发的第一活动流程模型的信息。第一活动流程模型的信息包括第一活动流程模型中的任务的标识,其中,业务架构库中的每个活动流程模型包括至少一个任务。在一个实施例中,第一获取模块1220可以执行前文介绍的操作S420。

第二获取模块1230用于响应于对第一活动流程模型中的任意的第一任务的数据保存指令,基于第一任务的标识,获取在业务架构模型标识库中预置的与第一任务对应的第一映射关系。其中,在业务架构模型标识库中,配置有与业务架构库中每个活动流程模型中的每个任务对应的映射关系,每个映射关系包括从每个任务的标识映射到数据库中的一个字段组,其中,字段组包括至少一个字段。在一个实施例中,第二获取模块1230可以执行前文介绍的操作S430。

存储模块1240用于将响应于数据保存指令而得到的第一任务的数据,存储到数据库中第一映射关系中的第一字段组的各个字段中,以使得在数据库中生成对第一任务的记录。在一个实施例中,存储模块1240可以执行前文介绍的操作S440。

标识库构建模块1250用于构建业务架构模型标识库,包括对业务架构库中的每个活动流程模型中的每个任务设置唯一标识,并基于每个任务的标识设置与每个任务对应的映射关系。在一个实施例中,标识库构建模块1250可以执行前文介绍的操作S610~操作S620。

根据本公开的一些实施例,存储模块1240可以包括任务戳添加子模块、报表查找子模块、数据存储子模块和报错处理模块至少之一。

任务戳添加子模块用于在数据库中生成对第一任务的记录的同时,在数据库中对所生成的记录添加用于唯一标识该记录的任务戳。

报表查找子模块用于基于第一映射关系,在数据库中查找具有第一字段组中的全部字段的业务报表。

数据存储子模块用于当查找到至少一个业务报表时,将响应于数据保存指令而得到的第一任务的数据,存储到至少一个业务报表的每个业务报表中。

报错处理模块用于当在数据库中查找不到具有第一字段组中的全部字段的业务报表时,进行报错处理。

根据本公开的一些实施例,标识库构建模块1250具体包括标识设置子模块和映射设置子模块。

具体地,在一实施例中,业务架构库中的每个活动流程模型为由多个活动节点连接而成的业务处理流程,其中,每个活动节点包括至少一个任务。

相应地,标识设置子模块用于在业务架构模型标识库中,针对业务架构库中的每个活动流程模型、每个活动流程模型中的活动节点、每个活动节点中的每个任务,分别设置唯一标识。

映射设置子模块用于在业务架构模型标识库中,基于每个任务的标识设置与每个任务对应的映射关系。

具体地,映射设置子模块还用于:从数据库中获取用于描述每个任务的字段组,得到每个任务和字段组的匹配关系,以及基于匹配关系和每个任务的标识,设置与每个任务对应的映射关系。

在一些实施例中,标识库构建模块1250还包括标识更新子模块。标识更新子模块用于当业务架构库中的活动流程模型、每个活动流程模型中的活动节点、或这每个活动节点中的任务中的任意一个发生变更时,更新业务架构模型标识库中对应的标识。

根据本公开的实施例,指令接收模块1210、第一获取模块1220、第二获取模块1230、存储模块1240、标识库构建模块1250、任务戳添加子模块、报表查找子模块、数据存储子模块、报错处理模块、标识设置子模块、映射设置子模块和标识更新子模块中的任意多个模块可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块或子模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,指令接收模块1210、第一获取模块1220、第二获取模块1230、存储模块1240、标识库构建模块1250、任务戳添加子模块、报表查找子模块、数据存储子模块、报错处理模块、标识设置子模块、映射设置子模块和标识更新子模块中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,指令接收模块1210、第一获取模块1220、第二获取模块1230、存储模块1240、标识库构建模块1250、任务戳添加子模块、报表查找子模块、数据存储子模块、报错处理模块、标识设置子模块、映射设置子模块和标识更新子模块中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。

图13性示出了适于实现根据本公开实施例的基于业务架构的数据存储方法的电子设备1300的示意图。

如图13,根据本公开实施例的电子设备1300包括处理器1301,其可以根据存储在只读存储器(ROM)1302中的程序或者从存储部分1308加载到随机访问存储器(RAM)1303中的程序而执行各种适当的动作和处理。处理器1301例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC))等等。处理器1301还可以包括用于缓存用途的板载存储器。处理器1301可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。

在RAM 1303中,存储有电子设备1300操作所需的各种程序和数据。处理器1301、ROM 1302以及RAM 1303通过总线1304彼此相连。处理器1301通过执行ROM 1302和/或RAM1303中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 1302和RAM 1303以外的一个或多个存储器中。处理器1301也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。

根据本公开的实施例,电子设备1300还可以包括输入/输出(I/O)接口1305,输入/输出(I/O)接口1305也连接至总线1304。电子设备1300还可以包括连接至I/O接口1305的以下部件中的一项或多项:包括键盘、鼠标等的输入部分1306;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1307;包括硬盘等的存储部分1308;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1309。通信部分1309经由诸如因特网的网络执行通信处理。驱动器1310也根据需要连接至I/O接口1305。可拆卸介质1311,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1310上,以便于从其上读出的计算机程序根据需要被安装入存储部分1308。

本公开实施例还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。

根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 1302和/或RAM 1303和/或ROM 1302和RAM 1303以外的一个或多个存储器。

本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。当计算机程序产品在计算机系统中运行时,该程序代码用于使计算机系统实现本公开实施例所提供的方法。

在该计算机程序被处理器1301执行时执行本公开实施例的系统/装置中限定的上述功能。根据本公开的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。

在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分1309被下载和安装,和/或从可拆卸介质1311被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。

在这样的实施例中,该计算机程序可以通过通信部分1309从网络上被下载和安装,和/或从可拆卸介质1311被安装。在该计算机程序被处理器1301执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。

根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如Java,C++,python,“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。

附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。

以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。

相关技术
  • 业务架构构建方法、装置、设备及存储介质
  • 一种数据存储方法、调度装置、系统、设备及存储介质
  • 一种元数据存储方法、装置、设备及计算机可读存储介质
  • 一种即时通信的数据存储方法、装置、电子设备和介质
  • 多版本数据存储管理方法及装置、电子设备、存储介质
  • 基于分布式架构的数据存储方法、装置、设备及存储介质
  • 基于数据存储的业务处理方法、装置、设备和介质
技术分类

06120115962891