De functies zstd_compress en zstd_decompress comprimeren en decomprimeren een blob met het Zstandard-algoritme.
De functies zijn vergelijkbaar met zlib_compress en zlib_decompress. Voor teksten is Zstandard doorgaans effectiever dan Zlib of GZip terwijl de snelheid vergelijkbaar of hoger is.
Werking
zstd_compress neemt een blob en levert het Zstandard-gecomprimeerde resultaat als blob. zstd_decompress doet het omgekeerde: een Zstandard-gecomprimeerde blob levert de oorspronkelijke inhoud terug. Beide functies accepteren precies één parameter.
Voorbeeld: Comprimeren
Het volgende voorbeeld comprimeert een tekst en toont het resultaat in base64:
select base64_encode(zstd_compress(ascii_to_blob('Deze tekst laat zien hoe de functie zstd_compress herhaalde patronen herkent en tot een klein resultaat comprimeert.')))
Met als resultaat:
KLUv/SB0rQIAQkcUFbClOee0JH6L7J1kWCbS5rCUuYxZBICjjQomdKKv+hHSWCs+pmb395p7s0GTmu3wlepxqgiaNNOY0AnBeA51uTBhUI/6SM1l6KtOn8avBwcCAA==
Voorbeeld: Decomprimeren
Het volgende voorbeeld decomprimeert de blob uit het vorige voorbeeld en levert de oorspronkelijke tekst terug:
select to_char(zstd_decompress('KLUv/SB0rQIAQkcUFbClOee0JH6L7J1kWCbS5rCUuYxZBICjjQomdKKv+hHSWCs+pmb395p7s0GTmu3wlepxqgiaNNOY0AnBeA51uTBhUI/6SM1l6KtOn8avBwcCAA=='))
Met als resultaat:
Deze tekst laat zien hoe de functie zstd_compress herhaalde patronen herkent en tot een klein resultaat comprimeert.
Beschikbaarheid
De SQL-functies zstd_compress en zstd_decompress zijn beschikbaar vanaf release 27.0.