Communication-Efficient Federated Learning With Data and Client Heterogeneity