CLEAR SPACE¶
CLEAR SPACE
deletes the vertices and edges in a graph space, but does not delete the graph space itself and the schema information.
Permission requirements¶
Only the God role has the permission to run CLEAR SPACE
.
Caution¶
- Once cleared, the data CANNOT be recovered. Use
CLEAR SPACE
with caution. CLEAR SPACE
is not an atomic operation. If an error occurs, re-runCLEAR SPACE
to avoid data remaining.- The larger the amount of data in the graph space, the longer it takes to clear it. If the execution fails due to client connection timeout, increase the value of the
storage_client_timeout_ms
parameter in the Graph Service configuration. -
During the execution of
CLEAR SPACE
, writing data into the graph space is not automatically prohibited. Such write operations can result in incomplete data clearing, and the residual data can be damaged.Enterpriseonly
- The NebulaGraph Community Edition does not support blocking data writing while allowing
CLEAR SPACE
. - The NebulaGraph Enterprise Edition supports blocking data writing by setting
VARIABLE read_only=true
before runningCLEAR SPACE
. After the data are cleared successfully, runSET VARIABLE read_only=false
to allow data writing again.
- The NebulaGraph Community Edition does not support blocking data writing while allowing
Syntax¶
CLEAR SPACE [IF EXISTS] <space_name>;
Parameter/Option | Description |
---|---|
IF EXISTS |
Check whether the graph space to be cleared exists. If it exists, continue to clear it. If it does not exist, the execution finishes, and a message indicating that the execution succeeded is displayed. If IF EXISTS is not set and the graph space does not exist, the CLEAR SPACE statement fails to execute, and an error occurs. |
space_name |
The name of the space to be cleared. |
Example:
CLEAR SPACE basketballplayer;
Data reserved¶
CLEAR SPACE
does not delete the following data in a graph space:
- Tag information.
- Edge type information.
- The metadata of native indexes and full-text indexes.
The following example shows what CLEAR SPACE
deletes and reserves.
# Enter the graph space basketballplayer.
nebula [(none)]> use basketballplayer;
Execution succeeded
# List tags and Edge types.
nebula[basketballplayer]> SHOW TAGS;
+----------+
| Name |
+----------+
| "player" |
| "team" |
+----------+
Got 2 rows
nebula[basketballplayer]> SHOW EDGES;
+----------+
| Name |
+----------+
| "follow" |
| "serve" |
+----------+
Got 2 rows
# Submit a job to make statistics of the graph space.
nebula[basketballplayer]> SUBMIT JOB STATS;
+------------+
| New Job Id |
+------------+
| 4 |
+------------+
Got 1 rows
# Check the statistics.
nebula[basketballplayer]> SHOW STATS;
+---------+------------+-------+
| Type | Name | Count |
+---------+------------+-------+
| "Tag" | "player" | 51 |
| "Tag" | "team" | 30 |
| "Edge" | "follow" | 81 |
| "Edge" | "serve" | 152 |
| "Space" | "vertices" | 81 |
| "Space" | "edges" | 233 |
+---------+------------+-------+
Got 6 rows
# List tag indexes.
nebula[basketballplayer]> SHOW TAG INDEXES;
+------------------+----------+----------+
| Index Name | By Tag | Columns |
+------------------+----------+----------+
| "player_index_0" | "player" | [] |
| "player_index_1" | "player" | ["name"] |
+------------------+----------+----------+
Got 2 rows
# ----------------------- Dividing line for CLEAR SPACE -----------------------
# Run CLEAR SPACE to clear the graph space basketballplayer.
nebula[basketballplayer]> CLEAR SPACE basketballplayer;
Execution succeeded
# Update the statistics.
nebula[basketballplayer]> SUBMIT JOB STATS;
+------------+
| New Job Id |
+------------+
| 5 |
+------------+
Got 1 rows
# Check the statistics. The tags and edge types still exist, but all the vertices and edges are gone.
nebula[basketballplayer]> SHOW STATS;
+---------+------------+-------+
| Type | Name | Count |
+---------+------------+-------+
| "Tag" | "player" | 0 |
| "Tag" | "team" | 0 |
| "Edge" | "follow" | 0 |
| "Edge" | "serve" | 0 |
| "Space" | "vertices" | 0 |
| "Space" | "edges" | 0 |
+---------+------------+-------+
Got 6 rows
# Try to list the tag indexes. They still exist.
nebula[basketballplayer]> SHOW TAG INDEXES;
+------------------+----------+----------+
| Index Name | By Tag | Columns |
+------------------+----------+----------+
| "player_index_0" | "player" | [] |
| "player_index_1" | "player" | ["name"] |
+------------------+----------+----------+
Got 2 rows (time spent 523/978 us)
Last update:
March 13, 2023