I am surprised that they have a way to serialize compound keys but they don’t serialize the non-primary fields into a single value. Why wouldn’t that be obviously easier?
They have the primary key fields serialized in the key so they need code to make a match pattern against it etc. If the value contained the entire non-primary fields in the exact same format then that same pattern code could be used to evaluate where clauses on those fields too etc.
I would anticipate it also being massively massively faster and dramatically reduce write amplification etc.