A RegionServer API has to be added which will return HDFSBlockDistribution for all the regions it hosts. RS already has this info cached and updated when flush/compaction happens. Master can query and get instead of hitting the namenode and caching. The larger the cluster becomes, the more costly it becomes to get this information and more stale the cached information becomes.
This jira is only to add the API to regionserver.