Business Objects products in this release may contain redistributions of software
licensed from third-party contributors. Some of these individual components may
also be available under alternative licenses. A partial listing of third-party
contributors that have requested or permitted acknowledgments, as well as required
notices, can be found at: http://www.businessobjects.com/thirdparty
2008-07-02
Contents
Introduction to Partitioning5Chapter 1
The Benefits of Partitioning a Model............................................................6
Considerations for Partitioning7Chapter 2
Model partitioning criteria.............................................................................8
Assessing model dependencies................................................................10
Making the most of your server hardware.................................................12
Partitioning a model15Chapter 3
Model size..............................................................................................9
Model dependencies..............................................................................9
Model stability.......................................................................................10
Single model server with a single processor........................................12
Single model server with multiple processors......................................12
Multiple model servers with single processors.....................................13
Multiple model servers with multiple processors..................................13
To partition a model...................................................................................16
Opening a model on a single server..........................................................17
To split a model into several processes.....................................................17
To open a model across several servers...................................................17
The Model Partition screen........................................................................17
To configure the partition settings.........................................................18
Index19
Profitability and Cost Management Model Partitioning3
Contents
4Profitability and Cost Management Model Partitioning
Introduction to Partitioning
1
Introduction to Partitioning
1
The Benefits of Partitioning a Model
This document contains information relating to the operation of Model
Partitioning in BusinessObjects Profitability and Cost Management. Model
partitioning is a means of distributing a model's calculation process and data
storage to make the most efficient use of a model server’s resources.
The Profitability and Cost Management application makes use of a singular
calculation process for each model. This process use up to two gigabytes
of logical memory space during the calculation of a model. If additional space
is required for the creation and manipulation of results, temporary
memory-mapped files are created and stored on the server’s hard drive in
the model file directory.
The Benefits of Partitioning a Model
To reduce the overhead of swapping data back and forth from the disk drive,
and also to take full advantage of processors available in other model servers
(several model servers may be deployed in an organization), a model can
be partitioned across multiple servers and will use the combined disk space,
memory space, and processing power of several servers at once.
A partitioned model may be split across several model servers, but changes
are not apparent to the user of that model. The model appears and reacts
in exactly the same way as an unpartitioned model.
A partitioned model that makes efficient use of the available server resources
is faster to calculate, and data that is split across several servers’ drives
reduces reliance on a single data storage area. However, partitioning that
is not efficient, as in the case where there are a large number of dependent
values, or data is accessed across a Wide Area Network, will actually slow
down model calculation. When you assess the need to partition a model,
always weigh the benefits against the potential detrimental effects .
The sections in this guide describe the methods available for partitioning
models across servers. The guide discusses the types of models that are
best suited to partitioning, what criteria you should use to evaluate partitioning
for your model, and how to get the most out of your server hardware for the
models that you are using.
6Profitability and Cost Management Model Partitioning
Considerations for
Partitioning
2
Considerations for Partitioning
2
Model partitioning criteria
Not all models are suited to partitioning. In the related topics, we examine
the criteria you should use to evaluate a model’s suitability for partioning,
and discuss the benefits you can expect from dividing a model.
Here are some areas that you need to examine when considering partitioning:
•Does the model meet the criteria for partitioning?
•Are the data relationships in the model fully understood?
•Are there model servers with sufficient unused resources to support a
partitioned model?
•Is the model stable and unlikely to change?
Related Topics
•The Benefits of Partitioning a Model on page 6
•Model partitioning criteria on page 8
Model partitioning criteria
Some criteria for determining a suitable model are:
•There is a natural split for the business data, for example each
Responsibility Center governs its own data, or the business reports
quarterly.
•User groups are in close connection to the Profitability and Cost
Management hardware. They are on the same network as the servers,
and are not distributed over a wide area network
•The model design is stable and unchanging. The model should be fully
built and without errors, as it cannot be changed after partitioning.
Other more specific criteria are the size of the model and the degree of
inter-dependency between values. Models that cannot be partitioned are:
•Models containing Services
•Models containing Activity Re-assignments
•Models containing Cross Model Rules
Partitioning divides each partition into a separate model process. Models
containing the elements listed above cannot be partitioned because
calculation cannot be performed between model processes.
8Profitability and Cost Management Model Partitioning
Model size
Large uncomplicated models are prime candidates for partitioning. A large
model can be considered to be any model that causes your servers to work
at their optimum levels or beyond. If the server disk drive is low on space
after calculating results, you may have a large model.
Several indicators that can assist you in determining whether you have a
large model are:
•The model directory temporary files take up several gigabytes of space
•You have many Versions, Periods, and Responsibility Center
Considerations for Partitioning
Model partitioning criteria
combinations. A simple calculation of the number of elements in each
hierarchy will give you an indication: V x P x RC
•Less than 2500 combinations = SMALL
•Up to 20,000 combinations = MEDIUM
•More than 20,000 combinations = LARGE
2
•You send the majority of your Activity Costs to Cost Object dimensions
Note: These are not strict criteria, and are offered as a guideline only.
Model dependencies
Determining a model's complexity and interdependence helps you evaluate
whether a model is suitable for partitioning. A model that is complex, or highly
interdependant, is slower to operate if partitioned.
A model may not be suitable for partitioning if:
•There are many dependencies between Versions, Periods, and
Responsibility Centers.
•The model dependencies are at a high level, for example, All/All/All.
•The model takes more than four hours to calculate all its results.
•You make extensive use of rules in the Line Item, Resource Driver, Activity
Driver, or Worksheet dimensions.
Profitability and Cost Management Model Partitioning9
Considerations for Partitioning
2
Assessing model dependencies
•Grids built with the View Builder that represent the higher levels of your
•The server’s CPUs operate at close to 100% continuously during
A more specific method of working out the inter-relationship of data within
your model is to use the "Dependency Viewer" tool built into the Model Builder
application.
Related Topics
•Assessing model dependencies on page 10
Model stability
A model is considered to be stable when two conditions are met:
•Development has been completed, and no more structural changes need
•No critical errors are reported in the Model Alerts screen.
business are slow to display data.
calculation.
to be made.
Once a model is stable it can be partitioned, and no further changes should
be allowed to the model structure or rules.
Assessing model dependencies
To discover the degree of model value inter-dependency, use the in-built
"Dependencies Viewer" function ( Model > Dependencies Viewer).
Changes to values in one dimension will cause values that are dependant
to be removed from the temporary results store and from the various
Profitability and Cost Management data caches. The "Dependencies Viewer"
displays a list of the types of value affected by change, and the extent of that
effect.
10Profitability and Cost Management Model Partitioning
Considerations for Partitioning
Storing partitioned data
2
For more information on interpreting the analysis provided by the
"Dependency Viewer", see the document Profitability and Cost ManagementUser Guide.
Storing partitioned data
Partitioning introduces the idea of storing your model data in locations other
than on a single server. Using the disk drive capacity of other servers will:
•provide a larger working space for model calculation files
•allow you to store larger models
•localize the storage and maintenance of data
To partition in this way you should have the model servers configured as
secondary servers using the Profitability and Cost Management Configuration
Wizard.
Before you can partition data onto networked servers, ensure that the DCOM
settings are using an account that has permissions to access data across
Profitability and Cost Management Model Partitioning11
Considerations for Partitioning
2
Making the most of your server hardware
the network. For more information on configuring DCOM settings see the
Profitability and Cost Management Installation Guide.
Note: Opening a partitioned model will take considerably longer than an
unpartitioned model. You may need to consider using a console job to open
the model at a quiet time for very large models.
Making the most of your server hardware
In this section we discuss some of the ways in which you can take advantage
of your model server configuration to get the best out of their available
resources.
Single model server with a single processor
Partitioning a model splits the processing into separate model calculation
processes. Even on a single model server with a single processor, you can
take advantage of the available RAM by partitioning.
Each partition can utilize up to 2 gigabytes of memory in order to calculate.
This takes advantage of memory size.
Single model server with multiple processors
In this case, the server, due to the nature of multithreading, may not be fully
using all the CPU power to run calculations.
If partitioned onto this server, a model could process several calculation
threads simultaneously, each assigned to a separate processor. Instead of
a single processor running at 100% and the others running below full capacity,
each processor would run at or near capacity simultaneously for a shorter
duration.
Each partition would also be able to utilize up to 2 gigabytes of memory in
order to calculate. This takes advantage of memory size and processor time.
12Profitability and Cost Management Model Partitioning
Considerations for Partitioning
Making the most of your server hardware
Multiple model servers with single processors
With the addition of more servers comes the possibility of using the extra
disk storage capacity. Data can be hived off to each model server separately,
creating distinct spaces for the partitioned data.
Each partition would also be able to utilize up to 2 gigabytes of memory to
calculate. In addition, because of the separation of the processing, the
calculation would not suffer from contention, as it would on a single machine.
This takes advantage of memory size and disk space, with some increase
in processor time.
Multiple model servers with multiple processors
This is the most effective solution to the problem of large models. In this
scenario, all the possible resource benefits are realized.
2
Increases in processing time, disk space, and RAM usage mean that, other
than networking issues, using mulitple model server with multiple processors
provides the best option for partitioning to increase the speed of your model
and reduce the time it takes to calculate results.
This takes advantage of memory size, disk space, and large increase in
processor time.
Profitability and Cost Management Model Partitioning13
Considerations for Partitioning
Making the most of your server hardware
2
14Profitability and Cost Management Model Partitioning
Partitioning a model
3
Partitioning a model
3
To partition a model
Before you start, you must be a member of the Model Administrators security
group.
To partition a model
1. Log in to Model Builder.
The "Model Selection" screen appears.
2. Instead of opening your model, click Model Admin.
The "Model Administration" screen appears.
3. Select the model that you want to partition.
4. Click one of the following options:
•Open this model only on default server [servername] – This option
leaves the model intact as a single data source.
•Partition this model across several processes/servers – This
involves partitioning the model on single or multiple servers.
5. Click Add to display the "Model Partition" screen.
Related Topics
•The Model Partition screen on page 17
16Profitability and Cost Management Model Partitioning
Partitioning a model
Opening a model on a single server
Opening a model on a single server
The default option is to open a model on a single model server. When the
model is opened, a single model file is accessed from a single model directory
on the model server.
To split a model into several processes
1. Select your Version, Period, and Responsibility Center combination.
2. Choose to create a partition on the same model server.
A directory is created on the model server for each partition created.
To open a model across several servers
To split a model into several processes across different model servers:
1. Select your Version, Period, and Responsibility Center combination.
2. Choose to create a new partition on different model servers.
3
Each model server creates a directory to store the partition data.
The Model Partition screen
The "Model Partition" screen allows you to configure partitioning for a selected
model.
Profitability and Cost Management Model Partitioning17
Partitioning a model
3
The Model Partition screen
To configure the partition settings
1. Select the Version, Period, and Responsibility Center.
Attributes may also be used to partition data.
2. From the Model Server list, select the server that will store the partitioned
data.
3. From the Partition Number list, choose the partition where you wish to
store the data.
The default partition, existing partitions, or new partitions are all valid
options. This means that you can choose to keep particular VPRC data
combinations together in the same partition if they contain interdependent
data.
Once you have selected these options the model will be partitioned when
it is opened using the Model Builder application, or the Profitability and
Cost Management Console.
18Profitability and Cost Management Model Partitioning
Index
M
Model
Opening across Several Servers 17
Opening on a Single Server 17
Partitioning 16
Splitting into Processes 17
Model Hardware
Multiple Servers and a Single Processor 13
Multiple Servers and Processors 13
Single Server and Multiple Processors 12
Single Server and Processor 12
Utilizing 12