Exemples de filtrage des données exportées - Amazon Neptune

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Exemples de filtrage des données exportées

Voici des exemples illustrant les méthodes de filtrage des données exportées.

Filtrage de l'exportation des données du graphe de propriétés

Exemple d'utilisation de scope pour exporter uniquement les arêtes

{ "command": "export-pg", "params": { "endpoint": "(your Neptune endpoint DNS name)", "scope": "edges" }, "outputS3Path": "s3://(your Amazon S3 bucket)/neptune-export" }

Exemple d'utilisation de nodeLabels et edgeLabels pour exporter uniquement les nœuds et les arêtes dotés d'étiquettes spécifiques

Le paramètre nodeLabels de l'exemple suivant indique que seuls les nœuds dotés d'une étiquette Person ou Post doivent être exportés. Le paramètre edgeLabels indique que seules les arêtes dotées d'une étiquette likes doivent être exportées :

{ "command": "export-pg", "params": { "endpoint": "(your Neptune endpoint DNS name)", "nodeLabels": ["Person", "Post"], "edgeLabels": ["likes"] }, "outputS3Path": "s3://(your Amazon S3 bucket)/neptune-export" }

Exemple d'utilisation de filter pour exporter uniquement des nœuds, des arêtes et des propriétés spécifiés

Dans cet exemple, l'objet filter exporte les nœuds country avec leurs propriétés type, code et desc, ainsi que les arêtes route avec leurs propriétés dist.

{ "command": "export-pg", "params": { "endpoint": "(your Neptune endpoint DNS name)", "filter": { "nodes": [ { "label": "country", "properties": [ "type", "code", "desc" ] } ], "edges": [ { "label": "route", "properties": [ "dist" ] } ] } }, "outputS3Path": "s3://(your Amazon S3 bucket)/neptune-export" }

Cet exemple utilise gremlinFilter.

Cet exemple utilise gremlinFilter pour exporter uniquement les nœuds et les arêtes créés après le 10/10/2021 (c'est-à-dire avec une propriété created dont la valeur est ultérieure au 10/10/2021) :

{ "command": "export-pg", "params": { "endpoint": "(your Neptune endpoint DNS name)", "gremlinFilter" : "has(\"created\", gt(datetime(\"2021-10-10\")))" }, "outputS3Path": "s3://(your Amazon S3 bucket)/neptune-export" }

Cet exemple utilise gremlinNodeFilter.

Cet exemple utilise gremlinNodeFilter pour exporter uniquement les nœuds supprimés (nœuds dotés d'une propriété booléenne deleted dont la valeur est true) :

{ "command": "export-pg", "params": { "endpoint": "(your Neptune endpoint DNS name)", "gremlinNodeFilter" : "has(\"deleted\", true)" }, "outputS3Path": "s3://(your Amazon S3 bucket)/neptune-export" }

Cet exemple utilise gremlinEdgeFilter .

Cet exemple utilise gremlinEdgeFilter pour exporter uniquement les arêtes ayant une propriété numérique strength dont la valeur est 5 :

{ "command": "export-pg", "params": { "endpoint": "(your Neptune endpoint DNS name)", "gremlinEdgeFilter" : "has(\"strength\", 5)" }, "outputS3Path": "s3://(your Amazon S3 bucket)/neptune-export" }

Combinaison de filter, gremlinNodeFilter, nodeLabels, edgeLabels et scope

Dans cet exemple, l'objet filter exporte les éléments suivants :

  • Nœuds country avec leurs propriétés type, code et desc

  • Nœuds airport avec leurs propriétés code, icao et runways

  • Arêtes route avec leur propriété dist

Le paramètre gremlinNodeFilter filtre les nœuds afin que seuls ceux dont la propriété code commence par A soient exportés.

Les paramètres nodeLabels et edgeLabels limitent davantage la sortie, de sorte que seuls les nœuds airport et les arêtes route sont exportés.

Enfin, le paramètre scope élimine les arêtes lors de l'exportation, ce qui ne laisse que les nœuds airport désignés dans la sortie.

{ "command": "export-pg", "params": { "endpoint": "(your Neptune endpoint DNS name)", "filter": { "nodes": [ { "label": "airport", "properties": [ "code", "icao", "runways" ] }, { "label": "country", "properties": [ "type", "code", "desc" ] } ], "edges": [ { "label": "route", "properties": [ "dist" ] } ] }, "gremlinNodeFilter": "has(\"code\", startingWith(\"A\"))", "nodeLabels": [ "airport" ], "edgeLabels": [ "route" ], "scope": "nodes" }, "outputS3Path": "s3://(your Amazon S3 bucket)/neptune-export" }

Filtrage de l'exportation des données RDF

Utilisation de rdfExportScope et sparql pour exporter des arêtes spécifiques

Cet exemple exporte les triplets dont le prédicat est <http://kelvinlawrence.net/air-routes/objectProperty/route> et dont l'objet n'est pas un littéral :

{ "command": "export-rdf", "params": { "endpoint": "(your Neptune endpoint DNS name)", "rdfExportScope": "query", "sparql": "CONSTRUCT { ?s <http://kelvinlawrence.net/air-routes/objectProperty/route> ?o } WHERE { ?s ?p ?o . FILTER(!isLiteral(?o)) }" }, "outputS3Path": "s3://(your Amazon S3 bucket)/neptune-export" }

Utilisation namedGraph pour exporter un seul graphe nommé

Cet exemple exporte des triplets appartenant au graphe nommé < http://aws.amazon.com/neptune/vocab/v01/ DefaultNamedGraph > :

{ "command": "export-rdf", "params": { "endpoint": "(your Neptune endpoint DNS name)", "rdfExportScope": "graph", "namedGraph": "http://aws.amazon.com/neptune/vocab/v01/DefaultNamedGraph" }, "outputS3Path": "s3://(your Amazon S3 bucket)/neptune-export" }