使用工具neo4j-spark-connector连接neo4j和spark(github页面也有详细的使用方法介绍)
将工具下载下来并打包:
git clone https://github.com/neo4j-contrib/neo4j-spark-connector.git
cd neo4j-spark-connector
sbt clean package
然后将target文件夹下的neo4j-spark-connector-full-2.4.0-M6.jar复制到spark根目录下的jars文件夹下:
cp ./target/neo4j-spark-connector-full-2.4.0-M6.jar /usr/local/spark-2.4.4/jars/
进入spark根目录,使用如下命令:
./bin/spark-shell --conf spark.neo4j.bolt.password=<password> \
--packages neo4j-contrib:neo4j-spark-connector:2.4.0-M6
--conf spark.neo4j.bolt.password=<password>用于本地的neo4j配置密码,如果不是简单的在本地配置,还需要配置url等信息。为了方便,可以将配置代码写入spark根目录下的/conf/spark-defaults.conf文件中,写入后就不必每次都输入 --conf 参数了。
这样连接之后,测试的时候可能报错:
ERROR Executor: Exception in task 0.0 in stage 0.0 (TID 0)
org.neo4j.driver.v1.exceptions.AuthenticationException: Unsupported authentication token, scheme 'none' is only allowed when auth is disabled.
修改neo4j的配置文件conf/neo4j.conf,在文件末尾添加:
dbms.security.auth_enabled=false
重启neo4j再测试,成功连接。