查询加速策略

适用于:✅Azure 数据资源管理器

外部表是引用存储在 Kusto 数据库外部的数据的架构实体。 由于各种因素(例如通过网络调用从存储提取数据、缺少索引等),对外部表运行的查询可能比对引入的数据运行的查询的性能更低。 查询加速允许在外部 delta 表的基础上指定一个策略。 此策略定义加速高性能查询数据的天数。

在 Azure Data Lake Store Gen2 或 Azure Blob 存储外部表上,Azure 数据资源管理器支持查询加速。

限制

  • 外部表中的列数不能超过 900。
  • 不支持具有检查点 V2 的增量表。
  • 对于具有 250 万多个数据文件的加速外部增量表,查询性能可能不是最佳。
  • 此功能假定增量表具有静态高级功能,例如列映射不会更改,分区不会更改,等等。 若要更改高级功能,请先禁用策略,并在进行更改后重新启用策略。
  • 增量表架构的更改也必须与相应的 .alter 外部增量表架构同步更新,如果发生中断性架构更改,可能会导致加速从头开始。
  • 不会缓存大于 1 GB 的 Parquet 文件。
  • 不允许手动编辑增量表,并可能导致意外结果。

注释

查询加速缓存作受群集的可用查询加速容量的限制。 .show capacity command运行以查看总计、已使用和剩余查询加速容量。

已知问题

  • 需要重新访问使用 OPTIMIZE 函数优化的外部增量表中的数据。
  • 如果在增量中运行频繁的 MERGE/UPDATE/DELETE作,可以使用更改重写基础 parquet 文件,Kusto 会跳过加速此类文件,从而导致在查询期间检索。
  • 系统假定 delta 表目录下的所有项目对所选用户具有相同的访问级别。 在 delta 表目录下具有不同访问权限的不同文件可能会导致意外行为。

用于查询加速的命令