Skip to content

blance - functional algorithm to assign partitions and replicas across distributed nodes

License

Notifications You must be signed in to change notification settings

couchbase/blance

This branch is 21 commits ahead of couchbaselabs/blance:master.

Folders and files

NameName
Last commit message
Last commit date
Jul 1, 2021
Nov 20, 2014
Jul 1, 2021
Aug 25, 2020
Apr 2, 2024
Apr 2, 2024
Oct 28, 2021
Jul 1, 2021
Jul 1, 2021
Jul 1, 2021
Jul 1, 2021
Jul 1, 2021
Jul 1, 2021
Apr 2, 2024
Apr 2, 2024

Repository files navigation

blance

blance implements a straightforward partition assignment algorithm, using a greedy, heuristic, functional approach.

blance provides features like multiple, user-configurable partition states (primary, replica, read-only, etc), multi-level containment hierarchy (shelf/rack/row/zone/datacenter awareness) with configurable inclusion/exclusion policies, heterogeneous partition weights, heterogeneous node weights, partition stickiness control, and multi-primary support.

Build Status GoDoc Coverage Status

LICENSE: Apache 2.0

Usage

See the PlanNextMap() function as a starting point.

For developers

To get local coverage reports with heatmaps...

go test -coverprofile=coverage.out -covermode=count && go tool cover -html=coverage.out

About

blance - functional algorithm to assign partitions and replicas across distributed nodes

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 100.0%