CN112669160B - 数据处理方法、装置、电子设备及存储介质 - Google Patents
数据处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN112669160B CN112669160B CN202110288517.5A CN202110288517A CN112669160B CN 112669160 B CN112669160 B CN 112669160B CN 202110288517 A CN202110288517 A CN 202110288517A CN 112669160 B CN112669160 B CN 112669160B
- Authority
- CN
- China
- Prior art keywords
- service node
- target
- service
- amount
- target user
- 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
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本申请提供一种数据处理方法、装置、电子设备及存储介质,涉及数据处理技术领域。其中,该方法可以应用于数据处理平台,数据处理平台上部署多个服务节点,该方法包括:接收终端设备发送的请求信息;根据目标类型、目标数额以及目标用户所属服务节点,在数据处理平台的至少一个目标服务节点上为目标用户分配业务对象,数据处理平台预先分别为各服务节点配置预设数额的业务对象;向终端设备发送响应信息,响应信息用于指示是否为目标用户成功分配业务对象,应用本申请,可以在数据处理平台的至少一个目标服务节点上为目标用户分配业务对象,实现跨服务节点分配,可以充分利用各服务节点上业务对象,提高业务对象利用率,进而提高数据处理效率。
Description
技术领域
本申请涉及数据处理技术领域,特别涉及一种数据处理方法、装置、电子设备及存储介质。
背景技术
现有的分布式数据处理平台中,可以在服务节点上为用户分配各自的业务对象,不同服务节点上的业务对象相互独立、互不影响。当前服务节点上的业务对象,只能为当前服务节点上用户使用,非当前服务节点上的用户则不可用。
因此,现有的数据处理方法中,若当前服务节点的业务对象的可用数额大于或等于当前服务节点上用户的请求数额,则可以为该用户成功分配相应数量的业务对象,否则将分配失败。
可以看出,现有的数据处理方法比较简单,数据处理平台中各服务节点上的业务对象未被充分利用,利用率较低。
发明内容
本申请的目的在于,针对上述现有技术中的不足,提供一种数据处理方法、装置、电子设备及存储介质,可以提高业务对象的利用率。
为实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本发明提供一种数据处理方法,应用于数据处理平台,所述数据处理平台上部署多个服务节点,所述方法包括:
接收终端设备发送的请求信息,所述请求信息用于请求为目标用户分配目标数额且具有目标类型的业务对象;
根据所述目标类型、所述目标数额以及所述目标用户所属服务节点,在所述数据处理平台的至少一个目标服务节点上为所述目标用户分配业务对象,其中,各所述目标服务节点上所分配的业务对象的数额之和等于所述目标数额,所述数据处理平台预先分别为各服务节点配置预设数额的业务对象;
向所述终端设备发送响应信息,所述响应信息用于指示是否为所述目标用户成功分配业务对象。
在可选的实施方式中,所述根据所述目标类型、所述目标数额以及所述目标用户所属服务节点,在所述数据处理平台的至少一个目标服务节点上为所述目标用户分配业务对象,包括:
若所述目标类型为第一类型,则确定所述目标用户所属服务节点的第一业务对象的可用数额是否大于或等于所述目标数额,所述第一业务对象为属于所述第一类型的业务对象;
若所述目标用户所属服务节点的第一业务对象的可用数额大于或等于所述目标数额,则在所述目标用户所属服务节点上为所述目标用户分配所述目标数额的业务对象,并根据所述目标数额更新所述目标用户所属服务节点的第一业务对象的可用数额。
在可选的实施方式中,所述方法还包括:
若所述目标用户所属服务节点的第一业务对象的可用数额小于所述目标数额,则将所述目标用户所属服务节点的第一业务对象的可用数额分配给所述目标用户,并从所述目标用户所属服务节点之外的服务节点上为所述目标用户分配目标剩余数额,所述目标剩余数额为所述目标数额与所述目标用户所属服务节点的第一业务对象的可用数额之差。
在可选的实施方式中,所述从所述目标用户所属服务节点之外的服务节点上为所述目标用户分配目标剩余数额,包括:
获取所述目标用户所属服务节点上记录的所述数据处理平台上各服务节点的第一业务对象的可用数额;
对所述目标用户所属服务节点之外的服务节点按照第一业务对象的可用数额从大至小进行排序,得到服务节点序列;
将所述服务节点序列的首个服务节点作为初始的分配服务节点;
A、若所述分配服务节点的第一业务对象的可用数额大于或等于所述目标剩余数额,则在所述分配服务节点上为所述目标用户分配所述目标数额的业务对象,根据所述目标剩余数额更新所述分配服务节点的第一业务对象的可用数额,确定为所述目标用户成功分配业务对象,并结束;
B、若所述分配服务节点的第一业务对象的可用数额小于所述目标剩余数额,则将所述分配服务节点的第一业务对象的可用数额分配给所述目标用户,并将所述目标剩余数额减去所述分配服务节点的第一业务对象的可用数额的差值作为新的目标剩余数额,以及将所述服务节点序列中所述分配服务节点的下一服务节点作为新的分配服务节点;
C、循环执行A-B,直至所述服务节点序列遍历完毕,并确定为所述目标用户分配业务对象失败。
在可选的实施方式中,所述根据所述目标类型、所述目标数额以及所述目标用户所属服务节点,在所述数据处理平台的至少一个目标服务节点上为所述目标用户分配业务对象,包括:
若所述目标类型为第二类型,则确定所述目标用户所属服务节点的第二业务对象的可用数额是否大于或等于所述目标数额,所述第二业务对象为属于所述第二类型的业务对象;
若是,则在所述目标用户所属服务节点上为所述目标用户分配所述目标数额的业务对象,并根据所述目标数额更新所述目标用户所属服务节点的第二业务对象的可用数额;
若否,则确定为所述目标用户分配业务对象失败。
在可选的实施方式中,所述根据所述目标类型、所述目标数额以及所述目标用户所属服务节点,在所述数据处理平台的至少一个目标服务节点上为所述目标用户分配业务对象之后,所述方法还包括:
将各所述目标服务节点为所述目标用户分配业务对象之后的可用数额更新记录至除所述目标服务节点之外的各服务节点上。
在可选的实施方式中,所述数据处理平台的多个服务节点中包括一主服务节点,若所述目标服务节点包括至少两个,所述根据所述目标类型、所述目标数额以及所述目标用户所属服务节点,在所述数据处理平台的至少一个目标服务节点上为所述目标用户分配业务对象之后,所述方法还包括:
将各所述目标服务节点为所述目标用户分配第一业务对象之后的可用数额分别增加至所述主服务节点的第一业务对象的可用数额中,得到所述主服务节点的第一业务对象的新的可用数额;
将各所述目标服务节点中第一业务对象的可用数额分别更新为零,并将所述目标服务节点中第一业务对象的可用数额更新至所述目标用户所属服务节点之外的服务节点中。
在可选的实施方式中,所述数据处理平台的多个服务节点中包括一主服务节点,所述主服务节点保存有所述数据处理平台的第一业务对象的总数额和已使用数额,所述主服务节点还保存有所述数据处理平台的第三业务对象的总数额,所述第三业务对象为属于第三类型的业务对象,所述方法还包括:
确定所述第三业务对象分配至第一业务对象的第一分配数额;
将所述第一分配数额增加至所述主服务节点的第一业务对象中,更新所述主服务节点中第一业务对象的总数额,并将所述主服务节点中第一业务对象的可用数额更新至所述目标用户所属服务节点之外的服务节点中。
在可选的实施方式中,所述方法还包括:
确定各所述服务节点中所述第一业务对象的可用数额分配至所述第三业务对象的第二分配数额;
将所述第二分配数额增加至所述数据处理平台的第三业务对象的总数额中,得到所述数据处理平台的第三业务对象的新的总数额,并更新各所述服务节点中第一业务对象的可用数额以及所述主服务节点上第一业务对象的总数额。
在可选的实施方式中,所述根据所述目标类型、所述目标数额以及所述目标用户所属服务节点,在所述数据处理平台的至少一个目标服务节点上为所述目标用户分配业务对象之前,还包括:
根据各所述服务节点的历史处理数据,分别为各服务节点配置预设数额的业务对象。
第二方面,本发明提供一种数据处理装置,应用于数据处理平台,所述数据处理平台上部署多个服务节点,所述装置包括:
接收模块,用于接收终端设备发送的请求信息,所述请求信息用于请求为目标用户分配目标数额且具有目标类型的业务对象;
分配模块,用于根据所述目标类型、所述目标数额以及所述目标用户所属服务节点,在所述数据处理平台的至少一个目标服务节点上为所述目标用户分配业务对象,其中,各所述目标服务节点上所分配的业务对象的数额之和等于所述目标数额,所述数据处理平台预先分别为各服务节点配置预设数额的业务对象;
发送模块,用于向所述终端设备发送响应信息,所述响应信息用于指示是否为所述目标用户成功分配业务对象。
在可选的实施方式中,所述分配模块,具体用于若所述目标类型为第一类型,则确定所述目标用户所属服务节点的第一业务对象的可用数额是否大于或等于所述目标数额,所述第一业务对象为属于所述第一类型的业务对象;
若所述目标用户所属服务节点的第一业务对象的可用数额大于或等于所述目标数额,则在所述目标用户所属服务节点上为所述目标用户分配所述目标数额的业务对象,并根据所述目标数额更新所述目标用户所属服务节点的第一业务对象的可用数额。
在可选的实施方式中,所述分配模块,还用于若所述目标用户所属服务节点的第一业务对象的可用数额小于所述目标数额,则将所述目标用户所属服务节点的第一业务对象的可用数额分配给所述目标用户,并从所述目标用户所属服务节点之外的服务节点上为所述目标用户分配目标剩余数额,所述目标剩余数额为所述目标数额与所述目标用户所属服务节点的第一业务对象的可用数额之差。
在可选的实施方式中,所述分配模块,具体用于获取所述目标用户所属服务节点上记录的所述数据处理平台上各服务节点的第一业务对象的可用数额;
对所述目标用户所属服务节点之外的服务节点按照第一业务对象的可用数额从大至小进行排序,得到服务节点序列;
将所述服务节点序列的首个服务节点作为初始的分配服务节点;
A、若所述分配服务节点的第一业务对象的可用数额大于或等于所述目标剩余数额,则在所述分配服务节点上为所述目标用户分配所述目标数额的业务对象,根据所述目标剩余数额更新所述分配服务节点的第一业务对象的可用数额,确定为所述目标用户成功分配业务对象,并结束;
B、若所述分配服务节点的第一业务对象的可用数额小于所述目标剩余数额,则将所述分配服务节点的第一业务对象的可用数额分配给所述目标用户,并将所述目标剩余数额减去所述分配服务节点的第一业务对象的可用数额的差值作为新的目标剩余数额,以及将所述服务节点序列中所述分配服务节点的下一服务节点作为新的分配服务节点;
C、循环执行A-B,直至所述服务节点序列遍历完毕,并确定为所述目标用户分配业务对象失败。
在可选的实施方式中,所述分配模块,具体用于若所述目标类型为第二类型,则确定所述目标用户所属服务节点的第二业务对象的可用数额是否大于或等于所述目标数额,所述第二业务对象为属于所述第二类型的业务对象;
若是,则在所述目标用户所属服务节点上为所述目标用户分配所述目标数额的业务对象,并根据所述目标数额更新所述目标用户所属服务节点的第二业务对象的可用数额;
若否,则确定为所述目标用户分配业务对象失败。
在可选的实施方式中,所述分配模块,还用于将各所述目标服务节点为所述目标用户分配业务对象之后的可用数额更新记录至除所述目标服务节点之外的各服务节点上。
在可选的实施方式中,所述数据处理平台的多个服务节点中包括一主服务节点,若所述目标服务节点包括至少两个,所述分配模块,还用于将各所述目标服务节点为所述目标用户分配第一业务对象之后的可用数额分别增加至所述主服务节点的第一业务对象的可用数额中,得到所述主服务节点的第一业务对象的新的可用数额;
将各所述目标服务节点中第一业务对象的可用数额分别更新为零,并将所述目标服务节点中第一业务对象的可用数额更新至所述目标用户所属服务节点之外的服务节点中。
在可选的实施方式中,所述数据处理平台的多个服务节点中包括一主服务节点,所述主服务节点保存有所述数据处理平台的第一业务对象的总数额和已使用数额,所述主服务节点还保存有所述数据处理平台的第三业务对象的总数额,所述第三业务对象为属于第三类型的业务对象,所述装置还包括:更新模块,用于确定所述第三业务对象分配至第一业务对象的第一分配数额;
将所述第一分配数额增加至所述主服务节点的第一业务对象中,更新所述主服务节点中第一业务对象的总数额,并将所述主服务节点中第一业务对象的可用数额更新至所述目标用户所属服务节点之外的服务节点中。
在可选的实施方式中,所述更新模块,还用于确定各所述服务节点中所述第一业务对象的可用数额分配至所述第三业务对象的第二分配数额;
将所述第二分配数额增加至所述数据处理平台的第三业务对象的总数额中,得到所述数据处理平台的第三业务对象的新的总数额,并更新各所述服务节点中第一业务对象的可用数额以及所述主服务节点上第一业务对象的总数额。
在可选的实施方式中,所述分配模块,具体用于根据各所述服务节点的历史处理数据,分别为各服务节点配置预设数额的业务对象。
第三方面,本发明提供一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如前述实施方式任一所述数据处理方法的步骤。
第四方面,本发明提供一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如前述实施方式任一所述数据处理方法的步骤。
本申请的有益效果是:
本申请实施例提供的数据处理方法、装置、电子设备及存储介质中,该方法可以应用于数据处理平台,数据处理平台上部署多个服务节点,该方法包括:接收终端设备发送的请求信息,请求信息用于请求为目标用户分配目标数额且具有目标类型的业务对象;根据目标类型、目标数额以及目标用户所属服务节点,在数据处理平台的至少一个目标服务节点上为目标用户分配业务对象,其中,各目标服务节点上所分配的业务对象的数额之和等于目标数额,数据处理平台预先分别为各服务节点配置预设数额的业务对象;向终端设备发送响应信息,响应信息用于指示是否为目标用户成功分配业务对象,应用本申请实施例,由于可以在数据处理平台的至少一个目标服务节点上为目标用户分配业务对象,实现跨服务节点分配,因此,可以充分利用各服务节点上业务对象,提高业务对象利用率,进而提高数据处理效率。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种数据处理***的架构示意图;
图2为本申请实施例提供的一种数据处理方法的流程示意图;
图3为本申请实施例提供的另一种数据处理方法的流程示意图;
图4为本申请实施例提供的又一种数据处理方法的流程示意图;
图5为本申请实施例提供的另一种数据处理方法的流程示意图;
图6为本申请实施例提供的又一种数据处理方法的流程示意图;
图7为本申请实施例提供的另一种数据处理方法的流程示意图;
图8为本申请实施例提供的又一种数据处理方法的流程示意图;
图9为本申请实施例提供的另一种数据处理方法的流程示意图;
图10为本申请实施例提供的一种数据处理装置的功能模块示意图;
图11为本申请实施例提供的另一种数据处理装置的功能模块示意图;
图12为本申请实施例提供的一种电子设备结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
现有的分布式数据处理平台中,在服务节点上为用户分配各自的业务对象时,不同服务节点上的业务对象相互独立、互不影响。具体表现为当前服务节点上的业务对象,只能为当前服务节点上用户使用,非当前服务节点上的用户不可用。因此,对于分布式数据处理平台来说,将存在各服务节点上的业务对象未充分利用的情况,利用率较低。
以金融领域中交易场景为例,现有交易***的头寸数据管理,主要通过如下方式实现:方式一,各个交易节点分开管理不同的头寸数据,随着客户数量的持续增加,交易节点被拆分成多个,如若头寸数据被全部存放在其中一个交易节点A,那么交易节点B的客户便无法访问并使用交易节点A里的头寸数据,因此需要在每个交易节点下都管理不同的头寸数据,当前交易节点下的客户只能使用当前交易节点中的头寸数据。由于总的头寸数据被分散部署到了多个交易节点上,使得头寸管理复杂度增加,且当客户所在交易节点的头寸可用额度不足时,客户无法再进行交易请求;而此时若其它节点上的头寸有大量的可用额度未被使用,就会出现头寸可用额度足够却无法为客户开展业务的情况,即头寸数据并未得到充分有效的利用。方式二:头寸统一管理,通过独立于交易节点之外的头寸管理中心对头寸数据进行管理,各个交易节点的客户都能使用该头寸管理中心下的头寸数据,这样确实能够提升头寸数据利用率,但是在该模式下,所有客户的交易请求都需要跨节点到该头寸管理中心上来处理数据,这样节点之间的通信无疑又在一定程度上影响了交易性能。其中,需要说明的是,头寸(position)是一个金融术语,指的是个人或实体持有或拥有的特定商品、证券、货币等的数量,比如,可对应证券公司为投资者提供的可用于融资买入的资金和融券卖出的证券。
另外,基于现有交易***的交易请求来说,最损耗性能的地方是在头寸数据的竞争使用上,为了保证高并发场景下头寸数据的可靠性,通常会在处理头寸数据时增加事务处理,但这样在很大程度上降低了交易的性能,特别是当几十万甚至上百万的客户共用同一份头寸数据时,性能下降的非常厉害。基于一个多交易节点的分布式交易***,客户分布在不同的交易节点上,公用的头寸数据独立存放于某个节点或平均分配到每个节点上对交易性能都有着不同程度的损耗。因此,现有的数据处理方法存在着数据处理效率低和使用不充分的问题。
有鉴于此,本申请实施例提供一种数据处理方法,该方法可以应用于数据处理平台,该数据处理平台具体可以是某交易平台,在此不作限定,该数据处理平台上可以部署多个服务节点,应用本申请,可以充分利用各服务节点上业务对象,提高业务对象利用率和数据处理效率。为了使得本领域技术人员能够使用本申请内容,以下部分实施例以交易场景这一特定应用场景对实施方式进行解释说明。对于本领域技术人员来说,在不脱离本申请的精神和范围的情况下,可以将这里定义的一般原理应用于其他实施例和应用场景。虽然本申请的部分实施例围绕交易场景这一特定应用场景进行描述,但是应该理解,这仅是一个示例性实施例。
图1为本申请实施例提供的一种数据处理***的架构示意图,如图1所示,该数据处理***可以包括:终端设备110、智能型自动重选路由(Intelligent AutomaticRerouting,IAR)120以及分布式集群,其中,分布式集群可以通过IAR与终端设备建立通信连接,可选地,IAR中可以预先配置有用户和用户所属业务对象之间的映射关系,使得通过配置,用户通过终端设备发起的交易请求可以优先由所属服务节点处理,提高数据处理效率,此外,IAR可以提供负载均衡服务,以通过消除单点故障,提升数据处理***的可用性。该分布式集群可以包括多个服务节点150,多个服务节点150之间可以无差别,又或者,多个服务节点150中可以包括一个主服务节点和多个其他服务节点,本申请在此不作限定。在一些实施例中,一个服务节点150可以指一个服务器,比如,多个服务节点150可以通过网络140进行通信,构成分布式集群,又或者,一个服务节点可以指服务器中的一个线程,一个服务器上可以部署多个服务节点,本申请在此不作限定。可以理解的是,应用于交易场景时,由于本申请可以基于分布式集群实现,因此对于高并发、大容量的交易请求,多个交易请求可以通过多个服务节点实现并行交易,提高数据处理效率。
可以理解的是,对于每个服务节点来说,每个服务节点可以包括各自的数据库,用于对交易过程中的各种数据进行存储,多个服务节点之间可以基于分布式集群中的通信组件进行数据通信,可选地,通信组件可以包括用于解决数据处理***中数据松耦合交换问题的基础组件,该基础组件可以基于消息队列实现,当然,本申请在此并不限定数据通信的具体方式,根据实际的应用场景可以有所不同。
基于上述对数据处理***的说明,图2为本申请实施例提供的一种数据处理方法的流程示意图,该方法可以应用于数据处理平台,数据处理平台上可以部署多个服务节点,在一些实施例中,数据处理平台可以指上述的分布式集群。如图2所示,该方法可以包括:
S101、接收终端设备发送的请求信息,请求信息用于请求为目标用户分配目标数额且具有目标类型的业务对象。
其中,终端设备可以理解为数据处理请求方对应的处理设备,交易场景下,终端设备可以为交易请求方对应的处理设备,该终端设备可以是计算机、手机、平板电脑等可以发起请求信息的设备,在此不作限定,目标用户也即终端设备所属用户;目标数额也即请求分配业务对象的数额,交易场景下,该目标数额可以指示交易请求数额,可选地,其可以是资金的数额,又或者可以是股份的股数等,在此不作限定。业务对象可以指示请求分配的具体业务,交易场景下,该业务对象可以为头寸,根据实际的应用场景,头寸可以分为多个类型,比如,融资融券场景下,可以将头寸分为核心头寸、业务头寸以及专项头寸。其中,核心头寸在一个券商下只能有一个,管理的是融资专户、融券专户总数额信息等,可以用来划拨给业务头寸、专项头寸;业务头寸可以有多个,用于管理提供给客户可用来融资买入的资金、融券卖出的股份等,一个客户只能指定具体某一个业务头寸,多个客户可以共用一个业务头寸,委托下单共同竞争时遵循先到先得的规则,业务头寸可以支持多服务节点,也即每个服务节点上可以包括一定数额的业务头寸;专项头寸也可以有多个,一般是专门提供给专属客户单独使用的资金、股份等,专项头寸允许关联多个账户(同一个客户的多个账户,分为主账和辅账),专项头寸跟客户位于同一个服务节点中。
可以理解的是,数据处理过程中,目标用户通过终端设备可以向数据处理平台发送请求信息,该请求信息可以携带有请求分配业务对象的目标数额和目标类型,数据处理平台则可以接收该请求信息。
S102、根据目标类型、目标数额以及目标用户所属服务节点,在数据处理平台的至少一个目标服务节点上为目标用户分配业务对象。
其中,各目标服务节点上所分配的业务对象的数额之和等于目标数额,数据处理平台预先分别为各服务节点配置预设数额的业务对象。
目标用户所属服务节点可以对应相应的服务节点标识,基于上述对数据处理***的说明,可以理解的是,可以根据用户标识和服务节点标识之间的映射关系,确定目标用户所属服务节点。其中,数据处理平台接收到该请求信息后,可以根据请求的目标类型、目标数额以及目标用户所属服务节点,在多个服务节点中确定至少一个服务节点作为目标服务节点,并在该目标服务节点上为该目标用户分配业务对象,可以理解的是,该目标服务节点可以包括目标用户所属服务节点。
需要说明的是,对于各服务节点来说,数据处理平台可以预先分别为各服务节点配置预设数额的业务对象。比如,交易场景下,业务对象可以为头寸,参见上述有关头寸类型的说明,可选地,数据处理平台可以为各服务节点配置预设数额的业务头寸和专项头寸,各服务节点的业务头寸和专项头寸的总和可以等于核心头寸,可以理解的是,为目标用户分配目标数额且具有目标类型的头寸时,各目标服务节点上所分配的头寸的数额之和应该等于目标数额,当然,本申请在此并不限定目标类型,其可以是业务头寸,又或者可以是专项头寸等,也不限定目标数额的大小,根据实际的应用场景可以有所不同。
S103、向终端设备发送响应信息,响应信息用于指示是否为目标用户成功分配业务对象。
对于数据处理平台来说,在分配完之后,数据处理平台可以向终端设备发送响应信息,该响应信息可以指示分配的结果,也即分配成功还是分配失败,可以理解的是,终端设备接收到该响应信息后可以知晓分配的结果。
综上,本申请实施例提供的数据处理方法,该方法可以应用于数据处理平台,数据处理平台上部署多个服务节点,该方法包括:接收终端设备发送的请求信息,请求信息用于请求为目标用户分配目标数额且具有目标类型的业务对象;根据目标类型、目标数额以及目标用户所属服务节点,在数据处理平台的至少一个目标服务节点上为目标用户分配业务对象,其中,各目标服务节点上所分配的业务对象的数额之和等于目标数额,数据处理平台预先分别为各服务节点配置预设数额的业务对象;向终端设备发送响应信息,响应信息用于指示是否为目标用户成功分配业务对象,应用本申请实施例,由于可以在数据处理平台的至少一个目标服务节点上为目标用户分配业务对象,实现跨服务节点分配,因此,可以充分利用各服务节点上业务对象,提高业务对象利用率,进而提高数据处理效率。
图3为本申请实施例提供的另一种数据处理方法的流程示意图。可选地,如图3所示,上述根据目标类型、目标数额以及目标用户所属服务节点,在数据处理平台的至少一个目标服务节点上为目标用户分配业务对象,包括:
S201、若目标类型为第一类型,则确定目标用户所属服务节点的第一业务对象的可用数额是否大于或等于目标数额,第一业务对象为属于第一类型的业务对象。
S202、若目标用户所属服务节点的第一业务对象的可用数额大于或等于目标数额,则在目标用户所属服务节点上为目标用户分配目标数额的业务对象,并根据目标数额更新目标用户所属服务节点的第一业务对象的可用数额。
S203、若目标用户所属服务节点的第一业务对象的可用数额小于目标数额,则将目标用户所属服务节点的第一业务对象的可用数额分配给目标用户,并从目标用户所属服务节点之外的服务节点上为目标用户分配目标剩余数额。
目标剩余数额为目标数额与目标用户所属服务节点的第一业务对象的可用数额之差。
其中,在数据处理平台的至少一个目标服务节点上为目标用户分配业务对象时,可以根据目标数额和目标用户所属服务节点上业务对象的可用数额进行分配。
可选地,交易场景下,第一类型可以为业务头寸类型,也即若目标类型为业务头寸类型,可以确定目标用户所属服务节点的业务头寸的可用数额是否大于或等于目标数额,若大于或等于,则可以在目标用户所属服务节点上为该目标用户分配目标数额的头寸;否则,可以将目标用户所属服务节点的业务头寸的可用数额分配给目标用户,并从数据处理平台中目标用户所属服务节点之外的服务节点上为该目标用户分配目标剩余数额,该目标剩余数额即为目标数额与目标用户所属服务节点的业务头寸的可用数额之差。
综上,将本申请实施例应用于交易场景时,其中,在为目标用户分配业务头寸时,可以优先使用目标用户所属服务节点上可用的业务头寸进行分配,目标用户所属服务节点上可用业务头寸不足时,再从其他服务节点进行扣减,实现了服务节点弹性扩展,可以充分利用各服务节点上的业务头寸,从而可以提高数据处理效率。
图4为本申请实施例提供的又一种数据处理方法的流程示意图。可选地,如图4所示,上述从目标用户所属服务节点之外的其他服务节点上为目标用户分配目标剩余数额,可以包括:
S301、获取目标用户所属服务节点上记录的数据处理平台上各服务节点的第一业务对象的可用数额。
S302、对目标用户所属服务节点之外的服务节点按照第一业务对象的可用数额从大至小进行排序,得到服务节点序列。
S303、根据服务节点序列,在目标用户所属服务节点之外的服务节点中确定分配服务节点,在分配服务节点上为目标用户分配目标剩余数额。
其中,每个服务节点上可以记录所有服务节点的第一业务对象的可用数额,则对于目标用户所属服务节点来说,可以获取该目标用户所属服务节点上记录的各服务节点的第一业务对象的可用数额,对各服务节点的第一业务对象的可用数额从大至小进行排序,从而可以得到对应的服务节点序列,根据该服务节点序列,可以确定分配服务节点,进而可以在该分配服务节点上为该目标用户分配目标剩余数额。当然,本申请在此并不限定具体的排序方式,也可以是从小至大,根据实际的应用场景可以选择相应的排序算法。
可以理解的是,应用于交易场景下,根据服务节点序列,确定分配服务节点时,可优先使用业务头寸的可用数额较大的服务节点作为分配服务节点,使得通过分配服务节点为目标用户分配目标剩余数额时,可以减少分配服务节点的数量,进而可以减少跨服务节点的次数,提高数据处理效率。
图5为本申请实施例提供的另一种数据处理方法的流程示意图。在一些实施例中,如图5所示,可以参见下述的过程在目标用户所属服务节点之外的服务节点中确定分配服务节点,通过该分配服务节点为目标用户分配目标剩余数额,具体内容如下:
S401、将服务节点序列的首个服务节点作为初始的分配服务节点。
S402、若分配服务节点的第一业务对象的可用数额大于或等于目标剩余数额,则在分配服务节点上为目标用户分配目标数额的业务对象,根据目标剩余数额更新分配服务节点的第一业务对象的可用数额,确定为目标用户成功分配业务对象,并结束。
S403、若分配服务节点的第一业务对象的可用数额小于目标剩余数额,则将分配服务节点的第一业务对象的可用数额分配给目标用户,并将目标剩余数额减去分配服务节点的第一业务对象的可用数额的差值作为新的目标剩余数额,以及将服务节点序列中分配服务节点的下一服务节点作为新的分配服务节点。
S404、循环执行步骤S402和步骤S403,直至服务节点序列遍历完毕,并确定为目标用户分配业务对象失败。
其中,以交易场景下,第一业务对象为业务头寸为例进行说明,基于上述步骤S302得到的服务节点序列,可以将该服务节点序列中的首个服务节点作为初始的分配服务节点,比较该分配服务节点的业务头寸的可用数额是否大于或等于目标剩余数额,若是,则可以在该分配服务节点上为目标用户分配目标数额的头寸,若否,则可以将该分配服务节点的业务头寸的可用数额分配给目标用户,确定新的目标剩余数额,以及将服务节点序列中该分配服务节点的下一服务节点作为新的分配服务节点,根据该新的分配服务节点和新的目标剩余数额,继续在该新的分配服务节点上为该目标用户分配目标剩余数额。可以理解的是,若循环执行上述步骤S402和步骤S403,直至该服务节点序列遍历完毕,也即不存在可以为目标用户进一步分配剩余数额的第一业务对象的服务节点时,那么此时可以确定为该目标用户分配头寸失败。
在一些实施例中,应用于交易场景,将目标用户所属服务节点的业务头寸的可用数额分配给目标用户,并从目标用户所属服务节点之外的服务节点上为目标用户分配目标剩余数额时,对于目标用户所属服务节点来说,可以通过远程过程调用(Remote ProcedureCall,RPC)调用目标用户所属服务节点之外的服务节点进行业务头寸的扣减,当然,实际调用方式并不以此为限。由此可以看出,应用本申请实施例,由于可以基于内部函数调用实现跨服务节点进行数据处理,因此,在可以充分利用各服务节点上第一业务对象的可用数额、提高第一业务对象的利用率的情况下,本申请实施例还可以降低网络延时,提高数据处理效率。
图6为本申请实施例提供的又一种数据处理方法的流程示意图。可选地,如图6所示,上述根据目标类型、目标数额以及目标用户所属服务节点,在数据处理平台的至少一个目标服务节点上为目标用户分配业务对象,包括:
S501、若目标类型为第二类型,则确定目标用户所属服务节点的第二业务对象的可用数额是否大于或等于目标数额,第二业务对象为属于第二类型的业务对象。
S502、若是,则在目标用户所属服务节点上为目标用户分配目标数额的业务对象,并根据目标数额更新目标用户所属服务节点的第二业务对象的可用数额。
S503、若否,则确定为目标用户分配业务对象失败。
其中,交易场景下,第二类型可以为专项头寸类型,也即目标类型为专项头寸类型时,则为目标用户分配头寸时,可以确定目标用户所属服务节点的专项头寸的可用数额是否大于或等于目标数额,若是,则可以在目标用户所属服务节点上为目标用户分配目标数额的头寸,否则,说明目标用户所属服务节点上的专项头寸不足以为目标用户分配,那么可以确定为该目标用户分配头寸失败。当然,本申请在此并不限定第二类型,根据实际的应用场景,第二类型还可以是其他头寸类型。
可选地,上述根据目标类型、目标数额以及目标用户所属服务节点,在数据处理平台的至少一个目标服务节点上为目标用户分配业务对象之后,上述方法还包括:
将各目标服务节点为目标用户分配业务对象之后的可用数额更新记录至除目标服务节点之外的各服务节点上。
在一些实施例中,在数据处理平台的至少一个目标服务节点上为目标用户分配业务对象之后,可以理解的是,此时,目标服务节点上业务对象的可用数额将发生变化,那么可以将分配之后的各目标服务节点上业务对象的可用数额更新记录至除目标服务节点之外的各服务节点上,使得其他各服务节点上可以实时更新记录目标服务节点的可用数额,方便跨服务节点为目标用户分配头寸时,可以明确知晓各服务节点的可用数额,提高分配效率。
可选地,具体进行更新时,可以基于分布式集群的消息更新组件实现,比如,各目标服务节点为目标用户分配头寸之后,各目标组件可以异步推送各自业务对象的可用数额至推送平台,推送平台可以将各目标服务节点为目标用户分配头寸之后的可用数额进一步推送至除目标服务节点之外的各服务节点上,进而各服务节点可以更新记录。
图7为本申请实施例提供的另一种数据处理方法的流程示意图。可选地,上述交易平台的多个服务节点中包括一主服务节点,若目标服务节点包括至少两个,如图7所示,根据目标类型、目标数额以及目标用户所属服务节点,在数据处理平台的至少一个目标服务节点上为目标用户分配业务对象之后,上述方法还包括:
S601、将各目标服务节点为目标用户分配第一业务对象之后的可用数额分别增加至主服务节点的第一业务对象的可用数额中,得到主服务节点的第一业务对象的新的可用数额。
S602、将各目标服务节点中第一业务对象的可用数额分别更新为零,并将目标服务节点中第一业务对象的可用数额更新至目标用户所属服务节点之外的服务节点中。
其中,主服务节点可以是数据处理平台的多个服务节点中的任一服务节点,该主服务节点可以是预先指定或默认的服务节点,比如,可以是服务节点标识最小的服务节点,但不以此为限,目标服务节点可以包括至少两个,也即需要在至少两个目标服务节点上为目标用户分配第一业务对象,可以理解的是,在至少两个目标服务节点上为目标用户分配第一业务对象时,该目标服务节点上第一业务对象的可用数额将减少,则下一次响应其他终端设备发送的请求信息,为其他用户分配第一业务对象时,可能存在需要跨多个服务节点进行第一业务对象的扣减,而这会严重降低数据处理效率,因此,若目标服务节点包括至少两个,可以将各目标服务节点为目标用户分配第一业务对象之后的可用数额分别增加至主服务节点的第一业务对象的可用数额中,此时将得到主服务节点的第一业务对象的新的可用数额,而各目标服务节点中第一业务对象的可用数额则更新为零,如此,可以实现零碎可用第一业务对象的收集,进而在响应下一处理请求时,可以减少跨服务节点的次数,提高数据处理效率。
图8为本申请实施例提供的又一种数据处理方法的流程示意图。可选地,上述数据处理平台的多个服务节点中包括一主服务节点,主服务节点保存有数据处理平台的第一业务对象的总数额和已使用数额,主服务节点还保存有服务节点平台的第三业务对象的总数额,第三业务对象为属于第三类型的业务对象,如图8所示,上述方法还包括:
S701、确定第三业务对象分配至第一业务对象的第一分配数额。
S702、将第一分配数额增加至主服务节点的第一业务对象中,更新主服务节点中第一业务对象的总数额,并将主服务节点中第一业务对象的可用数额更新至目标用户所属服务节点之外的服务节点中。
其中,以交易场景为例,交易场景下,第三类型可以为核心头寸类型,则第三业务对象为核心头寸,参见前述的相关说明可知,核心头寸管理的是融资专户、融券专户总数额信息等,可以用来划拨给业务头寸、专项头寸等,对于主服务节点来说,主服务节点可以保存该数据处理平台中核心头寸的总数额,业务头寸的总数额以及业务头寸的已使用数额,当然,可以理解的是,若还包括其他类型的头寸,比如,专项头寸,则主服务节点上还可以保存有数据处理平台的专项头寸的总数额和已使用数额,本申请在此不作限定。
在一些实施例中,根据实际的应用场景,若主服务节点还保存有数据处理平台的第三业务对象(核心头寸)的总数额,可以确定第三业务对象(核心头寸)分配至第一业务对象(业务头寸)的第一分配数额,将该第一分配数额增加至该主服务节点的第一业务对象(业务头寸)中,更新该主服务节点中第一业务对象(业务头寸)的总数额,同时,将该主服务节点中第一业务对象(业务头寸)的可用数额更新至目标用户所属服务节点之外的服务节点中,从而可以保证其他服务节点可以实时更新记录,实现服务节点之间第一业务对象(业务头寸)的可用数额的同步。
图9为本申请实施例提供的另一种数据处理方法的流程示意图。可选地,如图9所示,上述方法还包括:
S801、确定各服务节点中第一业务对象的可用数额分配至第三业务对象的第二分配数额。
S802、将第二分配数额增加至数据处理平台的核心头寸的总数额中,得到数据处理平台的第三业务对象的新的总数额,并更新各服务节点中第一业务对象的可用数额以及主服务节点上第一业务对象的总数额。
在一些实施例中,以交易场景为例,对于各服务节点来说,也可以将各服务节点中第一业务对象(业务头寸)的可用数额分配(划拨)至第三业务对象(核心头寸),具体进行分配时,可以先确定各服务节点中第一业务对象(业务头寸)的可用数额分配至第三业务对象(核心头寸)的第二分配数额,进而可以将该第二分配数额增加至第三业务对象(核心头寸)的总数额中,得到第三业务对象(核心头寸)的新的总数额,并根据该第二分配数额异步更新各服务节点中第一业务对象(业务头寸)的可用数额以及主服务节点上第一业务对象(业务头寸)的总数额,可以看出,将本申请实施例应用于交易场景下,可以实现业务头寸和核心头寸之间的划拨,提高本申请方法的适用性。
可选地,应用于交易场景,确定各服务节点中业务头寸的可用数额分配至核心头寸的第二划拨数额时,可以参见下述方法进行分配:获取各服务节点中业务头寸的可用数额,对各服务节点按照业务头寸的可用数额从小至大进行排序,得到排序序列,根据该排序序列,确定各服务节点的分配次序。可选地,确定各服务节点的分配次序时,可以优先分配可用数额较少的服务节点,如此,可以减少各服务节点上的零碎头寸,避免一次交易请求需要跨多个服务节点的情况,提高数据处理效率。
可选地,上述根据目标类型、目标数额以及目标用户所属服务节点,在数据处理平台的至少一个目标服务节点上为目标用户分配头寸之前,还包括:
根据各服务节点的历史交易数据,分别为各服务节点配置预设数额的业务对象。
在一些实施例中,在为各服务节点配置预设数额的业务对象时,可用根据各服务节点的历史处理数据,基于预设策略机制为各服务节点配置预设数额的业务对象。应用于交易场景下,可选地,可以分析历史交易数据,对每个服务节点过去预设时间内(比如,一个月、半年等)的头寸已使用数额进行汇总,计算出单个交易日头寸数额使用均值,从而得出每个服务节点之间头寸可用数额的使用比例。比如,对于头寸资金可用数额,则直接使用该比例进行分配;对于头寸股份可用数额,由于股份一般是以整百数进行交易,可以按照比例计算出每个服务节点的最大整百数,而将剩余的零散部分全部分配到主服务节点上。可以看出,基于此策略,可在一定程度上为每个服务节点配置合适数额的头寸,提升头寸利用率,减少交易中发生头寸划拨分配的频次,从而提升交易性能。
综上,将本申请实施例提供的数据处理方法应用于交易场景下,可以将头寸数据融入在各个服务节点中,各交易请求均优先使用本服务节点头寸,头寸压力分流到各个服务节点内,能够保证头寸额度的最大化使用,不透支也不会闲置,且跨服务节点为目标用户分配头寸时可以基于内部函数调用实现,可以降低网络延时,提高数据处理效率;其次,若需要在交易平台中新增服务节点时,通过前述的头寸分配操作即可实现,可以提高新增服务节点的部署效率,因此,应用本申请实施例,可以较大程度上提高数据处理效率,降低耗时,且也为头寸管理提供了便捷性,降低了头寸管理成本。
图10为本申请实施例提供的一种数据处理装置的功能模块示意图,该装置可以应用于数据处理平台,该交易平台上可以部署多个服务节点,该装置基本原理及产生的技术效果与前述对应的方法实施例相同,为简要描述,本实施例中未提及部分,可参考方法实施例中的相应内容。如图10所示,该数据处理装置300可以包括:
接收模块310,用于接收终端设备发送的交易请求,交易请求用于请求为目标用户分配目标数额且具有目标类型的头寸;
分配模块320,用于根据目标类型、目标数额以及目标用户所属的服务节点信息,在交易平台的至少一个目标服务节点上为目标用户分配头寸,其中,各目标服务节点上所分配的头寸的数额之和等于目标数额,交易平台预先分别为各服务节点配置预设数额的头寸;
发送模块330,用于向终端设备发送响应信息,响应信息用于指示是否为目标用户成功分配头寸。
在可选的实施方式中,分配模块320,具体用于若目标类型为第一类型,则确定目标用户所属服务节点的第一业务对象的可用数额是否大于或等于目标数额,第一业务对象为属于第一类型的业务对象;
若目标用户所属服务节点的第一业务对象的可用数额大于或等于目标数额,则在目标用户所属服务节点上为目标用户分配目标数额的业务对象,并根据目标数额更新目标用户所属服务节点的第一业务对象的可用数额。
在可选的实施方式中,分配模块320,还用于若目标用户所属服务节点的第一业务对象的可用数额小于目标数额,则将目标用户所属服务节点的第一业务对象的可用数额分配给目标用户,并从目标用户所属服务节点之外的服务节点上为目标用户分配目标剩余数额,目标剩余数额为目标数额与目标用户所属服务节点的第一业务对象的可用数额之差。
在可选的实施方式中,分配模块320,具体用于获取目标用户所属服务节点上记录的数据处理平台上各服务节点的第一业务对象的可用数额;
对目标用户所属服务节点之外的服务节点按照第一业务对象的可用数额从大至小进行排序,得到服务节点序列;
将服务节点序列的首个服务节点作为初始的分配服务节点;
A、若分配服务节点的第一业务对象的可用数额大于或等于目标剩余数额,则在分配服务节点上为目标用户分配目标数额的业务对象,根据目标剩余数额更新分配服务节点的第一业务对象的可用数额,确定为目标用户成功分配业务对象,并结束;
B、若分配服务节点的第一业务对象的可用数额小于目标剩余数额,则将分配服务节点的第一业务对象的可用数额分配给目标用户,并将目标剩余数额减去分配服务节点的第一业务对象的可用数额的差值作为新的目标剩余数额,以及将服务节点序列中分配服务节点的下一服务节点作为新的分配服务节点;
C、循环执行A-B,直至服务节点序列遍历完毕,并确定为目标用户分配业务对象失败。
在可选的实施方式中,分配模块320,具体用于若目标类型为第二类型,则确定目标用户所属服务节点的第二业务对象的可用数额是否大于或等于目标数额,第二业务对象为属于第二类型的业务对象;
若是,则在目标用户所属服务节点上为目标用户分配目标数额的业务对象,并根据目标数额更新目标用户所属服务节点的第二业务对象的可用数额;
若否,则确定为目标用户分配业务对象失败。
在可选的实施方式中,分配模块320,还用于将各目标服务节点为目标用户分配业务对象之后的可用数额更新记录至除目标服务节点之外的各服务节点上。
在可选的实施方式中,数据处理平台的多个服务节点中包括一主服务节点,若目标服务节点包括至少两个,分配模块,还用于将各目标服务节点为目标用户分配第一业务对象之后的可用数额分别增加至主服务节点的第一业务对象的可用数额中,得到主服务节点的第一业务对象的新的可用数额;
将各目标服务节点中第一业务对象的可用数额分别更新为零,并将目标服务节点中第一业务对象的可用数额更新至目标用户所属服务节点之外的服务节点中。
图11为本申请实施例提供的另一种数据处理装置的功能模块示意图。在可选的实施方式中,数据处理平台的多个服务节点中包括一主服务节点,主服务节点保存有数据处理平台的第一业务对象的总数额和已使用数额,主服务节点还保存有数据处理平台的第三业务对象的总数额,第三业务对象为属于第三类型的业务对象,如图11所示,数据处理装置300还包括:更新模块350,用于确定第三业务对象分配至第一业务对象的第一分配数额;
将第一分配数额增加至主服务节点的第一业务对象中,更新主服务节点中第一业务对象的总数额,并将主服务节点中第一业务对象的可用数额更新至目标用户所属服务节点之外的服务节点中。
在可选的实施方式中,如图11所示,更新模块350,还用于确定各服务节点中第一业务对象的可用数额分配至第三业务对象的第二分配数额;
将第二分配数额增加至数据处理平台的第三业务对象的总数额中,得到数据处理平台的第三业务对象的新的总数额,并更新各服务节点中第一业务对象的可用数额以及主服务节点上第一业务对象的总数额。
在可选的实施方式中,分配模块320,还用于根据各服务节点的历史处理数据,分别为各服务节点配置预设数额的业务对象。
上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器(Digital Signal Processor,简称DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(CentralProcessing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上***(system-on-a-chip,简称SOC)的形式实现。
图12为本申请实施例提供的一种电子设备结构示意图。如图12所示,该电子设备可以包括:处理器510、存储介质520和总线530,存储介质520存储有处理器510可执行的机器可读指令,当电子设备运行时,处理器510与存储介质520之间通过总线530通信,处理器510执行机器可读指令,以执行上述方法实施例的步骤。具体实现方式和技术效果类似,这里不再赘述。
可选地,本申请还提供一种存储介质,存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述方法实施例的步骤。具体实现方式和技术效果类似,这里不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本申请各个实施例方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。以上仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (20)
1.一种数据处理方法,其特征在于,应用于数据处理平台,所述数据处理平台上部署多个服务节点,所述方法包括:
接收终端设备发送的请求信息,所述请求信息用于请求为目标用户分配目标数额且具有目标类型的业务对象;
根据所述目标类型、所述目标数额以及所述目标用户所属服务节点,在所述数据处理平台的至少一个目标服务节点上为所述目标用户分配业务对象,其中,各所述目标服务节点上所分配的业务对象的数额之和等于所述目标数额,所述数据处理平台预先分别为各服务节点配置预设数额的业务对象;
向所述终端设备发送响应信息,所述响应信息用于指示是否为所述目标用户成功分配业务对象;
所述数据处理平台的多个服务节点中包括一主服务节点,所述主服务节点保存有所述数据处理平台的第一业务对象的总数额和已使用数额,所述主服务节点还保存有所述数据处理平台的第三业务对象的总数额,所述第一业务对象为属于第一类型的业务对象,所述第三业务对象为属于第三类型的业务对象,所述方法还包括:
确定所述第三业务对象分配至第一业务对象的第一分配数额;
将所述第一分配数额增加至所述主服务节点的第一业务对象中,更新所述主服务节点中第一业务对象的总数额,并将所述主服务节点中第一业务对象的可用数额更新至所述目标用户所属服务节点之外的服务节点中。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标类型、所述目标数额以及所述目标用户所属服务节点,在所述数据处理平台的至少一个目标服务节点上为所述目标用户分配业务对象,包括:
若所述目标类型为第一类型,则确定所述目标用户所属服务节点的第一业务对象的可用数额是否大于或等于所述目标数额;
若所述目标用户所属服务节点的第一业务对象的可用数额大于或等于所述目标数额,则在所述目标用户所属服务节点上为所述目标用户分配所述目标数额的业务对象,并根据所述目标数额更新所述目标用户所属服务节点的第一业务对象的可用数额。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若所述目标用户所属服务节点的第一业务对象的可用数额小于所述目标数额,则将所述目标用户所属服务节点的第一业务对象的可用数额分配给所述目标用户,并从所述目标用户所属服务节点之外的服务节点上为所述目标用户分配目标剩余数额,所述目标剩余数额为所述目标数额与所述目标用户所属服务节点的第一业务对象的可用数额之差。
4.根据权利要求3所述的方法,其特征在于,所述从所述目标用户所属服务节点之外的服务节点上为所述目标用户分配目标剩余数额,包括:
获取所述目标用户所属服务节点上记录的所述数据处理平台上各服务节点的第一业务对象的可用数额;
对所述目标用户所属服务节点之外的服务节点按照第一业务对象的可用数额从大至小进行排序,得到服务节点序列;
将所述服务节点序列的首个服务节点作为初始的分配服务节点;
A、若所述分配服务节点的第一业务对象的可用数额大于或等于所述目标剩余数额,则在所述分配服务节点上为所述目标用户分配所述目标数额的业务对象,根据所述目标剩余数额更新所述分配服务节点的第一业务对象的可用数额,确定为所述目标用户成功分配业务对象,并结束;
B、若所述分配服务节点的第一业务对象的可用数额小于所述目标剩余数额,则将所述分配服务节点的第一业务对象的可用数额分配给所述目标用户,并将所述目标剩余数额减去所述分配服务节点的第一业务对象的可用数额的差值作为新的目标剩余数额,以及将所述服务节点序列中所述分配服务节点的下一服务节点作为新的分配服务节点;
C、循环执行A-B,直至所述服务节点序列遍历完毕,并确定为所述目标用户分配业务对象失败。
5.根据权利要求1所述的方法,其特征在于,所述根据所述目标类型、所述目标数额以及所述目标用户所属服务节点,在所述数据处理平台的至少一个目标服务节点上为所述目标用户分配业务对象,包括:
若所述目标类型为第二类型,则确定所述目标用户所属服务节点的第二业务对象的可用数额是否大于或等于所述目标数额,所述第二业务对象为属于所述第二类型的业务对象;
若是,则在所述目标用户所属服务节点上为所述目标用户分配所述目标数额的业务对象,并根据所述目标数额更新所述目标用户所属服务节点的第二业务对象的可用数额;
若否,则确定为所述目标用户分配业务对象失败。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述根据所述目标类型、所述目标数额以及所述目标用户所属服务节点,在所述数据处理平台的至少一个目标服务节点上为所述目标用户分配业务对象之后,所述方法还包括:
将各所述目标服务节点为所述目标用户分配业务对象之后的可用数额更新记录至除所述目标服务节点之外的各服务节点上。
7.根据权利要求2-5任一项所述的方法,其特征在于,所述数据处理平台的多个服务节点中包括一主服务节点,若所述目标服务节点包括至少两个,所述根据所述目标类型、所述目标数额以及所述目标用户所属服务节点,在所述数据处理平台的至少一个目标服务节点上为所述目标用户分配业务对象之后,所述方法还包括:
将各所述目标服务节点为所述目标用户分配第一业务对象之后的可用数额分别增加至所述主服务节点的第一业务对象的可用数额中,得到所述主服务节点的第一业务对象的新的可用数额;
将各所述目标服务节点中第一业务对象可用数额分别更新为零,并将所述目标服务节点中第一业务对象的可用数额更新至所述目标用户所属服务节点之外的服务节点中。
8.根据权利要求2-5任一项所述的方法,其特征在于,所述方法还包括:
确定各所述服务节点中所述第一业务对象的可用数额分配至所述第三业务对象的第二分配数额;
将所述第二分配数额增加至所述数据处理平台的第三业务对象的总数额中,得到所述数据处理平台的第三业务对象的新的总数额,并更新各所述服务节点中第一业务对象的可用数额以及所述主服务节点上第一业务对象的总数额。
9.根据权利要求1-5任一项所述的方法,其特征在于,所述根据所述目标类型、所述目标数额以及所述目标用户所属服务节点,在所述数据处理平台的至少一个目标服务节点上为所述目标用户分配业务对象之前,还包括:
根据各所述服务节点的历史处理数据,分别为各服务节点配置预设数额的业务对象。
10.一种数据处理装置,其特征在于,应用于数据处理平台,所述数据处理平台上部署多个服务节点,所述装置包括:
接收模块,用于接收终端设备发送的请求信息,所述请求信息用于请求为目标用户分配目标数额且具有目标类型的业务对象;
分配模块,用于根据所述目标类型、所述目标数额以及所述目标用户所属服务节点,在所述数据处理平台的至少一个目标服务节点上为所述目标用户分配业务对象,其中,各所述目标服务节点上所分配的业务对象的数额之和等于所述目标数额,所述数据处理平台预先分别为各服务节点配置预设数额的业务对象;
发送模块,用于向所述终端设备发送响应信息,所述响应信息用于指示是否为所述目标用户成功分配业务对象;
所述数据处理平台的多个服务节点中包括一主服务节点,所述主服务节点保存有所述数据处理平台的第一业务对象的总数额和已使用数额,所述主服务节点还保存有所述数据处理平台的第三业务对象的总数额,所述第一业务对象为属于第一类型的业务对象,所述第三业务对象为属于第三类型的业务对象,所述装置还包括:更新模块,用于确定所述第三业务对象分配至第一业务对象的第一分配数额;
将所述第一分配数额增加至所述主服务节点的第一业务对象中,更新所述主服务节点中第一业务对象的总数额,并将所述主服务节点中第一业务对象的可用数额更新至所述目标用户所属服务节点之外的服务节点中。
11.根据权利要求10所述的装置,其特征在于,所述分配模块,具体用于若所述目标类型为第一类型,则确定所述目标用户所属服务节点的第一业务对象的可用数额是否大于或等于所述目标数额;
若所述目标用户所属服务节点的第一业务对象的可用数额大于或等于所述目标数额,则在所述目标用户所属服务节点上为所述目标用户分配所述目标数额的业务对象,并根据所述目标数额更新所述目标用户所属服务节点的第一业务对象的可用数额。
12.根据权利要求11所述的装置,其特征在于,所述分配模块,还用于若所述目标用户所属服务节点的第一业务对象的可用数额小于所述目标数额,则将所述目标用户所属服务节点的第一业务对象的可用数额分配给所述目标用户,并从所述目标用户所属服务节点之外的服务节点上为所述目标用户分配目标剩余数额,所述目标剩余数额为所述目标数额与所述目标用户所属服务节点的第一业务对象的可用数额之差。
13.根据权利要求12所述的装置,其特征在于,所述分配模块,具体用于获取所述目标用户所属服务节点上记录的所述数据处理平台上各服务节点的第一业务对象的可用数额;
对所述目标用户所属服务节点之外的服务节点按照第一业务对象的可用数额从大至小进行排序,得到服务节点序列;
将所述服务节点序列的首个服务节点作为初始的分配服务节点;
A、若所述分配服务节点的第一业务对象的可用数额大于或等于所述目标剩余数额,则在所述分配服务节点上为所述目标用户分配所述目标数额的业务对象,根据所述目标剩余数额更新所述分配服务节点的第一业务对象的可用数额,确定为所述目标用户成功分配业务对象,并结束;
B、若所述分配服务节点的第一业务对象的可用数额小于所述目标剩余数额,则将所述分配服务节点的第一业务对象的可用数额分配给所述目标用户,并将所述目标剩余数额减去所述分配服务节点的第一业务对象的可用数额的差值作为新的目标剩余数额,以及将所述服务节点序列中所述分配服务节点的下一服务节点作为新的分配服务节点;
C、循环执行A-B,直至所述服务节点序列遍历完毕,并确定为所述目标用户分配业务对象失败。
14.根据权利要求10所述的装置,其特征在于,所述分配模块,具体用于若所述目标类型为第二类型,则确定所述目标用户所属服务节点的第二业务对象的可用数额是否大于或等于所述目标数额,所述第二业务对象为属于所述第二类型的业务对象;
若是,则在所述目标用户所属服务节点上为所述目标用户分配所述目标数额的业务对象,并根据所述目标数额更新所述目标用户所属服务节点的第二业务对象的可用数额;
若否,则确定为所述目标用户分配业务对象失败。
15.根据权利要求10-14任一项所述的装置,其特征在于,所述分配模块,还用于将各所述目标服务节点为所述目标用户分配业务对象之后的可用数额更新记录至除所述目标服务节点之外的各服务节点上。
16.根据权利要求11-14任一项所述的装置,其特征在于,所述数据处理平台的多个服务节点中包括一主服务节点,若所述目标服务节点包括至少两个,所述分配模块,还用于将各所述目标服务节点为所述目标用户分配第一业务对象之后的可用数额分别增加至所述主服务节点的第一业务对象的可用数额中,得到所述主服务节点的第一业务对象的新的可用数额;
将各所述目标服务节点中第一业务对象可用数额分别更新为零,并将所述目标服务节点中第一业务对象的可用数额更新至所述目标用户所属服务节点之外的服务节点中。
17.根据权利要求11-14任一项所述的装置,其特征在于,所述更新模块,还用于确定各所述服务节点中所述第一业务对象的可用数额分配至所述第三业务对象的第二分配数额;
将所述第二分配数额增加至所述数据处理平台的第三业务对象的总数额中,得到所述数据处理平台的第三业务对象的新的总数额,并更新各所述服务节点中第一业务对象的可用数额以及所述主服务节点上第一业务对象的总数额。
18.根据权利要求10-14任一项所述的装置,其特征在于,所述分配模块,还用于根据各所述服务节点的历史处理数据,分别为各服务节点配置预设数额的业务对象。
19.一种电子设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如权利要求1-9任一所述数据处理方法的步骤。
20.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1-9任一所述数据处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110288517.5A CN112669160B (zh) | 2021-03-18 | 2021-03-18 | 数据处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110288517.5A CN112669160B (zh) | 2021-03-18 | 2021-03-18 | 数据处理方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112669160A CN112669160A (zh) | 2021-04-16 |
CN112669160B true CN112669160B (zh) | 2021-06-29 |
Family
ID=75399556
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110288517.5A Active CN112669160B (zh) | 2021-03-18 | 2021-03-18 | 数据处理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112669160B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114466067B (zh) * | 2021-12-21 | 2023-08-04 | 天翼云科技有限公司 | 一种数据迁移的方法及装置、电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102547818A (zh) * | 2012-01-04 | 2012-07-04 | 大唐移动通信设备有限公司 | 资源标识分配方法和设备 |
CN105743956A (zh) * | 2014-12-12 | 2016-07-06 | 阿里巴巴集团控股有限公司 | 一种数据资源分配方法和装置 |
CN106952085A (zh) * | 2016-01-06 | 2017-07-14 | 阿里巴巴集团控股有限公司 | 一种数据存储与业务处理的方法及装置 |
CN109784963A (zh) * | 2017-11-14 | 2019-05-21 | 阿里巴巴集团控股有限公司 | 一种资源管理***、方法、服务器及计算机存储介质 |
CN111190910A (zh) * | 2019-07-11 | 2020-05-22 | 腾讯科技(深圳)有限公司 | 额度资源的处理方法、装置、电子设备及可读存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8332467B2 (en) * | 2009-07-29 | 2012-12-11 | International Business Machines Corporation | Lightweight RRD extension framework |
CN104639594A (zh) * | 2013-11-15 | 2015-05-20 | 中国电信股份有限公司 | 分配物理资源和虚拟资源的***和方法 |
-
2021
- 2021-03-18 CN CN202110288517.5A patent/CN112669160B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102547818A (zh) * | 2012-01-04 | 2012-07-04 | 大唐移动通信设备有限公司 | 资源标识分配方法和设备 |
CN105743956A (zh) * | 2014-12-12 | 2016-07-06 | 阿里巴巴集团控股有限公司 | 一种数据资源分配方法和装置 |
CN106952085A (zh) * | 2016-01-06 | 2017-07-14 | 阿里巴巴集团控股有限公司 | 一种数据存储与业务处理的方法及装置 |
CN109784963A (zh) * | 2017-11-14 | 2019-05-21 | 阿里巴巴集团控股有限公司 | 一种资源管理***、方法、服务器及计算机存储介质 |
CN111190910A (zh) * | 2019-07-11 | 2020-05-22 | 腾讯科技(深圳)有限公司 | 额度资源的处理方法、装置、电子设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112669160A (zh) | 2021-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104937584B (zh) | 基于共享资源的质量向经优先级排序的虚拟机和应用程序提供优化的服务质量 | |
US20200092084A1 (en) | System and methods for operating a blockchain network | |
US8108352B1 (en) | Data store replication for entity based partition | |
CN107993151B (zh) | 基金交易清算方法、装置、设备及计算机可读存储介质 | |
KR101959153B1 (ko) | 데이터베이스에서의 계좌와 관련된 거래 요청의 효율적인 처리를 위한 시스템 | |
JP2019200580A (ja) | 分散台帳システム、分散台帳サブシステム、および、分散台帳ノード | |
CN110910230A (zh) | 一种记账方法、记账***及存储介质 | |
EP2419845A2 (en) | Policy-based storage structure distribution | |
CN108270581A (zh) | 共享资源计费处理方法及装置 | |
CN110909978A (zh) | 资源处理方法、装置、服务器及计算机可读存储介质 | |
WO2020259191A1 (zh) | 一种数据中心节点分配方法、装置、***及计算机设备 | |
CN106952085B (zh) | 一种数据存储与业务处理的方法及装置 | |
CN112669160B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN115712660B (zh) | 数据存储方法、装置、服务器及存储介质 | |
CN107276914B (zh) | 基于cmdb的自助资源分配调度的方法 | |
CN117522540A (zh) | 一种基于银行分布式电子账单管理*** | |
CN111708808A (zh) | 分布式业务***及其业务汇总查询方法、装置和设备 | |
JP2019149185A (ja) | 資産目録化システム、及び電子担保化検索を実行するコンピュータ実施方法 | |
CN114244905B (zh) | 数据转发方法、装置、计算机设备和存储介质 | |
CN113032036B (zh) | 业务数据处理方法、装置、***、计算机设备和存储介质 | |
CN113312359A (zh) | 一种分布式作业进度计算方法、装置和存储介质 | |
CN112948078A (zh) | 基于服务调用的收益分配任务处理方法及装置 | |
CN110175179A (zh) | 数据传输方法及***、服务节点、存储装置 | |
CN115686869B (zh) | 资源处理方法、***、电子装置和存储介质 | |
WO2024011917A1 (en) | Delegate model for blockchain transactions |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |