Sort:  

Right now Hive Analytics just does offset and gets the top 500 by balance, but if you sort by staked, it will only sort among those 500 user which are not the top 500 staked. This will be resolved later as the main point was for balance rich list.

This pr lets you order by stake too (same issue)

Another solution is making your own API against mongo, which is what I was planning on doing for some complex reports.

Absolutely, for the reporting you plan on doing that would be the best method, because then you can get real creative with the queries vs api calls. My simple richlist view doesn't need that level of control.