I can imagine that it's simply a lot of data since you mentioned nested data structures. In this case, maybe you can change your data structure (or the way you fetch data from Realm) to reduce the amount of data that is loaded at once, and fetch the detailed item data when you actually need it. Or perhaps there is a paging functionality for Realm that you could use.
The sledgehammer method would be to parallelize the
map
operation to run on several threads. That should lower the transformation time but doesn't really solve the underlying issue.