提供的架构与追加的表不匹配
Posted
技术标签:
【中文标题】提供的架构与追加的表不匹配【英文标题】:Provided Schema does not match Table on append 【发布时间】:2012-08-20 09:18:09 【问题描述】:我有一个带有连接的大选择,其中两个表的大小相同,因此为了处理它,我将右表上的选择限制为块(通过使用 %),然后多次运行相同的选择,一次用于每个块并附加到目标表。
该过程适用于块 0、1、2,但对于任何后续块,它都会失败并声称“提供的架构与表不匹配”。
一些失败的作业如下:
job_01eb892ab77c49f2ab5a7d24fa19ea96 (chunk 3)
job_ae450380bacd42b8aae7b7b350a8bd61 (chunk 4)
job_6f40617d0e6046e7b474dffef220ade7 (chunk 5)
job_edfbf86b95364efba3a21ae855827eb4 (chunk 6)
如果我删除表并单独运行第一个失败的块 (3) (job_bbbd3c8b56594725a3d3933c79f96286),它可以正常工作,并且新表中的架构与预期相同。
如果我有选择地处理块 0,1,3,4,块 3 工作正常,现在它在 4 (job_76c3addb316644f595988cbc393ffa8a) 上失败,如果我运行块 2,3,4,5 它在块 5 (job_c5d99e0fa6b0481b8e5ea6b5d6f26271) 上失败。
这看起来 BQ 的一个问题是阻止将第四个块(无论它是什么)附加到目标表,并且它给出了错误的错误描述。
有什么建议吗? 谢谢
【问题讨论】:
【参考方案1】:这看起来像是一个错误,当我们开始将表结果写入磁盘时,我们会使用稍微不同的模式格式。我已经签入了一个修复程序,但它可能要到下周发布才能使用。
【讨论】:
感谢 Jordan,如果您在修复到位时通知我,那么我会为您测试。问候【参考方案2】:我认为这是一个已知错误,查询结果返回不可预测的字段模式(必需与可选)。 IIRC,您可以使用 AS 或 IF() 来强制设置可选标志。
【讨论】:
嗨,我不确定在创建表时字段模式是如何设置的,但是我为每个字段都有一个 AS,对于那些可能为 null 的字段,我有一个 IFNULL(),所以我不确定场模式是否可能是原因,因为结果应该是稳定的。谢谢以上是关于提供的架构与追加的表不匹配的主要内容,如果未能解决你的问题,请参考以下文章
[ jquery 文档处理 append(content|fn) ] 此方法用于向每个匹配的元素内部追加内容,这个操作与javascript对指定的元素执行appendChild方法,将它们添加到文档
如何使用 Python BigQuery API 追加到 BigQuery 中的表
项目实战:Qt文件改名工具 v1.2.0(支持递归检索,搜索:模糊匹配,前缀匹配,后缀匹配;重命名:模糊替换,前缀追加,后缀追加)