How can I let my report developers create and publish reports and ensure that these reports do not have a negative performance impact on my production database & UI?
We have created a couple methods to protect the UI from Report performance issues.
- Birt Reporting Only Server (BROS) – With BROS, we force Immediate & Scheduled reports to be executed on a separate (non-UI) Maximo server. Page 10 V7 Report Performance Considerations http://www-01.ibm.com/support/docview.wss?uid=swg21305031
- Configuring a secondary database. Reports are configured to point to a secondary database. http://www-01.ibm.com/support/docview.wss?uid=swg21304936 With this option, you can configure all reports or some reports to point to a secondary reporting database.
To configure some reports, (This leaves the Out of Box reports, including update reports pointing at Production) (See Page 8 of the Guide)
These users (or report developers) will have the Eclipse Report Designer installed locally. The Designer includes a properties file, mxreportdatasources.properties that points the report to the appropriate database. The default points to the Maximo primary db. This can be changed from the default, to a secondary database.
See page 9 of the guide for the complete data source entry.
After making the one time change in the properties file, each report will need to point to the new data source. Page 12.
<script-data-source name=”maximoDataSource” becomes <script-data-source name=”external”
Do my users have to make this change with every report? Yes, but if you edit the report templates to point to the correct datasource, each new report will automatically point to the correct Datasource.
Finally, you will need to tell Maximo about the new secondary database and datasource. This is done under Report Admin, Configure Data Sources.
So, all reports uploaded by these users will be loaded to the Production database, but will report from the secondary (external) database.
You will need to provide these report writers with the following.
- An mxreportdatasources .properties file that points to the secondary database.
- An updated set of report templates that point to the secondary datasource.
Is there any way that these users can upload a report that points to the Production database?
To upload a report that point to production, these users would have to upload an existing report that points to prod or modify a new report so that it points to ‘maximoDataSource’. So it remains possible that a user could point a report to Production, but this would have to be intentional.
So, at this point, we have a strategy to create reports that will point to a secondary database. To take the remaining pressure off of the UI Server, you need to enable the BROS server.
The BROS server is just another Maximo server pointing at the same primary database. Any immediate or scheduled reports will run on this server. The UI server will still host QBR report Previews and any Direct Print reports.
#1 moves the report overhead off of the UI server, but still points to the Prod db.
#2 Points the custom reports at the secondary db, but leaves report processing on the UI.
Using both #1 & #2 ..
- Causes all reports to run on a BROS server ( with 7.5.0.x, Direct Print & QBR previews will still happen on the UI)
- Points all the custom reports to the Secondary db, All OOB reports go to primary db.