【问题标题】:Import Object of arrays from CSV to Neo4j将数组对象从 CSV 导入 Neo4j
【发布时间】:2016-02-04 18:56:51
【问题描述】:

我在 mongo 中有一个集合,需要迁移到 Neo4j。为此,我会将其导出为 CSV。然后,我将使用 Cypher 将生成的 CSV 导入 Neo4j。集合中的文档有一个带有数组的对象,其中包含带有数组的对象。看看上面的 JSON:

"services" : [
            {
                "max_id" : "646767779849326594", 
                "log" : [
                    {
                        "date" : 1443024000, 
                        "steps" : 6
                    }, 
                    {
                        "date" : 1442512800, 
                        "steps" : 1
                    }
                ], 
                "service" : "home_timeline"
            }, 
            {
                "max_id" : 0.0, 
                "log" : [
                    {
                        "date" : 1443024000, 
                        "steps" : 4
                    }, 
                    {
                        "date" : 1442512800, 
                        "steps" : 1
                    }
                ], 
                "service" : "user_timeline"
            }, 
            {
                "max_id" : 0.0, 
                "log" : [
                    {
                        "date" : 1443024000, 
                        "steps" : 6
                    }, 
                    {
                        "date" : 1442512800, 
                        "steps" : 1
                    }
                ], 
                "service" : "mentions_timeline"
            }
        ]

我怎样才能正确地将它导入 Neo4?我已经找到了导入数组的解决方案。但我没有发现任何与我的问题相似的东西。 CSV的标题应该如何? Cypher代码应该如何获取这些对象??

【问题讨论】:

    标签: arrays mongodb csv neo4j


    【解决方案1】:

    您可以使用 JSON 作为 Cypher 查询的参数。 herehere 有几个例子。

    你的例子是这样的:

    WITH {json} AS data
    UNWIND data.services AS service
    // Insert data for each service.
    MERGE (s:Service { "service_name": service.service})
    SET s.max_id = service.max_id
    FOREACH (log IN service.logs | CREATE (l:Log {date: log.date, steps: log.steps})<-[:LOGGED]-(s))
    

    还有一个用于将数据从 MongoDB 文档数据模型转换为 Neo4j 属性图模型的工具,您可能会发现它很有用:https://github.com/neo4j-contrib/neo4j_doc_manager

    【讨论】:

    • 谢谢,威廉!我会看看这个!
    猜你喜欢
    • 1970-01-01
    • 2017-06-15
    • 1970-01-01
    • 2014-07-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多