I’m working on implementing CouchDB’s map/reduce functionality on top of FoundationDB. I’ve just started working on the reduce work which is quite a tricky thing to solve. Currently, I’m looking to implement a skip list - similar to RankedSet in the Record Layer, in FDB with aggregated results at each level.
I’ve written an RFC with a basic js implementation on how I plan to implement it. I would really appreciate any feedback from the community on this.
Just to note, at this stage the reduce index would not be built in parallel, but we would like to do that as a next step.