基于大数据的计算方法和装置制造方法及图纸

技术编号:15198560 阅读:154 留言:0更新日期:2017-04-21 17:50
本发明专利技术公开了一种基于大数据的计算方法和装置,其中,方法包括:S1、获取用户的业务需求,并根据业务需求确定业务的目标计算数据量级;S2、判断目标计算数据量级是否大于预设阈值;S3、若大于预设阈值,则对业务进行离线计算;S4、若小于等于预设阈值,则获取当前目标数据集合,并判断计算当前目标数据集合所需内存是否大于预设内存,若大于预设内存,则通过集群对当前目标数据集合进行迭代计算,否则,通过单机对当前目标数据集合进行迭代计算;S5、判断迭代计算是否达到N次,若达到,则执行步骤S6,否则,重复执行步骤S4;S6、返回迭代计算结果。本发明专利技术实施例的基于大数据的计算方法和装置,提高了计算效率,实时性高,节省资源。

Calculation method and device based on large data

The invention discloses a method based on large data computing method and device, wherein, the method includes: S1, access to the business needs of the users, and according to the needs of the business to determine the business target data quantity; S2, determine the target data magnitude is larger than a preset threshold; S3, if greater than a preset threshold value, is the business of offline S4, calculation; Ruo Xiaoyu is equal to a preset threshold value, obtaining the current target data set, and determine the target data set to calculate the required memory is larger than a preset memory, if more than a preset memory, the current target data set by clustering iteration, otherwise, by a single iteration of the target data set calculation; S5, judgment the iterative calculation is up to N times, if reached, otherwise executing step S6, and repeat step S4; S6, return to the iterative calculation of node Fruit. The calculation method and the device based on the large data of the embodiment of the invention improve the calculation efficiency, the real-time performance is high, and the resource is saved.

【技术实现步骤摘要】

本专利技术涉及计算机
,尤其涉及一种基于大数据的计算方法和装置。
技术介绍
大数据分析是近些年新兴的计算机科学领域,数据分析人员可从结构化的数据中分析出业务需要的报表。随着业务量的快速增长,相关的数据也在高速累积。目前,主要通过hadoop大数据分析系统对海量的数据进行离线或在线的分析。首先,业务人员将自己的业务需求发送给数据分析人员进行需求分析。其次,数据分析人员从海量的原始数据中进行数据挖掘,以一定的维度或者特定的算法获取很多业务中间宽表。最后,将业务需求转换为hadoop大数据分析系统可识别的指令,从大量的业务中间宽表中以一定的维度提取符合业务需求的报表,最终将结果展现给业务人员。但是,通过上述方法对数据进行分析,存在以下几个问题:1、业务中间宽表为按照一定维度获取的,如果要获取更细粒度的数据,当前的业务中间宽表可能无法支持。如果以最细粒度构建业务中间宽表,会浪费大量的存储空间。2、业务报表为基于特定的业务需求,离线挖掘的结果。如果业务人员想按照另一个维度来进行分析时,需要重新计算,并生成新的报表,成本高。3、不支持T+0的增量数据,必须等第二天才能看到结果,实时性差。4、针对每个业务需求,均要对海量的数据进行全量的计算,而业务人员有可能只会使用到其中一小部分,造成大量的存储资源和计算资源浪费。
技术实现思路
本专利技术旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本专利技术的一个目的在于提出一种基于大数据的计算方法,能够提高计算效率,实时性高,节省资源。本专利技术的第二个目的在于提出一种基于大数据的计算装置。为了实现上述目的,本专利技术第一方面实施例提出了一种基于大数据的计算方法,包括:S1、获取用户的业务需求,并根据所述业务需求确定所述业务的目标计算数据量级;S2、判断所述目标计算数据量级是否大于预设阈值;S3、若大于所述预设阈值,则对所述业务进行离线计算;S4、若小于等于所述预设阈值,则获取当前目标数据集合,并判断计算所述当前目标数据集合所需内存是否大于预设内存,若大于所述预设内存,则通过集群对所述当前目标数据集合进行迭代计算,否则,通过单机对所述当前目标数据集合进行迭代计算;S5、判断所述迭代计算是否达到N次,若达到,则执行步骤S6,否则,重复执行步骤S4;以及S6、返回迭代计算结果。本专利技术实施例的基于大数据的计算方法,通过获取的业务需求确定业务的目标计算数据量级,并根据目标计算数据量级确定对业务进行离线计算或是对业务进行迭代计算,当进行迭代计算时,根据当前目标数据集合所需内存确定通过单机或是集群对当前目标数据集合进行迭代计算,实现了将海量数据分为多次迭代计算,提高了计算效率,实时性高,节省资源。本专利技术第二方面实施例提出了一种基于大数据的计算装置,包括:确定模块,用于获取用户的业务需求,并根据所述业务需求确定所述业务的目标计算数据量级;判断模块,用于判断所述目标计算数据量级是否大于预设阈值;离线计算模块,用于在所述目标计算数据量级大于预设阈值时,对所述业务进行离线计算;迭代计算模块,用于在所述目标计算数据量级小于等于所述预设阈值时,获取当前目标数据集合,并判断计算所述当前目标数据集合所需内存是否大于预设内存,若大于所述预设内存,则通过集群对所述当前目标数据集合进行迭代计算,否则,通过单机对所述当前目标数据集合进行迭代计算;返回模块,用于当所述迭代计算达到N次时,返回迭代计算结果。本专利技术实施例的基于大数据的计算装置,通过获取的业务需求确定业务的目标计算数据量级,并根据目标计算数据量级确定对业务进行离线计算或是对业务进行迭代计算,当进行迭代计算时,根据当前目标数据集合所需内存确定通过单机或是集群对当前目标数据集合进行迭代计算,实现了将海量数据分为多次迭代计算,提高了计算效率,实时性高,节省资源。附图说明图1是根据本专利技术一个实施例的基于大数据的计算方法的流程图。图2是根据本专利技术一个具体实施例的基于大数据的计算方法的流程图。图3是根据本专利技术一个具体实施例的最短路径效果示意图。图4是根据本专利技术一个实施例的基于大数据的计算装置的结构示意图。具体实施方式下面详细描述本专利技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本专利技术,而不能理解为对本专利技术的限制。下面参考附图描述本专利技术实施例的基于大数据的计算方法和装置。图1是根据本专利技术一个实施例的基于大数据的计算方法的流程图。如图1所示,基于大数据的计算方法可包括:S1、获取用户的业务需求,并根据业务需求确定业务的目标计算数据量级。具体地,首先可获取用户的业务需求,然后根据业务需求获取目标数据集合,并根据目标数据集合确定业务的目标计算量,再根据目标计算量确定对应的目标计算数据量级。S2、判断目标计算数据量级是否大于预设阈值。其中,预设阈值基于集群硬件配置和性能获得。S3、若大于预设阈值,则对业务进行离线计算。具体地,如果目标计算数据量级大于预设阈值,则可对业务进行离线计算。S4、若小于等于预设阈值,则获取当前目标数据集合,并判断计算当前目标数据集合所需内存是否大于预设内存,若大于预设内存,则通过集群对当前目标数据集合进行迭代计算,否则,通过单机对当前目标数据集合进行迭代计算。在本专利技术的实施例中,如果目标计算数据量级小于等于预设阈值,则可对业务进行迭代计算。假设目标数据集合的结构为三层,则可将迭代计算分为三个阶段,即三次迭代计算。在每个阶段时,可获取当前目标数据集合,如果计算当前目标数据集合所需内存大于预设内存,例如计算当前目标数据集合所需内存20G,大于单机内存16G,单机无法单独完成计算任务,则可通过集群对当前目标数据集合进行迭代计算。具体地,可对当前目标数据集合进行分区,并通过集群中的多个机器并行计算,获得的结果为准实时结果,例如1秒。如果当前目标数据集合所需内存小于等于预设内存,则单机即可完成计算任务,获得的结果为实时结果,例如10毫秒。在第一阶段的迭代计算完成后,可开始第二阶段的迭代计算,以此类推。S5、判断迭代计算是否达到N次,若达到,则执行步骤S6,否则,重复执行步骤S4。S6、返回迭代计算结果。如果迭代计算达到N次,则可返回迭代计算结果,否则继续进行迭代计算,直到达到N次。其中,N为正整数。本专利技术实施例的基于大数据的计算方法,通过获取的业务需求确定业务的目标计算数据量级,并根据目标计算数据量级确定对业务进行离线计算或是对业务进行迭代计算,当进行迭代计算时,根据当前目标数据集合所需内存确定通过单机或是集群对当前目标数据集合进行迭代计算,实现了将海量数据分为多次迭代计算,提高了计算效率,实时性高,节省资源。图2是根据本专利技术一个具体实施例的基于大数据的计算方法的流程图,本实施例以最短路径为例进行描述。如图2所示,基于大数据的计算方法可包括:S201,将业务分为多个阶段进行迭代计算。最短路径是用于计算一个节点到其他节点的最短路径。主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止,如图3所示,本实施例的业务为计算从源节点A到目标节点H的最短路径。传统的算法是需要将整体的节点所有的路径遍历,计本文档来自技高网...
基于大数据的计算方法和装置

