Similar Items: Scheduling and load balancing in parallel and distributed systems