知识库

标记为“性能”的文章

Neo4j debug.log 中 E_COUNT_EXCEEDED WARNing 消息的解释。

本文档旨在解释 Neo4j 可以写入其 debug.log 的 E_COUNT_EXCEEDED WARNing 消息。它还提供了一些监控和故障排除选项。当运行 Neo4j 因果集群时,…

阅读更多

限制 Bolt 请求

当大量数据在 Neo4j 数据库和客户端之间传输时(通常是服务器到客户端的大型查询结果),存在一些隐藏的限制机制…

阅读更多

笛卡尔积 Cypher 查询性能不佳

就像 SQL 一样,如果您未正确连接查询的各个部分,将导致产生笛卡尔积,这通常不是您想要的结果。例如…

阅读更多

如何诊断锁定问题

自 Neo4j 3.4 以来,可以更好地理解并发查询导致的锁定问题。本知识库文章将不详细介绍 Neo4j 中锁定的基础知识。我们假设一种情况…

阅读更多

诊断存储性能问题

慢速存储会影响 Neo4j 性能,因此我们在产品文档中建议使用固态硬盘。基准测试您的底层系统在 Ubuntu 或 RedHat 上,您可以使用 fio 工具…

阅读更多

已弃用:如何在备份期间跳过一致性检查?

Neo4j 中的备份会自动对备份存储运行一致性检查。备份本身不会花费太长时间,但一致性检查可能需要更多时间…

阅读更多

如何提高计算节点上关系数量的性能

使用 Cypher,可以通过以下方式计算关系数量,这将报告名为 Sylvester Stallone 的 Actor 的入站/出站关系数量。使用 bin/neo4j-shell 运行…

阅读更多

如何手动运行一致性检查?

如果您跳过了 neo4j-backup 的一致性检查部分,或者您想检查数据存储是否一切正常,您可以对离线存储运行该工具…

阅读更多

如何配置堆外事务状态

从 Neo4j 3.5 开始,可以将部分事务数据存储在堆外内存中。这有助于减少 GC 压力和/或在有限情况下防止 OOM 崩溃…

阅读更多

已弃用:如何手动清除节点和关系缓存

在排查瞬态问题或测试热缓存与冷缓存上的查询时,您可能希望尝试清除缓存,而无需重启 Neo4j 数据库。要实现此目的…

阅读更多

Linux 内存不足 (OOM) 杀手

内存不足杀手(Out Of Memory Killer)或 OOM 杀手是 Linux 内核在系统内存严重不足时采用的一个进程。这种情况发生是因为 Linux…

阅读更多

锁管理器差异解释

社区版(开发中):使用 Java 内在锁,即 'synchronized'。这在多处理器机器上可能表现不佳,使用 Thread.sleep() 和 Thread.interrupt() 等待锁。这涉及上下文…

阅读更多

对多个节点执行模式否定

某些用例需要匹配未连接到其他节点集的节点。我们将讨论此类查询的错误和正确方法…

阅读更多

在 Windows 上运行复制存储工具

复制存储实用工具是一套用于压缩、复制、修复和分析 Neo4j 存储的工具。您可能已经知道这一点,如果不知道,可以阅读更多关于…

阅读更多

通过理解基数来调优 Cypher 查询

基数问题是导致 Cypher 查询缓慢或不正确的常见原因。因此,理解基数并利用这种理解来管理基数问题是关键组成部分…

阅读更多

理解内存消耗

所以您已经配置 Neo4j 使用 4GB 堆内存和 6GB 页面缓存,然后放松下来,以为 Java 进程不会超过 10GB…

阅读更多

理解 Neo4j 查询计划缓存

本文基于 Neo4j 2.3.2 的行为。查询计划缓存受 conf/neo4j.properties 文件中定义的三个参数控制,这些参数在此处详细说明。这三个…

阅读更多

理解查询计划缓存

当 Cypher 语句首次提交时,Neo4j 将尝试在规划之前确定查询是否在计划缓存中。默认情况下,Neo4j 将保留 1000 个查询…

阅读更多

理解事务和锁超时

处理失控查询的一种方法是设置一个时间限制,超时后将终止查询。这里有一些需要理解的微妙之处…

阅读更多

使用子查询控制聚合范围

聚合,例如 collect() 和 count(),在查询计划中显示为 EagerAggregation 运算符(带有深蓝色标题)。它们类似于 Eager 运算符,因为它呈现了…

阅读更多

预热缓存以提高冷启动性能

注意:对于 3.5.x 及更高版本,以下详细信息不再适用,因为 Neo4j 将始终记录页面缓存中的内容,并在 Neo4j 重启时…

阅读更多

© . All rights reserved.