-
Notifications
You must be signed in to change notification settings - Fork 763
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
[FR] cluster management for FuseQuery #883
Comments
Very cool. Now store:
For cluster node register, 2 questions: |
It's ok, but we need expire_key and get_prefix(not necessary by tow level keys design) api.
It's not necessary. we can fetch it once every query. but it's better to provide |
|
oops, I just deleted the comment, I "recover" it here. :D |
Making meta service a standalone sub system? That smells good. |
I have some thoughts which may be naive but I think they're worth sharing for your reference. My proposal here is to abstract a component
Let me elaborate the details one by one. (1) It's stateless and it ports external meta storage as plugin.The purpose for stateless is cloud native, and the purpose for plugable is to let datafuse be easy to use for users from different companies with different infra backgrounds. (2) It provides SQL-like API.From the experience, most of distributed systems need manage their nodes, pods, plans, executors, tasks and more. And they are not independent, such as we need (3) It supports listen/notify.It's necessary to have an Briefly, I think the first one is the most important of this arch, because other points can be added as increment. Please correct me if some thing wrong. |
@jovany-wang Thanks for sharing. If the |
Yes.
I'm afraid there's no such service in open source. Anyway there are visible benefits to make meta storage plugable. |
@jovany-wang Looking forward to a more detailed design of it. 😃 E.g., the abstraction layer API, what the sql layer schema would be like and how to implement listen with sql. BTW an example/illustration of a complete workflow of fusequery node accessing the meta data would make your idea concrete, intuitive and easy to understand for everybody. |
Really appreciate it!!
Does this mean that metadata of extra catalogs are not stored in datafuse's Store layer. That would be nice, we should have extra abilities to read/write non-built-in data format though. |
Wow, those are exciting features! Looking forward to your further comments/docs. |
For datafuse, I think we need a common/cloud_service mod(Mainly for stateful synchronisation and management), it includes many components, cluster manager is one of them. For this part, it should support:
All datas are serialized and stored in the Store. Will meet all the needs? |
My proposal here is for meta storage only. |
This task will start when #881 is done. Initial design:
|
Looks good to me for current stage. |
Summary
FuseQuery is a stateless service. It should be very easy to scale in and scale out. for example:
In this case, we need FuseStore as registry center. we may need the following APIs:
CC: @dantengsky @BohuTANG
The text was updated successfully, but these errors were encountered: