Neo4j 3.0 Novidades
O desenvolvimento do banco de dados gráfico deu um grande passo nesse mes (04/2016) evoluiu sua versão do 2.7.x para 3.0.0 com base em uma arquitetura completamente redesenhada, maior produtividade para desenvolvedor e uma ampla gama de implementações entre elas as principais novidades do Neo4j 3.0 são:
- Arquitetura completamente redesenhada removendo todos os limites anteriores sobre números de nós, relacionamentos e propriedades que podem ser armazenados e indexados.
- Linguagem de comunicação oficial por Bolt binary protocol, novo suporte para precedimentos armazenados em java juntos permitindo que desenvolvedores possa construir aplicações em diversas linguagens.
- Configuração simplificada e uma estrutura de implementação para implementar Neo4j local ou na nuvem.
O suporte às linguagens de programação foi um ponto forte nessa atualização, a equipe Neo4j se preocupou em manter um padrão para as diferentes linguagens assim o desenvolvedor não precisa se preocupar em como criar uma consulta para linguagem X ou como criar conexão para linguagem Y, os drivers não são compatível com todas as linguagens atuais o procedimento deve ocorrer naturalmente com o tempo assim espero. As linguagens que receberam os drivers são: Javascript, Python, .Net e Java.
Sistema de sincronização desenvolvido em especial para os desenvolvedores, possibilitando sincronizar seus scripts, quem nunca criou um script de consulta e depois de algum tempo ficou procurando em vários lugares sem esperança de encontrar, o sistema de SYNC chegou para resolver o problema de scripts perdido ou dificuldade de exporta todos os script para um projeto diferente, basta logar com a sua conta e seus dados vai sincronizar.
A documentação do neo4j também foi atualizada podendo ser acessada pelo link: http://neo4j.com/docs/developer-manual/3.0/, acessando o site: http://neo4j.com/docs/ você encontrar a documentação detalhada, inclusive o neo4j está fornecendo agora manual das linguagens em pdf’s únicos.
JavaScript:
Drive Conexão: https://github.com/neo4j/neo4j-javascript-driver
Manual Linguagem: http://neo4j.com/docs/pdf/neo4j-developer-manual-3.0-javascript.pdf
var driver = Graph.Database.driver("bolt://localhost");
var session = driver.session();
var result = session.run("MATCH (u:User) RETURN u.name");Python:
Drive de Conexão: https://github.com/neo4j/neo4j-python-driver
Manual Linguagem: http://neo4j.com/docs/pdf/neo4j-developer-manual-3.0-python.pdf
driver = Graph.Database.driver("bolt://localhost")
session = driver.session()
result = session.run("MATCH (u:User) RETURN u.name")Java:
Drive de Conexão:https://github.com/neo4j/neo4j-java-driver
Manual Linguagem: http://neo4j.com/docs/pdf/neo4j-developer-manual-3.0-java.pdf
Driver driver = GraphDatabase.driver( "bolt://localhost" );
try ( Session session = driver.session() ) {
StatementResult result = session.run("MATCH (u:User) RETURN u.name");
}
.NET:
Drive de Conexão: https://github.com/neo4j/neo4j-dotnet-driver
Manual Linguagem: http://neo4j.com/docs/pdf/neo4j-developer-manual-3.0-dotnet.pdf
using (var driver = GraphDatabase.Driver("bolt://localhost"))
using (var session = driver.Session())
{
var result = session.Run("MATCH (u:User) RETURN u.name");
}Conteúdo completo está disponível em:
http://neo4j.com/blog/neo4j-3-0-massive-scale-developer-productivity/
Instalando e Configurando Neo4j 3.0 & criando conexão com Python
Requisitos:
- Ubuntu 15 ou Xenial 16
- Java8
- Python 2.7.x ou 3.x.x
- Pip Python
Instalando Java8:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
Verifique se o python está configurado digitando no terminal:
python -v
python3 -v
Considerando que tudo está OK, instale o python-pip usando o comando:
sudo apt install python-pip
Agora que temos python, python-pip, java8 configurados, vamos instalar o neo4j, para isso preparei uma sequencia de comando que faz tudo por você, download, descompactar e muda nome. Caso a versão fique desatualizada com o tempo ou ocorra quebra de link procure pelo download manual no site neo4j.com.
sudo wget http://neo4j.com/artifact.php?name=neo4j-community-3.0.0-unix.tar.gz &&
sudo tar -zxvf artifact.php\?name\=neo4j-community-3.0.0-unix.tar.gz &&
sudo mv neo4j-community-3.0.0 /home/NEO4J_HOME
Agora com neo4j no diretorio /var precisamos criar um script .sh para iniciar o neo4j sempre em modo console, já que não possível “instalar” o neo4j, essa opção foi descontinuada por se torna obsoleta, uma explicação técnica se encontra na documentação: >>LINK<<
Criando o script.sh
sudo gedit /etc/init.d/ativarneo4j.sh
Cole dentro do arquivo as seguintes instruções:
#!/bin/bash
/home/NEO4J_HOME/bin/neo4j console
Agora precisamos da permissão de execução e colocar para iniciar junto ao sistema.
sudo chmod +x “/etc/init.d/ativarneo4j.sh”
sudo update-rc.d ativarneo4j.sh defaults
para executar o neo4j basta executar o script digitando no terminal:
sudo /etc/init.d/ativarneo4j.sh
Espere um tempo para que o serviço seja carregado totalmente, abra o navegado, acesse: localhost:7474 e escolha sua senha padrão, iniciando o script no terminal é preciso que mantenha ele aberto pois ele é responsável por mante o console conectado, quando reiniciar o sistema o scirpt vai passa a roda por “trás das cortinas” assim sem precisa se preocupar em ter que executar a inicialização do neo4j.
Agora que o neo4j 3.0 está configurado e funcionando vamos testa o drive bolt, eu escolhi a linguagem Python por ser mais fácil de instalar o drive e executar, siga as instruções:
pip install neo4j-driver
pip install neo4j-driver==1.0.0rc2
cd Desktop/ && sudo mkdir DrivePyNeo && sudo gedit DrivePyNeo/exemplo1.py
Cole dentro do arquivo exemplo1.py
salve e execute:
python exemplo1.py
Python fez conexão com neo4j, criou um node e imprimiu o resultado na tela de execução.
Originally published at Lucas Jovencio.