docs(rfc): RFC-109 native vector search support in Apache Hudi - #19309
docs(rfc): RFC-109 native vector search support in Apache Hudi#19309chrevanthreddy wants to merge 9 commits into
Conversation
hudi-agent
left a comment
There was a problem hiding this comment.
Thanks for the RFC! This proposes native IVF + RaBitQ approximate nearest-neighbor vector search stored in the Metadata Table via a column-wise "posting block" layout, with exact re-ranking always done from the base table. The design is thorough and the storage model is well thought through, but a few areas could use more detail before implementation — multi-writer concurrency semantics, the hard dependency on the Record Level Index, recall behavior under deletes/updates between compactions, backward compatibility of the new MDT partition and the VECTOR(D) type, and a system-level "Alternatives Considered" section (see inline comments). Once those are addressed, a Hudi committer or PMC member can take it from here for a deeper design review.
hudi-agent
left a comment
There was a problem hiding this comment.
Thanks for the thorough revision — this addresses all of the prior feedback. Every point from the last pass is now covered: RLI is an explicit hard prerequisite (§6.3), __centroids__ is chunked into size-bounded T| records (§4.2/§4.5), the centroid epoch is gone in favor of generation as the sole version axis (§4.5/§7.3), multi-writer rebuild is replay-only with a marker-frontier freshness gate (§5.5/§9.1), shard-count changes force a routing-versioned rewrite (§4.3), an Alternatives Considered section was added (§1.3), engine support for unaware writers is spelled out (§5.4), and the recall/nprobe numbers are now backed by an artifacted benchmark table with the default raised to 32 (§11.1). The freshness/marker model in §9.1 is a nice addition. One forward-looking design question on how the marker frontier interacts with timeline archival is noted inline — worth a sentence before implementation. Please take a look at the inline comment, and this should be ready for a Hudi committer or PMC member to take it from here.
097a664 to
ef32206
Compare
hudi-agent
left a comment
There was a problem hiding this comment.
Thanks for the RFC! This is a well-organized proposal for an MDT-native IVF + RaBitQ vector index, and it has clearly absorbed a lot of prior-round feedback (generation model, marker frontier, RLI arbitration, multi-writer rebuild). One remaining correctness question stands out around how the exact re-rank obtains a validated row position after RLI re-resolution — flagged inline. Once that's addressed, a Hudi committer or PMC member can take it from here for a deeper design review.
|
Did a pass comparing this against my comments on #19107. Level setting on what carried over: Addressed:
Still open from my side:
|
vinothchandar
left a comment
There was a problem hiding this comment.
High level comments.. if addressed, we can land this and keep adding more.
I am also happy to push some changes to get this landed. lmk @chrevanthreddy if you are okay with that.
|
RFC review closeout update:
I have kept the RFC’s claims conservative: the current 1B query numbers describe the measured 16,384-physical-group layout, not the intended 512-group layout, and the independent 1B RLI audit remains open because both attempted Hudi-reader validators bottlenecked on ten giant RLI HFile input partitions. |
Describe the issue this Pull Request addresses
This PR adds the full RFC document for RFC-109: Native Vector Search Support in Apache Hudi, following the RFC number claim merged in #19303. It links the RFC into the registry (
rfc/README.md) and adds the design document plus architecture/read/write diagrams.Umbrella tracking issue: #19094
Summary and Changelog
rfc/rfc-109/rfc-109.md— the RFC-109 design document covering: goals/non-goals, architecture, the IVF + RaBitQ index algorithm, the metadata-table posting-block storage model, bootstrap/write path, read path, and maintenance/rebalancing/cleaner semantics.rfc/rfc-109/diagrams/— architecture overview, read path, and write/maintenance SVG diagrams referenced by the doc.rfc/README.md— link the existing RFC-109 registry row (UNDER REVIEW) to the new document.This is a docs-only change. No production code, tests, or build files are touched. The implementation lands separately as the focused PR series tracked under #19094 (child issues #19096–#19105).
Impact
None on runtime, build, or existing functionality — documentation only. Establishes the reviewable design of record for the vector index feature so the community can evaluate architecture separately from implementation.
Risk Level
none
Docs-only; no code paths, dependencies, or CI behavior affected.
Documentation Update
This PR is the documentation update: it introduces the RFC-109 design document and diagrams and links them from the RFC index. No user-facing site docs change until the feature is implemented and merged.
Contributor's checklist