Google Cloud 宣布 BigQuery 基于历史记录的优化全面上市,该优化可以将查询性能提高多达 100 倍。此新功能旨在从过去的查询执行中学习,并确定可应用于未来执行的其他改进。

BigQuery 基于历史记录的优化的一个有趣方面是它能够改进不同类型的查询,包括涉及高度选择性联接的查询。例如,如果 BigQuery 确定某个联接产生的行数远少于其输入,则可以选择在执行计划的早期阶段运行该联接。这可以显著减少需要处理的数据量,从而提高整体性能。

此外,BigQuery 基于历史记录的优化可以通过在整个查询中插入选择性半联接操作来帮助减少 BigQuery 扫描的数据量。在某些情况下,BigQuery 可以在具有多个最终联接在一起的并行执行路径的查询中识别高度选择性联接(类似于联接下推)。BigQuery 然后可以根据选择性联接插入新的“半联接”操作,这些操作可以“减少”这些并行执行路径扫描和处理的数据量。

总的来说,BigQuery 基于历史记录的优化是对 BigQuery 的宝贵补充。通过利用来自过去查询执行的历史数据,此新功能可以显著提高查询性能并降低成本。此外,由于它可以自动运行,因此用户无需对其查询进行任何更改即可受益于这些改进。