当我在GCP BigQuery、中为一个大分区表选择查询时
select * from <myBQtable> limit 10;
我还没有点击";运行";按钮,它告诉我";此脚本在运行时将处理2TB">
我想知道为什么一个";极限10";查询仍然会有这么大的成本。
使用BigQuery,您需要为扫描的数据量付费,而不是为获得的数据量买单。您有不同的方法来优化通过分区和集群查询的数据量。
但是,通过避免获取所有列(select *
(,而是只选择相关列(BigQuery有一个面向列的存储,如果你没有提到列,你就不会加载/扫描它(。您有在BigQuery 中节省成本的指南
LIMIT
不用于控制BigQuery中的成本。它只会减少显示结果所需的总时间。
因此,对于SELECT * FROM [table] LIMIT 10
,查询将读取整个表,但只显示10行。