-
Notifications
You must be signed in to change notification settings - Fork 17
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
doc: Sharding vs partitioning #570
Conversation
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.
LGTM, worth backport/republishing the docs to get consistent messaging?
um, was thinking about it, but probably not important enough. Data partitioning is still not wrong, even though end goal is database sharding. |
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.
LGTM
@@ -15,7 +15,7 @@ The Akka Persistence R2DBC plugin allows for using SQL database with R2DBC as a | |||
* [PostgreSQL JSON](postgres_json.md) | |||
* [Projection](projection.md) | |||
* [Configuration](config.md) | |||
* [Data partitioning](data-partition.md) | |||
* [Database sharding](data-partition.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.
Also change the name of the file for links? Or too much hassle with redirecting?
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.
was also thinking about it, but I don't see it as very important
Trigged by some feedback I looked closer at what others say regarding sharding vs partitioning.Seems like sharding is mostly used for horizontal partitioning to distribute the data across multiple servers. While partitioning is a more generic term it mostly refers to splitting up large tables into smaller tables, but still in one database instance (*vertical scaling").
Our primary goal is horizontal scaling so we should highlight database sharding.
That said, the implementation splits the data into multiple tables (partitioning), which can then optionally be located on different database instances (sharding). The documentation still uses data partition and that it corresponds to a table. I think that is fine, but let me know if it's confusing.