几种压缩算法简单测试

  久闻 LZ4 大名,很久前就想将之与譬如 ZLib 等压缩算法作作比较了。这篇简单的测试来得晚了些,不过至少(暂时)了却了我的一桩心事。

  本来我只计划对 ZLib、LZ4 和 Snappy 等作测试,但这里的 LZ4 HC (r129) 引起了我的极大兴趣,所以也顺便,将 LZ4HC,以及 SynLZ(LZ 系列的一个变种,源于这里)加入了测试列表。

  各压缩算法版本如下。

  ZLib:1.2.8,

  LZ4 及 LZ4 HC:r129

  Snappy:1.1.3

  SynLZ:1.18

  测试了包括纯文本、位图等各类文件,结果如下:

  单就以这些测试结果来看,ZLib 虽然解压缩速度几乎绝对的垫底(即便 Intel 有提供用以提升其性能的 PPL),但压缩率毫无疑问最理想,而 LZ4 HC 在压缩率上最接近 ZLib 但解压速度要快几十甚至上百倍——在某些场景下,它可能是个较理想的(折中)压缩方案。

  而 SynLZ 及 Snappy,可能我的这些测试案例不是它们理想的应用场景,较之 LZ4 及 LZ4 HC,结果不太理想。

时间: 2024-10-10 18:10:45

几种压缩算法简单测试的相关文章

基于MySQL元数据的Hive的安装和简单测试

引言: Hive是一种强大的数据仓库查询语言,类似SQL,本文将介绍如何搭建Hive的开发测试环境. 1. 什么是Hive? hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行. 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析. 2.  按照Hive的准备条件 2.1  Hadoop集

四种比较简单的图像显著性区域特征提取方法原理及实现-----> AC/HC/LC/FT。

laviewpbt  2014.8.4 编辑 Email:[email protected]   QQ:33184777 最近闲来蛋痛,看了一些显著性检测的文章,只是简单的看看,并没有深入的研究,以下将研究的一些收获和经验共享. 先从最简单的最容易实现的算法说起吧: 1. LC算法 参考论文:Visual Attention Detection in Video Sequences Using Spatiotemporal Cues. Yun Zhai and Mubarak Shah.  Pa

memcached window版 下载安装,简单测试

官网: http://www.memcached.org/ 只有tag格式的,搞了好久都没找到windows版的,还有很多uri找不开,google的都打不开,中国政府就是威武. 下载地址: http://jehiah.cz/projects/memcached-win32/files/memcached-1.2.1-win32.zip 这个用讯雷可以下载下来! 错误: 通过cmd命令行进入到D:\webEve\memcached(下载后的解压目录) 运行 memcached.exe -d in

Java学习-排序二叉树性能简单测试

1.创建4万个随机数,然后用分别用冒泡法,选择法,二叉树法3种排序算法进行排序,比较哪种更快 1 package Collection; 2 3 import java.util.ArrayList; 4 import java.util.List; 5 6 public class sortSpeedTest { 7 8 public static void main(String[] args) { 9 int num = 40000; // 元素个数 10 int rnd1[] = new

centos7搭建ELK Cluster集群日志分析平台(四):简单测试

续之前安装好的ELK集群 各主机:es-1 ~ es-3 :192.168.1.21/22/23 logstash: 192.168.1.24 kibana: 192.168.1.25 测试机:client: 192.168.1.26 在测试机上安装并启动filebeat 1. 下载filebeat  ~]# wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.4.0-linux-x86_64.tar.gz

Redis安装及简单测试

题目链接:11645 - Bits 题意:给定一个数字n,要求0-n的二进制形式下,连续11的个数. 思路:和 UVA 11038 这题类似,枚举中间,然后处理两边的情况. 不过本题最大的答案会超过longlong,要用高精度,不过借鉴http://www.cnblogs.com/TO-Asia/p/3214706.html这个人的方法,直接用两个数字来保存一个数字,这样能保存到2个longlong的长度,就足够存放这题的答案了. 代码: #include <stdio.h> #include

找1~100之间素数的两种比较简单的方法

方法一:利用一个布尔类型的值的判断,优点想法更直接易懂 public static void main(String[] args) { for(int i=2;i<=100;i++){ boolean b=true; for(int n=2;n<i;n++){ if(i%n==0){ b=false; break; } } if(b==true){ System.out.print(i+"\t"); } } } 方法二:能被2和这个数本身以外的数整除的都不是素数.理解难但

简单测试java - properties

import java.io.BufferedInputStream;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStream;import java.util.Enumeration;import java.util.Properties;public class TestPorperty {    /**     * 写入-properties文件:     *     

Windows IO 性能简单测试

转自:http://bbs.csdn.net/topics/360111289, 有改动. #include <windows.h>#include <stdio.h>#include <process.h>#include<memory>#pragma comment(lib,"ws2_32.lib")ULONGLONG g_nReadCounts=0,g_nWriteCounts=0,g_nOtherCounts=0,g_nReads