【AICon】AI 基础设施、LLM运维、大模型训练与推理,一场会议,全方位涵盖! >>> 了解详情
写点什么

亚马逊将自有服务数据的压缩从 Gzip 切换为 Zstd

作者:Renato Losio

  • 2022-10-09
    北京
  • 本文字数:1149 字

    阅读完需:约 4 分钟

亚马逊将自有服务数据的压缩从Gzip切换为Zstd

最近,亚马逊前副总裁Adrian Cockcroft在推文中特别指出了从 gzip 切换到 Zstandard 压缩所带来的好处,这在社区中引发了关于压缩算法的讨论。其他大公司,包括 Twitter 和 Honeycomb,也分享了使用 zstd 获得的收益。

 

最近,Dan Luu分析了推特存储节省的情况,并在推特上发起了一场对话:

我想知道 Yann Collect 创建 zstd 到底消除了多少浪费。我估算了下 Twitter 的数值(与大型科技公司相比微不足道),从 HDFS 切换到 zstd 每年节省的数量大约为 8 位数的中值。在世界范围内(非年化),这个数值应该不低于 9 位数?

 

Cockcroft 回复说:

亚马逊从 gzip 切换到 zstd,压缩 S3 存储量减少了大约 30%,达艾字节的规模。

 

Zstandard(其 C 语言实现 zstd 更为知名)是由 Facebook 公司的Yann Collet开发的无损数据压缩算法,在多种数据集上提供了很高的压缩比和非常好的性能。该参考实现库是一个遵循 BSD 许可的开源软件,它提供了一个速度极快的解码器,允许我们在速度和压缩比之间做大范围权衡。

 

起初,Cockcroft 的表述在社区中引发了质疑,一些开发人员询问亚马逊如何在 S3 上压缩客户数据。亚马逊一名内部员工澄清道

Adrian 说错了,或许是所有人都误解了他的意思。他的意思并不是说 S3 改变了存储压缩客户数据的方式。他的意思是亚马逊改变了在 S3 中存储自有服务数据(主要是日志)的方式——从 gzip 日志切换到 ztsd 日志,我们(作为 S3 的一个客户)能够将 S3 存储成本降低 30%。

 

Honeycomb 首席开发者大使Liz Fong-Jones赞同切换到 zstd:

我们不把它用于列文件,因为那太慢了,但我们把它用于 Kafka(…),在生产环境中从 snappy 切换到 zstd 后,Honeycomb 节省了 25%的带宽。(…)不仅仅是存储和计算,对我们来说,是网络。亚马逊跨 AZ 的数据传输非常昂贵。

 

Reddit一个热门的帖子中,noirknight 是众多提供正反馈的用户之一:

我的公司几年前也做过类似的事情,也看到了类似的好处。只要可能,我们都使用 zstandard,不仅仅是存储,还有其他东西,比如内部 HTTP 通信。

 

以下是用户treffer在Hacker News上的评论

速度特别快的压缩算法(zstd、lz4、snappy、lzo……)是值得我们付出 CPU 成本的,而且几乎没有什么缺点。问题在于找到最佳契合点,在不产生 CPU 瓶颈的情况下减少当前的瓶颈,不过在这方面,zstd 也提供了最大的灵活性。

 

亚马逊在一些托管服务的 API 中公开了 Zstandard 和对其他压缩算法的支持。例如,在Amazon Redshift中引入Zstandard支持后,这家云提供商针对云数据仓库开发了自己的算法AZ64。按照他们的说法,其专有压缩算法比 zstd 编码节省 5-10%的存储空间,并且速度快 70%。

 

亚马逊官方没有就其内部数据使用的压缩技术或相关的 S3 存储节省发表任何评论。

 

原文链接:

https://www.infoq.com/news/2022/09/amazon-gzip-zstd/


相关阅读:

Node.js|使用 zlib 内置模块进行 gzip 压缩

一种优于 gzip 的压缩方式 Brotli

2022-10-09 15:337827

评论

发布
暂无评论
发现更多内容

使用hydra对端口进行爆破

喀拉峻

markdown-it 插件如何写(二)

冴羽

前端 markdown vuepress markdown-it markdown-it插件

【网络研讨会】“专家面对面”-MongoDB模式设计

MongoDB中文社区

mongodb

用11本白皮书搭建3座桥:联想企业科技集团让智能化转型不再有孤岛

脑极体

女生不适合当程序员?XTransfer这位程序员妈妈绝了!生娃半年内升职加薪

XTransfer技术

技术人 程序媛 XTransfer

OpenMLDB在AKULAKU实时特征计算场景的应用

第四范式开发者社区

机器学习 大数据 OpenMLDB 特征平台

低代码实现探索(二十六)移动端H5开发

零道云-混合式低代码平台

简单的线程池实现多线程对大文件的读取

CRMEB

云信小课堂|如何实现音视频安全检测?

网易云信

安全 音视频

i人事CTO王景飞:i人事+计算巢,协同赋能HR业务

阿里云弹性计算

阿里云 计算巢

明道云助力东航食品营销数据整合

明道云

mark: mac 开启chrome webrtc 日志

webrtc developer

chrome WebRTC

通证经济是更高层次的自由

CECBC

安全研究人员发现:Nanocore等多个远控木马滥用公有云服务传播

H

网络安全

消息队列 RocketMQ 遇上可观测:业务核心链路可视化

阿里巴巴云原生

阿里云 RocketMQ 云原生 消息队列 可观测

Flink 实践教程-进阶(7):基础运维

腾讯云大数据

flink 实战 流计算 Oceanus

精彩回顾!| Google DevFest 2021 广州国际嘉年华

江湖老铁

喜报!东方证券携手博睿数据荣获《金融电子化》2021科技赋能金融业务突出贡献奖

博睿数据

12月云短信报告出炉,阿里云闯进前三

博睿数据

RadonDB PostgreSQL on K8s 2.1.0 发布!

RadonDB

数据库 postgresql 开源 RadonDB

浪花过后,2022低代码该往哪儿走?

ToB行业头条

哲元科技×飞桨EasyDL|助力世界500强企业打造“灯塔工厂”,探索智能制造星辰大海

百度大脑

低代码实现探索(二十七)低代码如何继承传统

零道云-混合式低代码平台

架构实战营:模块六作业

Geek_93ffb0

「架构实战营」

Nacos电子书 读后感(一)

努力努力再努力

1月日更

流计算 Oceanus | Flink JVM 内存超限的分析方法总结

腾讯云大数据

flink 实战 流计算 Oceanus

Redis OM .NET Redis对象映射框架

MASA技术团队

C# .net 微软 后端 redis'

使用APICloud AVM框架开发预约应用

YonBuilder低代码开发平台

前端框架 APP开发 APICloud 跨端开发 小程序开发

征文投稿丨使用轻量应用服务器部署Hadoop云集群

阿里云弹性计算

hadoop 轻量应用 征文投稿

销量之王,去年程序员最爱看的技术书就是它!

博文视点Broadview

网络安全kali渗透学习 web渗透入门 ARL资产侦察灯塔系统搭建及使用

学神来啦

亚马逊将自有服务数据的压缩从Gzip切换为Zstd_架构_InfoQ精选文章