网易首页 > 网易号 > 正文 申请入驻

它把存储压缩了90%,却说自己不是做压缩的

0
分享至

有个东西在数据库圈子里藏得很深,大多数人根本没意识到——Hypercore不是个新功能,就是个改名。是的,那个号称能在PostgreSQL里同时搞定OLTP和OLAP的混合存储引擎,其实一直都在,只不过以前大家管它叫“压缩”。直到有一天,厂商突然想明白:客户真正在意的根本不是磁盘空间省了多少,而是这些被“压扁”了的数据竟然还能拿来跑实时分析。压缩只是顺手送的甜点,行列混存、一表双引擎、零搬运查询才是主菜。于是整个技术包被重新包装,起名叫Hypercore。

别说“又是个营销把戏”——这还真不是。如果你当初冲着“时序数据库压缩率高达90‑98%”的卖点去了解TimescaleDB,等于买椟还珠。你拿到的不是一个简单的存储减重方案,而是一个直接把OLTP风格的行存储和OLAP风格的列存储焊接在同一个Postgres扩展里的怪物。没有独立分析库,没有ETL管道,没有最终一致性之类的分布式噩梦。一张表,一句SQL,它自己就知道该去行存里翻最新的那几行,还是去列存里扫一整批压缩柱,然后算平均数。这种“透明混合存储”的模式,凭什么能跑起来?凭什么不崩?这才是值得拆一遍的结构。


先脑补一个画面:一个超表(hypertable)立在那儿,看着就是普通的PostgreSQL表,其实内部早就分成了两个世界。第一世界叫行存储,那是个典型的PostgreSQL堆存储区。新写入的数据直接落进这里,插入速度飞快,更新、删除都按老法子来,索引也照常生效。如果你在这儿停下,就等于只用了一个增强版的分区表,啥特别的事都没发生。第二世界叫列存储,那些老早写进来、已经不怎么变动的数据分片(chunk),会被自动拖进另一个空间。在这儿,每一列单独存一份,按规定算法压缩得瘦骨嶙峋,专门为大规模扫描而生。想算过去一周所有设备温度的平均值?它不用爬完整个表,直接跳过无关的分片,只捞需要的那几列,聚合速度唰一下就起来了。

关键藏在一连串自动转换的动作里。每个chunk刚出生时都住在行存区,享受着“新鲜数据”的VIP待遇——写入极快,索引随时更新。过一段时间(由你设定的策略决定),这个chunk会被悄悄转成列存形态。转换的过程就是把行式堆文件拆开,按列重组,再配上适合分析查询的编码。一旦转换完成,这块数据就只能追加、不能原地更新,但扫描和聚合的性能直接上了好几个台阶,存储空间也断崖式降到原来的十分之一甚至更低。两个世界之间有道透明的隔门,你的应用根本不用管哪个chunk此刻在哪个状态,一条查询过来,Postgres的规划器自己会判断哪些chunk在行存、哪些在列存,然后把读取请求一一派发过去,最后拼成完整结果交给你。

这么干到底图什么?过去七年里的各种传感器数据、交易流水、设备日志,冷热混杂,传统方案要么全用行存扛着,写入快但查历史慢得想死;要么全倒进列存,写入又变成灾难;要不就再搭一套分析库,数据搬来搬去,两边还不一致。现在这种“热用行、冷转列”的法子,等于在一套Postgres里内置了数据生命周期的自动流转。新数据保持高写入吞吐,老数据自动优化为分析而生,中间不需要任何人手。那个铺天盖地宣传的“压缩”,只是列存天生的物理效果——列内重复值多,编码起来天然就小。可如果你只盯着压缩,就会错过真正有杀伤力的部分:列式扫描、chunk裁剪、矢量化执行,这些才是让老数据活过来参与实时分析的关节。

数据冲击型的开篇不是白喊的——你看看这个数:存储下降90‑98%。这个量级的缩减根本不是普通字典压缩能达到的,它来自一整条为分析设计的流水线:先按时间分chunk,再把每个chunk内的同一列数据揉成一组,对数值列套差值编码、游程编码,对文本列自己做字典,然后再来一层通用压缩。这把所有能让分析变快的手段叠在一起,顺带把体积打了下来。压缩,真的只是个漂亮的副作用。