【技术保护点】
一种基于大数据的计算方法,其特征在于,包括以下步骤:S1、获取用户的业务需求,并根据所述业务需求确定所述业务的目标计算数据量级;S2、判断所述目标计算数据量级是否大于预设阈值;S3、若大于所述预设阈值,则对所述业务进行离线计算;S4、若小于等于所述预设阈值,则获取当前目标数据集合,并判断计算所述当前目标数据集合所需内存是否大于预设内存,若大于所述预设内存,则通过集群对所述当前目标数据集合进行迭代计算,否则,通过单机对所述当前目标数据集合进行迭代计算;S5、判断所述迭代计算是否达到N次,若达到,则执行步骤S6,否则,重复执行步骤S4;以及S6、返回迭代计算结果。

【技术特征摘要】
1.一种基于大数据的计算方法,其特征在于,包括以下步骤:S1、获取用户的业务需求,并根据所述业务需求确定所述业务的目标计算数据量级;S2、判断所述目标计算数据量级是否大于预设阈值;S3、若大于所述预设阈值,则对所述业务进行离线计算;S4、若小于等于所述预设阈值,则获取当前目标数据集合,并判断计算所述当前目标数据集合所需内存是否大于预设内存,若大于所述预设内存,则通过集群对所述当前目标数据集合进行迭代计算,否则,通过单机对所述当前目标数据集合进行迭代计算;S5、判断所述迭代计算是否达到N次,若达到,则执行步骤S6,否则,重复执行步骤S4;以及S6、返回迭代计算结果。2.如权利要求1所述的方法,其特征在于,所述根据所述业务需求确定所述业务的目标计算数据量级,包括:根据所述业务需求获取目标数据集合,并根据所述目标数据集合确定所述业务的目标计算量,以及根据所述目标计算量确定对应的目标计算数据量级。3.如权利要求1所述的方法,其特征在于,所述预设阈值基于集群硬件配置和性能获得。4.如权利要求1所述的方法,其特征在于,所述通过集群对所述当前目标数据集合进行迭代计算,包括:对所述当前目标数据集合进行分区,并通过所述集...

【专利技术属性】
技术研发人员:朱坤蔡永保张凤婷
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1