Neo4j
Essa documentação foi descontinuada e pode não estar atualizada. O produto, o serviço ou a tecnologia mencionados neste conteúdo não são oficialmente endossados ou testados pelo site Databricks.
O Neo4j é um banco de dados gráfico nativo que aproveita os relacionamentos de dados como entidades de primeira classe. O senhor pode conectar um clustering Databricks a um clustering Neo4j usando o neo4j-spark-connector, que oferece Apache Spark APIs para RDD, DataFrame e GraphFrames. O conector neo4j-spark-usa o protocolo binário Bolt para transferir dados de e para o servidor Neo4j.
Este artigo descreve como implantar e configurar o Neo4j e como configurar o site Databricks para acessar o Neo4j.
Implantação e configuração do Neo4j
O senhor pode implantar o Neo4j em vários provedores de nuvem.
Altere a senha do Neo4j em default (deve ser solicitada quando o senhor acessar o Neo4j pela primeira vez) e modifique conf/neo4j.conf
para aceitar conexões remotas.
# conf/neo4j.conf
# Bolt connector
dbms.connector.bolt.enabled=true
#dbms.connector.bolt.tls_level=OPTIONAL
dbms.connector.bolt.listen_address=0.0.0.0:7687
# HTTP Connector. There must be exactly one HTTP connector.
dbms.connector.http.enabled=true
#dbms.connector.http.listen_address=0.0.0.0:7474
# HTTPS Connector. There can be zero or one HTTPS connectors.
dbms.connector.https.enabled=true
#dbms.connector.https.listen_address=0.0.0.0:7473
Para obter mais informações, consulte Configuração dos conectores Neo4j.
Configuração do Databricks
-
Instale duas bibliotecas: neo4j-spark-connector e GraphFrames como Spark pacote. Consulte o guia da biblioteca para obter instruções.
-
Crie um clustering com estas configurações deSpark.
Bashspark.neo4j.bolt.url bolt://<ip-of-neo4j-instance>:7687
spark.neo4j.bolt.user <username>
spark.neo4j.bolt.password <password> -
Importe a biblioteca e teste a conexão.
Scalaimport org.neo4j.spark._
import org.graphframes._
val neo = Neo4j(sc)
// Dummy Cypher query to check connection
val testConnection = neo.cypher("MATCH (n) RETURN n;").loadRdd[Long]