public static ZstdHFileDecompressionContext fromConfiguration(Configuration conf) {
    boolean allowByteBuffDecompression =
      conf.getBoolean("hbase.io.compress.zstd.allowByteBuffDecompression", true);
    Pair<ZstdDictDecompress, Integer> dictAndId = ZstdCodec.getDecompressDictionary(conf);
    if (dictAndId != null) {
      return new ZstdHFileDecompressionContext(dictAndId.getFirst(), dictAndId.getSecond(),
        allowByteBuffDecompression);
    } else {
      return new ZstdHFileDecompressionContext(null, 0, allowByteBuffDecompression);
    }
  }
Holds HFile-level settings used by ZstdByteBuffDecompressor. It's expensive to pull these from a
Configuration object every time we decompress a block, so pull them upon opening an HFile, and
reuse them in every block that gets decompressed.
hbase-compression/hbase-compression-zstd/src/main/java/org/apache/hadoop/hbase/io/compress/zstd/ZstdHFileDecompressionContext.java