Google Bigquery UPDATE行需要太长时间 - 需要改进性能解决方案

时间:2018-04-30 17:16:28

标签: sql-update google-bigquery

对于220mln行,此更新需要194秒。 有没有办法改善它?

#standardSQL
UPDATE dataset.people SET CBSA_CODE = '54620' where substr(zip,1,5) = '99047'

1 个答案:

答案 0 :(得分:3)

在询问性能帮助时,从BigQuery UI中包含执行计划的屏幕截图非常有用,可以查看哪些阶段是最密集的,以及花费的时间。但是,如果没有这个,我怀疑这个小优化应该会有所帮助:

UPDATE dataset.people SET CBSA_CODE = '54620' WHERE zip LIKE '99047%'

BigQuery应该能够将此过滤器推送到其存储系统,因为它是表达字符串包含的一种更自然的方式,因此如果您看到一个高的" Read"在原始查询的执行计划中,这可能会减少它。