我一直关注https://neo4j.com/blog/neo4j-3-0-apache-spark-connector/中的示例,在我尝试以下任务之前,一切似乎都很好: val query =“cypher runtime =编译的MATCH(n)其中id(n)< {maxId}返回id(n)”
我在端口7687上收到错误“无法连接到'localhost',确保数据库正在运行并且网络连接正常。” 我对Spark很新,不知道如何解决这个问题。当我运行这个时,我已经拥有了我的Neo4j数据库。
答案 0 :(得分:1)
端口7687是BOLT的端口,这是Neo4j的二进制协议,Neo4j Spark Connector中捆绑的Java驱动程序用于从Neo4j中提取数据。所以这是Neo4j的连接错误。
您使用的是什么版本的Neo4j?您使用的是Neo4j的默认配置设置吗?
您是否按照指定的here指定了neo4j的密码:
spark.neo4j.bolt.password=<password>
如果您关注博客文章中的示例,启动spark shell的命令将如下所示:
$SPARK_HOME/bin/spark-shell \
--conf spark.neo4j.bolt.password=YOUR_PASSWORD_FOR_NEO4J_HERE \
--packages neo4j-contrib:neo4j-spark-connector:1.0.0-RC1,\
graphframes:graphframes:0.1.0-spark1.6