Esempio n. 1
0
 def run_PartialGroupByKeyCombineValues(self, transform_node):
   element_coder = self._get_coder(transform_node.outputs[None])
   _, producer_index, output_index = self.outputs[transform_node.inputs[0]]
   combine_op = operation_specs.WorkerPartialGroupByKey(
       combine_fn=pickler.dumps(
           (transform_node.transform.combine_fn, (), {}, ())),
       output_coders=[element_coder],
       input=(producer_index, output_index))
   self._run_as_op(transform_node, combine_op)
def create(factory, transform_id, transform_proto, payload, consumers):
    serialized_combine_fn = pickler.dumps(
        (beam.CombineFn.from_runner_api(payload.combine_fn,
                                        factory.context), [], {}))
    return factory.augment_oldstyle_op(
        operations.PGBKCVOperation(
            transform_proto.unique_name,
            operation_specs.WorkerPartialGroupByKey(
                serialized_combine_fn, None,
                [factory.get_only_output_coder(transform_proto)]),
            factory.counter_factory, factory.state_sampler),
        transform_proto.unique_name, consumers)