Volume,
under normal circumstances operators do not leave empty seats in business while eco is empty. You must have been a victim of poor planning.
In those aircraft the config can be changed in a second, and it usually is, if the airline sees that the business booking has gone up. It could have been that a lot of eco passengers were no-shows or misconnected for the flight, but then again, you may just have been unlucky.
Several aircraft types require ballast for partially empty, partially full or ferry flights. Emb135-145, MD80, F100, Caravelle among some. You may see a connection, as all of these aircraft have tailmounted engines. One Emb145 may require ballast for a full flight where another may not even though they have exactly the same payload, the difference may come down to the actual aircraft. One ac may have a heavier pantry, another may have thrustreversers. All those xtra weights influence the need for ballast.
But trust me, no operator likes to load ballast on any plane!
/fs