Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Neo4j 从数据帧中提取大型数据集_Neo4j_Pyspark_Spark Dataframe_Jupyter Notebook_Bigdata - Fatal编程技术网

Neo4j 从数据帧中提取大型数据集

Neo4j 从数据帧中提取大型数据集,neo4j,pyspark,spark-dataframe,jupyter-notebook,bigdata,Neo4j,Pyspark,Spark Dataframe,Jupyter Notebook,Bigdata,我最近在Jupyter笔记本上与pyspark合作。我试图从拼花地板文件中读取数据,以便用这些数据在Neo4J中构建一个图形。我可以成功地将HDFS中的数据加载到数据帧中 当数据大小受到限制时,一切正常,我可以使用collect()方法提取python列表,然后在其上循环。当数据大小增加时,显然会出现“java堆大小”错误(数据帧包含超过1300万行,几十万行,分布在五列中) 我曾尝试使用foreach(f),但我得到了“元组索引超出范围”。 当我使用df.select('columnName'

我最近在Jupyter笔记本上与pyspark合作。我试图从拼花地板文件中读取数据,以便用这些数据在Neo4J中构建一个图形。我可以成功地将HDFS中的数据加载到数据帧中

当数据大小受到限制时,一切正常,我可以使用collect()方法提取python列表,然后在其上循环。当数据大小增加时,显然会出现“java堆大小”错误(数据帧包含超过1300万行,几十万行,分布在五列中)

我曾尝试使用foreach(f),但我得到了“元组索引超出范围”。 当我使用df.select('columnName').show()时,我能够查看数据;但问题是,我需要提取这些值,以便使用Neo4j会话(session.run('Cypher query')构造图

我的问题是:当我有大量的数据时,有没有办法在数据帧的行上循环(从而从行中提取数据)


注:我正在使用这些库:findspark、pyspark、neo4j.v1

我发现没有答案。我正在发布我如何解决问题,以防将来有人遇到同样的问题。完全相同的代码在python 2内核上工作,但在python 3上没有。 我必须安装一个支持Pyton 2.7的较旧版本的jupyter,一切都进行得非常顺利(如果您在一个拥有完全权限和internet连接的服务器上工作,您可以在第一个内核的基础上安装一个新内核)。 我没有使用collect(),而是使用了foreachPartition(),结果非常好