gpt4 book ai didi

performance - 需要将整个 postgreSQL 数据库加载到 RAM 中

转载 作者:行者123 更新时间:2023-11-29 11:09:42 24 4
gpt4 key购买 nike

如何将我的整个 PostgreSql 数据库放入 RAM 中以便更快地访问?我有 8GB 内存,我想为数据库分配 2GB。我已经阅读了有关共享缓冲区设置的信息,但它只是缓存了数据库中访问最多的片段。我需要一个解决方案,将整个 DB 放入 RAM,任何读取都将从 RAM DB 发生,任何写入操作将首先写入 RAM DB,然后写入硬盘驱动器上的 DB。(类似于默认的 fsync =在 postgresql 配置设置中使用共享缓冲区)。

最佳答案

一段时间以来,我一直在问自己同样的问题。 PostgreSQL 的缺点之一是它似乎不像 MySQL 那样支持 IN MEMORY 存储引擎......

无论如何我遇到了一个article几周前描述了如何做到这一点;虽然它似乎只适用于 Linux。我真的不能保证它,因为我自己没有尝试过,但它似乎是有道理的,因为 PostgreSQL 表空间确实被分配了一个已安装的存储库。

但是,即使使用这种方法,我也不确定您能否将索引也放入 RAM 中;我不认为 MySQL 强制 HASH 索引与其 IN MEMORY 表一起使用...

我也想做类似的事情来提高性能,因为我也在处理庞大的数据集。我正在使用 python ;他们有字典数据类型,这些数据类型基本上是 {key: value} 对形式的哈希表。使用这些非常有效。基本上,为了将我的 PostgreSQL 表放入 RAM,我将它加载到这样一个 python 字典中,使用它,并偶尔将它保存到 db 中;用得好还是值得的。

如果您不使用 python,我很确定它们是您的语言中类似的字典映射数据结构。

希望这对您有所帮助!

关于performance - 需要将整个 postgreSQL 数据库加载到 RAM 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/407006/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com