Dropping data, schema, and graphs
In Gremlin console, how to drop (delete) data, schema, and graphs.
Data, schema, and graphs can be dropped in the Gremlin console as follows:
Procedure
Drop data
-
To drop all data without dropping a graph and schema, drop all vertices.
gremlin> g.V().drop().iterate()
-
To drop specific data, such as all
author
vertices, identify the vertices along with adrop
traversal step.gremlin> g.V().hasLabel('author').drop()
Note: If a very large number of vertices will be dropped with the command shown above, DSE Graph may complain. In that case, modify thedrop()
command in the following manner:
and repeat until all vertices are dropped.g.V().hasLabel('author').limit(100).drop()
-
To drop a property key from an edge, such as
rated
edges, identify the edges, the property keystars
along with adrop
traversal step.gremlin> g.E().hasLabel('rated').properties('stars').drop()
This query will drop the property key
stars
for all edges that have arated
edge label.
returns no values.gremlin> g.E().hasLabel('rated').properties('stars').valueMap()
Warning: For data created earlier than DSE 5.0.5, conditions exist that will drop all edges as well as the edge property during a property key drop. See Dropping edge property drops edges.
Drop schema
-
To drop the schema and all data without dropping the graph, use a
clear()
step. Runningdescribe()
after will verify that the schema is dropped. After the schema is dropped, new schema and data can be loaded to the graph.gremlin> schema.clear()
==>null
Important: Currently, certain schema elements such as a vertex label cannot be individually modified or removed. If a change to the schema is necessary, drop the whole schema as detailed above and recreate.
Drop index
-
To drop an index from the schema, such as the
byMeal
index, identify the index by name. Usedescribe()
to examine all indexes for the desired vertex label.gremlin> schema.vertexLabel('meal').describe()
==>schema.vertexLabel('meal').properties("name").create() schema.vertexLabel('meal').index('byMeal').materialized().by('name').add()
-
Using the vertex label and index name, remove the index. Running
describe()
again will verify that the index is removed.gremlin> schema.vertexLabel('meal').index('byMeal').remove()
==>null
Dropping a graph
-
Dropping a graph will clear all schema and data as well as deleting the graph.
A system command is required to drop a graph. In order to use system commands,
the graph traversal alias must be cleared. A configuration reset clears the
alias.
gremlin> :remote config alias reset
Note: System commands are not accessible when a graph is aliased.==>Aliases cleared
-
Optional: If unsure of the graph name, examine what graphs exist.
gremlin> system.graphs()
==>food
-
Drop the desired graph.
gremlin> system.graph('food').drop()
==>null