很多用了多年Postgres的开发者在听完这套逻辑之后,突然意识到自己其实早就有了理解Hypercore的思维模型,只是没这么明确地把它说出来。在Postgres内部,一条刚插入的行和一条已经被清理、冻结、静静待在磁盘冷页上的老行,虽然同属一张表,但存在状态截然不同,访问开销也天差地别。Hypercore无非是把这种“同表不同性”的状态差异做了极端强化:一部分数据驻留在写优化的行存中,另一部分驻留在读优化的列存中,而优化器自动把查询请求翻译成适合各区域的动作。你不需要学新语法,不需要改驱动,一行SELECT即可跨两种引擎。

事实上,当初给它改名,就是要把讨论焦点从“如何省钱买磁盘”扳回到“如何让数据保持可分析”。因为客户反馈很清楚:存储便宜得已经不像主要矛盾了,能直接在桩数据上秒出过去一周温度趋势、又不用预先定义聚合视图,比多省几个TB值钱得多。所以Hypercore的重新定位,等于把原来包装在“压缩”里的真正特性摊开来说:你拥有的是一个在Postgres里内建的数据分片自动冷热分层、行转列自动发生、查询完全透明的混合存储核心。至于到底能省多少空间,只是这个设计跑完后的物理表现。

当然,这世界没有魔法。这种混合存储也有它的塌方点:一旦数据被转成列存,单行更新的代价就跟不上行存了,所以它只适合那些大部分时间只追加、少量做批改的场景。时序数据、事件日志、物联设备记录、金融交易流水——这些都天然适应这种模式。如果你的表整天都在单条更新、高频删除,那chunk老是处在频繁改写的边界,转换策略可能会被频繁打断,性能反而掉头向下。另外,跨冷热区的非等值连接如果在不合适的条件下触发,规划器也可能走错索引类型。但大致上,一旦数据模式符合“新数据高频写入、老数据偶尔范围扫描”,这套自动分层就非常卖力气。

再拉回Postgres本身。TimescaleDB的团队选择把这一切封在一个扩展里,一步也没离开Postgres的生态。这意味着你不用重新招人、不用重写SQL,现有的备份、高可用、权限、监控那一整套成熟方案全可以照搬。如果你已经是个Postgres shop,引入Hypercore几乎只是装上扩展、建个超表、设条自动转列的时间策略这么简单。这个零迁移门槛,才是它能在大量时序场景里悄悄替代专用数据库的核心原因——不是它比ClickHouse或InfluxDB绝对快,而是它根本不需要你另起灶炉。

最后再看这个命名的转换,其实透露了一个产品逻辑上的关键转折:从解决一个技术痛点(磁盘昂贵,需要压缩)转向解决用户的真实工作流痛点(能不能别让我再搭一套分析库)。因为今天,存储已经不再是昂贵资源,而工程团队的注意力和系统复杂度才是真正的稀缺品。你省出90%的磁盘空间固然开心,但省掉一个完整的数据搬运管道、省掉两套查询接口的学习成本,这才是值回票价的地方。“Hypercore”这个名字,说白了,就是把一直藏在“压缩”里的另一颗引擎拽到台前,告诉所有人:我们做的是混合存储,压缩只是顺路。理解了这一点,你才算看懂了这套悄悄在Postgres里跑了多年的二层架构。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
两个乌克兰姑娘,在广州找到了第二个家

两个乌克兰姑娘,在广州找到了第二个家

捣蛋窝
2026-06-02 13:25:06
吃完嫩的吃老的,山西儿媳出轨公公10年,亲自给丈夫生下一个妹妹

吃完嫩的吃老的,山西儿媳出轨公公10年,亲自给丈夫生下一个妹妹

莫地方
2026-06-02 00:10:26
伊朗最高领袖穆杰塔巴罕见照片曝光:就任86天从未公开露面,每逢关键节点必发声

伊朗最高领袖穆杰塔巴罕见照片曝光:就任86天从未公开露面,每逢关键节点必发声

财闻
2026-06-02 14:34:58
禁止所有中国外交官入境,不准两岸统一,这个国家比美国还嚣张?

禁止所有中国外交官入境,不准两岸统一,这个国家比美国还嚣张?

傲傲讲历史
2026-06-02 13:53:16
百亿基金经理“清仓式”离场,武晓春代任董事长的德邦基金能否突围?

百亿基金经理“清仓式”离场,武晓春代任董事长的德邦基金能否突围?

观察者网
2026-06-02 12:33:31
两个18岁女孩到KTV应聘工作,对方承诺日入1800元,现在无比后悔

两个18岁女孩到KTV应聘工作,对方承诺日入1800元,现在无比后悔

