一种混合大数据处理系统及处理方法

文档序号:7818581阅读:275来源:国知局
一种混合大数据处理系统及处理方法
【专利摘要】本发明公开了一种混合大数据处理系统,包括与Gearman服务器端连接的多个客户端和多个数据处理模块,多个数据处理模块均与存储系统连接。本发明的混合大数据处理系统,能够降低批处理和流式处理之间的交换,并且使得系统资源得到合理而充分的利用。本发明的另一种采用上述混合大数据处理系统的处理方法,降低批处理和流式处理之间的交换,并且使得系统资源得到合理而充分的利用。
【专利说明】一种混合大数据处理系统及处理方法

【技术领域】
[0001]本发明属于大数据【技术领域】,涉及一种混合大数据处理系统,还涉及一种混合大数据处理方法。

【背景技术】
[0002]目前,大数据在很多企业中已经广泛被应用,在处理大数据时,Hadoop通常被作为标准来使用,例如IBM、0racle、SAP、甚至微软等大型软件供应商都采了 Hadoop。Hadoop虽然在批量数据处理方面功效卓越,然而它对实时性要求高的业务却显得力有未逮。
[0003]而Storm是一个高度容错的、分布式的实时流式处理系统,能够在实时性需求高的场景中对持续不断的数据流进行分析处理,比如在一些精准广告推荐、话题趋势预测等。
[0004]在资源分配方面,对于Hadoop生态系统而言,无论是处理器还是存储能力等方面的需求都是随着数据量和业务复杂性的变化而动态改变的,因此,在考虑如何高效利用Hadoop系统资源的情况下,适时地将暂时不用的资源分配给需要实时处理的系统使用,再在其需要时重新获取使用将是一件有意义的事情。


【发明内容】

[0005]本发明的目的是提供一种混合大数据处理系统,能够降低批处理和流式处理之间的交换,并且使得系统资源得到合理而充分的利用。
[0006]本发明的另一目的是提供一种混合大数据处理方法,能够降低批处理和流式处理之间的交换,并且使得系统资源得到合理而充分的利用。
[0007]本发明所采用的一种技术方案是,一种混合大数据处理系统,包括与Gearman服务器端连接的多个客户端和多个数据处理模块,多个数据处理模块均与存储系统连接。
[0008]本发明一种技术方案的特点还在于,
[0009]数据处理模块包括 strom topology 单兀,strom topology 单兀与 mapreduce Job单兀连接,strom topology单兀和mapreduce Job单兀均与Gearman服务器端连接,stromtopology单元和mapreduce Job单元均与存储系统连接。
[0010]本发明所采用的另一种技术方案是,一种混合大数据处理方法,采用一种混合大数据处理系统,其结构为:包括与Gearman服务器端连接的多个客户端和多个数据处理模块,多个数据处理模块均与存储系统连接;
[0011]数据处理模块包括 strom topology 单兀,strom topology 单兀与 mapreduce Job单兀连接,strom topology单兀和mapreduce Job单兀均与Gearman服务器端连接,stromtopology单元和mapreduce Job单元均与存储系统连接;
[0012]采用上述混合大数据处理系统的处理方法,具体按照以下步骤实施:
[0013]步骤1,用户根据需求编写请求,客户端发送请求给Gearman服务器端,请求为实时数据处理请求或离线批量数据处理请求;
[0014]步骤2,Gearman服务器端接收客户端发送的请求,并根据请求判断将需要处理的业务分发给strom topology单元或mapreduce Job单元,如果请求为实时数据处理请求,则执行步骤3 ;如果请求为离线批量数据处理请求,则执行步骤4 ;
[0015]步骤3, strom topology单元对数据进行实时处理,并将处理结果经Gearman服务器端返回给客户端,将需要存储的数据存入存储系统中;
[0016]步骤4, mapreduce Job单元对数据进行离线批量处理,并将处理结果经Gearman服务器端返回给客户端,将需要存储的数据存入存储系统中。
[0017]本发明另一种技术方案的特点还在于,
[0018]其中,步骤3具体按照以下步骤实施:
[0019]步骤3.1, strom topology单元判断资源是否紧张,如果资源紧张,则向Hadoop系统借调资源,并执行步骤3.2 ;如果资源不紧张,则执行步骤3.2 ;
[0020]步骤3.2, strom topology单元对数据进行实时处理,并在空闲时释放资源;
[0021]步骤3.3, strom topology单元判断经过实时处理后的数据是否需要mapreduceJob单元再做处理,如果需要,则将经过实时处理后的数据发送给mapreduce Job单元处理,并将经过mapreduce Job单元处理后的数据经Gearman服务器端返回给客户端,然后执行步骤3.4 ;如果不需要,则将经过实时处理后的数据经Gearman服务器端返回给客户端,然后执行步骤3.4 ;
[0022]步骤3.4, strom topology单元判断实时处理后的数据或经过mapreduce Job单元处理后的数据是否需要存储,如果需要存储,则将最终处理后的数据发送给存储系统存储。
[0023]其中,步骤4具体按照以下步骤实施:
[0024]步骤4.1, mapreduce Job单元对离线批量数据进行处理;
[0025]步骤4.2,mapreduce Job单元将经过离线批量处理后的数据经Gearman服务器端返回给客户端,并判断经过离线批量处理后的数据是否需要存储,如果需要存储,则将经过mapreduce Job单元处理后的数据发送给存储系统进行存储。
[0026]本发明的有益效果是,
[0027]I)数据处理效率高:对于大批量离线的有处理分析请求的数据而言,采用HadoopMapReduce计算框架能够达到所需的计算能力;对于变化频率快的数据而言,采用storm这种流式处理技术能够保证对数据的及时有效处理。
[0028]2)弹性潜力大:实时处理的负载一般不恒定,而且难以预测,就Storm本身而言,当处于峰值处理期时,它会需要大量资源。而将storm和批处理系统Hadoop结合使用之后,storm可以在Hadoop空闲资源充足的情况下获取一部分来作为实时处理资源的需求。
[0029]3)具有动态扩展性:支持弹性扩展,通过动态增加或减少节点应对变化的数据访问负载,提供可预测的性能与扩展性。
[0030]4)高可用性:无论是gearman、Hadoop还是Storm都有很好的容错性和故障检测能力。
[0031]5)易用性:提供统一的可视化管理和监控界面,动态扩展或失效恢复时无需人工配置,便于统一管理和维护。

