@InternalApi public class FeatureDependencyGraph extends java.lang.Object
| Constructor and Description |
|---|
FeatureDependencyGraph(java.util.Map<java.lang.String,java.util.Set<ErasedEntityTaggedFeature>> dependencyFeatures,
java.util.Collection<java.lang.String> anchoredFeatures)
Constructs a FeatureDependencyGraph for a given map of features' dependency relationships and a list of which features
are anchored.
|
| Modifier and Type | Method and Description |
|---|---|
java.util.List<java.util.Set<TaggedFeatureName>> |
getComputationPipeline(java.util.Collection<TaggedFeatureName> requestedFeatures)
Return a computation pipeline (a collection of stages that can be computed simultaneously) for the requested
features by examining their dependencies and grouping them based on their depth.
|
java.util.List<TaggedFeatureName> |
getOrderedPlanForFeatureUrns(java.util.Collection<TaggedFeatureName> request)
Returns an ordered list of features including the requested features and its dependencies that represents their
execution order.
|
java.util.List<TaggedFeatureName> |
getOrderedPlanForRequest(java.util.Collection<TaggedFeatureName> request)
Deprecated.
|
java.util.List<java.lang.String> |
getPlan(java.util.Collection<java.lang.String> features)
Construct a plan for procuring a group of features.
|
boolean |
isDeclared(java.lang.String feature)
Returns whether a given feature name is present in the dependency graph
|
boolean |
isReachable(java.lang.String feature)
Deprecated.
|
com.linkedin.feathr.common.FeatureDependencyGraph.Pair<java.lang.Boolean,java.lang.String> |
isReachableWithErrorMessage(java.lang.String feature)
Returns whether a given feature is reachable
|
java.lang.String |
toString() |
public FeatureDependencyGraph(java.util.Map<java.lang.String,java.util.Set<ErasedEntityTaggedFeature>> dependencyFeatures, java.util.Collection<java.lang.String> anchoredFeatures)
dependencyFeatures - Map of derived feature names to their sets of required inputs (described as TaggedFeatureNames)anchoredFeatures - List of anchored feature namespublic boolean isDeclared(java.lang.String feature)
feature - @Deprecated public boolean isReachable(java.lang.String feature)
feature - public com.linkedin.feathr.common.FeatureDependencyGraph.Pair<java.lang.Boolean,java.lang.String> isReachableWithErrorMessage(java.lang.String feature)
feature - public java.util.List<java.lang.String> getPlan(java.util.Collection<java.lang.String> features)
features - @Deprecated public java.util.List<TaggedFeatureName> getOrderedPlanForRequest(java.util.Collection<TaggedFeatureName> request)
public java.util.List<TaggedFeatureName> getOrderedPlanForFeatureUrns(java.util.Collection<TaggedFeatureName> request)
public java.util.List<java.util.Set<TaggedFeatureName>> getComputationPipeline(java.util.Collection<TaggedFeatureName> requestedFeatures)
public java.lang.String toString()
toString in class java.lang.Object