Pular para o conteúdo principal

Neo4j

important

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.

ini
# 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

  1. Instale duas bibliotecas: neo4j-spark-connector e GraphFrames como Spark pacote. Consulte o guia da biblioteca para obter instruções.

  2. Crie um clustering com estas configurações deSpark.

    Bash
    spark.neo4j.bolt.url bolt://<ip-of-neo4j-instance>:7687
    spark.neo4j.bolt.user <username>
    spark.neo4j.bolt.password <password>
  3. Importe a biblioteca e teste a conexão.

    Scala
    import 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]