For each algorithm in the production quality tier, the GDS implements an estimate procedure similar to the one studied in the preceding paragraph for projected graphs. It can be used by appending estimate to any algorithm execution mode:
CALL gds.<ALGO>.<MODE>.estimate(graphNameOrConfig: String|Map, configuration: Map)
The algorithms in the alpha tier do not benefit from this feature.
The returned parameters are as follows:
YIELD
requiredMemory,
treeView,
mapView,
bytesMin,
bytesMax,
heapPercentageMin,
heapPercentageMax,
nodeCount,
relationshipCount
The parameter names are self-explanatory and similar to the projected graph estimation procedure. By estimating the memory usage of both the projected graph and the algorithms you want to run on them, you can get a fairly good estimate of the heap required and use a well-sized server for your analysis.