CN104360879B - 一种数据处理方法及装置 - Google Patents
一种数据处理方法及装置 Download PDFInfo
- Publication number
- CN104360879B CN104360879B CN201410594493.6A CN201410594493A CN104360879B CN 104360879 B CN104360879 B CN 104360879B CN 201410594493 A CN201410594493 A CN 201410594493A CN 104360879 B CN104360879 B CN 104360879B
- Authority
- CN
- China
- Prior art keywords
- data
- dimension
- user
- calculated
- screening
- 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.)
- Active
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例公开了一种数据处理方法及装置,其中的方法可包括:接收用户输入的数据表以及用户配置的计算规则信息;解析所述用户配置的计算规则信息,从而获得计算方法和筛选条件;根据所述筛选条件对所述数据表进行筛选从而获得待计算的数据集;将所述待计算的数据集按照所述计算方法进行计算,从而获得数据处理结果。采用本发明,可以实现用户灵活配置计算规则,如此可以避免传统的将计算规则编码进具体应用系统程序带来的每次修改计算规则都需要重新修改程序代码的情况。
Description
技术领域
本发明涉及软件系统领域,尤其涉及一种数据处理方法及装置。
背景技术
随着银行对成本计量、盈利计算等数据处理方法的要求日益复杂,银行中需要应用越来越多的关于数据处理的计算规则,而且,随着政策、市场等变化,数据处理的计算规则也可能会相应地发生变化。但是,在传统的实现方法中,计算规则是程序员在深入理解计算规则后,通过编程的方式固化在软件中的。一旦编程完毕后,计算规则被相应固定下来,既不能被增加,也不能被改变。如果确实需要对规则进行修改,哪怕是很小的一点儿变化,都需要由技术人员在重新充分了解计算规则的情况下,修改代码来实现计算规则的变更。这样,计算规则的更改周期非常长,不能适应市场快速的变化,缺乏灵活性。
发明内容
本发明实施例提供一种数据处理方法及装置,实现了计算规则与软件系统相互分离,用户可以在不改变软件程序的情况下,灵活地配置计算规则,程序通过解析用户配置的计算规则执行对数据的计算处理。
第一方面,本发明实施例提供了一种数据处理方法,包括:
接收用户输入的数据表以及用户配置的计算规则信息;
解析所述用户配置的计算规则信息,从而获得计算方法和筛选条件;
根据所述筛选条件对所述数据表进行筛选从而获得待计算的数据集;
将所述待计算的数据集按照所述计算方法进行计算,从而获得数据处理结果。
第二方面,本发明实施例提供了一种数据处理装置,包括:
接收模块,用于接收用户输入的数据表以及用户配置的计算规则信息;
解析模块,用于解析所述用户配置的计算规则信息,从而获得计算方法和筛选条件;
筛选模块,用于根据所述筛选条件对所述数据表进行筛选从而获得待计算的数据集;
计算模块,用于将所述待计算的数据集按照所述计算方法进行计算,从而获得数据处理结果。
通过实施本发明实施例,具有以下有益效果:
本发明实施例中,用户可以实现在不改变系统程序的前提下,灵活地对数据的计算规则信息进行配置,其中计算规则信息包括了计算方法的配置信息和数据的维度配置信息,可以实现数据的计算方法灵活改变与数据维度的灵活改变,这样每次修改计算规则时,具体的应用软件系统不用再为计算规则的修改而经历冗长的软件程序修改、测试、发布周期,提升了用户对计算规则配置的灵活性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据处理方法的流程示意图;
图2为本发明实施例提供的另一种数据处理方法的流程示意图;
图3为本发明实施例提供的一种树形结构的结构示意图;
图4为本发明实施例提供的另一种数据处理方法的流程示意图;
图5为本发明实施例提供的一种数据处理装置的结构示意图;
图6为本发明实施例提供的另一种数据处理装置的结构示意图;
图7为本发明实施例提供的另一种数据处理装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
本发明实施例提供了一种数据处理方法及设备,可以由用户自己配置计算规则而不改变具体软件程序。为了便于理解本发明实施例,下面先对本发明实施例的数据处理方法进行描述。
请参阅图1,图1是本发明实施例公开的一种数据处理方法流程示意图。如图1所示,该数据处理方法可以包括以下步骤:
101、接收用户输入的数据表以及用户配置的计算规则信息。
本发明实施例中,用户欲对数据表进行计算时,可以向软件应用系统发送数据表,同时用户可以在软件应用系统的规则配置界面配置具体的计算规则信息,软件应用系统接收用户发送的数据表并接收用户配置的计算规则信息。其中的软件应用系统的规则配置界面可用多种计算机语言实现,包括但不限于:Java、C#、Ruby、PHP等常见语言。所述用户配置的计算规则信息用于限定对所述数据表中的数据进行的计算方法的配置以及筛选条件的配置,所述的数据表包括但不限于Excel表格,所述软件应用系统可以是任何应用领域和技术结构的应用系统,本发明实施例不作限定。
102、解析所述用户配置的计算规则信息,从而获得计算方法和筛选条件。
本发明实施例中,用户输入的计算规则信息可以包括计算方法的配置信息、数据对象的维度配置信息、数据动因的维度配置信息和数据结果的维度配置信息。用户可以根据自己的计算所需在软件应用系统的规则配置界面对计算方法、数据对象的维度、数据动因的维度和数据结果的维度分别进行相关的配置。软件应用系统解析用户配置的计算方法的配置情况,并将配置的计算方法作为对所述用户输入的数据对象表和数据动因表中的数据进行计算的计算方法。软件应用系统解析用户配置的数据对象的维度、数据动因的维度和数据结果的维度的配置情况,从而获得数据对象表中的数据的筛选条件、数据动因表中的数据的筛选条件以及分组条件等筛选条件。其中,软件应用系统解析用户配置的数据对象的维度配置情况,并将数据对象的维度配置作为用户输入的数据对象表中的数据的筛选条件,软件应用系统解析用户配置的数据动因的维度配置情况,并将数据动因的维度配置作为用户输入的数据动因表中的数据的筛选条件,软件应用系统解析用户配置的数据结果的维度配置情况,并将数据结果的维度配置作为用户输入的数据对象表中的数据的分组条件。其中,数据对象表中的数据的筛选条件、数据动因表中的数据的筛选条件以及分组条件等筛选条件可以是由数据的一个维度确定,也可以是由两个或两个以上的不同维度确定,本发明实施例不作限定。
103、根据所述筛选条件对所述数据表进行筛选从而获得待计算的数据集。
本发明实施例中,软件应用系统根据步骤102得到的数据对象表中的数据的筛选条件对用户输入的数据对象表中的数据进行筛选,将筛选出的数据作为待计算的数据对象集,根据步骤102得到的数据动因表中的数据的筛选条件对用户输入的数据动因表中的数据进行筛选,将筛选出的数据作为待计算的数据动因集。
104、将所述待计算的数据集按照所述计算方法进行计算,从而获得数据处理结果。
本发明实施例中,软件应用系统将从步骤103得到的待计算的数据对象集和待计算的数据动因集按照步骤102中的用户在软件应用系统的配置界面中配置的计算方法进行计算,从而获得数据处理结果。
请参阅图2,图2是本发明实施例提供的另一种数据处理方法的流程示意图。如图2所示,该数据处理方法可以包括以下步骤:
201、创建一个维度树详细信息表,所述维度树详细信息表包括了所述用户输入的数据表中的所有维度,并存储了所述维度树各层级的节点值。
本发明实施例中,所述维度树详细信息表中包括了用户输入的数据表中的数据涉及到的所有维度,在软件应用系统中,我们将程序可以进行筛选和计算的维度作为关键维度,为了方便理解,可以创建一个根节点作为所有关键维度的根节点,每一个关键维度以及该关键维度下的所有子节点共同作为一棵关键维度树,每棵关键维度树为根节点的一棵子树,软件应用系统需要几个关键维度,则在根节点下构建几棵关键维度树。每棵关键维度树中每一层级对应的所有节点编号和对应的节点值都存储到所述维度树详细信息表中,其中的节点编号是用来区分不同的节点值。
具体的,请参阅图3,图3是一棵维度树的树形图,该维度树的根节点下共有4棵关键维度树,4棵关键维度树节点值分别是财务要素、建行机构、产品分组和对公对私,其中关键维度树的节点值为财务要素的关键维度树中含有2个叶子节点,其中节点编号为1的节点值为总账费用,节点编号为2的节点值为月账费用。关键维度树的节点值为建行机构的关键维度树中共含有4个节点,在该棵关键维度树中的第一层级包括2个节点,分别是节点编号为1的网点型和节点编号为2的服务型,且网点型是这棵关键维度树的第一层级中间节点,网点型的下一层级包括2个叶子节点,其中编号为3的节点值为C网点,编号为4的节点值为D网点,服务型的下一层级不包括任何节点,因此服务型是建行机构这一关键维度树中的第一层级的叶子节点。关键维度树的节点值为产品分组的关键维度树中含有2个叶子节点,其中节点编号为1的节点值为A产品,节点编号为2的节点值为B产品。关键维度树的节点值为对公对私的关键维度树中含有2个叶子节点,其中节点编号为1的节点值为对公,节点编号为2的节点值为对私。
与该维度树的树形图对应的维度树详细信息表如表1所示:
具体的,关键维度树的节点值为财务要素的关键维度树中含有2个叶子节点,分别是总账费用和月账费用,则在维度树详细信息表中添加2列对应于财务要素这一关键维度的叶子节点信息,分别记录2个叶子节点的相关信息,其中叶子节点值为总账费用的叶子节点编号填写为1,叶子节点值为月账费用的叶子节点编号填写为2,由于该2个叶子节点是财务要素这一关键维度树中的第一层级的叶子节点,因此不涉及所述叶子节点的第一层级中间节点等,因此第一层级中间节点的节点编号、第一层级中间节点值等不进行填写。同样的,关键维度树的节点值为建行机构的关键维度树中含有3个叶子节点,分别是C网点、D网点和服务型,则在维度树详细信息表中添加3列对应于建行机构这一关键维度的叶子节点信息,分别记录3个叶子节点的相关信息,其中叶子节点值为C网点的叶子节点编号填写为3,C网点在建行机构这一关键维度树中对应的第一层级中间节点是网点型,因此在C网点这条记录中对应于第一层级中间节点值填写为网点型,第一层级中间节点编号填写为1,叶子节点值为D网点的叶子节点编号填写为4,D网点在建行机构这一关键维度树中对应的第一层级中间节点是网点型,因此在D网点这条记录中对应于第一层级中间节点值填写为网点型,第一层级中间节点编号填写为1,叶子节点值为服务型的叶子节点编号填写为2,由于服务型是建行机构这一关键维度树中的第一层级的叶子节点,因此不涉及所述叶子节点的第一层级中间节点等,因此第一层级中间节点的节点编号、第一层级中间节点值等不进行填写。维度树中的其他叶子节点的节点信息的填写记录方法同上述所述。
表1
维度树详细信息表中是以一列记录对应一棵关键维度树中的一个叶子节点,该列记录将所述叶子节点对应的关键维度树节点编号、关键维度树节点值、第一层级节点编号、第一层级节点值、第二层级节点编号、第二层级节点值…等都作了明细的记录,本实施例中的叶子节点只涉及到第一层级中间节点节点,对于其他情况中叶子节点涉及多层级中间节点的只需要在维度树详细信息表中添加对应的各层级节点编号和各层级节点值即可。
202、接收用户输入的数据表以及用户配置的计算规则信息,用户输入的数据表中的数据至少包括1个维度。
本发明实施例中,用户输入的数据表中的数据至少包括一个维度,用户配置的计算规则信息可以包括计算方法的配置信息和数据维度的配置信息。
具体的,请参阅表2和表3,其中,表2为用户输入的数据表,由于本实施例中介绍的用户配置的计算规则信息中的计算方法为汇总法,用户输入的数据表只涉及到数据对象表,因此本实施例中的用户输入的数据表即为数据对象表。表3为用户在软件应用系统的规则配置界面配置的计算规则,同样的,由于本实施例中介绍的计算规则中的计算方法为汇总法,用户在软件应用系统中配置的计算规则信息中的数据维度信息只涉及到数据对象的维度配置信息和数据结果的维度配置信息。
表2
表3
其中,在软件应用系统的规则配置界面中,用户对计算方法配置的是汇总法,对数据维度的配置分为了数据对象的维度配置和数据结果的维度配置。其中对数据对象表中的财务要素这一关键维度配置的是节点编号1,对数据对象表中的建行机构这一关键维度配置的是节点编号1,对数据对象表中的产品分组这一关键维度配置的是ALL,对数据对象表中的对公对私这一关键维度配置的是ALL,对数据结果中的财务要素这一关键维度配置的是节点编号1,对数据结果中的建行机构这一关键维度配置的是分组,对数据结果中的产品分组这一关键维度配置的是ALL,对数据结果中的对公对私这一关键维度配置的是ALL。
203、根据所述用户配置的计算规则信息从所述维度树详细信息表中选择符合所述计算规则信息的节点值,将选择的节点值作为所述筛选条件。
从表3中可以得到用户配置的计算规则信息中的计算方法是汇总法,用户对数据对象表中的财务要素这一关键维度配置的是节点编号1,则从表1中的维度树详细信息表中查找关键维度树节点值为财务要素的记录,从找到的记录中查找节点编号为1的节点值,可以得到该节点值为总账费用,则将总账费用作为用户对所述数据对象表中的数据在财务要素这一关键维度下的筛选条件,同样的,用户对数据对象表中的建行机构这一关键维度配置的是节点编号1,则从表1中的维度树详细信息表中查找关键维度树节点值为建行机构的记录,从找到的记录中查找节点编号为1的节点值,可以得到该节点值为网点型,由于网点型又分为C网点和D网点,则将C网点、D网点共同作为用户对所述数据对象表中的数据在建行机构这一关键维度下的筛选条件,同样的用户对数据对象表中的产品分组这一关键维度配置的是ALL,即不对该关键维度进行筛选,该关键维度下的节点值A产品和B产品将全部选出共同作为用户对所述数据对象表中的数据在产品分组这一关键维度下的筛选条件,同样的用户对数据对象表中的对公对私这一关键维度配置的是ALL,即不对该关键维度进行筛选,该关键维度下的节点值对公和对私将全部选出共同作为用户对所述数据对象表中的数据在对公对私这一关键维度下的筛选条件。
204、根据所述筛选条件对所述数据表进行筛选从而获得待计算的数据集。
本实施例介绍的用户配置的计算规则信息中的计算方法是汇总法,因此待计算的数据集只涉及到待计算的数据对象集。从步骤203可以得到数据对象表中的数据的筛选条件,将用户输入的数据对象表中的数据按照所述筛选条件进行筛选,将筛选出的数据作为待计算的数据对象集。
具体的,从步骤203中得到的筛选条件为财务要素为总账费用、建行机构为C网点或D网点,产品分组为A产品或B产品,对公对私为对公或对私。按照该筛选条件对表2中的数据进行筛选,可以得到表4中的数据集,即为待计算的数据对象集。
表4
205、将所述待计算的数据集按照所述计算方法进行计算,从而获得数据处理结果。
具体的,将表4中待计算的数据对象集按照汇总法进行计算处理,从用户配置的计算规则中的结果的维度配置可以得到,用户对结果配置了按照建行机构进行分组,因此按照待计算的数据集中的网点型下的C网点和D网点对待计算的数据集进行分组处理,即将财务要素为总账费用且建行机构为C网点的所有数据进行汇总处理,将财务要素为总账费用且建行机构为D网点的所有数据进行汇总处理,从而得到最终的汇总结果,经过汇总法这一计算处理之后的数据处理结果如表5。
表5
请参阅图4,图4为本发明实施例提供的另一种数据处理方法的流程示意图。如图4所示,该数据处理方法可以包括以下步骤:
401、创建一个维度树详细信息表,所述维度树详细信息表包括了所述用户输入的数据表中的所有维度,并存储了所述维度树各层级的节点值。
本实施例的步骤401可参阅图2所示实施例的步骤201,在此不再赘述。
402、接收用户输入的数据对象表和数据动因表以及用户配置的计算方法配置信息、数据对象的维度配置信息、数据动因的维度配置信息以及数据结果的维度配置信息。
本发明中的所接收用户输入的数据对象表和数据动因表可以相同也可以不同,本实施例中的数据对象表与数据动因表选择的是同一张表。具体的,请参阅表2,其中表2为用户输入的数据对象表和数据动因表。
请参阅表6,表6是用户在软件应用系统的规则配置界面配置的计算方法配置信息、数据对象的维度配置信息、数据动因的维度配置信息以及数据结果的维度配置信息。
表6
其中,用户对计算方法配置的是除法,本实施例中的除法是为了计算各个产品分组对各个建行机构网点产生的费用比值。对数据维度的配置分为数据对象的维度配置、数据动因的维度配置和数据结果的维度配置。其中对数据对象表中的财务要素这一关键维度配置的是节点编号1,对数据对象表中的建行机构这一关键维度配置的是节点编号1,对数据对象表中的产品组分这一关键维度配置的是ALL,对数据对象表中的对公对私这一关键维度配置的是ALL,对数据动因表中的财务要素这一关键维度配置的是节点编号1,对数据动因表中的建行机构这一关键维度配置的是节点编号1,对数据动因表中的产品分组这一关键维度配置的是ALL,对数据动因表中的对公对私这一关键维度配置的是ALL,对数据结果中的财务要素这一关键维度配置的是节点编号1,对数据结果中的建行机构这一关键维度配置的是节点编号1,对数据结果中的产品分组这一关键维度配置的是分组,对数据结果中的对公对私这一关键维度配置的是ALL。
403、根据接收到的所述数据对象的维度配置信息从所述维度树详细信息表中选择满足所述数据对象的维度配置信息的第一节点值,将所述第一节点值作为所述数据对象表中的数据筛选条件,根据接收到的所述数据动因的维度配置信息从所述维度树详细信息表中选择满足所述数据动因的维度配置信息的第二节点值,将所述第二节点值作为所述数据动因表中的数据筛选条件。
从表6中可以得到,用户对数据对象表中的财务要素这一关键维度配置的是节点编号1,则从表1中的维度树详细信息表中查找关键维度树节点值为财务要素的记录,从找到的记录中查找节点编号为1的节点值,可以得到该节点值为总账费用,则将总账费用作为用户对所述数据对象表中的数据在财务要素这一关键维度下的筛选条件,同样的,用户对数据对象表中的建行机构这一关键维度配置的是节点编号1,则从表1中的维度树详细信息表中查找关键维度树节点值为建行机构的记录,从找到的记录中查找节点编号为1的节点值,可以得到该节点值为网点型,由于网点型又分为C网点和D网点,则将C网点、D网点共同作为用户对所述数据对象表中的数据在建行机构这一关键维度下的筛选条件,同样的,用户对数据对象表中的产品分组这一关键维度配置的是ALL,即不对该关键维度进行筛选,该关键维度下的节点值A产品和B产品将全部选出共同作为用户对所述数据对象表中的数据在产品分组这一关键维度下的筛选条件,同样的,用户对数据对象表中的对公对私这一关键维度配置的是ALL,即不对该关键维度进行筛选,该关键维度下的节点值对公和对私将全部选出共同作为用户对所述数据对象表中的数据在对公对私这一关键维度下的筛选条件。
用户对数据动因表中的财务要素这一关键维度配置的是节点编号1,则从表1中的维度树详细信息表中查找关键维度树节点值为财务要素的记录,从找到的记录中查找节点编号为1的节点值,可以得到该节点值为总账费用,则将总账费用作为用户对所述数据动因表中的数据在财务要素这一关键维度下的筛选条件,同样的,用户对数据动因表中的建行机构这一关键维度配置的是节点编号1,则从表1中的维度树详细信息表中查找关键维度树节点值为建行机构的记录,从找到的记录中查找节点编号为1的节点值,可以得到该节点值为网点型,由于网点型又分为C网点和D网点,则将C网点、D网点共同作为用户对所述数据动因表中的数据在建行机构这一关键维度下的筛选条件,同样的,用户对数据动因表中的产品分组这一关键维度配置的是ALL,即不对该关键维度进行筛选,该关键维度下的节点值A产品和B产品将全部选出共同作为用户对所述数据动因表中的数据在产品分组这一关键维度下的筛选条件,同样的,用户对数据动因表中的对公对私这一关键维度配置的是ALL,即不对该关键维度进行筛选,该关键维度下的节点值对公和对私将全部选出共同作为用户对所述数据动因表中的数据在对公对私这一关键维度下的筛选条件。
404、按照所述数据对象表中的数据筛选条件对所述数据对象表中的数据进行筛选,以将满足所述数据对象表中的数据筛选条件的数据集筛选出来,作为所述待计算的数据对象集,按照所述数据动因表中的数据筛选条件对所述数据动因表中的数据进行筛选,以将满足所述数据动因表中的数据筛选条件的数据集筛选出来,作为所述待计算的数据动因集。
从步骤403可以得到用户配置的数据对象表中的数据的筛选条件和数据动因表中的数据的筛选条件,将用户输入的数据对象表中的数据按照数据对象表中的数据的筛选条件进行筛选,将筛选出的数据作为待计算的数据对象集,将用户输入的数据动因表中的数据按照数据动因表中的数据的筛选条件进行筛选,将筛选出的数据作为待计算的数据动因集。
具体的,从步骤403中得到的数据对象的筛选条件为财务要素为总账费用、建行机构为C网点或D网点,产品分组为A产品或B产品,对公对私为对公或对私。数据动因的筛选条件为财务要素为总账费用、建行机构为C网点或D网点,产品分组为A产品或B产品,对公对私为对公或对私。按照数据对象的筛选条件对表2中的数据进行筛选,可以得到表4中的数据对象集,即为待计算的数据对象集,按照数据动因的筛选条件对表2中的数据进行筛选,可以得到表4中的数据动因集,即为待计算的数据动因集。
由于本实施例是为了计算各个产品分组对各个建行机构网点产生的费用比值,因此为了方便计算,可以将得到的待计算的数据动因集按照网点型这一维度进行汇总,对于其他情况下的用户输入的数据动因表中的数据可以根据用户的具体需要在软件系统程序中使用编程语言对数据动因表中的数据按照某一维度进行分组操作。
具体的,将表4中的待计算的数据动因集按照网点型进行汇总可以得到表5中的待计算的动因集。
405、根据接收到的所述数据结果的维度配置信息,从所述维度树详细信息表中选择满足所述数据结果的维度配置信息的第三节点值,将所述第三节点值作为所述待计算的数据对象集的分组条件,将所述数据对象集表中的数据按照所述分组条件进行分组。
具体的,从表6中可以得到用户对数据结果中的财务要素这一关键维度配置的是节点编号1,则从表1中的维度树详细信息表中查找关键维度树节点值为财务要素的记录,从找到的记录中查找节点编号为1的节点值,可以得到该节点值为总账费用,则将总账费用作为待计算的数据对象集的分组条件,同样的,用户对数据结果中的建行机构这一关键维度配置的是节点编号1,则从表1中的维度树详细信息表中查找关键维度树节点值为建行机构的记录,从找到的记录纸查找节点编号为1的节点值,可以得到该节点值为网点型,由于网点型又分为C网点和D网点,则将C网点、D网点共同作为用户对待计算的数据对象集的分组条件,同样的用户对数据结果中的产品分组这一关键维度配置的为分组,则将产品分组作为用户对待计算的数据对象集的分组条件,同样的用户对数据结果中的对公对私这一关键维度配置的为ALL,即不对该维度下的数据进行筛选,该维度下的节点值将全部选出。
具体的,将表4中的待计算的数据对象集按照总账费用、网点型和产品分组这三个维度进行分组,即按照这三个维度对待计算的数据对象集进行汇总,分组之后可以得到表7中的待计算的数据对象集。
表7
406、将分组之后的待计算的数据对象集与所述待计算的数据动因集按照所述计算规则中的所述计算方法进行计算,从而获得数据处理结果。
将步骤405得到的最终的待计算的数据对象集表7与待计算的数据动因集表5进行除法计算,可以得到表8中的计算处理结果。
表8
具体的,本实施例中的除法是为了计算各个产品分组对各个建行机构网点产生的费用比值,当计算A产品对C网点产生的总账费用比值时,则将表7中C网点下A产品的总账费用300与表5中C网点下的总账费用450相除,可以得到A产品在C网点的总账费用比值0.667,当计算B产品对C网点产生的费用比例时,则将表7中C网点下B产品的总账费用150与表5中C网点下的总账费用450相除,可以得到B产品在C网点的总账费用比值0.333,当计算A产品对D网点产生的费用比例时,则将表7中D网点下A产品的总账费用150与表5中D网点下的总账费用500相除,可以得到A产品在D网点的总账费用比值0.3,当计算B产品对D网点产生的费用比例时,则将表7中D网点下B产品的总账费用350与表5中D网点下的总账费用500相除,可以得到B产品在D网点的总账费用比值0.7。
本实施例只给出了除法的计算方法,同样的,对数据进行乘法计算时,可以按照上述的配置流程对用户输入的数据对象表、数据动因表分别进行维度配置,将用户的维度配置信息作为筛选条件对用户输入的数据对象表和数据动因表分别进行筛选,从而得到最终的待计算的数据对象集和数据动因集,再将待计算的数据对象集与数据动因集进行乘法计算。
同样的,对于百分比法,可以先按照除法计算方法对数据进行计算得到比值,再按照乘法计算方法对上述除法得到的比值进行乘法计算,从而得到最终的百分比拆分结果。
上述详细阐述了本发明实施例的方法,下面为了便于更好地实施本发明实施例的上述方案,相应地,下面还提供用于配合实施上述方案的相关装置。
请参阅图5,为本发明实施例提供的一种数据处理装置的结构示意图,该数据处理装置50可包括:接收模块501、解析模块502、筛选模块503和计算模块504。
接收模块501,用于接收用户输入的数据表以及用户配置的计算规则信息。
本发明实施例中,用户欲对数据表进行计算时,可以向软件应用系统发送数据表,同时用户可以在软件应用系统的规则配置界面配置具体的计算规则信息,软件应用系统接收用户发送的数据表并接收用户配置的计算规则信息。其中的软件应用系统的规则配置界面可用多种计算机语言实现,包括但不限于:Java、C#、Ruby、PHP等常见语言。所述用户配置的计算规则信息用于限定对所述数据表中的数据进行的计算方法的配置以及筛选条件的配置,所述的数据表包括但不限于Excel表格,所述软件应用系统可以是任何应用领域和技术结构的应用系统,本发明实施例不作限定。
解析模块502,用于解析所述用户配置的计算规则信息,从而获得计算方法和筛选条件。
本发明实施例中,软件应用系统接收到的用户输入的计算规则信息可以包括计算方法的配置信息、数据对象的维度配置信息、数据动因的维度配置信息和数据结果的维度配置信息。用户可以根据自己的计算所需在软件应用系统的规则配置界面对计算方法、数据对象的维度、数据动因的维度和数据结果的维度分别进行相关的配置。软件应用系统解析用户配置的计算方法的配置情况,并将配置的计算方法作为对所述用户输入的数据对象表和数据动因表中的数据进行计算的计算方法。软件应用系统解析用户配置的数据对象的维度、数据动因的维度和数据结果的维度的配置情况,从而获得数据对象表中的数据的筛选条件、数据动因表中的数据的筛选条件以及分组条件等筛选条件。其中,软件应用系统解析用户配置的数据对象的维度配置情况,并将数据对象的维度配置作为用户输入的数据对象表中的数据的筛选条件,软件应用系统解析用户配置的数据动因的维度配置情况,并将数据动因的维度配置作为用户输入的数据动因表中的数据的筛选条件,软件应用系统解析用户配置的数据结果的维度配置情况,并将数据结果的维度配置作为用户输入的数据对象表中的数据的分组条件。其中,数据对象表中的数据的筛选条件、数据动因表中的数据的筛选条件以及分组条件等筛选条件可以是由数据的一个维度确定,也可以是由两个或两个以上的不同维度确定,本发明实施例不作限定。
筛选模块503,用于根据所述筛选条件对所述数据表进行筛选从而获得待计算的数据集。
本发明实施例中,软件应用系统根据解析模块502得到的数据对象表中的数据的筛选条件对用户输入的数据对象表中的数据进行筛选,将筛选出的数据作为待计算的数据对象集,根据解析模块502得到的数据动因表中的数据的筛选条件对用户输入的数据动因表中的数据进行筛选,将筛选出的数据作为待计算的数据动因集。
计算模块504,用于将所述待计算的数据集按照所述计算方法进行计算,从而获得数据处理结果。
本发明实施例中,软件应用系统将从筛选模块503得到的待计算的数据对象集和待计算的数据动因集按照解析模块502中的计算方法进行计算,从而获得数据处理结果。
可理解的是,数据处理装置50中各个模块的功能可对应参考上述方法实施例中图1实施例的具体实施方式,在此不再赘述。
请参阅图6,为本发明实施例提供的另一种数据处理装置的结构示意图,该数据处理装置60可包括:接收模块501、解析模块502、筛选模块503、计算模块504、创建模块505和筛选条件获得模块506,其中,接收模块501、解析模块502、筛选模块503、计算模块504的结构和功能可参阅图5所示实施例的相关描述,在此不再赘述。
创建模块505,用于创建一个维度树详细信息表,所述维度树详细信息表包括了所述用户输入的数据表中的所有维度,并存储了所述维度树各层级的节点值。
筛选条件获得模块506,用于根据所述用户配置的计算规则信息从所述维度树详细信息表中选择符合所述计算规则信息的节点值,将选择的节点值作为所述筛选条件。
可理解的是,数据处理装置60中各个模块的功能可对应参考上述方法实施例中图2实施例的具体实施方式,在此不再赘述。
请参阅图7,为本发明实施例提供的另一种数据处理装置的结构示意图,该数据处理装置70可包括:接收模块501、解析模块502、筛选模块503、分组单元5041、计算单元5042、创建模块505和筛选条件获得模块506,其中,接收模块501、解析模块502和筛选模块503的结构和功能可参阅图5所示实施例的相关描述,创建模块505和筛选条件获得模块506可参阅图6所示实施例的相关描述,在此不再赘述。
分组单元5041,用于根据接收到的所述数据结果的维度配置信息,从所述维度树详细信息表中选择满足所述数据结果的维度配置信息的第三节点值,将所述第三节点值作为所述待计算的数据对象集的分组条件,将所述数据对象集表中的数据按照所述分组条件进行分组。
计算单元5042,用于将分组之后的待计算的数据对象集与所述待计算的数据动因集按照所述计算规则中的所述计算方法进行计算,从而获得数据处理结果。
可理解的是,数据处理装置70中各个模块的功能可对应参考上述方法实施例中图4实施例的具体实施方式,在此不再赘述。
综上所述,通过实施本发明实施例,用户可以实现在不改变系统程序的前提下,灵活地对数据的计算规则信息进行配置,其中计算规则信息包括了计算方法的配置信息和数据的维度配置信息,可以实现数据的计算方法灵活改变与数据维度的灵活改变,当计算所需的数据维度改变时,只需要在本发明中的维度树详细信息表中添加相应的维度信息即可。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
接收用户输入的数据表以及用户配置的计算规则信息;
解析所述用户配置的计算规则信息,从而获得计算方法和筛选条件;
根据所述筛选条件对所述数据表进行筛选从而获得待计算的数据集;
将所述待计算的数据集按照所述计算方法进行计算,从而获得数据处理结果;
在所述接收用户输入的数据表以及用户配置的计算规则信息之前,还包括:
创建一个维度树详细信息表,所述维度树详细信息表包括了所述用户输入的数据表中的所有维度,并存储了所述维度树各层级的节点值;
所述接收用户输入的数据表以及用户配置的计算规则信息之后,包括:
根据所述用户配置的计算规则信息从所述维度树详细信息表中选择符合所述计算规则信息的节点值,将选择的节点值作为所述筛选条件;
所述用户配置的计算规则信息包括:数据对象的维度配置信息以及数据动因的维度配置信息,
根据所述用户配置的计算规则信息从所述维度树详细信息表中选择符合所述计算规则信息的节点值,将选择的节点值作为所述筛选条件,包括:
根据接收到的所述数据对象的维度配置信息从所述维度树详细信息表中选择满足所述数据对象的维度配置信息的第一节点值,将所述第一节点值作为所述数据对象表中的数据筛选条件;
根据接收到的所述数据动因的维度配置信息从所述维度树详细信息表中选择满足所述数据动因的维度配置信息的第二节点值,将所述第二节点值作为所述数据动因表中的数据筛选条件。
2.根据权利要求1所述的方法,其特征在于,所述用户输入的数据表中的数据至少包括1个维度。
3.根据权利要求1所述的方法,其特征在于,
所述用户输入的数据表包括:数据对象表和数据动因表;
所述根据所述筛选条件对所述数据表进行筛选从而获得待计算的数据集的步骤包括:
按照所述数据对象表中的数据筛选条件对所述数据对象表中的数据进行筛选,以将满足所述数据对象表中的数据筛选条件的数据集筛选出来,作为所述待计算的数据对象集;
按照所述数据动因表中的数据筛选条件对所述数据动因表中的数据进行筛选,以将满足所述数据动因表中的数据筛选条件的数据集筛选出来,作为所述待计算的数据动因集。
4.根据权利要求1所述的方法,其特征在于,所述用户配置的计算规则信息还包括数据结果的维度配置信息以及计算方法配置信息,
将所述待计算的数据集按照所述计算方法进行计算,从而获得数据处理结果包括:
根据接收到的所述数据结果的维度配置信息,从所述维度树详细信息表中选择满足所述数据结果的维度配置信息的第三节点值,将所述第三节点值作为所述待计算的数据对象集的分组条件,将所述数据对象集按照所述分组条件进行分组;
将分组之后的待计算的数据对象集与所述待计算的数据动因集按照所述计算规则中的所述计算方法进行计算,从而获得数据处理结果。
5.根据权利要求1~4任一项所述的方法,其特征在于,所述计算方法包括:百分比法、汇总法、除法和乘法。
6.一种数据处理装置,其特征在于,包括:
接收模块,用于接收用户输入的数据表以及用户配置的计算规则信息;
解析模块,用于解析所述用户配置的计算规则信息,从而获得计算方法和筛选条件;
筛选模块,用于根据所述筛选条件对所述数据表进行筛选从而获得待计算的数据集;
计算模块,用于将所述待计算的数据集按照所述计算方法进行计算,从而获得数据处理结果;
所述装置还包括创建模块以及筛选条件获得模块,
所述创建模块用于创建一个维度树详细信息表,所述维度树详细信息表包括了所述用户输入的数据表中的所有维度,并存储了所述维度树各层级的节点值;
所述筛选条件获得模块用于根据所述用户配置的计算规则信息从所述维度树详细信息表中选择符合所述计算规则信息的节点值,将选择的节点值作为所述筛选条件;
所述用户配置的计算规则信息包括:数据对象的维度配置信息以及数据动因的维度配置信息,
所述筛选条件获得模块具体用于根据接收到的所述数据对象的维度配置信息从所述维度树详细信息表中选择满足所述数据对象的维度配置信息的第一节点值,将所述第一节点值作为所述数据对象表中的数据筛选条件;
所述筛选条件获得模块具体用于根据接收到的所述数据动因的维度配置信息从所述维度树详细信息表中选择满足所述数据动因的维度配置信息的第二节点值,将所述第二节点值作为所述数据动因表中的数据筛选条件。
7.根据权利要求6所述的装置,其特征在于,所述用户输入的数据表中的数据至少包括1个维度。
8.根据权利要求6所述的装置,其特征在于,所述用户输入的数据表包括:数据对象表和数据动因表;
所述筛选模块具体用于按照所述数据对象表中的数据筛选条件对所述数据对象表中的数据进行筛选,以将满足所述数据对象表中的数据筛选条件的数据集筛选出来,作为所述待计算的数据对象集;
所述筛选模块具体用于按照所述数据动因表中的数据筛选条件对所述数据动因表中的数据进行筛选,以将满足所述数据动因表中的数据筛选条件的数据集筛选出来,作为所述待计算的数据动因集。
9.根据权利要求6所述的装置,其特征在于,所述用户配置的计算规则信息包括数据结果的维度配置信息以及计算方法配置信息,所述计算模块包括分组单元以及计算单元,
所述分组单元用于根据接收到的所述数据结果的维度配置信息,从所述维度树详细信息表中选择满足所述数据结果的维度配置信息的第三节点值,将所述第三节点值作为所述待计算的数据对象集的分组条件,将所述数据对象集按照所述分组条件进行分组;
所述计算单元用于将分组之后的待计算的数据对象集与所述待计算的数据动因集按照所述计算规则中的所述计算方法进行计算,从而获得数据处理结果。
10.根据权利要求6~9任一项所述的装置,其特征在于,所述计算方法包括:百分比法、汇总法、除法和乘法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410594493.6A CN104360879B (zh) | 2014-10-29 | 2014-10-29 | 一种数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410594493.6A CN104360879B (zh) | 2014-10-29 | 2014-10-29 | 一种数据处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104360879A CN104360879A (zh) | 2015-02-18 |
CN104360879B true CN104360879B (zh) | 2019-03-01 |
Family
ID=52528143
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410594493.6A Active CN104360879B (zh) | 2014-10-29 | 2014-10-29 | 一种数据处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104360879B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106156307A (zh) * | 2016-06-30 | 2016-11-23 | 北京奇虎科技有限公司 | 一种实时计算平台的数据处理系统和方法 |
CN108717404A (zh) * | 2018-05-11 | 2018-10-30 | 广州天维信息技术股份有限公司 | 一种基于绩效考核系统的数据处理方法和系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103853820A (zh) * | 2014-02-20 | 2014-06-11 | 北京用友政务软件有限公司 | 一种数据处理方法及系统 |
CN103870455A (zh) * | 2012-12-07 | 2014-06-18 | 阿里巴巴集团控股有限公司 | 一种多数据源的数据集成处理方法和装置 |
CN103942197A (zh) * | 2013-01-17 | 2014-07-23 | 阿里巴巴集团控股有限公司 | 数据监控处理方法及设备 |
-
2014
- 2014-10-29 CN CN201410594493.6A patent/CN104360879B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103870455A (zh) * | 2012-12-07 | 2014-06-18 | 阿里巴巴集团控股有限公司 | 一种多数据源的数据集成处理方法和装置 |
CN103942197A (zh) * | 2013-01-17 | 2014-07-23 | 阿里巴巴集团控股有限公司 | 数据监控处理方法及设备 |
CN103853820A (zh) * | 2014-02-20 | 2014-06-11 | 北京用友政务软件有限公司 | 一种数据处理方法及系统 |
Non-Patent Citations (1)
Title |
---|
银行报表系统的设计与实现;牛丁然;《中国优秀硕士学位论文全文数据库信息科技辑》;20110915;第2011年卷(第9期);第I138-425页 |
Also Published As
Publication number | Publication date |
---|---|
CN104360879A (zh) | 2015-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Squartini et al. | Randomizing world trade. I. A binary network analysis | |
Woodring et al. | In‐situ Sampling of a Large‐Scale Particle Simulation for Interactive Visualization and Analysis | |
CN103810321B (zh) | 滤波器设计工具 | |
CN107450902A (zh) | 具有可视化建模工具的系统架构 | |
WO2016141282A1 (en) | Convolutional neural network with tree pooling and tree feature map selection | |
CN106843844A (zh) | 一种自定义视图的展示装置 | |
CN109885378A (zh) | 模型训练方法、装置、计算机设备及计算机可读存储介质 | |
US20230342663A1 (en) | Machine learning application method, device, electronic apparatus, and storage medium | |
CN104980462B (zh) | 分布式计算方法、装置和系统 | |
Ziegler et al. | Balanced Hodge Laplacians optimize consensus dynamics over simplicial complexes | |
CN106708965A (zh) | 一种数据的处理方法和装置 | |
KR101665861B1 (ko) | IoT 환경에서의 데이터 처리 시스템 및 방법 | |
CN109255480A (zh) | 间佣率预测方法、装置、计算机设备及存储介质 | |
CN104360879B (zh) | 一种数据处理方法及装置 | |
Mirko et al. | Hadoop. TS: large-scale time-series processing | |
Yao et al. | Building architectures for data‐intensive science using the ADAGE framework | |
CN108985352A (zh) | 一种基于大数据的聚类方法、装置及电子设备 | |
Sciacca et al. | VisIVO Science Gateway: a Collaborative Environment for the Astrophysics Community. | |
CN108701148A (zh) | 使用分类属性的数据挖掘 | |
CN104850591B (zh) | 一种数据的转换存储方法及装置 | |
CN106778864A (zh) | 初始样本选择方法及装置 | |
Luo et al. | Autosmart: An efficient and automatic machine learning framework for temporal relational data | |
CN104572921A (zh) | 一种跨数据中心的数据同步方法和装置 | |
Novak et al. | Current usage of component based principles for developing web applications with frameworks: a literature review | |
Hendrik et al. | Towards semantic mashup tools for big data analysis |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |