了解 Eventhouse 的计算资源使用情况

Microsoft Fabric Eventhouse 的构建是为了根据使用模式调整计算,这意味着容量使用量会自动缩放以满足工作负荷要求。

本文将为你介绍影响事件屋计算资源大小的最常见因素,以便你可以做出正确决策来优化事件屋。

影响计算大小的关键因素

多个因素决定了事件屋计算的正确大小。 通过了解这些因素,可以做出明智的决策来优化使用情况。

缓存利用率

热缓存中保存的数据量是影响事件空间计算大小的一个主要因素。 每个计算大小都提供一定数量的热缓存容量。 随着此限制的临近,计算和缓存空间会相应地增加。 因此,有效管理热缓存 利用率至关重要。

了解当前缓存的容量级别

若要了解当前的热缓存使用情况,请运行以下命令:

.show diagnostics
| project HotDataDiskSpaceUsage

显示诊断命令的屏幕截图。

此命令显示当前使用的热缓存空间百分比。

  • 如果热缓存使用率达到约 95%,无论其他使用情况(如 CPU、数据摄取等),您的计算资源将升级到下一个级别。
  • 如果热缓存使用率低于约 35% 并且满足所有其他缩放因素(CPU、引入等),则计算将缩小到下一个较小的规模。

若要了解热缓存的使用位置,请深入特定表格进行分析。 首先运行以下命令。

.show tables details
| summarize HotExtentSize=format\_bytes(sum(HotOriginalSize),2)

显示表详细信息命令的屏幕截图。

若要在表级别调整缓存策略,请修改 表级缓存策略

引入容量

事件屋大小的另一个因素是引入利用率。 为了确保及时引入,Fabric 会监视引入负载,并调整 Eventhouse 计算容量以适应正在引入的数据。

检查引入负载

查看引入负载时,需要随着时间的推移观察它。 实现它的最佳方式是启用 工作区监视

启用该查询后,运行类似于以下查询的查询以查看当前的引入负载:

EventhouseMetrics
| where Timestamp > ago(1d)
| where ItemName == "FieldDemos"
| where MetricName == "IngestsLoadFactor"
| summarize MinValue=min(MetricMinValue), max(MetricMaxValue) by bin(Timestamp,15m)
| render timechart

显示随时间推移的引入负载因子的图形的屏幕截图。

此命令显示当前计算规模下eventhouse使用的引入容量百分比。 此数字的一些启示:

  • 如果当前大小持续占用 70% 或更多引入容量,则会根据引入来调整计算大小。 这意味着,除非引入模式已更改,否则您将继续在此计算规模或更大的情况下运行,而与其他活动无关。
  • 如果此百分比一直低于 70%,则表示计算大小取决于其他因素。 它们可以是事件屋上的最小容量设置、缓存利用率或查询负载。 此设置也可以在 EH 中的 工作区监视仪表板表引入选项卡中找到。

显示引入统计信息的工作区监视仪表板的屏幕截图。

查询负载

查询的负载和性能会影响计算需求事件屋的规模。 监视此性能的最佳方式是启用 工作区监视 并利用 工作区监视仪表板

可以从仪表板中的 “Eventhouses ”选项卡开始。 Eventhouse Queries 部分提供

  • 查询计数
  • 一段时间内的查询状态
  • 执行查询的应用程序
  • 大多数查询的数据库
  • 运行查询最多的用户

工作区监视仪表板的屏幕截图,其中显示了查询加载信息。

若要查看更多详细信息,请使用 EH |“查询 ”选项卡。此选项卡提供特定于特定查询的详细信息,并提供以下参数,可帮助你快速向下钻取到特定问题。

参数名称 DESCRIPTION
排名靠前的查询表顺序 允许按时间戳、CPU 时间、持续时间、冷存储访问、内存峰值对查询进行排序。
活动中心名称 允许您筛选到特定事件屋或跨多个事件屋进行查看。
数据库名称 允许你选择感兴趣的数据库。
用户 允许指定或排除用户。
查询状态 基于查询状态进行筛选。
应用程序 允许筛选到运行查询的应用程序。

工作区监视仪表板的屏幕截图,其中显示了一段时间内 Kusto 查询语言(KQL)查询的图表和图形。

使用此仪表板可以轻松发现几个常见问题:

  • 按 CPU 时间筛选,查看哪些查询可能导致 CPU 使用率高。
  • 按“最高持续时间”进行筛选,查看执行时间最长的查询。
  • 按内存峰值进行筛选,以查看哪些查询可能导致内存问题。
  • 使用 按状态和时间查询 查看查询是否出现峰值。
  • 使用“已限制”磁贴查看 Fabric 容量是否限制了任何查询。

使用此报表,可以了解可能需要注意的特定应用程序、用户和查询。 本文不介绍查询优化,但查找需要优化的实际查询文本可让你启动该过程。

自动化响应

本文逐步讲解了如何通过使用控制命令、对工作区监视Eventhouse执行查询,以及使用工作区监视仪表板,来观察Eventhouse的使用情况。

若要从上述任何方案设置通知,请使用 激活器。 激活器允许您在 Fabric 中多个地点处理您的数据,包括创建以下操作:

它使你能够从 KQL 查询集为控件命令设置动作,并从 Real-Time 仪表板中为监视仪表板的磁贴设置动作。 可以根据要求发送电子邮件、Teams 中的信息或初始化 Microsoft Power Automate

概要

通过 Eventhouse 概览、数据库概览、KQL 数据库控制命令以及工作区监控数据库来提供 Eventhouse 计算能力的可观测性。 本文介绍了最常见的方案,以及如何使用 KQL 数据库控制命令或工作区监视数据库来了解计算使用情况。