データ、スキーマ、グラフの削除

Gremlin Consoleを使用してデータ、スキーマ、グラフを削除する方法。

データ、スキーマ、グラフは、Gremlin Consoleで次のように削除できます。

手順

データの削除

  • グラフとスキーマを削除せずにすべてのデータを削除するには、頂点をすべて削除します。
    gremlin> g.V().drop().iterate()
  • すべてのauthor頂点など、特定のデータを削除するには、削除対象の頂点をdrop探索ステップとともに識別します。
    gremlin> g.V().hasLabel('author').drop()
    注: 前述のコマンドを使用して非常に多くの頂点を削除すると、DSE Graphによって警告メッセージが表示される場合があります。その場合は、drop()コマンドを次のように変更します。
    g.V().hasLabel('author').limit(100).drop()
    すべての頂点が削除されるまで、この操作を繰り返します。
  • エッジ(ratedなど)からプロパティ・キーを削除するには、drop探索ステップとともに、エッジとプロパティ・キーstarsを識別します。
    gremlin> g.E().hasLabel('rated').properties('stars').drop()

    このクエリーでは、ratedというエッジ・ラベルを持つすべてのエッジのプロパティ・キーstarsが削除されます。

    gremlin> g.E().hasLabel('rated').properties('stars').valueMap()
    は、値を返しません。
    警告: DSE 5.0.5より前のバージョンで作成されたデータの場合、プロパティ・キーの削除時にエッジ・プロパティとともにすべてのエッジが削除されることがあります。「エッジ・プロパティを削除するとエッジが削除される」を参照してください。

スキーマの削除

  • グラフを削除せずにスキーマとすべてのデータを削除するには、clear()ステップを使用します。その後でdescribe()を実行すると、スキーマが削除されたことを確認できます。スキーマが削除されたら、新しいスキーマとデータをグラフに読み込むことができます。
    gremlin> schema.clear()
    ==>null
    重要: 頂点ラベルなどの一部のスキーマ要素については、個別に変更したり、削除したりすることが現時点ではできません。スキーマに変更を加える必要がある場合は、前述したとおり、スキーマ全体を削除して再作成してください。

インデックスの削除

  • スキーマからインデックス(byMealなど)を削除するには、インデックスを名前で識別します。describe()を使用して、目的の頂点ラベルのインデックスをすべて調べます。
    gremlin> schema.vertexLabel('meal').describe()
    ==>schema.vertexLabel('meal').properties("name").create()
    schema.vertexLabel('meal').index('byMeal').materialized().by('name').add()
  • 頂点ラベルとインデックス名を使用して、インデックスを削除します。describe()を再び実行すると、インデックスが削除されたことを確認できます。
    gremlin> schema.vertexLabel('meal').index('byMeal').remove()
    ==>null

グラフの削除

  • グラフを削除すると、グラフだけでなく、スキーマとデータもすべて消去されます。グラフを削除するには、システム・コマンドが必要です。システム・コマンドを使用するには、グラフ探索の別名を消去する必要があります。構成リセットにより別名が消去されます。
    gremlin> :remote config alias reset
    注: グラフに別名が付いていると、システム・コマンドにアクセスできません。
    ==>Aliases cleared
  • 任意:グラフ名がわからない場合は、どのグラフが存在しているかを検証します。
    gremlin> system.graphs()
    
    ==>food
  • 目的のグラフを削除します。
    gremlin> system.graph('food').drop()
    
    ==>null