【技术实现步骤摘要】
一种多维度拆分的计算方法以及系统
本专利技术涉及多维度拆分计算领域,尤其涉及一种多维度拆分的计算方法以及系统。
技术介绍
现有技术中,多维度拆分系统通常基于关系型数据库存储数据,关系型数据库为由二维表及各个二维表之间的联系组成的一个数据组织。采用现有技术进行多维度拆分计算时,根据用户的数据请求,通过关系型数据库的多个二维表以及多个二维表之间的联系联合计算,从而获得符合用户数据请求的多维组合结果。 然而,采用现有技术进行多维度拆分计算时,由于基于关系型数据库的多个二维表进行多维度拆分计算,计算复杂度较高,并且处理数据量较小。
技术实现思路
本专利技术的实施例提供一种多维度拆分的计算方法以及系统,可以对海量数据进行多维度拆分计算,从而降低计算复杂度。 第一方面,本专利技术实施例提供一种多维度拆分的计算方法,包括: 根据预处理后的海量预处理数据,生成递推拓扑,所述递推拓扑由维度组合以及各维度组合之间的递推路径构成,所述维度组合由各维度的属性名称以及与所述属性名称对应的所述海量预处理数据中的数据构成; 根据预设固化策略,确定固化维度组合并确定构成最优固化维度组合的运算路径; 根据所述递推拓扑,生成计算任务; 根据所述固化维度组合以及所述最优固化维度组合的运算路径,启动计算任务,计算所述计算任务,获得计算结果。 第二方面,本专利技术实施例提供一种多维度拆分的计算系统,包括:运算决策模块,运算控制模块,维度组合生成模块; 所述运算决策模块,用于根据预处理后的海量预处理数据,生成递推拓扑,所述递推拓扑由维度组合以及各维度组 ...
【技术保护点】
一种多维度拆分的计算方法,其特征在于,包括:根据预处理后的海量预处理数据,生成递推拓扑,所述递推拓扑由维度组合以及各维度组合之间的递推路径构成,所述维度组合由各维度的属性名称以及与所述属性名称对应的所述海量预处理数据中的数据构成;根据预设固化策略,确定固化维度组合并确定构成最优固化维度组合的运算路径;根据所述递推拓扑,生成计算任务;根据所述固化维度组合以及所述最优固化维度组合的运算路径,启动计算任务,计算所述计算任务,获得计算结果。
【技术特征摘要】
1.一种多维度拆分的计算方法,其特征在于,包括: 根据预处理后的海量预处理数据,生成递推拓扑,所述递推拓扑由维度组合以及各维度组合之间的递推路径构成,所述维度组合由各维度的属性名称以及与所述属性名称对应的所述海量预处理数据中的数据构成; 根据预设固化策略,确定固化维度组合并确定构成最优固化维度组合的运算路径; 根据所述递推拓扑,生成计算任务; 根据所述固化维度组合以及所述最优固化维度组合的运算路径,启动计算任务,计算所述计算任务,获得计算结果。2.根据权利要求1所述的方法,其特征在于,在所述根据预处理后的海量预处理数据,生成递推拓扑之前,还包括: 接收海量待处理数据; 对所述海量待处理数据进行流水预处理,获得海量预处理数据。3.根据权利要求2所述的方法,其特征在于,所述对所述海量待处理数据进行流水预处理,获得海量预处理数据,包括: 根据所述海量待处理数据以及预设选择预处理规则,确定与所述海量待处理数据对应的预处理规则; 根据所述预处理规则,对所述海量待处理数据进行清洗处理,获得第一处理数据; 根据预设抽取字段规则,在所述第一处理数据中抽取多维度拆分所需的至少一个字段或者至少一个字段组合; 根据抽取的所述至少一个字段或者至少一个字段组合生成宽表,并将所述至少一个字段或者至少一个字段组合保存在所述宽表中; 将所述宽表中保存的所述至少一个字段或者至少一个字段组合进行压缩,获得所述海量预处理数据。4.根据权利要求3所述的方法,其特征在于,所述将所述宽表中保存的所述至少一个字段或者至少一个字段组合进行压缩,获得所述海量预处理数据,包括: 将所述宽表中保存的所述至少一个字段或者至少一个字段组合进行轻量压缩,获得所述海量预处理数据。5.根据权利要求1-4中任一项所述的方法,其特征在于,所述根据所述固化维度组合以及所述最优固化维度组合的运算路径,启动计算任务,包括: 获取所述固化维度组合,并确定待计算的固化维度组合; 根据所述待计算的固化维度组合,确定第一最优固化维度组合的运算路径,所述最优固化维度组合的运算路径包括所述第一最优固化维度组合的运算路径; 根据所述第一最优固化维度组合的运算路径启动所述计算任务。6.根据权利要求5所述的方法,其特征在于,所述根据所述第一最优固化维度组合的运算路径启动所述计算任务,包括: 将所述第一最优固化维度组合的运算路径中的所述待计算的固化维度组合按照路径递推关系进行分组,获得第一分组; 当所述第一分组中存在相同路径递推关系时,合并所述第一分组中具有所述相同路径递推关系的固化维度组合,获得第二分组; 按照所述路径递推关系并行启动计算所述第二分组中的各个固化维度组合的所述计算任务,多路获得所述计算结果。7.根据权利要求6所述的方法,其特征在于,所述计算所述计算任务,获得计算结果,包括: 按照启动的所述计算任务进行并行计算,多路获得计算结果。8.根据权利要求7所述的方法,其特征在于,所述按照启动的所述计算任务进行并行计算,多路获得计算结果之后,还包括: 将所述多路获得的所述计算结果,分别保存在对应的列表中,所述一路计算结果对应一个列表。9.根据权利要求8所述的方法,其特征在于,在所述将所述多路获得的所述计算结果,分别保存在对应的列表中之后,还包括: 将保存在列表中的所述计算结果存储在分布式数据库中,并对保存在列表中的所述计算结果中的关键维度组合保存在内存中,所述关键维度组合包括用户经常查询的维度组合或者用户预设时间段内使用的维度组合。10.根据权利要求9所述的方法,其特征在于,在所述将保存在列表中的所述计算结果存储在分布式数据库中,并对保存在列表中的所述计算结果中的关键维度组合保存在内存中之后,还包括: 根据用户发送的数据查询请求,判断所述分布式数据库或者内存中是否保存有待查询维度组合对应的维度组合数据,所述数据查询请求中包括所述待查询维度组合; 当所述分布式数据库或者内存中保存有所述待查询维度组合对应的所述维度组合数据时,则将所述数据查询请求发送给所述分布式数据库或者内存,并接收所述分布式数据库或者内存发送的所述维度组合数据; 当所述分布式数据库或者内存中未保存所述待查询维度组合对应的所述维度组合数据时,则合并预设时间段内的至少一个用户发送的数据查询请求,并根据所述固化维度组合以及所述最优固化维度组合的运算路径,批量启动维度组合计算的计算任务,批量执行所述维度组合计算的计算任务,获得计算结果。11.一种多维度拆分的计算系统,其特征在于,包括:运算...
【专利技术属性】
技术研发人员:蔡馥晗,李浩,武磊,曾伟纪,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:广东;44