检查neo4j图中是否存在节点

2024-03-22

NOTE

我让这成为几个问题,而不是我问的简单问题,所以我将后续问题分解为他们自己的问题here https://stackoverflow.com/questions/22867148/creating-unique-relationships-without-creating-unique-nodes-in-neo4j.

原问题

我收到了一个 ID 列表,我首先测试它们是否在我的图表中,如果它们/是/我将进一步处理这些节点。

那么,例如...

fids = get_fids(record)  # [100001, 100002, 100003, ... etc]
ids_in_my_graph = filter(id_is_in_graph, fids) # [100002]

def id_is_in_graph(id):
    val = False
    query = """MATCH (user:User {{id_str:"{}"}})
    RETURN user
    """.format(id)
    n=neo4j.CypherQuery(graph_db,query).execute_one()
    if n:
        val = True
    return(val)

正如您可以想象的那样,使用过滤器执行此操作,顺序测试每个 ID 是否在我的图表中真的非常非常慢,并且显然没有正确使用 Neo4j。

我将如何重新表述我的查询,以便我可以创建一个类似的列表(User{id_str: [mylist]})只查询并返回图表中的 ID?


您可能想通过利用 cypher 的收集功能来使用 WHERE...IN。这是相关参考 http://docs.neo4j.org/chunked/milestone/query-where.html#_collections

所以您的查询可能如下所示:

MATCH (user:User) 
WHERE user.id_str IN ["100001", "100002", "100003"]
return user;

现在,我不知道一个集合可以有多大。如果您的收藏中有 1,000 件物品,我怀疑这是否可行。但至少这是一种将它们分批成块的方法。这应该会提高性能。

还可以查看收藏版块Cypher 2.0 参考卡 http://docs.neo4j.org/refcard/2.0/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

