Sharding for scalability