Usar o Python para conectar-se a uma instância de banco de dados do Neptune - 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á.

Usar o Python para conectar-se a uma instância de banco de dados do 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 descreve a execução de um exemplo do Python que se conecta a uma instância de banco de dados do Amazon Neptune e executa um percurso 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:

  • Baixe e instale o Python 3.6 ou posterior do site Python.org.

  • Verifique se você tem o pip instalado. Se não tiver o pip ou não tiver certeza, consulte Do I need to install pip? (Preciso instalar pip?) na pip documentação.

  • Se sua instalação do Python não o tiver, faça download de futures da seguinte forma: pip install futures

Como conectar-se ao Neptune usando o Python
  1. Insira o seguinte para instalar o pacote gremlinpython:

    pip install --user gremlinpython
  2. Crie um arquivo denominado gremlinexample.py e abra-o em um editor de texto.

  3. Copie o seguinte no arquivo gremlinexample.py. your-neptune-endpointSubstitua pelo endereço do seu cluster de banco de dados Neptune your-neptune-port e pela porta do seu cluster de banco de dados Neptune (padrão: 8182).

    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.

    O exemplo abaixo demonstra como se conectar ao Gremlin Python.

    import boto3 import os from botocore.auth import SigV4Auth from botocore.awsrequest import AWSRequest from gremlin_python.driver.driver_remote_connection import DriverRemoteConnection from gremlin_python.process.anonymous_traversal import traversal database_url = "wss://your-neptune-endpoint:your-neptune-port/gremlin" remoteConn = DriverRemoteConnection(database_url, "g") g = traversal().withRemote(remoteConn) print(g.inject(1).toList()) remoteConn.close()
  4. Insira o seguinte comando para executar o exemplo:

    python gremlinexample.py

    A consulta do Gremlin no final deste exemplo retorna os vértices (g.V().limit(2)) em uma lista. Em seguida, essa lista é impressa com a função print padrão do Python.

    nota

    A parte final da consulta do Gremlin, toList(), é 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.

    Os seguintes métodos enviam a consulta à instância de banco de dados do Neptune:

    • toList()

    • toSet()

    • next()

    • nextTraverser()

    • iterate()

    O exemplo anterior retorna os primeiros dois vértices do gráfico usando a travessia g.V().limit(2).toList(). Para consultar outro elemento, substitua-a por outra travessia do Gremlin com um dos métodos de término adequado.

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 cliente Python, consulte. Conectar-se a bancos de dados do Amazon Neptune usando a autenticação do IAM com Gremlin Python