Performance

RANK on a large list

RANK can't run in parallel, so ranking over lists that together hold about a million items or more holds up the calculation; rank over fewer items.

What MaxCheck detects

RANK, RANKCUMULATE or ISFIRSTOCCURRENCE in a line item whose lists hold an estimated 1,000,000 items or more together (time and versions not counted). List sizes are estimated from the cell counts of all line items. A line item whose list sizes the export can't pin down is skipped.

Why it hurts

These functions can't run in parallel, so a large ranking holds up the calculation. RANKCUMULATE can slow model opening and rollback too. Over 50,000,000 cells, Anaplan rolls the change back.

Example

Taken from the rule's own test cases: formulas it must flag, and formulas it must not.

WarningFlags this(rank over a 2M-item list)

SKU DataApplies To: SKU
  • Sales
    • 2,000,000 cells
SKU RankApplies To: SKU
  • WarningRank
    RANK('SKU Data'.Sales)
    • 2,000,000 cells

Fine (a small list)

RegionsApplies To: Region
  • Sales
    • 50 cells
  • Rank
    RANK(Sales)
    • 50 cells

How to fix

Rank over fewer items: filter to the items that need a rank first, rank in a smaller list (a subset or a parent level), or group with the RANK group argument. Run it as an occasional action, not on every change, if it can wait.

Severity
WarningCounts toward the area score.
Area
Performance
Runs in
Full analysis only
Rule ID
P_RANKLARGE
Version
Rule 1.0.0, rule set 1.4.0
Planual
2.02-20 Don't use RANK formulas with large listson Anaplan's Formulas page

Does your model do this?

Upload the line-items blueprint. This rule runs in the full analysis, with a work email.

Check your model