google-bigquery - 带有 where 子句的 Google Bigquery 表装饰器

标签 google-bigquery

据说表装饰器性价比更高,所以我做了测试:

从 [myDataSet.myTable@-86400000--30000] 选择计数(不同 ID)

显示仅扫描 15.6 GB 数据 有效:此查询运行时将处理 15.6 GB。

当我添加 where 子句时,它显示它将处理超过双倍的数据大小:

从 [myDataSet.myTable@-86400000--30000] 中选择计数(不同 ID),其中 col='something' 有效:此查询运行时将处理 34.0 GB。***

为什么会有差异?我怎样才能避免这种情况?

最佳答案

如果 col 不是“不同的 ID”,那么这是正常的。

Big Query“已处理大小”取决于它需要扫描的列数。如果您将 col 放在返回值中的 uniqueID 之上,那么它将需要读取两者。尺寸加倍才有意义,不是吗?

尝试检查有多少数据select uniqueID, col from [myDataSet.myTable@-86400000--30000]。我有一种感觉,它会是一样的:)

关于google-bigquery - 带有 where 子句的 Google Bigquery 表装饰器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29176350/

相关文章:

java - 如何使用 Java 将数据从 Cloud Storage 加载到 BigQuery

google-bigquery - 在 Google BigQuery 中计算月差

google-bigquery - 将数据从 BigQuery 导出到 GCS - 拆分文件大小控制

c# - .NET InsertMediaUpload 将 CSV 上传到 BigQuery 时出现奇怪的问题

google-bigquery - 以编程方式创建日期分区表

google-api - BigQuery - 检查表是否已存在

python - 如何在没有最终用户交互的情况下从 Python 以编程方式查询 BigQuery?

sql - 有没有办法使用 BigQuery 的 DAYOFWEEK 但以星期一为第一天?

google-sheets - 在运行 BigQuery 作业之前确定资源使用情况

python - 查询在 bigquery Web UI 中返回非空数据集,但在 python 脚本中返回空集