Hi All,

Apache Helix has been stable for a long time, but there are several areas
where we can make significant improvements. I am proposing a new generation
of Apache Helix with the following major goals:

1. Multi-language support
2. Simpler API and user experience
3. Improved data model, communication protocol, and system performance
4. More pluggabilities

To achieve these goals, I have outlined the following projects:

- *Multi-language support*: Develop a gateway service that accepts general
state transition calls through gRPC.

- *API simplification*: Minimize both client and Admin APIs to streamline
the process.

- *Simplified data model and communication protocol*: Instead of defining a
fine-grained state model, provide users with the final state and allow the
application to progressively update its own partition states. This will
minimize round trips between the Helix controller and participants and
reduce traffic to the storage (Zookeeper).

- *Components "micro-servicing"*: Abstract some components to offer the
capability to plug user own logic. For example, choose move one partition
at a time as movement strategy instead of using per partition N -> N + 1 by
default.

Please let us know your suggestions or concerns. Thank you for your
attention and continuously support!

Best,

Junkai

Reply via email to