F3格式用Wasm解码器替代Parquet
推荐指数 58.0 NO. 015 · 2026.06.24
发布2026/06/23Score471Comments116
为什么值得看
F3是新一代数据文件格式,通过嵌入式Wasm解码器解决Parquet的布局缺陷,兼顾效率与可扩展性。目前仍是研究原型,但为数据湖架构提供了值得关注的替代方向。
编辑判断
Parquet 的列式布局在嵌套结构和随机读取场景下一直表现不佳,业界通常用 ORC 或自定义 Arrow IPC 来缓解,但跨语言兼容性始终是个坑。F3 的 Wasm 解码器思路很巧——把格式解析逻辑打包进文件本身,读取端不需要预装专用库,这比 Arrow Flight 的传输方案更激进,也更接近 SQLite 的自描述哲学。
目前最大风险是性能:Wasm 运行时开销在热路径上是否扛得住 TB 级扫描还没验证。如果你在构建多语言数据基础设施,可以先跟踪它的 benchmark 结果,但别急着替换现有管线。
社区反馈
意见分歧 96 条评论
核心争论:Wasm嵌入式解码器是创新突破还是引入不必要安全风险
相关内容
F3: Open-source data file format for the future [pdf] CMU数据库组发布的F3格式论文,提出下一代开源数据文件格式,386赞125评论引发技术社区热议。 parquet-wasm: Rust-based WebAssembly bindings for Parquet 用Rust和WebAssembly在浏览器中读写Parquet的库,与F3用Wasm解码器的思路直接相关。 Serialize and Deserialize Parquet in JavaScript 介绍如何在JavaScript中直接处理Parquet文件,无需服务端转换,体现Wasm客户端解码的趋势。
This project README is not particularly useful: It doesn't explain what the project does (a file format for what? Name dropping other things I haven't heard of isn't useful) There are no examples. It links to a flatbuffer schema which is at least well commented, but is full of deep implementation
Tabular data, it wants to replace Parquet
This could use a bit more "why". Shortcomings of Parquet are mentioned as overcome by this, which ones? Certainly not wide tool support... Why should one leave Parquet or ORC for this structure?