Distributing query workload by deploying multiple Lifecycle Query Engine servers
By deploying multiple Lifecycle Query Engine instances across a set of servers,
you can distribute the query workload and improve performance and scalability. Each Lifecycle Query Engine instance requires its own relational database and contains its own independent
triple store index, which indexes the tracked resource set (TRS) data providers that you specify on
the Lifecycle Query Engine administration page. Configure each Lifecycle Query Engine
instance to index the same set of data providers.
Because each Lifecycle Query Engine instance indexes data providers separately, adding additional Lifecycle Query Engine instances puts extra load on your other applications. You should deploy as few
Lifecycle Query Engine instances as possible to handle the normal query workload. Consider
improving the performance of an existing Lifecycle Query Engine instance by adding additional
memory or CPUs instead, because it does not increase the load on the data providers. If you deploy
additional Lifecycle Query Engine instances, consider increasing the memory or number of CPUs
for the data providers to handle the increased load.
About this task
- When you upgrade the application, you must stop all the servers and upgrade each one separately. See Migrating Lifecycle Query Engine.
- Since the different Lifecycle Query Engine servers have their own independent TRS feeds, it is possible that one Lifecycle Query Engine server might have a different set of data, for a certain time period, compared to the other Lifecycle Query Engine server. Load balancing might have a report query run against the first Lifecycle Query Engine server with data set 1 and then later against the second Lifecycle Query Engine server with data set 2. If data set 1 and data set 1 are not the same, the report results are different. Typically, the two data sets are different for a short period of time.
Procedure
What to do next
Step 1. Set up the first Lifecycle Query Engine server
Procedure
Step 2. Set up additional servers
You will need a backup from your original Lifecycle Query Engine server to configure additional servers. To configure an Lifecycle Query Engine backup schedule, see Backing up and restoring Lifecycle Query Engine.
A backup contains all the type system model in Lifecycle Query Engine and a copy of the indexed data. You can use the backup files to install another Lifecycle Query Engine server that has a copy of the indexed data.
Procedure
Step 3. Set up a load balancer
After you set up the Lifecycle Query Engine nodes, you must set up a load balancer
to handle the query workload.