对定义为外部 table 的镶木地板文件进行列修剪

Column pruning on parquet files defined as an external table

上下文:我们将历史数据存储在 Azure Data Lake 中,作为来自现有 Databricks 管道的版本化镶木地板文件,我们在其中写入不同的 Delta tables。一个特定的日志源每天大约有 18 GB 的镶木地板。我已通读 documentation 并使用 Kusto.Explorer 在我为该日志源定义的外部 table 上执行了一些查询。在 Kusto.Explorer 的查询摘要 window 中,我看到我在搜索时下载了整个文件夹,即使使用项目操作员也是如此。唯一的例外似乎是当我使用 take 运算符时。

问题:是否可以修剪列以减少从外部存储获取的数据量?无论是在外部 table 创建期间还是在查询时使用运算符。

背景:我问的原因是在 Databricks 中可以使用 SELCECT 语句只获取我感兴趣的列。这大大减少了查询时间。

正如 David 在上面所写的那样,优化确实发生在 Kusto 端,但“下载大小”指标存在一个错误 - 它显示总数据大小,而与所选列无关。我们会解决的。感谢报告。