Sign inSign up

marcosvile/notebook-graph

By marcosvile

•Updated 12 months ago

Ferramenta Docker/Jupyter para visualização interativa de grafos do Amazon Neptune (OpenCypher).

Image
Developer tools
Data science
Databases & storage
0

884

marcosvile/notebook-graph repository overview

⁠Visualizador Interativo de Grafo com Neptune e Jupyter

Repo: https://github.com/marcosvile/notebook-graph/blob/main/README.md⁠

Este projeto fornece um ambiente Docker pré-configurado para conectar-se a um banco de dados Amazon Neptune e visualizar grafos de forma interativa usando o JupyterLab e a extensão graph-notebook.

⁠Pré-requisitos

⁠1. Configuração do Ambiente

Antes de iniciar, você precisa configurar as credenciais da AWS. Existem duas opções:

⁠Opção A: Usar o AWS CLI (Recomendado)

Se você já tem o AWS CLI configurado, as credenciais serão carregadas automaticamente:

aws configure

Neste caso, você pode criar um arquivo .env vazio ou apenas com o endpoint do Neptune (opcional):

# Opcional: definir o endpoint do Neptune aqui
NEPTUNE_HOST="seu-cluster-endpoint.neptune.amazonaws.com"
⁠Opção B: Definir variáveis de ambiente manualmente

Crie um arquivo .env na raiz do projeto com suas credenciais:

# Credenciais da AWS
AWS_ACCESS_KEY_ID="SUA_AWS_ACCESS_KEY_ID"
AWS_SECRET_ACCESS_KEY="SUA_AWS_SECRET_ACCESS_KEY"
AWS_DEFAULT_REGION="us-east-1"

# Endpoint do Neptune (pode ser configurado no notebook também)
NEPTUNE_HOST="seu-cluster-endpoint.neptune.amazonaws.com"

Importante: Certifique-se de que as credenciais da AWS tenham as permissões necessárias para se conectar ao cluster Neptune.

⁠2. Como Executar o Ambiente

Você pode executar o ambiente de duas formas: construindo a imagem localmente com Docker Compose (ideal para desenvolvimento) ou usando a imagem pronta do Docker Hub.

⁠Opção 1: Construindo a Imagem Localmente (com Docker Compose)

Com o arquivo .env configurado, execute o seguinte comando na raiz do projeto:

docker-compose up --build

Este comando irá:

  1. Construir a imagem Docker com Python, JupyterLab e graph-notebook.
  2. Iniciar um container do JupyterLab.
  3. Mapear a porta 8888 do container para a porta 8888 da sua máquina.
  4. Carregar as variáveis de ambiente do arquivo .env.
⁠Opção 2: Usando a Imagem Publicada no Docker Hub

Se você não quiser construir a imagem localmente, pode usar a imagem publicada diretamente do Docker Hub.

Com arquivo .env:

docker run -p 8888:8888 --env-file .env marcosvile/notebook-graph:latest

Ou passando as variáveis diretamente:

docker run -p 8888:8888 \
  -e AWS_ACCESS_KEY_ID="sua-key" \
  -e AWS_SECRET_ACCESS_KEY="sua-secret" \
  -e AWS_DEFAULT_REGION="us-east-1" \
  marcosvile/notebook-graph:latest

Ou usando as credenciais do AWS CLI:

docker run -p 8888:8888 \
  -v ~/.aws:/root/.aws:ro \
  marcosvile/notebook-graph:latest

Após a inicialização (usando qualquer uma das opções), você verá um link no terminal para acessar o JupyterLab, semelhante a este:

http://127.0.0.1:8888/lab?token=...

Copie e cole este link no seu navegador.

⁠3. Explorando o Grafo

Dentro do JupyterLab, você encontrará o notebook visualize-graph.ipynb. Abra-o.

O notebook já contém as células necessárias para:

  1. Configurar a conexão: Ele usa as variáveis de ambiente para se conectar automaticamente ao seu cluster Neptune.
  2. Executar uma query de visualização: A célula com %%opencypher busca um subconjunto de nodes e relacionamentos e os exibe como um grafo interativo.

Basta executar as células na ordem para ver seu grafo. Sinta-se à vontade para modificar a query e explorar diferentes partes do seu modelo de dados.

Tag summary

Content type

Image

Digest

sha256:d134eddc4…

Size

245 MB

Last updated

12 months ago

docker pull marcosvile/notebook-graph