imc*_*iac 5 php compression postgresql
我们将加密的文件内容存储在 PostgresSQL 数据库中。我们储存了很多。目前我们无法将此内容写入任何其他地方(例如 FTP 或内部存储)。尽管如此,我们的数据库仍在快速变得越来越大。
我已经知道 PostgreSQL 默认情况下会压缩字符串数据,所以我的问题是:在将其插入数据库之前是否值得在应用程序端进行字符串压缩。这会节省空间吗?
也许您知道如何调整 PostgreSQL 或任何其他方法来在 PostgreSQL 表中存储文件时节省一些空间。
我的扩展答案
因为我想了解更多,所以我做了一些实验。
gzdeflate这是结果:
text STORAGE EXTENDED-表大小13MBtext STORAGE EXTERNAL- 表大小1MB + Toast 1027MBbytea- 表大小5.2MB我想指出的是,预压缩数据并将其存储为文本STORAGE EXTENDED是可能的,结果是700kb表大小,但预压缩数据包含大多数字符集调色板之外的字符。检索此类数据是不可能的。
结论:
text,每 1GB 内容约 13MB 是非常好的比率。>2kb。如果您的字符串少于 2000 个字符,您必须更改此设置或自行压缩数据。