It's often easier to think of ManageIQ appliances as database & worker(s), rather than master and slave(s). The worker processes running on the worker appliances all load-balance pretty well - some within a zone and some within a region.
You haven't mentioned what your provider type is, and roughly how many objects (VMs, instances, pods, containers etc) that you're planning on processing metrics for. This number is a critical factor in scaling worker processes and MIQ appliances. We normally use a scaling factor of around 150-200 VMs per C&U Data Collector worker process, which works out to 3-400 per MIQ appliance (the default worker process count is 2, but this can be increased per appliance at the expense of extra CPU load)
To answer your specific question, it's better to enable CPU-intensive roles such as the 3 C&U roles on appliances that aren't running the database. If your 2 'slave'/worker appliances are both in the same zone as your provider then you can happily enable all 3 roles on both appliances. They will load-balance between themselves.
Hope this helps,