【发布时间】:2017-10-10 16:20:50
【问题描述】:
我目前正在使用 Google Cloud Dataflow 转换数据并将其保存到托管在 Compute Engine VM 上的 Neo4j 数据库中。当前设置使用 JdbcIO 通过运行准备好的语句写入 Neo4j,但似乎也可以直接在 Java 中使用 Neo4j 驱动程序,这样可以更灵活地动态创建查询。
我想知道是否有人比较了这两种方法并注意到任何差异?我猜 Jdbc 方法会更有效,因为它只需要运行准备好的语句,但这只是我的猜测。
更新 当我对这两种方法进行更多实验时,我将发布我的发现
【问题讨论】:
-
关于这个问题的任何更新?
-
我们最终开发了一个自定义插件,可以部署到我们的 neo4j 数据库中。该插件将接收由原始 json 对象组成的字符串,并相应地创建节点和关系。为了获得更好的性能,我们在管道中使用了窗口和组合转换,将 10 秒内收到的所有查询批处理为一个大查询,并发送到 neo4j 一次。我们还在插件中使用内存缓存来提高性能。到目前为止,它能够满足我们的需求
-
请问您使用哪个 Neo4J API 来执行写入操作?
-
我们使用来自
org.neo4j.kernel.internal.GraphDatabaseAPI的GraphDatabaseAPI
标签: jdbc neo4j google-cloud-platform google-cloud-dataflow gcloud