小编典典

解释Apache Beam python语法

python

我已经阅读了Beam文档,也阅读了Python文档,但是没有找到关于大多数示例Apache Beam代码中使用的语法的很好的解释。

谁能解释什么_|以及>>在下面的代码在做什么?引号中的文本(即“
ReadTrainingData”)是否有意义,或者是否可以与其他任何标签互换?换句话说,该标签如何使用?

train_data = pipeline | 'ReadTrainingData' >> _ReadData(training_data)
evaluate_data = pipeline | 'ReadEvalData' >> _ReadData(eval_data)

input_metadata = dataset_metadata.DatasetMetadata(schema=input_schema)

_ = (input_metadata
| 'WriteInputMetadata' >> tft_beam_io.WriteMetadata(
       os.path.join(output_dir, path_constants.RAW_METADATA_DIR),
       pipeline=pipeline))

preprocessing_fn = reddit.make_preprocessing_fn(frequency_threshold)
(train_dataset, train_metadata), transform_fn = (
  (train_data, input_metadata)
  | 'AnalyzeAndTransform' >> tft.AnalyzeAndTransformDataset(
      preprocessing_fn))

阅读 211

收藏
2020-12-20

共1个答案

小编典典

Python中的运算符可以重载。在Beam中,|是的同义词apply,将aPTransform应用于aPCollection以产生一个new
PCollection>>允许你命名为在各种UI容易显示步骤-的之间的字符串|>>仅用于这些显示目的和识别特定的应用。

参见https://beam.apache.org/documentation/programming-
guide/#transforms

2020-12-20