首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PostgreSQL的文件系统优化

PostgreSQL的文件系统优化
EN

Database Administration用户
提问于 2016-01-04 03:54:09
回答 3查看 11K关注 0票数 5

我想在Ubuntu14.04工作站上安装PostgreSQL 9.x版本,我正在寻找关于如何设置它的建议,以便

  • 具有良好的读写(50/50-平衡)性能。
  • 为整个传统系统的使用保持良好的性能。

我的想法是在SSD驱动器中有两个主分区:

  • 一个是根系统("/")的ext4,具有OS推荐的/默认设置。
  • B是一个用于postgres数据库文件("/var/lib/pgsql")的ext4,具有较大的块大小(例如。1MB)和一个大的readahead大小(多少?)和适当的旗子(哪一面?)

我不知道从一般系统中分离postgres db文件是否是个好主意。在这种情况下,有任何关于B块大小、readahead大小、文件系统标志的建议吗?

还有什么有用的提示吗?

EN

回答 3

Database Administration用户

发布于 2016-01-07 13:37:32

既然你在使用SSD,你最好禁用readahead。对于基于闪存的驱动器来说,寻找时间不是一个问题。这是纺纱时代的事。更重要的是正确地对齐文件系统。

Postgresql使用的是8k页,所以性能最好的通常是匹配块大小。

使用XFS,使用任何屏障,并使文件系统具有适当的agcount和日志记录。(https://serverfault.com/questions/222305/trying-to-determine-the-correct-number-of-xfs-allocation-groups-for-postgresql-s)。

您还可以从像ZFS这样的压缩文件系统中获益,特别是如果您的数据不能放入缓存,并且必须从磁盘中读取。通常我得到2-4x的数据库,这会导致从磁盘读取的块减少2-4倍,但这是非常依赖用例的。如果使用ZFS,请使用recordsize=8k、compression=lz4、primarycache=all并检查是否需要为特定磁盘设置ashift (如果运行cat /sys/block/[device]/queue/physical_block_size使用512字节或4k块)。http://zfsonlinux.org/faq.html#PerformanceConsideration

票数 3
EN

Database Administration用户

发布于 2016-01-04 04:29:30

一般来说,就postgres功能而言,它不应该是一个问题。我想你知道为了这个目的你必须停止邮政服务。将所有数据dir复制到一个新位置,并在data_dir中修改postgresql.conf。不是我一个人干的。如果我是你,首先,会在ENV测试中做一些负载测试。希望它能帮上忙

看一看:https://serverfault.com/questions/310350/postgresql-alternate-database-location

票数 0
EN

Database Administration用户

发布于 2019-10-21 06:18:41

保持简单。我从未听说过任何ext4调优都会对基准产生重大影响。

您可以做一些安全的事情:使用4KB的块大小并与noatime一起挂载,但不要期望性能提高。

根文件系统上不应该有数据库。为数据库创建一个特殊的文件系统,这样如果文件系统完全运行,操作系统就不会受到影响。

票数 0
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/125096

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档