Home » Resources » Articles-Ebooks » Improve Output Document Management Performance

Background

Output Management empowers IT and business users to achieve operational efficiency by enhancing and distributing various reports and business documents generated by ERP systems. This efficiency is created by bursting and routing ERP outputs intelligently. However, the system needs to be flexible and scalable enough to cope with the increasing volume of a growing business.

Depending on the volume and needs of your organization, and its centralized or decentralized geographical implementation, you can deploy an Output Management Solution (OMS) in various architectural setups that leverage available technologies such as parallel processing or load balancing.

In this whitepaper, we discuss factors influencing output management Solution implementations. We detail various architectural setups, and show which is best suited to an organization depending on factors such as, document volume, document size, and systems architecture configuration.

As an example, we deliver a benchmark specifying volumes processed by Compleo Suite, and demonstrate that by choosing appropriate technologies, such as parallel processing or load balancing, improves scalability and process efficiency.

Best methods for connecting Output Document Management to an ERP

Repetitive tasks, such as opening and closing connections with an ERP, are minimized when an output management system runs all the file processing tasks inside a single process. Thus the process Life Cycle is reduced.
The diagram below shows the lifecycle difference between the processes of the two methods.

Legend:

 

 

 

 

 

 

 

Running all tasks in the same process speeds up the life cycle since it does not close the connection to the file server each time a new file is received. This method is always faster than the successive method and highly recommended for high volume processing. If you have a high volume environment you must use an OMS that supports single Run-Time.

Best architectures to deploy an Output Document Management Solution

Volume of spools and the variable size of spools are factors to consider for implementing an appropriate architecture. Parallel processing, or load balancing, or both combined have to be carefully chosen according to the number and size of reports or business documents to be processed at a given time.

Which deployments strategy is best for an Output Document Management Solution : Parallel Processing, Load Balancing or a combination?

When handling similar size spool files, what is the recommended Architecture to handle workload increases?

Scenario 1: Straightforward mode. Single Outqueue with multiple files of similar size.

Scenario 2: Load Balancing mode. Single Outqueue with files of similar size.

Scenario 1 and 2 illustrate an Output Management System process, working against a single output queue, that enhances the document and sends it for printing. When processing 100 small spool files, 2 pages each, released from the same Output Queue simultaneously, performance increases linearly with each additional windows server running a separate Output Management System.

When handling various size spool files, what is the recommended Architecture to smooth documents delivery?

Scenario 3: Parallel Processing mode handling simultaneously large and small size spool.

 

Scenario 4: Parallel Processing mode. Single Folder with files of varying sizes.

Scenario 4 introduces a case of 100 small files (2 pages each) and 1 large file (1000 pages) processed from a windows file server.

Parallel processing increases the performance of the Output Management system since it can process several small spool files, while also processing the large spool file (which takes more than 1 minute to finish processing). Therefore, it’s imperative that the OMS has the capability to run parallel processing.

With this method, the order of generated output documents may not be the same as the order of the incoming files, so it may not be appropriated if document order is essential. Similar situation with scenario 5, a unique Output Device, or a Pool of Devices, releasing various sized reports.

Scenario 5: Multiple instances of Output Management System operating with a single OutQueue delivering multiple files of various sizes

Dedicating Output Devices for specific jobs, and processing each with a separate instance of an OMS, as illustrated in scenario 6, is an alternative approach.

Scenario 6: Dedicated OutQueues, one for rather large files, another for rather small files

How processing power (hardware) influences output document managementperformance
When using an OMS in parallel processing mode, the host system(s) processing power has a major impact on the solution’s performance.

Scenario 7: Speed depends on hardware configuration proportionally

Generally, an ERP can generate documents faster than an OMS can process them, improving the OMS hardware increases the performance. However, one must increase both processing power and the number of parallel processes for best results. Therefore, only an OMS that has the capability to run parallel processing can maximize hardware performance increase.

Benefit of more processors comes with numerous parallel processing:

  • 4 hardware processors and 1 OMS process is an inefficient use of processor resources
  • 1 hardware processor and 4 parallel processes is an inefficient use of OMS resources
  • 2 hardware processors and 4 parallel processes is efficient use of all resources
  • 4 hardware processors and 8 parallel processes is optimum use of all resources

