-
Notifications
You must be signed in to change notification settings - Fork 474
[FLUSS-2298] Move 'Merge Engine' to the top-level of 'Table Design' #2300
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This commit restructures the documentation hierarchy to elevate Merge Engines to a top-level concept under Table Design, improving visibility and discoverability. Changes: - Moved merge-engines directory from table-design/table-types/pk-table/merge-engines to table-design/merge-engines - Updated sidebar positions: Overview (1), Table Types (2), Merge Engines (3), Data Distribution (4), Data Types (5) - Fixed all internal documentation links to reflect the new structure - Updated references in engine-flink/options.md and pk-table/index.md This change highlights the strategic importance of merge logic in Fluss's architecture, especially the newly introduced Aggregation Merge Engine for real-time feature engineering. Closes apache#2298
wuchong
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for the contribuiton. Since we have already extract all the sub-pages from pk-table directory, we can refator the primary key page into a normal page like log-table.md. Could you convert the pk-table directory into a normal pk-table.md page like log-table.md?
pk-table
|-- _category_.json
|-- index.md
| 2. [FirstRow Merge Engine](merge-engines/first-row.md) | ||
| 3. [Versioned Merge Engine](merge-engines/versioned.md) | ||
| 4. [Aggregation Merge Engine](merge-engines/aggregation.md) | ||
| 1. [Default Merge Engine (LastRow)](../../merge-engines/default.md) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's suggested to use paths relative to the docs/ directory
table-design/merge-engines/default.md, see https://fluss.apache.org/community/how-to-contribute/contribute-docs/#documentation-linking
|
|
||
| The **Default Merge Engine** behaves as a LastRow merge engine that retains the latest record for a given primary key. It supports all the operations: `INSERT`, `UPDATE`, `DELETE`. | ||
| Additionally, the default merge engine supports [Partial Update](table-design/table-types/pk-table/index.md#partial-update), which preserves the latest values for the specified update columns. | ||
| Additionally, the default merge engine supports [Partial Update](../table-types/pk-table/index.md#partial-update), which preserves the latest values for the specified update columns. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The original link should still work.
| - [Primary Key Tables](../table-types/pk-table/index.md) | ||
| - [Fluss Client API](../../apis/java-client.md) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ditto. It's suggested to use paths relative to the docs/ directory.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the review @wuchong! I've converted the pk-table directory into a single pk-table.md file and updated all internal documentation links to use root-relative paths as suggested.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Aditya41150 sorry, I didn't see the changes. Did you push the commit to your branch?
|
Besdies, please do not use "git merge" to merge branches, otherwise the changes is hard to track. Please use "git rebase" to rebase branches instead. IntelliJ IDEA provide an easy tool to do git rebase, you can find the tool via |
|
@wuchong Sorry about that! I've now pushed the changes. The Also, thank you for the tip about using |
|
@Aditya41150 there are some link broken, could you fix that? You can also run |
- Fix all image paths to use correct relative paths (../assets/) instead of root-relative paths - Fix all internal documentation links to use root-relative paths (/path/to/doc.md) as per Fluss documentation guidelines - Affected files: - concepts/architecture.md: Fixed architecture.png path - engine-flink/delta-joins.md: Fixed delta_join.jpg path and lookups.md link - engine-flink/procedures.md: Fixed security/overview.md link - streaming-lakehouse/overview.md: Fixed streamhouse.png path - table-design/overview.md: Fixed data_organization.png path and partitioning.md link - table-design/table-types/pk-table.md: Fixed all merge engine links and Flink documentation links
|
@wuchong Thank you for catching those broken links! I've now fixed all the broken image paths and documentation links: Image paths fixed (using correct relative paths):
Documentation links fixed (using root-relative paths as per guidelines):
I've tested the changes locally with |
Currently, the "Merge Engine" documentation is buried deep in the hierarchy: Table Design → Table Types → Primary Key Tables → Merge Engine.
This PR restructures the documentation hierarchy to elevate Merge Engines to a top-level concept under Table Design, improving visibility and discoverability.
Changes:
merge-enginesdirectory fromtable-design/table-types/pk-table/merge-enginestotable-design/merge-engines.This change highlights the strategic importance of merge logic in Fluss's architecture, especially the Aggregation Merge Engine for real-time feature engineering.
Fixes #2298