Enabling FillDB parallel processing

On the BigFix Server, the FillDB process is responsible to run in a single thread the following activities.

  • Read the buffer directory content.
  • Parse the report, which includes:
    • Decrypting the encrypted reports.
    • Decompressing the compressed reports.
  • Store the report data in the database.
  • Replicate content from other DSA servers (optional).

An additional thread is responsible for performing the same type of processing for the reports returned by the BigFix Query processing.

The parallel processing is enabled by default during a fresh installation and upgrade according to the following rules:
  • If the machine has 6 to 9 cores, the parallelism (ParallelismEnabled) is enabled for normal reports by configuring 3 parsing threads and 3 database update threads.
  • If the machine has at least 10 cores, the parallelism (ParallelismEnabled and ParallelismEnabledForQuery) is enabled both for normal and for query reports by configuring for each of them 3 parsing threads and 3 database update threads for a total of 12 threads.
  • If the machine has less than 6 cores, the ParallelismEnabled and the ParallelismEnabledForQuery settings have 0 as their default values, and then parallelism is disabled.
You can manually enable or disable the FillDB parallel processing by configuring the following settings on the BigFix Server:
  • ParallelismEnabled
  • ParallelismEnabledForQuery
Once you enabled the FillDB parallel processing, you can configure its behavior by specifying the following settings on the BigFix Server:
  • NumberOfParsingThreads
  • NumberOfDBUpdatingThreads
  • MaxNumberOfReportsReadyForDB
  • MinNumberOfReportsReadyForDB
  • MaxNumberOfReportsInParsingQueue
  • NumberOfParsingThreadsForQuery
  • NumberOfDBUpdatingThreadsForQuery
  • MaxNumberOfQueryReportsReadyForDB
  • MinNumberOfQueryReportsReadyForDB
  • MaxNumberOfQueryReportsInParsingQueue
For more information about these settings, see Configuring parallel FillDB.
Run the following steps to activate changes on one or more of the settings specified above:
If the BigFix Server is installed on a Windows system:
  1. Stop the BES FillDB service.
  2. Update the values of the settings as appropriate in the Windows registry.
  3. Start the BES FillDB service
If the BigFix Server is installed on a Linux system:
  1. Stop besfilldb, for example systemctl stop besfilldb
  2. Stop besserver, for example systemctl stop besserver
  3. Update the values of the settings as appropriate in the besserver.config file.
  4. Start besserver, for example systemctl start besserver
  5. Start besfilldb, for example systemctl start besfilldb
Up to BigFix Version 11.0.1, for backward compatibility reasons, you can also run the command:
/etc/init.d/besfilldb stop|start
/etc/init.d/besserver stop|start