Concepts and Terminology

Before querying these workload profiling views, it’s important to understand the concepts behind the terminology used in each view’s schema.

Task

SingleStore is instrumented to divide its execution time into tasks. Workload profiling management views in the information schema report the resource usage of sets of tasks. The views differ mainly in that they report on different sets over different intervals of time.

Task Examples

  • A single query’s execution is instrumented with a task per partition, as well as a single task on the relevant aggregator.

  • A single garbage collection pass is instrumented with a single task.

  • A single replication pass against a database partition is instrumented with a single task.

  • Tasks may or may not be successful. For example, a query task which commits a transaction is successful, but a query task which encounters rollback is not.

Activity

An activity is a set of identical tasks.

All tasks associated with the same node ID, database, partition, and name comprise the same activity. The tasks in an activity can be considered to share or be instances of an activity.

In practice, tasks share an activity when they instrument multiple repetitions of the same recurring work.

Every activity has a type of either Query, Database, or System. Tasks in a database activity are those which can be associated with an individual database, but not with any individual query. Tasks in a system activity can be associated with neither.

Every activity has a name and an aggregator activity name. We say that an activity is high-level if its aggregator activity name is equal to its name.

If an activity is not high-level, then its aggregator activity name is the name of the high-level activity to which it contributes.

In practice, we report aggregator activity name in order to link per-partition query activities with the unique aggregator activity associated with their query. The actual name of these activities may not be the same on all nodes.

Activity Examples

  • All tasks instrumenting the same query against the same partition share an activity, which has Query type. Tasks instrumenting the query on different partitions have different activities.

  • All garbage collection pass tasks share an activity, which has System type.

  • All replication tasks against the same database partition share an activity, which has Database type.

  • All activities associated with a query have the same aggregator activity name, which is the name of the unique high-level activity associated with the query on the aggregator node.

Last modified: September 30, 2022

Was this article helpful?