If the OMS is running in a virtual environment, changing the number of processors available to the environment is a set up option.

How to maximise Output Document Management efficiency when servicing remote locations?

Globalization and improvement in communication and information technologies has reduced the physical boundaries of an organization. Working efficiently with a remote site is now more important than ever. When using an external OMS at a remote site, the biggest concern is minimization of bandwidth usage.

Centralized OMS requires adjusted bandwidth

 

Having the OMS at one site and sending the documents to remote sites after processing, uses a lot of bandwidth because end PDF documents are bulkier in size (by a factor of 10) compared to spool files generated from an ERP.

Decentralized OMS saves bandwidth utilization

Bandwidth usage is optimized by deploying the OMS instance at each remote site. In such a scenario, the OMS must be capable of handling localizations effectively. This can be accomplished by using the “Resource Centre” which manages each site’s local resources from a central location.

By adopting this approach, you are optimizing the bandwidth utilization, by sending raw data spool files, which are small in size, to respective remote sites, to be processed by the OMS locally.

The decentralized OMS instance must have the ability to run as a Service on the local windows server, meaning that no user intervention is required when the host is restarted.

In order to manage and secure these remote processes, all predefined templates, or formatting procedures, must be stored in a central location and accessed once the OMS starts. Otherwise, over time, local processes could start to diverge.

COMPLEO SUITE V5 - BENCHMARK ANALYSIS AND RESULTS

Series of Compleo Suite V5 performance tests are being delivered with comments and recommendations. Some previously explained strategies are applied and results regarding Compleo Suite V5 illustrate configuration options.

Disclaimer: All the information given in this document related to Compleo Suite V5 was gathered under specific test conditions and is meant to be treated as a reference only. It does not engage the responsibility of the company in any form. The company is not liable to you for any loss, damage, cost or expense incurred or arising by reason of you using or relying on the information and whether caused by reason of any error, negligent act, omission or misrepresentation in the information or otherwise.

1.1 Processing time with one Supervisor

Compleo Supervisor has some in built-in functions like copying files to another location, creating a PDF from live spool files. You can also apply customized templates to generate business oriented end documents. In the sections below, we benchmark the performance of these functions. You can extrapolate the readings to make an estimation analysis as per your needs.

Scenario: Updating the Design and Generating a PDF file from a Spool file by using Compleo Suite Templates

Scenario: Updating the Design and Processing / Printing of Spool files by Compleo Supervisor

Table: Updating the Design and Printing files using Compleo Templates and directly using Compleo Supervisor.

Table: Printing files directly using Compleo Supervisor

Scenario: Updating the Design and Archiving files in Compleo Archivor

Table: Archiving flies using Compleo Supervisor

Scenario : Saving files in a local folder without updating the design

Table: Processing Spool files using Compleo Supervisor
Note: All OTF files used above are in SAPGOF format

Scenario : Generating an Excel workbook with Multiple Sheets

In this example, Compleo Supervisor picked up a file of 100 pages, 132 characters in width to export the contents into an excel workbook, of 880 KB, with 7 columns and 15 distinct sheets. Below is the table that gives the details of the time taken to execute this scenario.

Table : Number of Excel Files created by Compleo Supervisor using Compleo Templates

Original Spool

Final output dispatched in different sheets in Excel as per the Company name.

1.2 Parallel processing with Compleo Supervisor

This section compares the performance of Compleo Supervisor when running in parallel processing mode and when running in Load Balancing mode.

Compleo Suite’s flexibility is demonstrated by the two process modes that are available with Compleo Supervisor (automation module).

1. Run each task in a separate process (referred to as Runtime.exe) – Recommended for Parallel processing
2. Run all tasks in the same process (referred to as RuntimeSingle.exe) – Recommended for high volume processing

Parallel Processing v/s Normal Process on the same server

In this scenario, we supervised a folder with different spools files (big and small) and compared the performance when using “Run each task in a separate process” (referred to as parallel process) and “Run all tasks in the same process”. We ran a Layout Template on these files and updated the design of the final output before sending it to a printer.

Scenario: All documents have the same number of pages

You have 100 spool files (2 pages each) released at the same time in a folder.

Table : Difference between processing time when using parallel processing on files from the same Outqueue

