Before we say too much about the performance of your algorithm, encoding/decoding speed and memory use must be considered, especially with very large inputs.
Note that on this particular small sample of text, Zstandard `zstd -13` compresses it to 288 bytes, and with default settings, 292 bytes. Brotli using default settings compresses it to 236 bytes.