NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

亚马逊将自有服务数据的压缩从 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:337822

评论

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

腾讯云数据库TDSQL发展的整体布局和应对策略

腾讯云数据库

数据库 tdsql

TDSQL云时代,我们需要怎样的数据库?

腾讯云数据库

数据库 tdsql

如何实现 Android 短视频跨页面的流畅续播?

阿里云视频云

android App 音视频 Video播放器 APP开发

三顾茅庐,七面阿里,25k*16offer,还原我的大厂面经

Java 程序员 面试 后端 计算机

有人在恶意提权吗?

BUG侦探

Linux 主机安全 提权

腾讯云数据库TDSQL:分布式数据库,你真的了解吗?

腾讯云数据库

数据库 tdsql

TDSQL演进三部曲

腾讯云数据库

tdsql #数据库

实战 实时物体检测YOLOv3 CNN卷积神经网络John 易筋 ARTS 打卡 Week 63

John(易筋)

ARTS 打卡计划

33张图解析ReentrantReadWriteLock源码

程序猿阿星

源码分析 读写锁 ReentrantReadWriteLock 源码解读

爆赞!GitHub上首本IntelliJ IDEA操作手册,标星果然百万名不虚传

Java~~~

Java 架构 面试 IDEA 架构师

从动物科学到乐队鼓手,腾讯技术小哥的开源人生

腾源会

腾讯云 开源

分布式消息流平台:不要只想着Kafka,还有Pulsar

华为云开发者联盟

kafka 云原生 pulsar 消息 分布式消息流平台

一文详述如何卸载SQL Server 2019及其 DBMS

Regan Yue

数据库 SQL语言 9月日更

出自清华大神之手的JVM实战手册,刚上架GitHub点赞就达到85k

Java~~~

Java 架构 面试 JVM 多线程

在FL Studio中如何使用混音器的效果

懒得勤快

Alibaba新产!Spring+SpringBoot+SpringCloud全家桶进阶小册

Java~~~

Java spring 架构 面试 Spring Boot

腾讯云TDSQL,从数据库巨人身上撕开一道口子

腾讯云数据库

数据库 tdsql

GitHub上火了这份堪称神级的SpringBoot手册,竟出自滴滴之手

Java~~~

Java spring 架构 面试 Spring Boot

自主研发数据库TDSQL和TBase核心架构揭秘和实践

腾讯云数据库

数据库 tdsql

在职字节师兄分享出了这份数据结构手册,LeetCode现已开放下载

Java~~~

Java 架构 面试 算法 刷题

Alibaba内部的10w字Java高频面试手册遭人恶意在牛客网开源下载?

Java~~~

Java 架构 面试 JVM 多线程

Elasticsearch可观测最佳实践分享!3分钟带你快速入门!

观测云

elasticsearch

求阿里大神整理的分布式核心笔记出炉了,GitHub刚发布就标星85k

Java~~~

Java 负载均衡 架构 面试 分布式

滴滴最看重的SpringCloud手册曾被疯狂转载,现在学还有用吗?

Java~~~

Java 架构 面试 微服务 Spring Cloud

让GitHub炸锅的深入理解MySQL实战手册,竟出自阿里云“藏经阁”

Java~~~

Java MySQL 数据库 架构 面试

Java多线程:从基本概念到避坑指南

Java 架构 后端 JVM 计算机

腾讯云TDSQL:真正面向金融行业的典型场景

腾讯云数据库

数据库 tdsql

实时消息RTM| 多活架构中的数据一致性问题

anyRTC开发者

音视频 WebRTC 数据一致性 实时消息 数据容灾

别人就算了,开发人员都不知道低代码的起源就糟糕了

低代码小观

开发者 低代码 开发工具 无代码 低代码起源

Github星标百万!终于有人将Spring技术精髓收录成册

Java 编程 程序员 架构 面试

GitHub经典教材!阿里P8的这份SpringBoot精髓到底厉害在哪里?

Java~~~

Java 架构 面试 微服务 Spring Boot

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