十九妹
2026-06-02 13:14:11
太讽刺了!女方提出28.8万元彩礼要求,男子送来一瓣蒜和百元现金

太讽刺了!女方提出28.8万元彩礼要求,男子送来一瓣蒜和百元现金

火山詩话
2026-06-02 07:25:54
割四赔五后续:麦客撤了,麦烂了,农户跪了,这锅谁背?

割四赔五后续:麦客撤了,麦烂了,农户跪了,这锅谁背?

番外行
2026-06-02 14:19:47
美媒称美伊谈判重回正轨

美媒称美伊谈判重回正轨

界面新闻
2026-06-02 11:24:25
中央定调!2026年养老金从1月补发,去年涨2%,今年会涨多少呢?

中央定调!2026年养老金从1月补发,去年涨2%,今年会涨多少呢?

社保小达人
2026-06-01 11:03:56
日媒称“日本人不去中国,中国旅游业遭重创”!日网友嗨翻:他们失去日本游客很难受!

日媒称“日本人不去中国,中国旅游业遭重创”!日网友嗨翻:他们失去日本游客很难受!

东京新青年
2026-05-31 18:08:07
努尔基奇:布登霍尔泽严重酗酒,他居然去教杜兰特该怎么得分

努尔基奇:布登霍尔泽严重酗酒,他居然去教杜兰特该怎么得分

懂球帝
2026-06-02 11:01:07
里克尔梅:我若当选,劳尔会任足球总监;皇马现在不需要穆帅

里克尔梅:我若当选,劳尔会任足球总监;皇马现在不需要穆帅

懂球帝
2026-06-02 06:25:05
代价拉满!记者曝四方大交易,火箭7换2,如愿得到杰伦·布朗

代价拉满!记者曝四方大交易,火箭7换2,如愿得到杰伦·布朗

体育见习官
2026-06-02 14:00:31
CCTV5直播!上午8点30分!NBA总决赛G1来袭,文班和大头再续恩怨

CCTV5直播!上午8点30分!NBA总决赛G1来袭,文班和大头再续恩怨

球盲百小易
2026-06-02 00:52:56
印度首富组团来华骗技术,吃闭门羹后11亿美元设备堆在仓库吃灰

印度首富组团来华骗技术,吃闭门羹后11亿美元设备堆在仓库吃灰

混沌录
2026-05-30 23:51:06
今年小区里出现很多“假穷人”,他们放着几十万的车不开,骑着电驴去上班;取快递的次数也少了;还拿出几年前的衣服来穿

今年小区里出现很多“假穷人”,他们放着几十万的车不开,骑着电驴去上班;取快递的次数也少了;还拿出几年前的衣服来穿

背包旅行
2026-06-02 11:48:18
外卖大战的“炮灰”,过剩的1600万骑手

外卖大战的“炮灰”,过剩的1600万骑手

深水财经社
2026-05-31 12:14:09
15个副省级市已明确,浙江2个,江苏仅有1个,湖南、河北1个都无

15个副省级市已明确,浙江2个,江苏仅有1个,湖南、河北1个都无

混沌录
2026-06-01 21:47:13
旗袍肉丝高跟里的芳华绝代

旗袍肉丝高跟里的芳华绝代

艾斯莱斯奈斯
2026-05-28 02:10:38
2026-06-02 17:24:49
全栈遛狗员
全栈遛狗员
白天跟需求对线,晚上在小区遛狗。
4491文章数 71关注度
往期回顾 全部

科技要闻

烧掉千亿后,美团、阿里、京东谁先止血?

头条要闻

男子离婚当晚杀害前妻逃亡17年被判死缓 检方抗诉成功

头条要闻

男子离婚当晚杀害前妻逃亡17年被判死缓 检方抗诉成功

体育要闻

1米74的业余联赛替补,在英超踢中卫

娱乐要闻

奚梦瑶何猷君补办婚礼超幸福

财经要闻

锂电“资源墙”高筑 全球性长期博弈开始

汽车要闻

星途神秘新车轮廓曝光 又一款性能SUV要来了?

态度原创

房产
手机
时尚
艺术
家居

房产要闻

5200巨量投资曝光!未来五年,海南格局大变!

手机要闻

双版本齐发!vivo S60系列中端影像旗舰新标杆

推广|| 入夏第一双鞋买得好成功!暴走1w步、搭遍小裙子

艺术要闻

周杰伦花 1.36 亿拍下这幅画

家居要闻

流线型轮廓 包容多元身形

无障碍浏览 进入关怀版