1.一种基于分布式服务器集群的数据计算方法,其特征在于,所述分布式服务器集群包括任务划分子集群、数据读取子集群以及数据计算子集群;其中,所述分布式服务器集群中的服务器均为多线程服务器,所述方法包括:
任务划分子集群中的服务器在接收到计算任务时,分别向数据读取子集群中的服务器并行发起调用;
数据读取子集群中的服务器响应所述任务划分子集群中的服务器发起的调用,从与所述调用的发起方对应的数据库分表中并行读取预设数量的待计算数据条目;
所述数据读取子集群中的服务器分别向数据计算子集群中的服务器并行发起调用,将读取到的所述预设数量的待计算数据条目下发至数据计算子集群中的服务器,以由所述数据计算子集群中的服务器基于接收到的所述待计算数据条目执行多线程的并行计算。
2.根据权利要求1所述的方法,其特征在于,所述任务划分子集群中的服务器均在本地维护了对应的数据库分表;所述数据库分表包括待计算数据条目以及与所述待计算数据条目对应的计算状态;其中,所述计算状态包括初始状态、待计算状态、计算完成状态以及重算状态。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
所述任务划分子集群中的服务器基于预设策略,动态维护所述数据库分表中各待计算数据条目的计算状态;
其中,所述预设策略包括:
定时将所述数据库分表中的数据条目,设置为初始状态;
当任一数据条目计算完成时,将该数据条目设置为计算完成状态;
当接收到任一数据条目的计算参数或者任一数据条目的计算参数发生更新时,如果该数据条目为初始状态,将该数据条目设置为待计算状态;如果该数据条目为计算完成状态,将该数据条目设置为重算状态。
4.根据权利要求1所述的方法,其特征在于,所述计算任务包括定时计算任务以及实时计算任务;
所述方法还包括:
所述数据读取子集群中的服务器在从所述数据库分表中读取待计算数据条目时,如果所述计算任务为定时计算任务,优先读取所述待计算状态的数据条目;
所述数据读取子集群中的服务器在从所述数据库分表中读取待计算数据条目时,如果所述计算任务为实时计算任务,优先读取重算状态的数据条目。
5.根据权利要求1所述的方法,其特征在于,所述任务划分子集群中的服务器提供批量访问接口,以使数据读取子集群中的服务器响应所述任务划分子集群中的服务器发起的调用时,从与所述调用的发起方对应的数据库分表中批量读取待计算数据条目。
6.根据权利要求1所述的方法,其特征在于,所述将读取到的所述预设数量的待计算数据条目提交至所述数据计算子集群中的服务器,包括:
将读取到的所述预设数量的待计算数据条目进行拼接,得到目标字符串;
将所述目标字符串下发至所述数据计算子集群中的服务器,以由所述数据计算子集群中的服务器针对所述目标字符串执行拆分,得到所述预设数量的待计算数据条目。
7.一种基于分布式服务器集群的数据计算系统,其特征在于,所述分布式服务器集群中的服务器均为多线程服务器;所述分布式服务器集群包括任务划分子集群、数据读取子集群以及数据计算子集群;其中:
任务划分子集群,任务划分子集群中的服务器在接收到计算任务时,分别向数据读取子集群中的服务器并行发起调用;
数据读取子集群,数据读取子集群中的服务器响应所述任务划分子集群中的服务器发起的调用,从与所述调用的发起方对应的数据库分表中并行读取预设数量的待计算数据条目;以及,所述数据读取子集群中的服务器分别向数据计算子集群中的服务器并行发起调用,将读取到的所述预设数量的待计算数据条目提交至所述数据计算子集群中的服务器;
数据计算子集群,基于接收到的所述待计算数据条目执行多线程的并行计算。
8.根据权利要求7所述的系统,其特征在于,所述任务划分子集群:
所述任务划分子集群中的服务器均在本地维护了对应的数据库分表;所述数据库分表包括待计算数据条目以及与所述待计算数据条目对应的计算状态;其中,所述计算状态包括初始状态、待计算状态、计算完成状态以及重算状态。
9.根据权利要求8所述的系统,其特征在于,所述任务划分子集群:
所述任务划分子集群中的服务器基于预设策略,动态维护所述数据库分表中各待计算数据条目的计算状态;
其中,所述预设策略包括:
定时将所述数据库分表中的数据条目,设置为初始状态;
当任一数据条目计算完成时,将该数据条目设置为计算完成状态;
当接收到任一数据条目的计算参数或者任一数据条目的计算参数发生更新时,如果该数据条目为初始状态,将该数据条目设置为待计算状态;如果该数据条目为计算完成状态,将该数据条目设置为重算状态。
10.根据权利要求7所述的系统,其特征在于,所述计算任务包括定时计算任务以及实时计算任务;
所述数据读取子集群:
所述数据读取子集群中的服务器在从所述数据库分表中读取待计算数据条目时,如果所述计算任务为定时计算任务,优先读取所述待计算状态的数据条目;
所述数据读取子集群中的服务器在从所述数据库分表中读取待计算数据条目时,如果所述计算任务为实时计算任务,优先读取重算状态的数据条目。
11.根据权利要求7所述的系统,其特征在于,所述任务划分子集群:
所述任务划分子集群中的服务器提供批量访问接口,以使数据读取子集群中的服务器响应所述任务划分子集群中的服务器发起的调用时,从与所述调用的发起方对应的数据库分表中批量读取待计算数据条目。
12.根据权利要求7所述的系统,其特征在于,所述数据读取子集群:
所述数据读取子集群中的服务器将读取到的所述预设数量的待计算数据条目进行拼接,得到目标字符串,并将所述目标字符串下发至所述数据计算子集群中的服务器,以由所述数据计算子集群中的服务器针对所述目标字符串执行拆分,得到所述预设数量的待计算数据条目。