Inserindo grafos no mongodb e replicando no neo4j - parte 1

Neste post irei ensinar como inserir um dado do tipo grafo no mongodb e esse dado ser replicado no neo4j e conseguirmos visualizar o grafo gerado.
















Vamos aprender a realizar uma conexão entre o MongoDB e o Neo4j primeiramente qual a utilidade desse connector ?
  • Usar o H.A do mongodb, o neo4j possuí H.A porém somente na versão enterprise.
  • User Cypher para trabalhar com grafos.
  • Visualizar os grafos de uma forma visual com o neo4j por padrão o mongodb não possui uma visualização gráfica de dados no formato de grafos.
Estou utilizando um Ubuntu Server 16.0.4, para o neo4j funcionar precisamos instalar o java, primeiramente vamos instalar o java com os comandos abaixo:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer

Após instalar o java vamos adicionar o repositório do neo4j e instalar o mesmo na versão 3.3.2:
wget -O - https://debian.neo4j.org/neotechnology.gpg.key | sudo apt-key add -
echo 'deb http://debian.neo4j.org/repo stable/' | sudo tee -a /etc/apt/sources.list.d/neo4j.list
sudo apt-get update && sudo apt-get install neo4j=3.3.2

Após instalar o neo4j vamos alterar o listen_address e a autenticação do neo4j:
vim +54 /etc/neo4j/neo4j.conf
Descomentar as linhas:
dbms.connectors.default_listen_address=0.0.0.0
dbms.security.auth_enabled=false

Agora vamos verificar se o mesmo está funcionando, primeiramente vamos inciar o neo4j:
neo4j start

Após iniciar vamos acessar o browser e digitar o ip do nosso servidor na porta 7474, no meu caso 192.168.56.55:7474










Se apareceu a imagem acima, está tudo funcionando corretamente.

Agora vamos partir para a instalação do mongodb:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list
sudo apt-get update && sudo apt-get install mongodb-org -y
Agora vamos configurar o nosso replica set no mongodb, o connector do mongodb com o neo4j funciona somente se o mongodb estiver com o replica set configurado
vim /etc/mongod.conf
Primeiro vamos alterar o bind_ip:
bindIp: 0.0.0.0
Agora vamos configurar o nosso replicaSet com as configurações abaixo:
replication:
   replSetName: config02
sharding:
   clusterRole: configsvr
O seu arquivo deve ficar igual o arquivo abaixo:
# mongod.conf

# for documentation of all options, see:
#   http://docs.mongodb.org/manual/reference/configuration-options/

# Where and how to store data.
storage:
  dbPath: /var/lib/mongodb
  journal:
    enabled: true
#  engine:
#  mmapv1:
#  wiredTiger:

# where to write logging data.
systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log

# network interfaces
net:

  port: 27017
  bindIp: 0.0.0.0

# how the process runs
processManagement:
  timeZoneInfo: /usr/share/zoneinfo

#security:


#operationProfiling:

replication:
   replSetName: config02

sharding:
   clusterRole: configsvr
## Enterprise-Only Options:

#auditLog:

#snmp:

Após isso vamos criar o diretório /data/db
mkdir -p /data/db
chmod 777 /data/db
Para iniciar o nosso mongodb
service mongod start
Agora vamos entrar no shell do mongodb e inciar o replicaSet
rs.initiate()
Após realizar essa configuração o shell do mongo ficara parecido com a imagem abaixo:








Continuamos no próximo post...
Share:

Um comentário: