Performance Tuning Guide - EMC Community Network
Performance Tuning Guide - EMC Community Network
Performance Tuning Guide - EMC Community Network
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Designing Reports<br />
• Use database materialized views for reports with complex queries that require joins between<br />
tables or calculations of the data. The database calculates views more effectively and quicker<br />
than the report engine.<br />
• Use Crystal Reports to create data analysis reports, such as pivoting, that require repetitive<br />
filtering of data. For these types of reports, export report data to a .csv file and use tools such<br />
as Microsoft Excel to generate pivot reports.<br />
• Design performance sensitive reports in a separate dashboard so they do not affect response<br />
time for the entire dashboard.<br />
Modifying the number of records returned in a results<br />
set<br />
The number of records returned for a report can be increased or decreased by modifying the maxRows<br />
parameter in the jdbc-config.xml configuration file. Controlling the number of records retrieved<br />
is especially important for reporting, since large results sets can negatively affect system performance<br />
and lead to an out-of-memory error. The BAM server returns 1,000 rows by default.<br />
Note: When set to zero, the JDBC driver controls the maximum number of returned records.<br />
Working across large data sets<br />
To filter or sort across columns in different tables with large data sets, create a table that contains<br />
columns from all the sorted or filtered tables. Create an index on that table. <strong>Performance</strong> improves at<br />
the expense of storage and update overhead.<br />
Using aggregation<br />
Report summaries can be calculated from execution tables each time a report loads into the dashboard<br />
or calculated in advance and saved in the aggregation table. Report summaries generated from<br />
the aggregation table use less memory and provide shorter response time than report summaries<br />
generated from execution tables, especially for execution tables containing thousands of rows of data.<br />
Aggregation tables can be created for standard aggregation entities, custom entities, and business<br />
data (SDTs and package objects).<br />
Aggregating high volume data tables<br />
Creating summaries of execution data in aggregation tables requires system resources and can<br />
affect performance in high volume systems processing thousands of instances per day. In such<br />
cases, aggregate report data every 5 minutes to strike a balance between providing real-time report<br />
data, minimizing the system impact of generating reports directly from the execution tables, and<br />
minimizing the system impact of running aggregation reports against large sets of report data.<br />
<strong>EMC</strong> Documentum xCP 1.0 <strong>Performance</strong> <strong>Tuning</strong> <strong>Guide</strong> 61