forked from TrueCloudLab/frostfs-node
21133aee2f
Implement route Builder interface on wrapper over the container placement builder, Component implies exactly one transfer to each of the most weight nodes of the container (according to some weighing algorithm). Implementation is planned for use when transferring local estimates of storage nodes. Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
14 lines
493 B
Go
14 lines
493 B
Go
package placementrouter
|
|
|
|
import (
|
|
"github.com/nspcc-dev/neofs-api-go/pkg/container"
|
|
"github.com/nspcc-dev/neofs-api-go/pkg/netmap"
|
|
)
|
|
|
|
// PlacementBuilder describes interface of NeoFS placement calculator.
|
|
type PlacementBuilder interface {
|
|
// BuildPlacement must compose and sort (according to a specific algorithm)
|
|
// storage nodes from the container with identifier cid using network map
|
|
// of particular epoch.
|
|
BuildPlacement(epoch uint64, cid *container.ID) ([]netmap.Nodes, error)
|
|
}
|