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á.
Usando Node.js para se conectar a uma instância de banco de dados Neptune
Importante
Escolher a versão correta do driver Apache TinkerPop Gremlin é fundamental para a compatibilidade com a versão do motor Neptune. Usar uma versão incompatível pode resultar em falhas de conexão ou comportamento inesperado. Para obter informações detalhadas sobre compatibilidade de versões, consulteAcessar o grafo do Neptune com o Gremlin.
A seção a seguir mostra a execução de uma Node.js amostra que se conecta a uma instância de banco de dados Amazon Neptune e executa uma travessia do Gremlin.
Você deve seguir estas instruções em uma instância do Amazon EC2 na mesma nuvem privada virtual (VPC) que a instância de banco de dados do Neptune.
Antes de começar, faça o seguinte:
Verifique se a Node.js versão 8.11 ou superior está instalada. Se não estiver, baixe e instale a Node.js partir do Nodejs.org site
.
Para se conectar a Neptune usando Node.js
-
Insira o seguinte para instalar o pacote
gremlin-javascript:npm install gremlin -
Crie um arquivo denominado
gremlinexample.jse abra-o em um editor de texto. -
Copie o seguinte no arquivo
gremlinexample.js.your-neptune-endpointSubstitua pelo endereço da sua instância de banco de dados Neptune.Para obter informações sobre como localizar o endereço da instância de banco de dados do Neptune, consulte a seção Conectar-se a endpoints do Amazon Neptune.
const gremlin = require('gremlin'); const DriverRemoteConnection = gremlin.driver.DriverRemoteConnection; const Graph = gremlin.structure.Graph; dc = new DriverRemoteConnection('wss://your-neptune-endpoint:8182/gremlin',{}); const graph = new Graph(); const g = graph.traversal().withRemote(dc); g.V().limit(1).count().next(). then(data => { console.log(data); dc.close(); }).catch(error => { console.log('ERROR', error); dc.close(); }); -
Insira o seguinte comando para executar o exemplo:
node gremlinexample.js
O exemplo anterior retorna a contagem de um único vértice no gráfico usando a travessia g.V().limit(1).count().next(). Para consultar outro elemento, substitua-a por outra travessia do Gremlin com um dos métodos de término adequado.
nota
A parte final da consulta do Gremlin, next(), é necessária para enviar a travessia ao servidor para avaliação. Se você não incluir esse método ou outro método equivalente, a consulta não será enviada à instância de banco de dados do Neptune.
Veja a seguir exemplos de métodos que enviam a consulta para a instância de banco de dados Neptune:
toList()toSet()next()iterate()
Essas etapas do terminal se comportam de maneira diferente no modo script e no modo bytecode. Para obter a lista canônica das etapas do terminal e detalhes sobre como elas afetam as transações, consulte. Testar o código do Gremlin no contexto em que você o implantará
Use iterate() quando não precisar dos resultados de suas consultas (por exemplo, mutações), pois isso economiza custos de serialização.
Importante
Este é um Node.js exemplo independente. Se você planeja executar um código como esse em uma AWS Lambda função, consulte Exemplos de função do Lambda para obter detalhes sobre o uso JavaScript eficiente em uma função Lambda do Neptune.
Autenticação do IAM
O Neptune oferece suporte à autenticação do IAM para controlar o acesso ao seu cluster de banco de dados. Se você tiver a autenticação do IAM ativada, precisará usar a assinatura Signature versão 4 para autenticar suas solicitações. Para obter instruções detalhadas e exemplos de código para se conectar a partir de um JavaScript cliente, consulteConectando-se aos bancos de dados do Amazon Neptune usando a autenticação IAM com o Gremlin JavaScript.