Improving Performance by Using TIs vs Rules when Developing TM1 Planning Models

TM1 process models improvement concept

Since TM1 is a memory-based OLAP engine, one of the most important considerations in developing  efficient planning models is to utilize the least amount of memory that is available on the server. As time goes on the model will likely grow in size and consume more resources. This usually happens when you add additional elements the cube’s dimensions and archive fewer elements . As the cube reaches its memory limit, users may experience issues like poor application performance, longer server start times, crashes, and other similar problems. Also, adding new elements can multiply memory use further because rules may act upon the elements added and take up even more of the server’s available resources.

One of the reasons companies gravitate to OLAP is because of its speed and its real-time data update capabilities. New TM1 developers fall into a trap of creating planning models that are heavily rule-based because they want the data to be available in real time. The following diagram illustrates this need.

rule transfer diagram

 

Typical Planning Models

Most TM1 planning models have a structure similar to the above illustration. Source cubes, which can be input cubes or cubes that have data loaded from a source system (such as a GL or Data Warehouse), get transferred to a consolidated cube and then moved to a summary cube or a reporting cube. These various cube transfers help avoid read write contention and improve performance.

If the infrastructure above is all based on rules, it makes the entire environment virtual. This works fine in the beginning when the models are small and very little data moves from cube to cube, but it quickly starts bogging down as it grows and causes planners start experiencing some of the pain points mentioned earlier. Response times get slower and the normally fast user experience diminishes. In fact, if you survey companies that have large TM1 applications you will find that application response time is their largest complaint.

How to Address the Issue

You need to evaluate which data has to be real-time, which data can be almost real-time, and which data does not need to be real-time. Consider using TIs instead of rules.

TI process diagram

Based on the illustration above, if the data needs to be loaded to the consolidated cube in real time we can create a TI and attach that to an action button. We then place this button on the input form that the planner can use to send the data after completing their inputs. If this TI is prompt-based and sends the data for the elements that are on the form, this can be almost as fast as real-time.

These surgical data loads can be a quick solution to avoid needing a rule in place that will most likely cause more overhead than necessary. Remember, most of the time rules are overfed, which causes more memory usage than needed. If the data is prompt-based instead, you are not transferring the entire application. You are only transferring the data that the planner is working on or is responsible for.

Moving forward, the data has to be transferred to the summary cube and another evaluation has to be done here to determin if the data can be transferred overnight. If it is imperative to have the data in the summary cube immediately, then you can provide another TI with an action button for the planner so that they can have their reports populated with the latest data as soon as they click it.

If we use rules only when absolutely necessary and utilize the built in ETL capabilities of TM1, we can create planning models that are efficient, scalable, and sustainable over time in a growing organization, deriving the greatest benefit possible from Cognos TM1’s powerful capabilities.