Package org.neo4j.gds

Interface AlgorithmFactory<G,ALGO extends Algorithm<?>,CONFIG extends org.neo4j.gds.config.AlgoBaseConfig>

All Known Implementing Classes:
GraphAlgorithmFactory, GraphStoreAlgorithmFactory

public interface AlgorithmFactory<G,ALGO extends Algorithm<?>,CONFIG extends org.neo4j.gds.config.AlgoBaseConfig>
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static interface 
    AlgorithmFactory.Visitor<ALGO extends Algorithm<?>,CONFIG extends org.neo4j.gds.config.AlgoBaseConfig>
     
  • Method Summary

    Modifier and Type
    Method
    Description
     
    build(G graphOrGraphStore, CONFIG configuration, org.neo4j.gds.core.utils.progress.tasks.ProgressTracker progressTracker)
     
    default ALGO
    build(G graphOrGraphStore, CONFIG configuration, org.neo4j.logging.Log log, org.neo4j.gds.core.utils.progress.TaskRegistryFactory taskRegistryFactory)
     
    default ALGO
    build(G graphOrGraphStore, CONFIG configuration, org.neo4j.logging.Log log, org.neo4j.gds.core.utils.progress.TaskRegistryFactory taskRegistryFactory, org.neo4j.gds.core.utils.warnings.UserLogRegistryFactory userLogRegistryFactory)
     
    default org.neo4j.gds.core.GraphDimensions
    estimatedGraphDimensionTransformer(org.neo4j.gds.core.GraphDimensions graphDimensions, CONFIG config)
    For memory estimation, this allows us to inject expected counts for relationship types and labels.
    default org.neo4j.gds.core.utils.mem.MemoryEstimation
    memoryEstimation(CONFIG configuration)
    Returns an estimation about the memory consumption of that algorithm.
    default org.neo4j.gds.core.utils.progress.tasks.Task
    progressTask(G graphOrGraphStore, CONFIG config)
     
    The name of the task.
  • Method Details

    • build

      default ALGO build(G graphOrGraphStore, CONFIG configuration, org.neo4j.logging.Log log, org.neo4j.gds.core.utils.progress.TaskRegistryFactory taskRegistryFactory)
    • build

      default ALGO build(G graphOrGraphStore, CONFIG configuration, org.neo4j.logging.Log log, org.neo4j.gds.core.utils.progress.TaskRegistryFactory taskRegistryFactory, org.neo4j.gds.core.utils.warnings.UserLogRegistryFactory userLogRegistryFactory)
    • build

      ALGO build(G graphOrGraphStore, CONFIG configuration, org.neo4j.gds.core.utils.progress.tasks.ProgressTracker progressTracker)
    • progressTask

      default org.neo4j.gds.core.utils.progress.tasks.Task progressTask(G graphOrGraphStore, CONFIG config)
    • taskName

      String taskName()
      The name of the task. Typically the name of the algorithm, but Java type params are not good enough. Used for progress logging.
      Returns:
      the name of the task that logs progress
    • memoryEstimation

      default org.neo4j.gds.core.utils.mem.MemoryEstimation memoryEstimation(CONFIG configuration)
      Returns an estimation about the memory consumption of that algorithm. The memory estimation can be used to compute the actual consumption depending on GraphDimensions and concurrency.
      Returns:
      memory estimation
      See Also:
      • MemoryEstimations
      • MemoryEstimation.estimate(org.neo4j.gds.core.GraphDimensions, int)
    • estimatedGraphDimensionTransformer

      default org.neo4j.gds.core.GraphDimensions estimatedGraphDimensionTransformer(org.neo4j.gds.core.GraphDimensions graphDimensions, CONFIG config)
      For memory estimation, this allows us to inject expected counts for relationship types and labels. These types and labels would be created during the algorithm execution.
    • accept