RamDisk 上的 PostgreSQL:work_mem 等的大小?

发布于 2024-10-16 01:18:01 字数 388 浏览 0 评论 0原文

我正在尝试在 Windows 上的 ramdisk 上运行 PostgreSQL。我的方法是简单地将数据目录放在 ramdisk 上。

在没有进行任何具体基准测试的情况下,性能似乎非常出色,并且仅受 CPU 限制。我的问题是 work_mem、shared_buffers 等的最佳值是多少?

即使数据库位于内存中,运行我的许多查询也需要半分钟以上的时间。因此,我想知道在表上创建索引是否有意义。当然,索引需要保留在内存中。我应该提到的是,我正在使用 PostgreSQL 作为数据仓库(尽管是一个小型数据仓库)。

编辑:我应该提到我正在使用 DataRam.com 的 RamDisk 实用程序。当我配置 ramdisk 时,它只会偶尔出现蓝屏,而在建立虚拟磁盘时却不会出现蓝屏。我认为这是怀旧的养眼之物。 ;)

I am experimenting with running PostgreSQL on a ramdisk on windows. The way I did it was to simply place the data directory on the ramdisk.

Without having done any specific benchmarks, the performance seems to be magnificent and only CPU bound. My question is what the optimal values for things like work_mem, shared_buffers etc. would be?

Even when the database is in ram it take more than half a minute to run many of my queries. Therefore, I wonder whether it makes sence to create indexes on the table. The indexes would, of course, need to stay in ram. I should mention that I am using PostgreSQL for a data warehouse (small one, though).

Edit: I should mention that I am using the RamDisk utility from DataRam.com. It only gives me a bluescreen once in a while, when I configure the ramdisk, never when it is established. I think of this as nostalgic eyecandy. ;)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

时光匆匆的小流年 2024-10-23 01:18:01

我肯定会创建索引。引擎可以使用包含的信息进行各种优化,并且它应该会大大提高您的性能。 RamDisk 解决了最坏的表扫描类型情况,但这并不一定意味着表扫描比执行正确的查找更快。

I would definitely create indexes. The engine can use the info contained for all sorts of optimizations, and it should improve your performance quite a bit. RamDisk solves the worst case table scan type cases, but it doesn't necessarily mean that that tablescan is faster than doing a correct lookup.

挽手叙旧 2024-10-23 01:18:01

是的,使用索引,但work_mem仍然取决于机器本身的大小。当然,您想要高 work_mem 的原因之一是这样您就不会访问磁盘来进行磁带排序。在虚拟磁盘上,这几乎没有那么危险。请记住,RAM 磁盘上没有数据完整性。

Yes, use indexes but work_mem still depends on the size of the machine itself. Of course one of the reasons you want a high work_mem is so you don't hit disk to do the tape sort. On a ramdisk this isn't nearly as dangerous. Just remember, you have no data integrity on a ram disk.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文