当前位置: 首页 > 知识库问答 >
问题:

Neo4J-2.2.0-M03加载时的NotInTransactionException

尹雅健
2023-03-14
CREATE INDEX ON :Fingerprint(Code);
CREATE INDEX ON :Fingerprint(Size);
USING PERIODIC COMMIT LOAD CSV WITH HEADERS FROM 'mypath_to_file.csv' 
  as csvLine FIELDTERMINATOR '\t' 
MATCH (m:Molecule {NSC: toInt(csvLine.NSC)}) 
MERGE (f:Fingerprint {Code: toInt(csvLine.Identifier), Size: toInt(csvLine.Distance)}) 
CREATE (m)-[:hasBit {Type: 'SCFP6', Atoms: csvLine.Atoms}]-> (f);
NSC Identifier  Distance    Atoms   Substructure
128 1   0   1   [*]C(=[*])[*]
128 0   0   2   [*]C
128 13  0   3   [*]=O
128 9   0   4   [*]N([*])[*]
128 3   0   5   [*][c](:[*]):[*]
128 17  0   12  [*]S[*]
128 1256995004  2   1 2 3 4 [*]N([*])C(=O)C
128 136627117   2   1 2 [*]C(=[*])C
128 1311071855  2   1 3 [*]C(=O)[*]

关于CSV数据上传,从V2.1.7到2.2.0-M03有什么变化吗?这是已知的虫子吗?

如果您需要示例文件和脚本的添加信息,请不要犹豫。

共有1个答案

司空均
2023-03-14

你能试着做:

LOAD CSV WITH HEADERS FROM 'mypath_to_file.csv' 
  as csvLine FIELDTERMINATOR '\t' 
RETURN count(*);

LOAD CSV WITH HEADERS FROM 'mypath_to_file.csv' 
  as csvLine FIELDTERMINATOR '\t' 
RETURN csvLine
SKIP 25900;

看看数据或解析是否有问题?也许在回滚事务的解析过程中发生了异常?

   MERGE (f:Fingerprint {Code: toInt(csvLine.Identifier)})
     ON CREATE SET f.Size=toInt(csvLine.Distance)
 类似资料:
  • 我想把一个特定的文件列表加载到Spark中。我创建了一个UDF来过滤文件列表,因此我获得了一个和我要加载的文件。我试图使用指向API的链接,但由于某些原因,它告诉我“重载方法值csv具有替代选项:(paths:String*)org.apache.spark.sql.dataframe(csvdataset:org.apache.spark.sql.dataframe[String])org.ap

  • 我每周在我的Neo4j数据库中导入CSV,90%的数据已经存在。是我的数据库更新过程。 我正在将数据与ids合并,我对这些设置了一个独特的约束来确保这一点。 从技术角度来看一切都很好。但从运营的角度来看,我有一些需求: 谢谢你的帮助!

  • 我从几个csv文件迭代上传节点和边,每个节点类型一个。加载节点工作得很好,但加载边并不总是有效。实际上,有些节点有数字作为标识符--如果是这样的话,所有这种类型的节点都有数字--但加载为字符串,因此创建边失败。手动创建一个边,添加用双引号包装标识符,效果很好。 边缘: 密码命令:

  • 当我在spack-2.2.0中加载xml文件时,如下所示: 它向我展示了一个错误: JAVAlang.ClassNotFoundException:未能找到数据源:xml。请在http://spark.apache.org/third-party-projects.html在org。阿帕奇。火花sql。处决数据源。数据源$。org上的lookUpdateSource(DataSource.scal