我正在尝试在Windows上的ramdisk上运行PostgreSQL。我这样做的方法是简单地将数据目录放在ramdisk上。
如果没有做任何具体的基准测试,性能似乎很棒,只有CPU受限。我的问题是work_mem,shared_buffers等事物的最佳值是什么?
即使数据库处于ram状态,运行我的许多查询也需要半分钟以上。因此,我想知道它是否能够在表上创建索引。当然,指数需要留在公羊。我应该提一下,我正在使用PostgreSQL作为数据仓库(虽然很小)。
编辑:我应该提到我正在使用DataRam.com的RamDisk实用程序。它只是偶尔给我一个蓝屏,当我配置ramdisk时,从来没有建立它。我认为这是怀旧的眼睛。 ;)
答案 0 :(得分:1)
我肯定会创建索引。引擎可以使用包含在各种优化中的信息,它应该会提高你的性能。 RamDisk解决了最坏情况表扫描类型的情况,但并不一定意味着表扫描比正确查找更快。
答案 1 :(得分:1)
是的,使用索引但work_mem仍然取决于机器本身的大小。当然,你想要一个高work_mem的原因之一就是你没有按磁盘来进行磁带排序。在ramdisk上,这并不是那么危险。请记住,ram磁盘上没有数据完整性。