问题描述
我根据以下代码编写了一个示例 https://github.com/apache/beam/blob/master/sdks/python/apache_beam/examples/sql_taxi.py
我收到一条错误消息
在/usr/local/lib/python3.6/dist-packages/apache_beam/typehints/schemas.py中键入_to_runner_api(type_) (177)第177章 178 -> 179提高ValueError(“不支持的类型:%s”%type_) 180 181
ValueError:不支持的类型:任何
代码的相应部分是
mean_open_close = ( csv_lines |beam.Map( lambda x: beam.Row( element_date=x['Date'],element_open=x['Open'],element_close=x['Close'])) | sqlTransform( """ SELECT element_date,AVERAGE(element_open) AS average_open,AVERAGE(element_close) AS average_close FROM PCOLLECTION""")
)
解决方法
在没有实际代码的情况下,目前尚不清楚问题出在哪里(因为所发布的示例运行得很好),但是直觉我可能猜到您正在写
beam.Map(lambda x: beam.Row(attr=expr,...))
对于某些expr
来说,Beam不能为其推断类型。您可以明确地将其写为
beam.Map(lambda x: beam.Row(attr=type(expr),...))