Exemplos de filtragem de dados exportados - Amazon Neptune

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Exemplos de filtragem de dados exportados

Veja alguns exemplos que ilustram formas de filtrar os dados exportados.

Filtrar a exportação de dados do grafo de propriedades

Exemplo de uso de scope para exportar somente bordas

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

Exemplo de uso de nodeLabels e edgeLabels para exportar somente nós e bordas com rótulos específicos

O parâmetro nodeLabels no exemplo a seguir especifica que somente nós com um rótulo Person ou Post devem ser exportados. O parâmetro edgeLabels especifica que somente bordas com o rótulo likes devem ser exportadas:

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

Exemplo de uso de filter para exportar somente nós, bordas e propriedades especificados

O objeto filter neste exemplo exporta nós country com as respectivas propriedades type, code e desc e também bordas route com as respectivas propriedades 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" }

Exemplo que usa gremlinFilter

Este exemplo usa gremlinFilter para exportar somente os nós e as bordas criados após 10/10/2021 (ou seja, com uma propriedade created cujo valor é maior que 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" }

Exemplo que usa gremlinNodeFilter

Este exemplo usa gremlinNodeFilter para exportar somente nós excluídos (nós com uma propriedade deleted booliana cujo valor é true):

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

Exemplo que usa gremlinEdgeFilter

O seguinte exemplo usa gremlinEdgeFilter para exportar somente as bordas com uma propriedade numérica strength cujo valor é cinco:

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

Combinando filter, gremlinNodeFilter, nodeLabels, edgeLabels e scope

O objeto filter neste exemplo exporta:

  • Nós country com as respectivas propriedades type, code e desc

  • Nós airport com as respectivas propriedades code, icao e runways

  • Bordas route com a respectiva propriedade dist

O parâmetro gremlinNodeFilter filtra os nós para que somente os nós com uma propriedade code cujo valor comece com A sejam exportados.

Os parâmetros nodeLabels e edgeLabels restringem ainda mais a saída para que somente nós airport e bordas route sejam exportados.

Por fim, o parâmetro scope elimina as bordas da exportação, o que deixa somente os nós airport designados na saída.

{ "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" }

Filtrar a exportação de dados do RDF

Usar rdfExportScope e sparql para exportar bordas específicas

Este exemplo exporta triplos cujo predicado é <http://kelvinlawrence.net/air-routes/objectProperty/route> e cujo objeto não é um literal:

{ "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" }

Usando namedGraph para exportar um único gráfico nomeado

Este exemplo exporta triplos pertencentes ao gráfico nomeado < 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" }