我要构建此工作流:
使用spark预处理一些数据,以Dataframe结束
将这样的Dataframe作为一组节点写入neo4j
我的想法非常基本:将df中的每一行作为一个节点来编写,其中每一列值表示节点属性的值
我看过很多文章,包括neo4j spark connector和介绍neo4j 3.0 apache spark connector,但它们都侧重于从neo4j数据库导入spark数据。。。到目前为止,我还没有找到一个将sparkDataframe写入neo4j数据库的清晰示例。
任何指向文档或非常基本的示例的指针都非常受欢迎。
3条答案
按热度按时间cdmah0mi1#
您可以编写一些例程并使用开源的neo4jjava驱动程序
https://github.com/neo4j/neo4j-java-driver
例如。
简单地序列化rdd的结果(使用rdd.tojson),然后使用上面的驱动程序创建neo4j节点并推入neo4j示例。
mccptt672#
我知道这个问题很老了,但我不认为neo4jSpark连接器可以解决你的问题。这里提供了完整的故事、示例代码和详细信息,但如果您仔细查看neo4jdataframe.mergegedgelist示例(建议使用),您会注意到它所做的是为dataframe中的每一行示例化一个驱动程序。这将在一个有10行的单元测试中起作用,但是你不能期望它在一个有数百万或数十亿行的真实场景中起作用。此外,在上面的链接中还解释了其他缺陷,您可以在这里找到基于csv的解决方案。希望有帮助。
oxiaedzo3#
阅读本期文章回答我的问题。
长话短说,neo4jSpark连接器可以写Spark数据到neo4j数据库,是的,有一个新版本的文件缺乏。