Scenario: There is one document with more pages and others with same number of pages

You have a big spool file (1000 pages) and 99 small spool files (2 pages each) released at the same time in a folder.

Note: “Run all task in the same process” is used, we will process a combination of big and small spool files. Hence if we process 5 small spool files and 1 big spool, then only 5 spools are processed in a minute because the big spool file takes more than 1 minute to finish.

The table below compares the results:

Table: Difference between processing time when using parallel processing on files from different Outqueue

Conclusion:

1. From the first Scenario, we can conclude that, “Run all tasks in the same process”. Option is faster to process a large volume of spool files with similar number of pages.
2. From the second Scenario, we can conclude that, if you have a combination of big and small spool files to process, select “Run each task in a separate process” (Runtime = 2 or more).

1.3 Hardware dependence on Compleo Suite performance

Selecting the right hardware is the key to the success of an output management solution. With the current business volumes and the expected needs in the future, it is very important to select the right hardware to give you the optimum performance as per your needs.

Scenario: Run all task in the same process (Normal Mode)
Below is a graph that compares the performance of Compleo Suite as the number of processor cores are increased on the server that hosts Compleo Suite.

Conclusion: As can be clearly seen, increasing the number of cores increases the performance of Compleo Suite linearly.

Scenario: Run each task in a separate process (Parallel Processing)

Below is a graph that compares the performance of Compleo Suite as the number of processor cores are increased on the server that hosts Compleo Suite.

Conclusion: As can be clearly seen, increasing the number of cores increases the performance of Compleo Suite when using Parallel processes. So if you want the volume of documents processed by Compleo Suite to increase, you should increase the processor cores on the server that hosts Compleo Suite.

Recommendations

Conclusion:
Output Management solution is limited only by the Hardware that supports it.

Recommendations:
1. We recommend that you use a dedicated machine for running Compleo Supervisor.
2. We recommend that you run Supervisor as a service with an appropriate account with administrative rights on the server.
3. For increased performance, if the volume is very high, we recommend that you use multiple Supervisors.
4. Configure Compleo Supervisor in high availability architecture to avoid problems due to hardware/software failure.

Important Note:
Using Parallel processes will only be possible if you are not sharing resources between processes. If you have some resources that are being shared, then you will have sharing violations.

Tip:
Try to use auto incremental temporary file names/folder names/template names for excel templates etc...
Note: All the information given above was gathered under specific test conditions and is meant to be treated as a reference only. It does not engage the responsibility of the company in any form.

Appendix

Specific Test Conditions:
1. The ERP Server and the Server hosting the Output Management Solution were located on the same network under the same subnet.
2. The benchmark was carried out in a controlled environment with a hosting server dedicated to only the Output Management Solution.

Standard System Configuration:

ERP Spool Details:

1. All spool files (SAP, PC Folder, System I), used for the above tests contained 2 pages each.
2. For Scenario’s 1, 2 and 3:

a. Every output file had one image, one table (2 rows, 8 columns), one rectangle with Colour and
transparency, one Barcode and one external text zone added to the Original spool file from the ERP.
b. Original Spool used was as shown below

c. Final Output generated is as shown below

d. The average size of the final output PDF file was between 90KB and 100KB

Conclusion
The performance of a business document output management system depends primarily on the software’s ability to handle all necessary document types and sizes efficiently. However, as demonstrated by the benchmark figures provided, once this basic threshold is reached system performance can be enhanced by matching the system’s architecture to the organization’s needs. Document volumes, document sizes and distribution requirements are important considerations that help decide when and how to use techniques such as load balancing and parallel processing to optimize the system. A properly designed and optimized output management system can adjust to business requirements and ensure that the system remains responsive as the number and size of documents increases in support of a growing business.

About the Author

Ankit Baid has a Master in Engineering from the University of Southern California, Los Angeles. He is the Manager of Quality Assurance, Test and Documentation department at SYMTRAX and has over 8 years of experience in the IT industry.

Ankit also actively interacts with the Sales and Customer Services Department for APAC region which enables him to be in touch with the customers’ need and to develop deployment architectures for SYMTRAX solutions and recommend the best suited architecture as per the customer’s needs. He has been a part of many Benchmarking projects and his responsibilities allow him to provide benchmarks in accordance with the expected industry standards.