MDR works on the principal that data processing can be divided into independent “pieces” of work. These pieces of work are referred to as Intervals and usually represent a range of master or transactional data that needs to be worked upon. This for example may be Intervals of Business Partner Numbers, Sales Order Numbers, or Account Numbers. MDR ensures that these Intervals of data are processed in parallel instead of the traditional sequential approach – this in essence is why MDR can provide such impressive performance gains.
An interval can be thought of as a range of values that represent X number of master or transactional data objects. It is based on some data domain having a data type and a length. An example interval might be “All Sales Order’s from 1000 through to 2000”. It can then be implied that an interval has a Low value (e.g. 1000) and a High value (e.g. 2000).
If an SAP system has 100,000 Sales Orders, and an ABAP report is required to process all of them, then this range of Sales Orders can be broken down into, for example, 100 intervals, each representing 1000 Sales Orders. The list of 100 intervals might look something like:
The concept of an Interval Object is used to create these Intervals for use by an MDR program this is where an object such as a Sales Orders are broken down before the MDR program is run. As part of the definition of an MDR program, an Interval Object is selected. This refers directly to the type of Intervals the program uses, for example, some Interval Objects that are provided with MDR are:
- Sales Order
- Business Partner
- Contract Account
The generation of Interval Objects is detailed in the Setting Up MDR Interval Generation section.
Intervals can also be built at runtime, this is programmed into the MDR program, this is useful where you have complex intervals or need to define the number of intervals down to a smaller size, a subset of materials for example, this concept is detailed in the Advanced Concepts Dynamic Interval Generation section.
Post your comment on this topic.