11.17.1 Reason for reorganizing a system table
When an HADB user executes an SQL statement or command on a base table, the relevant system table (base table) might be automatically updated by the HADB server. During this operation, invalid row data might increase in the system table (base table). Invalid row data is not deleted automatically from the disk.
-
If a row in a system table (base table) is deleted, the target row data becomes invalid.
-
If a row in a system table (base table) is updated, the row data after update is added as a new row. The row data before update becomes invalid.
If invalid row data continues to increase in a system table (base table), free space of the disk that stores the system table (base table) becomes insufficient. Eventually, you will not be able to perform operations that cause update of the system table (base table). For example, you will not be able to import data by using background import or merge chunks.
Therefore, you need to regularly reorganize a system table (base table) to delete invalid row data. To reorganize a system table (base table), execute the adbreorgsystemdata command.
The following table describes the timing of when invalid row data increases in a system table (base table).
No. |
Type of a system table (base table) |
Operation that increases invalid row data in a system table (base table) |
---|---|---|
1 |
|
|
2 |
STATUS_CHUNKS |
|
3 |
STATUS_SYNONYM_DICTIONARIES |
Registering, updating, or deleting a synonym dictionary by the adbsyndict command |
- #
-
When cost information is collected for the processing-target table or index.