Stream Compression
Does anyone have insight into how the Stream Global Compression works in 2022? I'm particularly interested in the XDSb repository on the Edges. As I understand it anything new will be compressed. Is there a compression method that is used that can be utilized by other code? How are the retrievals aware that the contents are compressed in order to de-compress them?
Comments
Hi Paul,
IRIS use gzip/zlib to compress and decompress data. You can see more information in the documentation:
https://docs.intersystems.com/iris20222/csp/docbook/Doc.View.cls?KEY=RCOS_vzeos
Hello Paul,
The compression is using "zstd" type of compression, comming from %occStream.inc
The function that is used is: $System.Util.Compress(%data,"zstd")
In regards to by XDSb portion of my question, I found this video from Mark Bolinsky that states that in order to compress existing streams, you just write a routine that reads then saves each existing stream.
Hi @Paul Riker
Did you managed to make this work?
I don't find it in HS 2022.1 or 2
Check out this repo.
I have already check out this repo not working in my case
I have scanned PDF stored in repo edge in Stream binary
We haven't attempted yet. May be a while. I was told that IRIS actually performs the compression.
https://docs.intersystems.com/iris20222/csp/docbook/Doc.View.cls?KEY=GO…
https://docs.intersystems.com/hs20222/csp/docbook/DocBook.UI.Page.cls?K…
"19. Beginning in version 2022.2, HealthShare offers stream compression for your Edge Gateways, and provides a conversion utility to compress existing streams in the ECR database at each Edge Gateway. The conversion process is designed to not interfere with regular Edge Gateway data processing, and should complete within a day. ..."