gpt4 book ai didi

postgresql - 具有超过十亿行的表的 Postgres 性能

转载 作者:行者123 更新时间:2023-11-29 11:46:56 26 4
gpt4 key购买 nike

我正在做一个 PoC 来检查 Postgres 是否适合我们的用例。

我有以下工作量:

数据查询:表示层将在过去 2 周内每 15 分钟检索一次数据

数据加载:每 15 分钟,就有 500 万行数据被加载到一个表中,我观察到该加载消耗了 375MB。每天,这将是 4.8 亿行,表大小为 36GB。

在我加载数据几天后(表中大约 10 亿行),我运行了几个查询,我观察到选择查询几个小时都没有响应。例如select count(*) .. 和 select * .. 简单但繁重的查询。没有连接。

我的要求是每 15 分钟加载一次数据并将其存储几个月,但我还没有做到这一点。即使有几天的上述工作负载数据,我也观察到选择查询没有响应。

我想知道 postgres 是否对这种工作负载有任何限制,或者我没有调整好它!我是否错过了任何关键参数的配置?

我已经查看了 postgres 官方文档 ( https://www.postgresql.org/about/ ) 的限制,我的要求并没有真正达到 postgres 中规定的理论限制。

Postgres 配置:以下是我配置的 postgres 参数。

checkpoint_completion_target | 0.9
default_statistics_target | 500
effective_cache_size | 135GB
maintenance_work_mem | 2GB
max_connections | 50
max_stack_depth | 2MB
max_wal_size | 8GB
min_wal_size | 4GB
shared_buffers | 45GB
wal_buffers | 16MB
work_mem | 471859kB

服务器配置:

虚拟化硬件!

vCPU:32

内存:200GB

我想知道 postgres 是否需要物理专用硬件。也许它无法处理虚拟化硬件上的这种负载!

如果您对此有任何意见或建议,我们将不胜感激。BR/老马

最佳答案

问题不会出在 PostgreSQL 上,而是硬件和您将如何调优数据库。事实上,雅虎、Reddit、Yandex 和其他公司都在使用它。从 9.6 开始有 parallel queries这样您就可以更有效地利用您的 CPU。

关于postgresql - 具有超过十亿行的表的 Postgres 性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45629767/

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