Multithreading and Tables for Subscription Service

Multithreading helps improve the performance of Subscription Service, but the improvement is affected by what table structures are selected for the service. You have two table structure options: a single table and a parent-child table.

The table structures affect the performance of Subscription Service with multithreading in the following ways:
  • If a single table structure is used, because only one table is concerned, multithreading helps improve the performance.
  • If a parent-child table structure is used, the tables form a tree. That is, a table is either the parent of some of the rest tables or a child of another table, or both. In this case, the performance improvement might be minimal. This is because a thread accesses tables in the exclusive mode for data integrity. As a result, a table currently being processed by a thread is inaccessible to other threads. This table lock must be released by another thread before the table can be used, negating any multithreading advantages on the adapter side.

    Other factors also affect the performance of Subscription Service with multiple tables, such as the number of selected tables, the number of table columns, and the level of the hierarchy of a table tree.