Search before asking
Description
Description
Context & Motivation
Currently, BanyanDB relies on etcd for managing cluster metadata (schema, node registry, shard allocation). While etcd provides strong consistency, it introduces significant operational complexity, prevents efficient scaling on edge/standalone deployments, and forces the maintenance of heterogeneous storage engines.
This issue tracks the strategic initiative to replace the etcd-based registry with a Property-backed Metadata Service. This will unify the storage layer, allowing BanyanDB to manage its own control plane using its native Property data model and inverted index.
Architecture Changes
- Storage Layer: Replace the
etcd/clientv3 dependency with a PropertyStorageAdapter that maps metadata objects to Property documents (e.g., mapping Group, Name, ID structure).
- Notification Mechanism: Transition from etcd "Watch" streams to a Periodic Scanning model. A background scanner will poll for changes based on
updated_at timestamps to refresh the local In-Memory Cache.
Task List
Use case
No response
Related issues
No response
Are you willing to submit a pull request to implement this on your own?
Code of Conduct
Search before asking
Description
Description
Context & Motivation
Currently, BanyanDB relies on etcd for managing cluster metadata (schema, node registry, shard allocation). While etcd provides strong consistency, it introduces significant operational complexity, prevents efficient scaling on edge/standalone deployments, and forces the maintenance of heterogeneous storage engines.
This issue tracks the strategic initiative to replace the etcd-based registry with a Property-backed Metadata Service. This will unify the storage layer, allowing BanyanDB to manage its own control plane using its native Property data model and inverted index.
Architecture Changes
etcd/clientv3dependency with aPropertyStorageAdapterthat maps metadata objects to Property documents (e.g., mappingGroup,Name,IDstructure).updated_attimestamps to refresh the local In-Memory Cache.Task List
Core Storage
_system,_schema).PropertyRegstryin "metadata" pkgNotification & Caching
updated_atfilters,.Use case
No response
Related issues
No response
Are you willing to submit a pull request to implement this on your own?
Code of Conduct