一种面向大数据处理的数据处理方法和装置制造方法

文档序号:7804339阅读:155来源:国知局
一种面向大数据处理的数据处理方法和装置制造方法
【专利摘要】本发明公开了一种面向大数据的数据处理方法和装置,该方法包括:获取处理环境数据及负载场景数据;选择处理环境数据及负载场景数据对应的压缩方式;根据所选择的压缩方式对数据进行处理;处理环境数据包括网络传输的性能指标和磁盘的性能指标;负载场景数据包括读操作比例和写操作比例,读操作比例与写操作比例相加为1。本发明能够指导在不同运行环境、不同负载场景下的压缩方式的选择,优化大数据处理性能。
【专利说明】一种面向大数据处理的数据处理方法和装置
【技术领域】
[0001]本发明涉及大数据领域,具体涉及一种面向大数据处理的数据处理方法和装置。【背景技术】
[0002]随着人类社会全面进入信息时代,数据成为与水、石油同等重要的战略资源。通过挖掘海量数据,能够使政府和企业的运行决策建立在更加科学的依据基础上,提高决策效率、危机应对能力和公共服务水平。
[0003]大数据虽然极具价值,但由于规模巨大,面临着持续可扩展问题。例如,数据仓库中常用的记录某个对象行为的历史状态数据,在大数据时代随着对象数量(如客户)的急速增加,以及每个处理对象行为(如客户交易)的迅速增加,规模成爆炸式增长,给处理环境的CPU、存储、网络带来的巨大压力。其中,CPU通过水平扩展能够满足大数据处理需求,而磁盘读写IO和网络传输IO由于机械部件、工艺技术、物理介质等条件限制,成为制约大数据处理的主要瓶颈。为此,采用压缩方式进行大数据的存储和传输,以牺牲少量CPU时间解压缩换取IO时间,成为提高大数据处理性能的一个必然选择。
[0004]针对上述需求,当前的主流大数据处理系统,如Hadoop、HBase> Hive等,都支持在应用中Gzip、LZO、Snappy等压缩方式,然而,由于编解码方式和解压缩方法不同,各种方法的压缩率、编解码速度各有不同,遵循着压缩效果越好压缩/解压缩效率越低这一矛盾统一的客观规律。因此,针对不同网络带宽、磁盘速度等的大数据处理环境,以及不同负载特征的大数据应用场景,应该如何选择是否应该采用压缩方法,采用何种压缩方式,是大数据设计面临的一个关键问题。

【发明内容】

[0005]本发明所要解决的技术问题在于,本发明提出一种面向大数据处理的数据处理方法,通过计算各种压缩方式在不同运行环境、不同负载场景下的性能指标指导压缩方式的选择,从而降低处理延迟。
[0006]为了解决上述问题,本发明提供一种面向大数据的数据处理方法,该方法包括:
[0007]获取处理环境数据及负载场景数据;
[0008]选择所述处理环境数据及负载场景数据对应的压缩方式;
[0009]根据所选择的压缩方式对数据进行处理;
[0010]所述处理环境数据包括网络传输的性能指标和磁盘的性能指标;
[0011 ] 所述负载场景数据包括读操作比例和写操作比例,所述读操作比例与写操作比例相加为I。
[0012]优选地,所述方法还包括:
[0013]选择所述处理环境数据及负载场景数据对应的压缩方式包括:
[0014]在网络传输的性能指标为低于IGbps且磁盘的性能指标为低于200MBps时、在CPU利用率不足50%时,使用压缩方法进行读、写操作。[0015]优选地,所述方法还包括:
[0016]选择所述处理环境数据及负载场景数据对应的压缩方式包括:
[0017]在网络传输的性能指标为高于IOGbps且磁盘的性能指标为高于600MBps时,使用压缩方法进行读操作、不进行写操作。
[0018]优选地,所述方法还包括:
[0019]使用压缩方法进行读、写操作包括:
[0020]选择使用Snappy压缩方式进行写操作,选择使用LZO压缩方式进行读操作。
[0021]优选地,所述方法还包括:
[0022]选择所述处理环境数据及负载场景数据对应的压缩方式包括:
[0023]在所述读操作的比例在90%以上时,选择使用Snappy或LZO压缩方式。
[0024]优选地,所述方法还包括:
[0025]选择所述处理环境数据及负载场景数据对应的压缩方式包括:
[0026]在网络传输的性能指标为低于IGbps时,选择使用LZO压缩方式。
[0027]优选地,所述方法还包括:选择所述处理环境数据及负载场景数据对应的压缩方式包括:
[0028]在网络传输的性能指标为高于IOGbps时,选择使用Snappy压缩方式。
[0029]为了解决上述问题,本发明还提供一种面向大数据的数据处理装置,该装置包括:
[0030]获取模块,用于获取处理环境数据及负载场景数据;所述处理环境数据包括网络传输的性能指标和磁盘的性能指标;所述负载场景数据包括读操作比例和写操作比例,所述读操作比例与写操作比例相加为I;
[0031]选择模块,用于选择所述处理环境数据及负载场景数据对应的压缩方式;
[0032]处理模块,用于根据所选择的压缩方式对数据进行处理。
[0033]优选地,所述装置还具有以下特点:
[0034]选择所述处理环境数据及负载场景数据对应的压缩方式包括:
[0035]在网络传输的性能指标为低于IGbps且磁盘的性能指标为低于200MBps时、在CPU利用率不足50%时,使用压缩方法进行读、写操作。
[0036]优选地,所述装置还具有以下特点:
[0037]选择所述处理环境数据及负载场景数据对应的压缩方式包括:
[0038]在网络传输的性能指标为高于IOGbps且磁盘的性能指标为高于600MBps时,使用压缩方法进行读操作、不进行写操作。
[0039]上述面向大数据的数据处理方法及装置,能够指导在不同运行环境、不同负载场景下的压缩方式选择,优化大数据处理性能。
【专利附图】

