Profiling

This article provides an overview of the profiling feature in Exasol.

Exasol uses a cost-based query optimizer that computes query execution plans based on automatically gathered statistics that inform the optimizer about database objects involved in the query.

The optimizer is constantly improved when new database versions are developed, and it will usually find an optimal plan. However, the optimizer is not perfect and may under rare circumstances make a wrong decision. Performance may also be affected negatively by factors that the optimizer cannot influence, such as data distribution or hardware performance issues. In these cases, query profiling can help you find the root causes of performance problems.

Profiling can be enabled and disabled on the session layer using ALTER SESSION or on the system layer using ALTER SYSTEM, and will write profile information to the system tables EXA_USER_PROFILE_LAST_DAY and EXA_DBA_PROFILE_LAST_DAY, correspondingly.

Enabling profiling on the system level may impact performance. We recommend that you only enable profiling for individual sessions, or enable it only temporarily on the system level for troubleshooting.

For more information about how to enable and use profiling, see Profiling.