我的Apache Beam管道的目标是从BigQuery中的表中获取数据,然后将其输出到拼花文件中。
我正在尝试在我的Apache Beam管道中使用WriteToParquetPTransform
,这需要将schema
作为pyarrow.Schema
传递。
我的这部分代码将BigQuery的不同类型的模式映射到各种pyarrow
模式:
data_type_mapping = {
'STRING': pyarrow.string(),
'BYTES': pyarrow.string(),
'INTEGER': pyarrow.int64(),
'INT64': pyarrow.int64(),
'FLOAT64': pyarrow.float64(),
'FLOAT': pyarrow.float64(),
'BOOLEAN': pyarrow.bool_(),
'TIMESTAMP': pyarrow.timestamp(unit='ms'),
'DATE': pyarrow.date32(),
'DATETIME': pyarrow.string()
}
问题是BigQuery中有一个数据类型RECORD
,我不知道如何将它映射到正确的pyarrow
模式。
这些是各种可用的数据类型。我可以用哪一个?
您可能希望使用pyarrow.struct。