Linux 文件系统调优
数据库在查询数据时通常会产生许多小的随机读取,而在提交更改时很少进行顺序写入。为了获得最佳性能,建议将数据库和事务日志存储在独立的物理设备上。本页面涵盖 Neo4j 的 I/O 行为以及如何优化磁盘上的操作。
建议通过在 fstab 中设置 noatime,nodiratime
挂载选项或在发出磁盘挂载命令时设置该选项来禁用文件和目录访问时间更新。这样,文件系统将不必发出更新此元数据的写入,从而提高写入性能。
由于数据库可以长时间对存储系统施加高且一致的负载,因此建议使用具有良好老化特性的文件系统。EXT4 和 XFS 文件系统都受支持。
虽然 EXT4 和 XFS 文件系统都受支持,但 XFS 在某些工作负载中可以提供微不足道的性能优势(高达 10%),但与 EXT4 相比,它使用更多磁盘空间(高达 2 倍)。因此,通常建议使用 EXT4。 |
高读写 I/O 负载也会随着时间的推移降低 SSD 性能。防止 SSD 磨损的第一道防线是确保工作数据集适合 RAM。但是,具有高写入工作负载的数据库仍然会导致 SSD 磨损。最简单的解决方法是过度配置;使用比严格需要的 SSD 大至少 20% 的 SSD。
Neo4j 不建议也不支持使用 NFS 或 NAS 作为数据库存储。 |