Router Pipeline Startup Is Slow (Doc ID 1562170.1)

Last updated on JULY 28, 2016

Applies to:

Oracle Communications Billing and Revenue Management - Version 7.3.1.0.0 to 7.5.0.0.0 [Release 7.3.1 to 7.5.0]
Information in this document applies to any platform.

Goal

On a customer system, it has been observed that the router pipeline is taking longer time to startup with increase in customer base. It used to take 10 mins with 250k accounts and it now takes around 1 hour with 5 million accounts.

One observation that was made during startup is that it launches the subsequent query 12 times (once per thread):


SELECT tag_au_uniqueness.login,
  tag_au_uniqueness.effective_t,
  tag_au_uniqueness.service_obj_type,
  tag_au_uniqueness.au_parent_obj_rev,
  tag_au_uniqueness.account_obj_db,
  tag_au_uniqueness.account_obj_id0,
  tag_au_uniqueness.au_parent_obj_id0,
  tag_au_uniqueness.poid_rev
  FROM au_uniqueness_t tag_au_uniqueness
  WHERE tag_au_uniqueness.service_obj_type IN
  ('/service/bill',
  '/service/sfr',
  '/service/sfr/adsl',
  '/service/sfr/common',
  '/service/sfr/postpaid',
  '/service/sfr/prepaid')
  AND tag_au_uniqueness.account_obj_id0 >= :1
  AND tag_au_uniqueness.account_obj_id0 ORDER BY tag_au_uniqueness.created_t ASC;

 

As there were many lines in the au_uniqueness_t table for the query to use the indexes, each query does a full table scan and takes an average of 20 minutes to process. Moreover, the queries wait on the same I/O, which increases the start-up time.

While testing the above query separately, by launching the query with more parallelism (as shown below), the query performance improved a lot :
     /*+ parallel(tag_au_uniqueness, 8) */

Is this the right way to improve the performance or are there other ways to improve ?

Solution

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms