我试图读取一个GCSparquet blob,其中文件名来自apache光束中以前的p集合。代码示例如下。
pubsub = (p | "Read from Topic" >> ReadFromPubSub(topic=topic)
|"decode bytes" >>beam.Map(lambda element: element.decode('utf-8')) # b'"gs://beam-gcs/example.parquet"'
| "Read from Parquet" >> **beam.io.?????** #"gs://beam-basics-gcs/example.parquet"
)
ib.show(pubsub)
我想使用流式数据流作业,我希望通过pubsub主题获得不同的文件名。最后,在阅读了parque之后,我想摄取到bigquery中
要读取文件名的PCollection的内容,您可以使用ReadAllFromParque。
错误描述了beam.io。ReadFromParque()需要一个指向一组Parquet文件的文件模式,但没有提供。
可以通过以下方式为Parquet文件中的记录创建PCollection。
使用Beam. Pipeline()作为p:记录=p|'读取'
其中 /mypath/myparquetfiles*是指向一组Parquet文件的文件模式。
请包括Praque文件路径,从您要读取并尝试重新运行数据流作业的位置。
参考:https://beam.apache.org/releases/pydoc/2.11.0/apache_beam.io.parquetio.html#apache_beam.io.parquetio.ReadFromParquet