【专利附图】

【附图说明】
[0032]图1是本发明一种混合大数据处理系统的结构示意图;
[0033]图2是本发明一种混合大数据处理方法中实时数据处理的流程示意图;
[0034]图3是本发明一种混合大数据处理方法中离线批量数据处理的流程示意图。
[0035]图中,1.Gearman 服务器端,2.客户端,3.strom topology 单兀,4.mapreduce Job单元,5.存储系统。

【具体实施方式】
[0036]下面结合附图和【具体实施方式】对本发明进行详细说明。
[0037]本发明一种混合大数据处理系统,如图1所示,包括与Gearman服务器端I连接的多个客户端2和多个数据处理模块,多个数据处理模块均与存储系统5连接。数据处理模块包括 strom topology 单兀 3, strom topology 单兀 3 与 mapreduce Job 单兀 4 连接,stromtopology 单兀 3 和 mapreduce Job 单兀 4 均与 Gearman 服务器端 I 连接,strom topology单元3和mapreduce Job单元4均与存储系统5连接。
[0038]存储系统5包括HDFS和HBase存储系统。
[0039]本发明一种混合大数据处理系统的工作原理是,首先启动Gearman服务器端1,用户编写好处理具体任务的处理模块作为具体任务处理端,并启动,具体任务处理端包括实时任务处理模块和离线批量任务处理模块;然后由用户根据需求编写具体的调度系统客户端2,并启动;Gearman服务器端I的服务器端接收客户端2的请求并将其需要处理的业务分发给实际适合处理该业务的工作节点,并根据请求类型选择实时处理任务或者离线批量处理任务进行处理,处理结束有需要入库的直接入库存入分布式存储系统5,并将最终结果经服务器端返回到客户端2。
[0040]本发明选择Hadoop用作处理离线的、批量的、对精确度要求高,但对实时性要求不高的数据;而将storm用于处理Hadoop无法处理的、对实时性要求较高的场景中;在storm对数据做了实时处理之后再将其导入到Hadoop系统中做更进一步的分析,实现了趋近于零误差的精准计算。
[0041]本发明中任务的分发由Gearman这种高效的分布式任务分发器来具体分发,通过命令行形式对所要处理的数据进行导向,选择Hadoop还是Storm。
[0042]本发明另一种混合大数据处理方法,采用上述混合大数据处理系统的处理方法,
[0043]其中,如图2所示,流式数据处理具体按照以下步骤实施:
[0044]步骤1,用户编写流式数据处理请求,客户端2发送实时数据处理请求给Gearman服务器端I ;
[0045]步骤2,Gearman服务器端I接收客户端2发送的实时数据处理请求,并将需要实时处理的任务和数据导入strom topology单元3中;
[0046]步骤3,判断strom topology单元3中资源是否紧张,如果资源紧张,则向Hadoop系统借调资源,并执行步骤4 ;如果资源不紧张,则执行步骤4 ;
[0047]步骤4, strom topology单元3对数据进行实时处理,并在空闲时释放资源;
[0048]步骤5, strom topology单元3判断经过实时处理后的数据是否需要mapreduceJob单元4再做处理,如果需要,则将经过实时处理后的数据发送给mapreduce Job单元4处理,并将经过mapreduce Job单元4处理后的数据经Gearman服务器端I返回给客户端2,然后执行步骤6 ;如果不需要,则将经过实时处理后的数据经Gearman服务器端I返回给客户端2,然后执行步骤6 ;
[0049]步骤6, strom topology单元3判断实时处理后的数据或经过mapreduce Job单元4处理后的数据是否需要存储,如果需要存储,则将最终处理后的数据发送给存储系统5存储。
[0050]如图3所示,离线批量数据处理按照以下步骤实施:
[0051]步骤1,用户编写离线批量数据处理请求,客户端2发送离线批量数据处理请求给Gearman服务器端I ;
[0052]步骤2, mapreduce Job单元4对批处理任务和数据进行处理;
[0053]步骤3,mapreduce Job单元4将经过批处理后的数据经Gearman服务器端I返回给客户端2,并判断经过批处理后的任务和数据是否需要存储,如果需要存储,则将处理后的数据发送给存储系统5进行存储。
【权利要求】
1.一种混合大数据处理系统,其特征在于,包括与Gearman服务器端(I)连接的多个客户端(2)和多个数据处理模块,所述多个数据处理模块均与存储系统(5)连接。
2.根据权利要求1所述的一种混合大数据处理系统,其特征在于,所述数据处理模块包括 strom topology 单兀(3),所述 strom topology 单兀(3)与 mapreduce Job 单兀(4)连接,所述strom topology单元(3)和mapreduce Job单元(4)均与Gearman服务器端(I)连接,所述strom topology单元(3)和mapreduce Job单元(4)均与存储系统(5)连接。
3.一种混合大数据处理方法,其特征在于,采用一种混合大数据处理系统,其结构为:包括与Gearman服务器端(I)连接的多个客户端(2)和多个数据处理模块,所述多个数据处理模块均与存储系统(5)连接; 所述数据处理模块包括strom topology单元(3),所述strom topology单元(3)与mapreduce Job 单兀(4)连接,所述 strom topology 单兀(3)和 mapreduce Job 单兀(4)均与Gearman服务器端(I)连接,所述strom topology单元(3)和mapreduce Job单元(4)均与存储系统(5)连接; 采用上述混合大数据处理系统的处理方法,具体按照以下步骤实施: 步骤1,用户根据需求编写请求,客户端(2)发送请求给Gearman服务器端(1),所述请求为实时数据处理请求或离线批量数据处理请求; 步骤2,Gearman服务器端(I)接收客户端发送的请求,并根据请求判断将需要处理的业务分发给strom topology单元(3)或mapreduce Job单元(4),如果请求为实时数据处理请求,则执行步骤3 ;如果请求为离线批量数据处理请求,则执行步骤4 ; 步骤3, strom topology单元(3)对数据进行实时处理,并将处理结果经Gearman服务器端(I)返回给客户端(2),将需要存储的数据存入存储系统(5)中; 步骤4, mapreduce Job单元(4)对数据进行离线批量处理,并将处理结果经Gearman服务器端(I)返回给客户端(2),将需要存储的数据存入存储系统(5)中。
4.根据权利要求3所述的一种混合大数据处理方法,其特征在于,步骤3具体按照以下步骤实施: 步骤3.1, strom topology单元(3)判断资源是否紧张,如果资源紧张,则向Hadoop系统借调资源,并执行步骤3.2 ;如果资源不紧张,则执行步骤3.2 ; 步骤3.2, strom topology单元(3)对数据进行实时处理,并在空闲时释放资源; 步骤3.3, strom topology单元(3)判断经过实时处理后的数据是否需要mapreduceJob单元(4)再做处理,如果需要,则将经过实时处理后的数据发送给mapreduce Job单元(4)处理,并将经过mapreduce Job单元(4)处理后的数据经Gearman服务器端(I)返回给客户端(2),然后执行步骤3.4 ;如果不需要,则将经过实时处理后的数据经Gearman服务器端(I)返回给客户端(2),然后执行步骤3.4 ; 步骤3.4, strom topology单元(3)判断实时处理后的数据或经过mapreduce Job单元(4)处理后的数据是否需要存储,如果需要存储,则将最终处理后的数据发送给存储系统(5)存储。
5.根据权利要求3所述的一种混合大数据处理方法,其特征在于,步骤4具体按照以下步骤实施: 步骤4.1, mapreduce Job单元(4)对离线批量数据进行处理; 步骤4.2,mapreduce Job单元(4)将经过离线批量处理后的数据经Gearman服务器端(1)返回给客户端(2),并判断经过离线批量处理后的数据是否需要存储,如果需要存储,则将经过mapreduce Job单元(4)处理后的数据发送给存储系统(5)进行存储。
【文档编号】H04L29/08GK104468710SQ201410605808
【公开日】2015年3月25日 申请日期:2014年10月31日 优先权日:2014年10月31日
【发明者】王茜, 史晨昱, 梁小江, 李安颖, 葛新 申请人:西安未来国际信息股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1