gpt4 book ai didi

sql - 我如何找出 Postgres 中的大 TEXT 字段有多大?

转载 作者:数据小太阳 更新时间:2023-10-29 01:47:22 28 4
gpt4 key购买 nike

我在 Postgres 的 TEXT 字段中存储了一些大型 XML 文档,我试图找出 TOAST 压缩它们的效率。我有一个 2.2mb 的 XML 文档,可以压缩到 51kb,所以我想了解 TOAST 的压缩率与其相匹配的程度,以便最终决定我将如何随时间归档这些文档。

Postgres 中是否有一个函数可以让我像这样识别特定列和行的 TOAST 压缩大小?

最佳答案

您需要 pg_column_size 用于 TOASTed 大小,octet_length 用于未烘烤大小。 pg_column_sizesystem administration functions section of the documentation 中.请参阅文档和 this question更多细节。

例子:

craig=> CREATE TABLE toastdemo(x text);
CREATE TABLE
craig=> insert into toastdemo(x) select * from repeat('abcdef',1000);
INSERT 0 1
craig=> select pg_column_size(x), pg_column_size(repeat('abcdef',1000)) FROM toastdemo;
pg_column_size | pg_column_size
----------------+----------------
84 | 6004
(1 row)

关于sql - 我如何找出 Postgres 中的大 TEXT 字段有多大?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15983152/

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