python调用nebula接口读取数据怎么转换成dataframe格式

按照您给出的参数做了测试,报和之前一样的错误:


测试环境是spark3版本

那你加上
.mode(SaveMode.Overwrite)

我的代码是这样:
image
敏感信息打了码
报错信息:
image
我尝试把.mode改成.option,还是会报错


烦请大神指教

我看了下spark的文档,pySpark中指定savemode是不能用枚举类型的,只能指定 不同save 类型的字符串,这样写:

personDF.write.mode("overwrite").json("/path/to/write/person")

参考

1 个赞

我也是用spark 3.1.2. (pyspark)

>>> spark.read.format("com.vesoft.nebula.connector.NebulaDataSource") \
...     .option("type", "vertex") \
...     .option("spaceName", database) \
...     .option("label", tag_name) \
...     .option("returnCols", "create_time") \
...     .option("metaAddress", ip) \
...     .option("passwd", password) \
...     .option("user", user) \
...     .option("partitionNumber", 1).load().show()

出現error

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/share/spark3/python/pyspark/sql/readwriter.py", line 210, in load
    return self._df(self._jreader.load())
  File "/usr/share/spark3/python/lib/py4j-0.10.9-src.zip/py4j/java_gateway.py", line 1304, in __call__
  File "/usr/share/spark3/python/pyspark/sql/utils.py", line 117, in deco
    raise converted from None
pyspark.sql.utils.AnalysisException: com.vesoft.nebula.connector.NebulaDataSource is not a valid Spark SQL Data Source.

想請大神幫忙看一下,怎麼解決

配置里面的ip、passed、user需要改成你数据库真实的配置

1 个赞

上面的variable只是範例,因為需要隱藏sensitive data

我之前这样的错误是spark-connector jar包版本错误引起的,希望对你有帮助

2 个赞

:+1:t2: 可以贴一下最终的解决方案么,帮助后来的同学

是因为错误的 Nebula-Spark-connector 版本?

你好,我也遇到了这个问题,请问需要哪些jar包,需要到哪里下载呢?

需要 nebula-spark-connector 这个jar 包,具体可以看看github GitHub - vesoft-inc/nebula-spark-connector

编译好的这边可以下载 Central Repository: com/vesoft/nebula-spark-connector

2 个赞

是的,因为我使用了spark3,改用spark-connector3.0-3.0-snapshot可以

1 个赞

我在使用ng_ai进行本地测试(未进行docker安装)时,将nebula-spark-connector-3.3.0.jar放入配置文件后(pyspark3.1.1),运行出现了“ com.vesoft.nebula.client.meta.exception.ExecuteFailedException: Execute failed: no parts succeed, error message: Unable to activate object“,


代码如下:
image

请问这是什么原因呢?

这个不太清楚,没碰到过…

好的好的,谢谢 ,我在发个帖子问下

ng_ai 我还没有从 spark3.x 上验证过,现有的依赖好像是 pyspark 2.4 的

1 个赞

需要再重新compile dependency?

抱歉我记错了,看了下是 pyspark>=3.2.3 看了 3.2.3 支持 spark 3.2。
不过我还没验证过 spark 3.x 还

此话题已在最后回复的 7 天后被自动关闭。不再允许新回复。