A minor compaction consists of two processes: a mini compaction and a major compaction.
Mini compaction
When the size of a MemTable exceeds the specified threshold, data in the MemTable is flushed to a SSTable named Mini SSTable to release the memory space. This process is called a mini compaction.
The mini compaction is a process of releasing memory space and data logs. A frozen MemTable in memory is flushed to the disk to become a Mini SSTable, which serves as a checkpoint for data logs. After the mini compaction, the corresponding frozen MemTable and logs can be released.
Major compaction
As user data is written, the number of Mini SSTables increases. This means that more Mini SSTables need to be accessed during queries, which compromises the performance of queries. A major compaction is initiated to merge multiple Mini SSTables into one SSTable. This reduces the number of SSTables. If the number of Mini SSTables exceeds the specified threshold, the system automatically initiates a major compaction in the background.
SSTables are organized by layers. A minor compaction can be classified as follows based on the layering strategy:
L0 -> L0
A tiered compaction merges several Mini SSTables into one Mini SSTable in the L0 layer.

L0 -> L1
A level compaction merges several Mini SSTables and a Minor SSTable into one Minor SSTable in the L1 layer.

Triggers
A minor compaction can be triggered automatically or manually.
When the memory usage of active MemStores of a tenant reaches freeze_trigger_percentage * memstore_limit (where memstore_limit = tenant memory * memstore_limit_percentage), the system automatically triggers a freeze (a pre-minor compaction action) and then schedules a minor compaction.
You can also manually trigger a minor compaction by using the following O&M command.
Note
The memstore_limit_percentage parameter specifies the percentage of total available memory for a tenant that can be used by MemStores. For more information, see memstore_limit_percentage.
Here are some examples:
Minor compaction at the cluster level
Minor compaction initiated for the
systenantobclient> ALTER SYSTEM MINOR FREEZE TENANT = sys;Minor compaction initiated for all user tenants
obclient> ALTER SYSTEM MINOR FREEZE TENANT = all_user;Minor compaction initiated for all META tenants
obclient> ALTER SYSTEM MINOR FREEZE TENANT = all_meta;
Minor compaction at the tenant level
obclient> ALTER SYSTEM MINOR FREEZE TENANT= prod_tenant;
References
For more information about minor compactions, see Minor compaction.
