public class ReplicationPrioritizationStrategy extends Object
| Modifier and Type | Field and Description |
|---|---|
static org.apache.log4j.Logger |
log |
| Constructor and Description |
|---|
ReplicationPrioritizationStrategy()
Constructor: create a prioritization strategy
|
| Modifier and Type | Method and Description |
|---|---|
Map<org.dataone.service.types.v1.NodeReference,Float> |
getBandwidthFactors(List<org.dataone.service.types.v1.NodeReference> nodeIdentifiers,
boolean useCache)
For the given nodes, return the bandwidth factor as a surrogate for the
nodes' demonstrated throughput over a recent time period.
|
Map<org.dataone.service.types.v1.NodeReference,Float> |
getFailureFactors(List<org.dataone.service.types.v1.NodeReference> nodeIdentifiers,
boolean useCache)
For the given node list, report the success factor as a surrogate for the
nodes' demonstrated replication successes over a recent time period.
|
Map<org.dataone.service.types.v1.NodeReference,Float> |
getPendingRequestFactors(List<org.dataone.service.types.v1.NodeReference> nodeIdentifiers,
boolean useCache)
For the given node list, report the pending request factor of each node.
|
List<org.dataone.service.types.v1.NodeReference> |
prioritizeNodes(List<org.dataone.service.types.v1.NodeReference> potentialNodeList,
org.dataone.service.types.v2.SystemMetadata sysmeta)
Prioritize a list of potential replica target nodes based on a number of
factors including preferred/blocked node lists, pending request, failure,
and bandwidth factors.
|
public ReplicationPrioritizationStrategy()
public Map<org.dataone.service.types.v1.NodeReference,Float> getPendingRequestFactors(List<org.dataone.service.types.v1.NodeReference> nodeIdentifiers, boolean useCache)
nodeIdentifiers - the list of nodes to include in the reportuseCache - use the cached values if the cache hasn't expiredpublic Map<org.dataone.service.types.v1.NodeReference,Float> getFailureFactors(List<org.dataone.service.types.v1.NodeReference> nodeIdentifiers, boolean useCache)
nodeIdentifiers - the list of nodes to include in the reportuseCache - use the cached values if the cache hasn't expiredpublic Map<org.dataone.service.types.v1.NodeReference,Float> getBandwidthFactors(List<org.dataone.service.types.v1.NodeReference> nodeIdentifiers, boolean useCache)
nodeIdentifiers - the list of nodes to include in the reportuseCache - use the cached values if the cache hasn't expiredpublic List<org.dataone.service.types.v1.NodeReference> prioritizeNodes(List<org.dataone.service.types.v1.NodeReference> potentialNodeList, org.dataone.service.types.v2.SystemMetadata sysmeta)
sysmeta - potentialNodeList - Copyright © 2018. All rights reserved.