Skip to content
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

Persist and expose sharding function for external / cluster wide access #5680

Open
Totktonada opened this issue Jan 10, 2021 · 4 comments
Open

Comments

@Totktonada
Copy link
Member

When we'll implement #5496, we'll able to configure vshard on all nodes. However it is not enough to read and write actual data: we should also know a sharding function (key -> bucket_id transformation). Modules like tarantool/crud should use this information to access data.

Maybe a text of a Lua function and a list of used modules (like digest) will be enough.

@kyukhin kyukhin added this to the 2.8.1 milestone Feb 12, 2021
@kyukhin kyukhin added the tmp label Feb 18, 2021
@kyukhin kyukhin modified the milestones: 2.8.1, 2.9.1 Feb 18, 2021
@Totktonada
Copy link
Member Author

Maybe it should be part of the schema in the tarantool/ddl module. If so, it'll fall into the following subtasks:

  • Learn tarantool/ddl to store the schema in the configuration provider.
  • Add the sharding function information into the schema.

@Totktonada Totktonada changed the title topology provider: store sharding function Persist and expose sharding function for external / cluster wide access Mar 3, 2021
@Totktonada Totktonada added 21sp and removed 5sp labels Mar 3, 2021
@artur-barsegyan
Copy link

Maybe it should be part of the schema in the tarantool/ddl module. If so, it'll fall into the following subtasks:

  • Add the sharding function information into the schema.

From the experience of communicating with clients, basically you need to shard the data somehow. In the current version, tarantool/ddl already supports sharding by a set of fields, so there is no need to do this.

@Mons
Copy link
Contributor

Mons commented Mar 16, 2021

From the experience of communicating with clients, basically you need to shard the data somehow. In the current version, tarantool/ddl already supports sharding by a set of fields, so there is no need to do this.

Storage of custom user function is a required feature.

@Totktonada Totktonada added backlog and removed tmp labels Mar 23, 2021
@kyukhin kyukhin removed this from the 2.9.1 milestone Apr 7, 2021
@Totktonada
Copy link
Member Author

Totktonada commented Jul 20, 2021

@Mons,

Storage of custom user function is a required feature.

Do you mean applying a custom function on tuple's fields declared by given sharding_key (a set of tuple's fields suitable for deducing a bucket_id) or something more general?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants