Have a question about this requirement?

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Requirement

System will not slow down as we grow and add complexity

Functional Area

General

Industries
All
DETAILS

Description

The product must adapt to escalating data volumes, user counts, and changes in business structure without impairing system performance and usability. This includes adding more dimensions, versions, accounts and so on.

Example Use Case

Scenario: A start-up e-commerce company has experienced rapid growth in the past two years, expanding from a local operation to a global entity. The expansion has resulted in an increase in dimensions and active users. This increase is expected to continue in the proceeding years.

Solution: The start-up purchasing a planning solution sitting on top of an elastic computing cloud, allowing it to scale its computing power as its customers grow in complexity. This ability to automatically scale up processing power enables the customer to continue usage of their planning and reporting without major slowdowns.

Considerations

OLAP systems will slow down when more dimensions are added, as they need to re-calculate on a periodic basis to update themselves. Each dimension added increases size exponentially. For example:

Dimension Members
Department 15
Product 150
Channel 5
Potential Combinations 11,250

Add just one more dimension:

Dimension Members
Department 15
Product 150
Channel 5
Project 35
Potential Combinations 393,750

In this case, the addition of “Project” with 35 members increases the size of the database by 3,400%. You can see how quickly the demand on the database becomes more challenging.

While 393,750 may seem small (it is), many use cases require more dimensions than that. The more you add, even if most of the potential combinations (aka intersections) are empty, it will still have to analyze those cells and will slow down.

OLAP isn't the only game in town for CPM tools. Some are hybrids with relational databases, some use graph databases, others are pure relational. All this means to the user is, different types of additions to the system slow them down in different ways. For example:

Backend Type What slows it down in CPM
OLAP / Cube Dimensions Rule calculations
Relational On-demand calculations Data volume
Graph Complex hierarchies Large volumes of transactional data Multi-user environments / locking

Other Considerations

Adding users should not slow the system down significantly, nor should processing reports. Most systems should single-thread large report generation, meaning that if a report is taking a long time to run, the rest of the application should run at its normal pace.

As a rule of thumb, if the system is slow during the demonstration, it is probably going to be slow when you add in real data. Most demo systems have a small amount of data in order to make the system appear fast. In practice, most systems are slower once filled up with data, dimensions, and so on.

Questions to Ask a Vendor

  • Scalability: How does your system ensure it remains fast and efficient as data volumes and user counts increase?
  • Ease of Use: How does your software maintain usability as companies grow and incorporate more complex structures?
  • Slow Downs: What are some things that will slow down the system? Please give examples. (if the vendor says “none”, ask again)