检查neo4j图中是否存在节点 的相关文章

  • Cypher 查询 JSON 格式的结果

    在演员 电影演示图上 cypher 在单独的数组中返回列名称 MATCH n Person RETURN n name as Name n born as Born ORDER BY n born LIMIT 5 results colum
  • Neo4j:传统索引和自动索引与新标签库模式索引

    我目前正在寻找索引数据的最佳方法 从我的角度来看 有以下三个选项 1 遗留索引 索引管理器 API 2 自动索引 neo4j properties node auto indexing true ode keys indexable nam
  • 当属性名称为参数时如何查询属性值?

    通常我们可以查询属性值 例如 Match n Product where n name iPhone X return n 但是 就我而言 我不知道应该匹配哪个属性 但我只知道值 在这种情况下属性名称就变成了一种变量 我想要这样的东西 Ma
  • Python networkx 和持久性(可能在 neo4j 中)[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我有一个每秒在内存中创建数千个图形的应用程序 我希望找到一种方法来保存这些以供后续查询 它们并不是特别
  • Bulbflow:neo4jserver Graph 和 neo4jserver Neo4jclient 之间的区别

    我现在正在尝试学习如何连接到 Neo4j 服务器并使用 Python 中的 Bulbflow 在其上运行 Cypher 查询 我不明白的是连接到 neo4j 服务器的两种可能性之间的区别 1 Graph http bulbflow com
  • Neo4j 客户端使用“DateTime?”展开

    我目前正在尝试展开具有 日期时间 的 TravelEdges 列表 但我不断收到以下错误 CypherTypeException 类型不匹配 需要一个地图 但是字符串 2018 05 21T08 38 00 我目前正在使用最新版本的 neo
  • 一起使用 MongoDB 和 Neo4j

    我正在开始一个新项目 我正在考虑使用 MongoDB 作为文档存储工具 使用 Neo4j 作为映射文档之间关系的机制 然后我想通过 REST API 公开查询结果 人们会说这样做的优点和缺点是什么 是否有更好的方法可以使用不同的 NoSQL
  • python 单元测试中的 Neo4j 临时数据库

    我正在尝试为将与 Neo4j 图形数据库交互的 python 项目创建单元测试 目前 我正在实现嵌入式图形数据库 但如果我选择将其部署到 Web 应用程序 我可能会迁移到 REST 接口 我已经安装了嵌入式 neo4j v1 9rc2pro
  • Neo4j:无法创建具有嵌套属性的节点

    我到处寻找 但找不到这个问题的答案 我需要创建一个节点Config它有一个带有 2 个键 值对的动态属性对象 例如 name and type 查询时 键应该最终为properties name and properties type 但我
  • spring data neo4j 5 - 没有名为“sessionFactory”的bean可用

    我正在使用 spring data neo4j 5 0 7 RELEASE 和 spring 5 0 6 RELEASE 使用文档中的配置https github com spring projects spring data neo4j
  • 在 Neo4j 中可视化连接的组件

    我可以使用下面的代码找到图中最密集连接的组件 CALL algo unionFind stream pnHours YIELD nodeId setId groupBy setId storing all node ids of the s
  • Neo4j:插入 7k 节点很慢(Spring Data Neo4j / SpringRestGraphDatabase)

    我正在构建一个应用程序 我的用户可以在其中管理字典 其中一项功能是上传文件以初始化或更新词典的内容 我首先关注的结构部分是Dictionary CONTAINS gt Word 从一个空数据库 Neo4j 1 9 4 但也尝试过 2 0 0
  • 使用 Cypher,如何返回仅包含其属性子集的节点

    假设我在 Neo4j 中创建了一个节点 CREATE Thing a foo b bar 我可以编写一个查询来获取该节点及其所有属性 MATCH n Thing a foo RETURN n 返回 a foo b bar 但是是否可以匹配一
  • 使用 neo4j 建模有序树

    我刚刚开始使用 neo4j 并且了解图形和关系的原理 但是我在想要建模的某些结构方面遇到了一些麻烦 我想在编程语言项目中使用它 并存储已解析源文件的 AST 从那里 我计划向节点添加大量额外的数据和关系 以帮助分析和工具 但基本的 AST
  • Neo4j 在 Cypher 查询运行中仅使用一个核心

    当我在 UI 中运行 Cypher 查询时 服务器中只有一个核心正在运行 查询会卡住或响应非常慢 我使用 Neo4j 3 0 7 社区 有人知道我可以使用所有核心进行哪些调整吗 单个 Cypher 查询仅限于单个线程 看到这个tweet h
  • 如何禁用 Spring Data Neo4j 的登录

    我从 spring neo4j 收到不需要的查询日志 如下所示 25 08 2018 23 47 07 597 restartedMain INFO o n o d bolt request BoltRequest executeReque
  • 如何返回每个另一个节点属性的最大计数

    我需要计算一位作曲家的音乐作品每十年被演奏了多少次 然后只返回每十年演奏次数最多的一首作品 除了过滤除每十年最高计数之外的所有内容之外 该密码可以执行所有操作 match c Composer CREATED BY w Work lt 2
  • 使用java将数据从Neo4j导出到csv

    将数据从 Neo4j 导出到 CSV 的最佳方法是什么 我已使用链接中的 CSV 导入器将数据从 csv 导入到 neo4jhttps github com sroycode neo4j import https github com sr
  • 参数映射不能用于 MERGE 模式

    我收到错误参数映射不能在合并模式中使用 我如何解决此错误 我正在使用下面的代码 我非常感谢任何帮助 提前致谢 MERGE u Person names RETURN u and data2 names name Keanu Reeves1
  • Neo4j - 根据关系属性查找两个节点之间的最短路径

    我试图弄清楚是否有某种方法可以根据关系总和获得两个节点之间的最短距离 给出以下示例 neo4j 图像示例 https i stack imgur com fiJe1 png 上图代码 CREATE some point 1 Point ti

随机推荐

  • 是否可以像音乐应用程序或 iTunesU 那样将曲目标题添加到“正在播放控件”菜单中?

    我正在创建一个播放器应用程序 我已经实现了 remoteControlReceivedWithEvent 方法 并且可以通过此按钮更改播放状态 苹果指南 https developer apple com library ios docum
  • 点击标记时如何更改默认相机行为?

    在 Google Maps for iOS SDK 版本 1 2 中 点击标记的默认行为发生了变化 发行说明称 点击标记时的默认行为已更新 还可将相机平移到标记的位置 如何恢复旧行为 即不将相机中心平移到标记的位置 将以下方法添加到您的 G
  • 实现递归 ngFor 循环时清空 ng-template 的上下文数据

    我必须显示书籍类别的层次结构树 但在渲染的 html 中没有获取任何数据 似乎有问题ngTemplateOutput语境 尝试使用隐式和显式方法设置上下文 当明确设置时 例如let list list 类别列表的第一级已呈现 但子类别仍未呈
  • msbuild,如何设置环境变量?

    我正在尝试使用项目文件 例如 vcxproj 设置环境变量 我查看了属性函数 但似乎没有这样的功能 我知道有一种方法可以检索环境变量 但找不到如何设置它 我觉得应该有办法在项目文件中设置环境变量 从 MSBuild v4 0 开始 编码任务
  • 无法在 Vuejs 2 中使用 vuetable-2 检索数据

    我是 Vuejs 2 的新手 目前正在做一个项目 我在用着vuetable 2形成一个数据表Vuejs 2 我目前面临一个问题 无法使用属性 api url vuetable 2 检索数据 但是 我可以使用 Axios 和全局 Axios
  • 使用 JS 操作 HTML 中的 SVG

    我在 html 嵌入的 svg 图像中使用 javascript 构建 svg 元素时遇到问题 我创建了两个应该完全相同的文件 但其中一个是用 js 构建的 SVG html
  • 如何让 gradle 输出每个依赖项的依赖项哈希

    我有生以来第一次看到这样的情况 gradle compileJava check在本地运行良好 但是当我尝试使用 bitbucket 管道运行相同的命令时 我得到NoSuchClassDefError I do gradle user lo
  • 使用 ADO 在 IntraWeb 上共同初始化错误

    已经询问了邪恶交换 但一如既往 这没有帮助 我今天遇到这个问题 使用 IntraWeb 创建独立的 Web 应用程序时 当我尝试在浏览器中测试应用程序的会话时 我在 IDE 中遇到此异常 第一次机会例外 价格为 7C812A6B 异常类 E
  • 仅提取特定页面中使用的 css

    假设您有一个动态生成的网站 过去和现在都有太多人参与其中 并且您现在拥有一组包含超过 20 000 行 CSS 的共享样式表 它根本没有组织 有一些基于类和 id 的选择器 但也有太多基于标签的选择器 然后假设您有 100 个通过某个控制器
  • 按 R 中相似结果分组

    我想对相似的结果 不是唯一的 进行分组 但我不知道该怎么做 我的意思是 我有一个名为 name 的列的 df 它具有类似的结果 例如 ARPO ARPO S L ARPO SL 等 name address ARPO street 1 AR
  • sqoop导入或导出期间的不良记录处理

    我查看了 sqoop 导出操作提供的选项 但找不到任何处理不良记录的选项 例如 在大量记录中 偶尔可能会出现一个字符 而该字符应该是数字 有没有一种方法可以在 sqoop 中处理这些情况 而不会导致作业失败并在文件中提供错误记录 Sqoop
  • 如何将VM选项添加到jar文件中?

    我需要添加 Djava security policy myPolicyFile这样我的 RMI jar 就可以工作了 或者还有其他方法可以运行吗 如果你想在有人使用启动你的 jar 时添加 Djava jar 这是不可能的 因为不可能在
  • 如何制作可扩展的表格视图单元格?

    我想要一个表格视图单元格 当您点击它时 它的高度会增加以显示一些描述文本 当您再次点击它时 它会切换回较低的版本 这可能吗 如果可能的话 我将如何实现它 提前致谢 Use CGFloat tableView UITableView tabl
  • 使用 Spring MVC 框架清理用户输入

    我正在使用 spring mvc 框架开发 Web 应用程序 我想知道是否有任何最好的方法来清理用户输入或通用方法来清理 springs 中的所有用户输入以避免 XSS 和 Sql 注入攻击 您可以使用Filters在 Spring 框架中
  • 什么是 kthreadd 进程和子进程以及它与 init 和子进程有何不同

    我想知道什么是kthread以及为什么它不占用任何内存并且没有打开的文件 我编写了一些代码 它将简单地以父子树格式打印当前正在运行的进程的 PID 以及一些附加信息 例如使用的 VMZ RSS 线程 打开文件 PID 2 的所有子进程命名为
  • 垂直于给定点的直线

    如何从给定点在线段上绘制垂线 我的线段定义为 x1 y1 x2 y2 如果我从点 x3 y3 绘制垂直线并且它与点 x4 y4 上的线相交 我想找出这个 x4 y4 我帮你解了方程 k y2 y1 x3 x1 x2 x1 y3 y1 y2
  • Jquery $() - 它返回什么,$()[0] 是什么?

    我正在看一个如何使用 jqGrid 的示例 它是一个 jQuery 插件 它在 id 为 list 的 div 中绘制网格 它创建网格 list jqGrid 但它填充了网格 list 0 addJSONData 我一直在网上寻找关于 jQ
  • 使用 VueJS 生成从 1900 年到当前年份的年份

    我正在使用 VueJS 创建注册表单 用户必须输入他 她的出生日期 那么 我如何生成从 1900 年到当前年份的年份
  • 给定 n,找到相加得到 n 的最大数

    oracle面试时问的问题 例如 如果我的输入是6 那么 5 1 6 且 2 4 2 6 且 2 3 2 1 6 且 3 所以 最终答案应该是3 即需要3 2 1才能得到总和6 Note 不允许数字重复 即1 1 1 1 1 1 6 我用递
  • 检查neo4j图中是否存在节点

    NOTE 我让这成为几个问题 而不是我问的简单问题 所以我将后续问题分解为他们自己的问题here https stackoverflow com questions 22867148 creating unique relationship