无法通过Spark Shell连接到Neo4j社区服务器:由于身份验证失败,客户端未经授权

时间:2019-08-21 23:00:08

标签: apache-spark neo4j apache-spark-sql cypher

版本

火花::2.4.0

Neo4j::Neo4j社区版本3.5.6

问题陈述:

我正在尝试将Spark Shell与Neo4j社区服务器连接。一切都在本地运行。我试图实现的最终目标是我要查询Neo4j并以rdds的形式加载数据。稍后,我想将这些rdds转换为Json Structure。我正在使用此连接器https://github.com/neo4j-contrib/neo4j-spark-connector

但是目前,我面临Neo4j服务器的身份验证问题。当我执行基本命令进行连接并设置Neo4j上下文时。它们似乎工作正常,但是当我尝试运行 rdd.count rdd.first.schema.fieldName 我遇到客户端未通过身份验证的身份验证错误。

Spark Shell命令:

spark-shell --master spark://10.62.10.71:7077  --conf spark.neo4j.bolt.username=neo4j spark.neo4j.bolt.password=<password> --jars ‪C:/Users/khalid-admin/Desktop/jar_files/neo4j-spark-connector-full-2.4.0-M6
import org.neo4j.spark._

val neo = Neo4j(sc)

val rdd = neo.cypher("MATCH (n:Person) RETURN id(n) as id ").loadRowRdd

图片: enter image description here

错误:

[Stage 0:>                                                          (0 + 1) / 1]2019-08-22 00:25:17 WARN  TaskSetManager:66 - Lost task 0.0 in stage 0.0 (TID 0, 10.62.10.71, executor 0): org.neo4j.driver.v1.exceptions.AuthenticationException: The client is unauthorized due to authentication failure.
        at org.neo4j.driver.internal.util.Futures.blockingGet(Futures.java:122)
        at org.neo4j.driver.internal.DriverFactory.verifyConnectivity(DriverFactory.java:346)
        at org.neo4j.driver.internal.DriverFactory.newInstance(DriverFactory.java:93)
        at org.neo4j.driver.v1.GraphDatabase.driver(GraphDatabase.java:136)
        at org.neo4j.driver.v1.GraphDatabase.driver(GraphDatabase.java:119)
        at org.neo4j.spark.Neo4jConfig.driver(Neo4jConfig.scala:15)
        at org.neo4j.spark.Neo4jConfig.driver(Neo4jConfig.scala:19)
        at org.neo4j.spark.Executor$.execute(Neo4j.scala:394)
        at org.neo4j.spark.Neo4jRDD.compute(Neo4j.scala:458)
        at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:324)
        at org.apache.spark.rdd.RDD.iterator(RDD.scala:288)
        at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:90)
        at org.apache.spark.scheduler.Task.run(Task.scala:121)
        at org.apache.spark.executor.Executor$TaskRunner$$anonfun$10.apply(Executor.scala:402)
        at org.apache.spark.util.Utils$.tryWithSafeFinally(Utils.scala:1360)
        at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:408)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
        Suppresse

到目前为止已尝试的步骤:

到目前为止,我已经尝试了以下步骤:

  • 我确保我没有使用
    的默认凭据 Neo4j。

  • 当我第一次登录Neo4j浏览器时,它提示我输入 在“更改密码”窗口中,我更改了密码。一切似乎都正常。

任何人都可以指导我采取进一步措施来缩小问题范围吗?

0 个答案:

没有答案