问题描述
我的Apache Beam管道的目标是从BigQuery中的表中获取数据,然后将其输出到镶木地板文件中。
我试图在我的Apache Beam管道中使用WriteToParquet PTransform
,这要求将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
模式。
These是各种可用的数据类型。我可以使用哪一个?
解决方法
您可能希望为此使用pyarrow.struct。