グラフ・データの削除

データを削除(ドロップ)する方法。

データは次のように削除できます。

手順

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

    このクエリーでは、genderの値が「M」であるすべてのperson頂点の性別値が削除されます。

    gremlin> g.V().hasLabel('person').valueMap()
    ==>{gender=[F], name=[Julia Child]}
    ==>{gender=[F], name=[Patricia Curtan]}
    ==>{gender=[F], name=[Kelsie Kerr]}
    ==>{gender=[F], name=[Simone Beck]}
    ==>{gender=[F], name=[Alice Waters]}
    ==>{gender=[F], name=[Patricia Simon]}
    ==>{name=[James Beard]}
    ==>{name=[Fritz Streiff]}
    ==>{name=[Emeril Lagasse]}
  • エッジ(reviewedエッジなど)からプロパティ・キーを削除するには、drop探索ステップとともに、エッジとプロパティ・キーstarsを識別します。
    g.E().hasLabel('reviewed').properties('stars').drop()

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

    g.E().hasLabel('reviewed').properties('stars').valueMap()
    は、値を返しません。
    重要: スキーマ要素を削除する場合、エッジ・ラベルとメタプロパティのデータは、基になるデータベース・テーブルから常に削除されるとは限りません。頂点ラベルが削除された場合、その頂点ラベルを持つ頂点へのエッジ・データは引き続き存在しますが、探索時には除外されます。これらのエッジ・ラベルが再びグラフに追加されると、古いエッジデータが再び表示されます。これはメタプロパティに関しても同じです。メタプロパティがプロパティ・キーに追加されると、古いメタプロパティ・データが再び表示されます。このコマンドを使用して頂点を削除すると、頂点に関連付けられたエッジもすべて削除されます。削除されたエッジの反対側の終端にある頂点は残りますが、エッジとエッジ・プロパティは探索の対象外になります。
    警告: DSE 5.0.5より前のバージョンで作成されたデータの場合、プロパティ・キーの削除時にエッジ・プロパティとともにすべてのエッジが削除されることがあります。「エッジ・プロパティを削除するとエッジが削除される」を参照してください