【附图说明】
[0040]图1所示为本发明实施例面向大数据的数据处理方法流程图;
[0041]图2所示为本发明实施例面向大数据的数据处理装置示意图。
【具体实施方式】[0042]以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。需要说明的是,如果不冲突,本发明实施例以及实施例中的各个特征的相互均在本发明的保护范围之内。
[0043]本发明的实施例提供了一种面向大数据处理的数据处理方法,如图1所示,包括:
[0044]步骤SlOl:获取处理环境数据及负载场景数据;
[0045]所述处理环境数据包括但不限于:网络传输的性能指标和磁盘的性能指标;
[0046]可选地,所述网络传输的性能指标包括但不限于为网络传输的带宽,磁盘的性能指标包括但不限于为磁盘的读写速度。
[0047]可选地,所述负载场景数据包括但不限于:读操作比例和写操作比例,所述读操作比例与写操作比例相加为I。
[0048]步骤S102:选择所述处理环境数据及负载场景数据对应的压缩方式;
[0049]具体为,包括但不限于:
[0050]在网络传输的性能指标为高于IOGbps且磁盘的性能指标为高于600MBps时,使用压缩方法进行读操作、不进行写操作。
[0051]在网络传输的性能指标为低于IGbps且磁盘的性能指标为低于200MBps时、在CPU利用率不足50%时,使用压缩方法进行读、写操作。
[0052]可选地,选择使用Snappy压缩方式进行写操作,选择使用LZO压缩方式进行读操作。
[0053]在所述读操作的比例在90%以上时,可选地,选择使用Snappy或LZO压缩方式。
[0054]可选地,在网络传输的性能指标为低于IGbps时,选择使用LZO压缩方式。
[0055]可选地,在网络传输的性能指标为高于IOGbps时,选择使用Snappy压缩方式。
[0056]步骤S103:根据所选择的压缩方式对数据进行处理。
[0057]为了实现上述方法,本发明还提供了一种面向大数据的数据处理装置,如图2所示,该装置包括:
[0058]获取模块,用于获取处理环境数据及负载场景数据;
[0059]可选地,所述网络传输的性能指标包括但不限于为网络传输的带宽,磁盘的性能指标包括但不限于为磁盘的读写速度。
[0060]可选地,所述负载场景数据包括但不限于:读操作比例和写操作比例,所述读操作比例与写操作比例相加为I。
[0061]选择模块,用于选择所述处理环境数据及负载场景数据对应的压缩方式;具体是指:
[0062]在网络传输的性能指标为高于IOGbps且磁盘的性能指标为高于600MBps时,使用压缩方法进行读操作、不进行写操作。
[0063]在网络传输的性能指标为低于IGbps且磁盘的性能指标为低于200MBps时、在CPU利用率不足50%时,使用压缩方法进行读、写操作。
[0064]可选地,选择使用Snappy压缩方式进行写操作,选择使用LZO压缩方式进行读操作。
[0065]在所述读操作的比例在90%以上时,可选地,选择使用Snappy或LZO压缩方式。[0066]可选地,在网络传输的性能指标为低于IGbps时,选择使用LZO压缩方式。
[0067]可选地,在网络传输的性能指标为高于IOGbps时,选择使用Snappy压缩方式。
[0068]处理模块,用于根据所选择的压缩方式对数据进行处理。
[0069]根据上述方法和装置,可知本发明能够指导在不同运行环境、不同负载场景下的压缩方式选择,优化大数据处理性能。
[0070]为了便于更好的理解本发明的方法,下面以大数据处理应用中主流的环境配置及压缩方法的对比分析为例具体说明。
[0071]1、压缩方式性能比较
[0072]当前大数据架构的存储处理过程要经历网络传输和磁盘读写两个串行IO阶段,设某大数据环境的全双工网络的传输速度为n,磁盘的读写速度为d,若数据不采用任何压缩方式,其读写延迟为:
[0073]V = l/n+1/d
[0074]其中,I/η表示I字节数据的网络传输延迟,Ι/d表示磁盘读写延迟。
[0075]下面具体举例说明:
[0076]大数据处理环境的网络配置包括千兆以太网和万兆以太网,磁盘配置包括SATA和SAS,其读写性能参数,如表I所示;
[0077]大数据处理应用主流的三种压缩方式包括Snappy、LZO、Gzip,其数据压缩率、数据压缩速度、数据解压速度,如表2所示。
[0078]根据压缩数据处理方法,可以分别计算万兆网络+SAS磁盘、万兆网络+SATA磁盘、千兆网络+SAS磁盘、千兆网络+SATA磁盘环境下各种压缩方式的性能,以万兆网络和SATA磁盘环境为例。
[0079]若数据不采用任何压缩方式,其读写延迟:
[0080]V = l/n+1/d = 1/1250+1/600 = 0.00247s = 2.47ms
[0081]在这种处理环境下,Snappy压缩方式写和读数据延迟分别为:
[0082]w(Snappy) = 1/c (Snappy)+a (Snappy)/n+a(Snappy)/d
[0083]= 1/172+0.222/1250+0.222/600 = 6.36ms
[0084]r (Snappy) = a (Snappy)/u (Snappy)+a (Snappy)/n+a(Snappy)/d
[0085]= 0.222/409+0.222/1250+0.222/600 = 1.09ms
[0086]根据上述方法,各种环境下不同压缩方式的性能,如表3所示。
[0087]由表3可得到如下结论:
[0088]a)在大数据应用所处的网络环境和磁盘性能较差的情况下,在CPU资源充足的条件下,使用压缩算法能显著提升读写性能,所述CPU资源充足可以但不限于是CPU利用率不足 50% ;
[0089]b)在网络带宽充足、磁盘性能较好情况下,压缩算法虽然能显著提升读操作性能,但写性能却较差,需要根据实际的场景确实如何选用;
[0090]c)对于各种压缩算法,Snappy方式的写性能最好,LZO方式的读性能最好,可以根据实际场景的进行选择。
[0091]2、读写场景分析
[0092]若采用压缩方法,设某种压缩方式X压缩率为a (x),压缩速度为c (x),解压缩速度为U(X),则对于该压缩方式,其写数据延迟:
[0093]w(x) = 1/c (X)+a (X)/n+a (X)/d
[0094]其中,1/c (x)表示I字节数据的压缩延迟,a (x) /n和r (x) /d分别表示压缩后网络传输和磁盘写入延迟;
[0095]读数据延迟:
[0096]r (x) = a (X)/u (X)+a (X)/n+a (X)/d
[0097]其中,a (X)/u (X)表示I字节数据的解压缩延迟,a (x)/n和a (x)/d分别表示压缩数据的网络传输和磁盘读延迟。
[0098]设运行在该环境上的某大数据处理应用的写操作比例b,读操作比例为l_b,则该种压缩方式X在该场景下的读写平均延迟为其读写延迟的数学期望:
[0099]s = w (X) *b+r (x) * (l~b)。
[0100]下面具体举例说明:
[0101]根据压缩数据处理方法,可以分别计算万兆网络+SAS磁盘、万兆网络+SATA磁盘、千兆网络+SAS磁盘、千兆网络+SATA磁盘环境下各种压缩方式的性能,以万兆网络和SATA磁盘环境下的Snappy方式为例,若写读比例为1/9,则该场景下的读写平均延迟为
[0102]SI = w (Snappy) *10% +r (Snappy) *90 % = 1.617
[0103]根据上述方法,Snappy和LZO方式在各种环境、不同场景下的性能如表4所示。由表4可得到如下结论:
[0104]a)以读操作为主的场景中,即使是在在网络带宽充足、磁盘性能较好情况下,Snappy和LZO方式也能够显著提高性能
[0105]b)在大多数环境和场景情况下,Snappy方式当时的性能优于LZO方式,只是在较差的网络条件下,以及读密集场景下,LZO方式略微优于Snappy方式,这是因为在较差的网络条件下,LZO方式能够发挥出的压缩率小、解压速率快的优势。
[0106]表1大数据处理环境IO性能参数
[0107]
【权利要求】
1.一种面向大数据的数据处理方法,其特征在于,包括: 获取处理环境数据及负载场景数据; 选择所述处理环境数据及负载场景数据对应的压缩方式; 根据所选择的压缩方式对数据进行处理; 所述处理环境数据包括网络传输的性能指标和磁盘的性能指标; 所述负载场景数据包括读操作比例和写操作比例,所述读操作比例与写操作比例相加为I。
2.如权利要求1所述的方法,其特征在于,选择所述处理环境数据及负载场景数据对应的压缩方式包括: 在网络传输的性能指标为低于IGbps且磁盘的性能指标为低于200MBps时、在CPU利用率不足50 %时,使用压缩方法进行读、写操作。
3.如权利要求1所述的方法,其特征在于,选择所述处理环境数据及负载场景数据对应的压缩方式包括: 在网络传输的性能指标为闻于IOGbps且磁盘的性能指标为闻于600MBps时,使用压缩方法进行读操作、不进行写操作。
4.如权利要求2所述的方法,其特征在于,使用压缩方法进行读、写操作包括: 选择使用Snappy压缩方式进行写操作,选择使用LZO压缩方式进行读操作。
5.如权利要求1所述的方法,其特征在于,选择所述处理环境数据及负载场景数据对应的压缩方式包括: 在所述读操作的比例在90%以上时,选择使用Snappy或LZO压缩方式。
6.如权利要求5所述的方法,其特征在于,选择所述处理环境数据及负载场景数据对应的压缩方式包括: 在网络传输的性能指标为低于IGbps时,选择使用LZO压缩方式。
7.如权利要求5所述的方法,其特征在于,选择所述处理环境数据及负载场景数据对应的压缩方式包括: 在网络传输的性能指标为高于IOGbps时,选择使用Snappy压缩方式。
8.一种面向大数据的数据处理装置,其特征在于,包括: 获取模块,用于获取处理环境数据及负载场景数据;所述处理环境数据包括网络传输的性能指标和磁盘的性能指标;所述负载场景数据包括读操作比例和写操作比例,所述读操作比例与写操作比例相加为I ; 选择模块,用于选择所述处理环境数据及负载场景数据对应的压缩方式; 处理模块,用于根据所选择的压缩方式对数据进行处理。
9.如权利要求8所述的装置,其特征在于,选择所述处理环境数据及负载场景数据对应的压缩方式包括: 在网络传输的性能指标为低于IGbps且磁盘的性能指标为低于200MBps时、在CPU利用率不足50%时,使用压缩方法进行读、写操作。
10.如权利要求8所述的装置,其特征在于,选择所述处理环境数据及负载场景数据对应的压缩方式包括: 在 网络传输的性能指标为闻于IOGbps且磁盘的性能指标为闻于600MBps时,使用压缩方法进行读操作、 不进行写操作。
【文档编号】H04L29/08GK104008153SQ201410217394
【公开日】2014年8月27日 申请日期:2014年5月21日 优先权日:2014年5月21日
【发明者】亓开元, 辛国茂, 赵仁明, 房体盈 申请人:浪潮(北京)电子信息产业有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1