上下文:GitHub 问题 26853
我对上述提到的功能请求和差异有疑问
Beam 2.45 versus 2.49
。
如果
FailedInserts PCollection
没有被消耗,BigQueryIO
将默默地删除记录。这可能按预期工作,但我相信我们应该使用计数器向用户公开这种情况。”
看起来
FailedInserts PCollection
是用来解决模式不匹配的,即当记录和提供的模式不匹配并导致转换方法抛出异常时,该记录将被输出到FailedInserts
。
在
Beam 2.45.0
中,FailedInserts PCollection
将被简单地压扁并扔掉;在 Beam 2.49.0
中,那些 FailedInserts PCollection
仍将被压平并丢弃,但 Beam 会更新一个计数器以显示发生了多少次失败的转换。
有人可以帮忙确认以下两点吗?
FailedInserts PCollection
用于仅收集在 Beam 2.45.0 and Beam 2.49.0
中架构不匹配的记录;
当
FailedInserts PCollection
不为空时,Beam 2.45.0 and Beam 2.49.0
都会丢弃这些记录;唯一的区别是 Beam 2.49.0
会更新计数器,而 Beam 2.45.0
没有这样的计数器。
希望确认
FailedInserts PCollection
结果是否在两个 2.45 and 2.49
中都被丢弃
对于 BigQuery IO,鉴于 Beam 和 BigQuery 的快速发展,强烈建议始终使用最新的 Beam。