@sveri Cheers for the response. Sadly the data and inbound data structures are pretty fixed, but the actual keys are fairly unknown. Looks as though the underlying data structure the flatten is working on is the slow bit however.
I'm using https://github.com/ninjudd/clojure-protobuf to deserialise raw protobuf to a flatland.protobuf.PersistentProtocolBufferMap
to flatten.
the flatten function on this takes around 300µs, compared to 36µs on a normal PersistentArrayMap
@poooogles Did you know there is transit now which also has a java implementation? You might want to try that one instead for deserialisation?