新闻详情

新闻详情

首页 / 资讯中心 / 详情

一个端口同时讲 S3 和 Iceberg:对象存储内置 REST Catalog 拆解

发布时间:2026/9/25 20:22:17来源:尧图网络
一个端口同时讲 S3 和 Iceberg:对象存储内置 REST Catalog 拆解
数据湖上了 Iceberg最磨人的往往不是计算而是 catalog。自建要么养一套 Hive Metastore要么跑一个 Polaris 或 Nessie光这一层又是一套服务要盯监控、要备份、要升级。很多人想试 Iceberg最后被表存在哪、元数据谁管两个问题劝退表没建几张先招了个专职运维。有人就琢磨catalog 管的就是表在对象存储里的位置那能不能让对象存储自己把这层也管了近两年这个方向确实热AWS 的 S3 Tables、一众开源 catalog 项目都在往存储即目录靠拢。本文拆一个具体做法把 Iceberg REST Catalog 直接做进对象存储内核一个进程、一个端口同时对外讲标准 S3 和 Iceberg REST。传统两件套的账经典玩法里对象存储管数据catalog 另起一个服务管元数据两边各管各的。代价是实打实的多一套进程要保活多一个依赖要升级多一份元数据要备份。catalog 和对象存储之间要有网络连通和鉴权对齐配错一处表就读不到。团队规模小的时候这一层的人力占比高得离谱。RustFS 从 1.0.0-rc.5 起把这套能力以S3 Table的形式开源内置了走的正是对象存储内核直接带 Iceberg REST Catalog这条路。下面看它怎么把两件套合成一个进程。一个进程两套协议起一个单节点S3 数据和 Iceberg REST Catalog 都在 9000 端口数据面走标准 S3控制面走/iceberg路径的 Iceberg REST。控制台 UI 单独在 9001。想确认 catalog 真的在监听一条 curl 就能验curl-XGET http://ip:9000/iceberg/v1/config\-HAuthorization: AWS4-HMAC-SHA256 ...返回里有defaults和signing-region说明控制面已经起来了。这一层是标准的 Iceberg REST 协议不绑定某个计算引擎。控制面CAS 加幂等键建表、提交快照这类写 catalog 的操作走 Iceberg REST Catalog。这里的一致性靠两件事CASCompare-And-Swap版本校验并发提交时过期的快照提交会被拒绝不会出现后提交的覆盖了先提交的。幂等键同一个提交重复发送catalog 只生效一次网络重试不会造出重复表版本。多引擎同时写也能保证目录层一致不用在存储侧加全局锁。数据面S3 直写存算分离真正的 Parquet 文件不进 catalog而是由计算引擎经 S3 API 直写桶内。catalog 只存元数据指针文件本身走标准 S3 写入路径。这就是典型的存算分离计算集群挂了数据还在桶里计算扩容不用动 catalog。防写坏保留前缀护住目录层元数据指针受保留前缀保护普通 S3 的 PUT/DELETE 改不动目录层结构。好处是你往桶里塞自己的非结构化对象时不会误手把 Iceberg 的元数据指针删了数据湖不会被写坏。反过来表数据落进去之后也要分清哪些 prefix 是表、哪些是你自己塞的对象别误删。并发冲突怎么走多引擎同时提交快照靠的是 catalog 的 CAS 拒绝过期提交不是存储层加锁。所以高频并发写的场景冲突会走读最新快照、重算、再提交的乐观路径。写应用的时候把重试逻辑留好比指望底层无锁更稳。这种架构适合谁团队小、不想养 metastore 的一个进程把数据和目录都管了运维面小。已经是 Spark / DuckDB / PyIceberg 技术栈的不用为 catalog 单独学一套系统。想存算分离的数据面走 S3、计算集群可独立扩缩。可以照着看的一步想判断这条路适不适合你半小时内能验证起一个单节点容器控制台建个桶并启用表存储桶用上面那条 curl 确认/iceberg/v1/config能返回再拿一段 PySpark 把表建出来。控制面和数据面是不是你要的一测就知道比看架构图实在。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

firewalld: 各个zone的用途 2026/9/25 20:54:59

firewalld: 各个zone的用途

一,查看linux当前的所有zone[rootblog ~]$ firewall-cmd --get-zones block dmz drop external home internal nm-shared public trusted work二,各个zone的区别1, 一个网络区域(zone)定义了网络连接的信任级别,trust…

阅读更多 →
KytyPS5加载器深度解析:如何逆向PS5 ELF64格式与运行时动态链接的完整指南 2026/9/25 20:54:40

KytyPS5加载器深度解析:如何逆向PS5 ELF64格式与运行时动态链接的完整指南

KytyPS5加载器深度解析:如何逆向PS5 ELF64格式与运行时动态链接的完整指南 【免费下载链接】KytyPS5 PlayStation 5 emulator for Windows, Linux and MacOS 项目地址: https://gitcode.com/gh_mirrors/ky/KytyPS5 KytyPS5 是一款支持 Windows、Linux 和 mac…

阅读更多 →
Linux下 HTTPS协议原理 2026/9/25 20:54:27

Linux下 HTTPS协议原理

欢迎来到我的频道!【点击跳转专栏】 本文所有代码已托管至码云:【点此转跳】 文章目录1. HTTPS 是什么1.1 什么是"加密"1.2 为什么要加密1.3 常⻅的加密⽅式1.3.1 对称加密1.3.2 ⾮对称加密1.4 数据摘要 && 数据指纹1.5 数字指纹&…

阅读更多 →
2026避坑指南 实测好用的AI论文网站 符合学术规范不拼凑 2026/9/25 20:54:14

2026避坑指南 实测好用的AI论文网站 符合学术规范不拼凑

写期刊论文、毕业论文或者职称论文时,很多同学都会遇到不少困难。自己动手写论文时,要面对大量的文献资料,找相关信息就像在大海里捞针一样难找;还有各种复杂的格式要求,弄得人头晕脑胀;内容还需要不断修改…

阅读更多 →
AI写教材高效工具盘点 助力高校教师缩短教材创作耗时 2026/9/25 20:54:08

AI写教材高效工具盘点 助力高校教师缩短教材创作耗时

写教材的时候,格式上的繁琐问题让很多人头疼。比如,标题到底该用多大的字号,分多少级层次?参考文献又是按照GB/T7714标准,还是某个出版社自己的规则来排?习题是用单栏排版,还是双栏更合适&#…

阅读更多 →
Atlas 300V 24G推理加速卡上部署YOLO目标检测的完整实战路线 2026/9/25 20:54:08

Atlas 300V 24G推理加速卡上部署YOLO目标检测的完整实战路线

前段时间同事丢给我一台没装显卡的服务器,要求在上面把 YOLO 目标检测服务跑起来。第一反应是上 GPU,结果预算卡着,功耗也卡着,最后兜兜转转落在了 Atlas 300V 24G 这张卡上。说实话,一开始我对它也是迷迷糊糊&#xf…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