采用有损压缩压缩过程中会丢失一部分的原始信息对某些格式的数据如数字图像进行压缩;但是对大多数的IT应用,数据压缩是一种对数据进行编码以减小数据量的处置方法和过程。有些应用中。需要的无损压缩压缩过程能够保管完整的原始信息,并且能够从压缩数据精确地重构原始数据。存储技术中使用无损数据压缩技术来减小数据量,根据目前的技术水平,无损压缩算法一般可以把普通数据压缩到原来的1/21/4常用的无损压缩算法有霍夫曼HuffmanLempel-ZivLZLZWLempel-Ziv&WelchLZRLZ-Renau等压缩算法。其中,LZ算法应用广泛,PKZIPgzipPNGCA B格式均使用该算法或变体;GIF图像格式使用LZW算法,LZRZIP方法的基础。

数据压缩要求在写入数据前进行编码,读取数据前进行解码,因此会对存储系统性能产生一定的影响。然而,数据压缩技术可以有效缩减数据存储容量以及存储硬件需求,存储技术中应用非常广泛,尤其是近线和离线存储。数据压缩并非对任何数据都会效果显著,诸如JPEGMPEGMP3等文件格式,这类数据已经由应用层作过压缩处理,存储系统对它再次压缩几乎没有效果,而且会产生额外的性能损失。另外,数据压缩和加密机制往往同时被应用,压缩和加密操作需要依照合适的顺序执行。加密会对数据进行转置和变换,通常会增加字节冗余数据发现的难度以及降低数据压缩率,所以数据压缩应当先于数据加密执行,而解压缩则以相反次第执行,以获得更高的压缩率。 数据压缩可以有效缩减数据存储容量,缓解数据增长压力,缺乏之处是相应发生一定性能损失。因此在存储系统中实际运用时,需要根据存储的性能、容量、利息等因素综合考虑,不能由于采用数据压缩而导致性能指标不能达标,为了提高性能而又增加总成本。通常来看,性能要求高的实时在线数据存储不适合采用数据压缩;而以数据备份、容灾、归档、复制为主的近线和离线存储,存储容量需求大但性能要求较低,非常适合采用数据压缩技术。然而,如果有方法可以解决压缩和解压所产生的性能损失问题(如专用芯片、高效算法)线存储采用数据压缩也是可行的