Optimal operator deployment and replication for elastic distributed data stream processing