A calculation method of distributed server cluster based on data distributed server cluster includes partitioning sub cluster, data read and data sub sub cluster computing cluster; distributed server cluster server is multi-threaded server: task partition sub cluster server computing tasks in receiving, respectively, to read data in the sub cluster parallel server initiated call; data read sub cluster server response task sub cluster server initiated the call from the originator and call the corresponding database table data to be calculated in parallel read entries; data read sub cluster server respectively to the data calculation server in the cluster parallel initiated the call, will read the data to be calculated items issued to the data calculation server in the cluster, by meter data A server in an operator cluster executes parallel computations of multiple threads based on received data items to be calculated. This application can improve computing performance and efficiency.
【技术实现步骤摘要】
基于分布式服务器集群的数据计算方法及系统
本申请涉及通信领域,尤其涉及一种基于分布式服务器集群的数据计算方法及系统。
技术介绍
在一些大规模数据计算的场景中,需要进行计算的数据库中包含的数量量通常非常庞大,而单台物理服务器的计算性能通常会存在极限。因此,为了应对单台服务器计算性能上的不足,业界常规的处理方式是,通过引入服务器集群参与并行计算,并对数据库进行分库分表;例如,可以将数据库中存储的数据分拆到不同的数据库和不同的数据库分表中。然而,这种方式在某种程度上,虽然可以缓解在大规模数据计算的场景下处理性能上的压力,但随着时间和业务的快速发展,各数据库分表中的数据量也会快速累积,因此仍然可能会造成集群在执行数据计算时,系统消耗过大,计算效率低的问题。
技术实现思路
本申请提出一种基于分布式服务器集群的数据计算方法,所述分布式服务器集群包括任务划分子集群、数据读取子集群以及数据计算子集群;其中,所述分布式服务器集群中的服务器均为多线程服务器,所述方法包括:任务划分子集群中的服务器在接收到计算任务时,分别向数据读取子集群中的服务器并行发起调用;数据读取子集群中的服务器响应所述任务划分子集群中的服务器发起的调用,从与所述调用的发起方对应的数据库分表中并行读取预设数量的待计算数据条目;所述数据读取子集群中的服务器分别向数据计算子集群中的服务器并行发起调用,将读取到的所述预设数量的待计算数据条目提交至所述数据计算子集群中的服务器,以由所述数据计算子集群中的服务器基于接收到的所述待计算数据条目执行多线程的并行计算。可选的,所述任务划分子集群中的服务器均在本地维护了对应的数据 ...
【技术保护点】
一种基于分布式服务器集群的数据计算方法,其特征在于,所述分布式服务器集群包括任务划分子集群、数据读取子集群以及数据计算子集群;其中,所述分布式服务器集群中的服务器均为多线程服务器,所述方法包括:任务划分子集群中的服务器在接收到计算任务时,分别向数据读取子集群中的服务器并行发起调用;数据读取子集群中的服务器响应所述任务划分子集群中的服务器发起的调用,从与所述调用的发起方对应的数据库分表中并行读取预设数量的待计算数据条目;所述数据读取子集群中的服务器分别向数据计算子集群中的服务器并行发起调用,将读取到的所述预设数量的待计算数据条目下发至数据计算子集群中的服务器,以由所述数据计算子集群中的服务器基于接收到的所述待计算数据条目执行多线程的并行计算。
【技术特征摘要】
1.一种基于分布式服务器集群的数据计算方法,其特征在于,所述分布式服务器集群包括任务划分子集群、数据读取子集群以及数据计算子集群;其中,所述分布式服务器集群中的服务器均为多线程服务器,所述方法包括:任务划分子集群中的服务器在接收到计算任务时,分别向数据读取子集群中的服务器并行发起调用;数据读取子集群中的服务器响应所述任务划分子集群中的服务器发起的调用,从与所述调用的发起方对应的数据库分表中并行读取预设数量的待计算数据条目;所述数据读取子集群中的服务器分别向数据计算子集群中的服务器并行发起调用,将读取到的所述预设数量的待计算数据条目下发至数据计算子集群中的服务器,以由所述数据计算子集群中的服务器基于接收到的所述待计算数据条目执行多线程的并行计算。2.根据权利要求1所述的方法,其特征在于,所述任务划分子集群中的服务器均在本地维护了对应的数据库分表;所述数据库分表包括待计算数据条目以及与所述待计算数据条目对应的计算状态;其中,所述计算状态包括初始状态、待计算状态、计算完成状态以及重算状态。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:所述任务划分子集群中的服务器基于预设策略,动态维护所述数据库分表中各待计算数据条目的计算状态;其中,所述预设策略包括:定时将所述数据库分表中的数据条目,设置为初始状态;当任一数据条目计算完成时,将该数据条目设置为计算完成状态;当接收到任一数据条目的计算参数或者任一数据条目的计算参数发生更新时,如果该数据条目为初始状态,将该数据条目设置为待计算状态;如果该数据条目为计算完成状态,将该数据条目设置为重算状态。4.根据权利要求1所述的方法,其特征在于,所述计算任务包括定时计算任务以及实时计算任务;所述方法还包括:所述数据读取子集群中的服务器在从所述数据库分表中读取待计算数据条目时,如果所述计算任务为定时计算任务,优先读取所述待计算状态的数据条目;所述数据读取子集群中的服务器在从所述数据库分表中读取待计算数据条目时,如果所述计算任务为实时计算任务,优先读取重算状态的数据条目。5.根据权利要求1所述的方法,其特征在于,所述任务划分子集群中的服务器提供批量访问接口,以使数据读取子集群中的服务器响应所述任务划分子集群中的服务器发起的调用时,从与所述调用的发起方对应的数据库分表中批量读取待计算数据条目。6.根据权利要求1所述的方法,其特征在于,所述将读取到的所述预设数量的待计算数据条目提交至所述数据计算子集群中的服务器,包括:将读取到的所述预设数量的待计算数据条目进行拼接,得到目标字符串;将所述目标字符串下发至所述数据计算子集群中的服务器,以由所述数据计算子集群中的服务器针对所述目标字符串执行拆分,得到所述预设数量的待计算数据条目。7.一种基于分布...
【专利技术属性】
技术研发人员:薛建军,刘磊,王学俊,李剑虹,杨富平,仝浩男,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛,KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。