首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

数据压缩算法LZO (C#)

LZO 是致力于解压速度的一种数据压缩算法,LZO 是 Lempel-Ziv-Oberhumer 的缩写。这个算法是无损算法,参考实现程序是线程安全的。 实现它的一个自由软件工具是lzop。...现在 LZO 有用于 Perl、Python 以及 Java 的各种版本。代码版权的所有者是 Markus F. X. J. Oberhumer。...LZO 支持重复压缩以及原地解压。 LZO 是块压缩算法——压缩解压成块的数据。压缩与解压所用块的大小必须一样。 LZO 将数据块压缩成匹配数据(滑动字典)与非匹配文字的序列。...当处理不可压缩数据的时候,LZO 将每个 1024 字节的输入数据块扩展 16 字节。...参考文献: http://zh.wikipedia.org/wiki/LZO 源码地址: C: http://www.oberhumer.com/opensource/lzo/ c#:http://lzohelper.codeplex.com

2.3K90

Hadoop2.0 lzo压缩的安装和配置

lzo压缩格式有很快的压缩/解压速度和合理的压缩率,并且支持分块(split),所以lzo是目前在Hadoop中最流行的压缩格式。hadoop中的lzo不是自带的,如果要支持lzo,需要另外安装。...本文介绍了在hadoop2.0上安装和配置lzo,同样也适用于hadoop1.0。 1 安装linux的lzo库 需要在集群的每一个节点都安装lzo库,假定都64位的机器。...下载rpm包lzo2-2.02-3.el5.rf.x86_64.rpm 并安装 sudo rpm -ivh lzo2-2.02-3.el5.rf.x86_64.rpm 在http://rpm.pbone.net...压缩命令行工具,方便大家在linux下压缩lzo文件,不是必需的。...2 安装hadoop-lzo包 可以下载kevinweil的hadoop-lzo项目,下载地址:https://github.com/kevinweil/hadoop-lzo 也可以下载twitter的

67620

关于Presto对lzo压缩的表查询使用记录

关于Presto对lzo压缩的表查询使用记录 0.写在前面 1.正文 0.提前说明 1.查询ads层表 2.查询dwd|dws|dwt层表 3.查询ods层表 ---- ---- 0.写在前面 实验背景...:离线数仓项目 Presto版本:0.196 Hive版本:3.1.2 Hadoop版本:3.1.3 1.正文 0.提前说明 纯lzo压缩:ods层 parquet列式存储加lzo压缩:dwd,dws,...❞ 2.查询dwd|dws|dwt层表 ❝「Presto不支持parquet列式存储加lzo压缩的表的查询」 ❞ Presto-Client查询语句: select * from dwd_start_log...-3.1.3/share/hadoop/common/hadoop-lzo-0.4.20.jar ./ 分发lzo的jar包 [root@node01 hive-hadoop2]$ my_rsync...* from ods_log; 美团技术团队文章关于「Presto二次开发和BUG修复」提到:Presto不支持查询lzo压缩的数据,需要修改hadoop-lzo的代码 ❝https://tech.meituan.com

1.1K30

【Go】使用压缩文件优化io (一)

最近遇到一个日志备份 io 过高的问题,业务日志每十分钟备份一次,本来是用 Python 写一个根据规则扫描备份日志问题不大,但是随着业务越来越多,单机上的日志文件越来越大,文件数量也越来越多,导致每每备份的瞬间...压缩时日志会先压缩成 lzo 文件,然后再上传 lzo 文件到阿里云 OSS 上,这中间发生了几个过程: 读取原始日志文件 压缩数据 写入 lzo 文件 读取 lzo 文件 http 发送读取的内容 压缩时...lzo 文件吗?...优化方案确定了,可是怎么实现 lzo 对文件流进行压缩呢,去 Github 上找一下看看有没有 lzo 的压缩算法库,发现 github.com/cyberdelia/lzo ,虽然是引用 C 库实现的...,但是经典的两个算法(lzo1x_1 和 lzo1x_999)都提供了接口,貌似 Go 可以直接用了也就这一个库了。

1.1K50

【Go】使用压缩文件优化io (二)

随着业务扩展这台服务器压力越来越大,高峰时数据延迟越来越厉害,早期也是使用 Python 脚本 + awk 以及一些 shell 命令完成相关工作,在数据集不是很大的时候这种方案很好,效率也很高,随着数据集变大...并且读取 lzo 压缩文件远比解压后文件小,来降低读取日志耗时太大、io 太高的问题呢?...= nil { panic(err) } r, err := lzo.NewReader(f) if err !...包对压缩文件数据流进行边读取边解压,这次不用单独封装新的方法了,直接使用 lzo 包中的接口即可。...优化方案二 本来优化到上面的效果已经非常满意了,不过既然开始做优化就不能草草结束了,仔细思考业务场景,需要 本地 lzo 文件?重新处理日志的频率高吗?本地 lzo 日志清理方便吗?

93220
领券