class_docstr: An operand for shuffle execution which partitions data by the value in each record’s partition key, and
  send the partitioned data from all mappers to all reducers.
class_docstr_tok: ["An","operand","for","shuffle","execution","which","partitions","data","by","the","value","in","each","record","\u2019","s","partition","key",",","and","send","the","partitioned","data","from","all","mappers","to","all","reducers","."]
code: def __init__(self, *args, **kwargs):
      super().__init__(*args, **kwargs)
      if self.stage == OperandStage.reduce:
          # for reducer, we assign worker at first
          self.scheduling_hint.reassign_worker = True
  
file_path: mars/mars/core/operand/shuffle.py
imports: from .None import ShuffleFetchType, FetchShuffle
  from ...None import opcodes
  from ...serialization.serializables import Int32Field, StringField, TupleField, FieldTypes
  from .base import Operand, VirtualOperand, OperandStage
label_desc: Use image node_id 1 to create a new MapReduceOperand object from inherited base classes: Operand with example: obj = MapReduceOperand()