数据粒度与数据保留
数据值的聚合处理
监控服务收集各种数据,包括用户会话使用情况、用户登录性能详细信息、会话负载平衡详细信息以及连接和计算机故障信息。数据根据其类别以不同方式进行聚合。了解使用 OData 方法 API 呈现的数据值聚合对于解释数据至关重要。例如:
- 连接会话和计算机故障在一段时间内发生。因此,它们以时间段内的最大值形式呈现。
- 登录持续时间是时间长度的度量,因此以时间段内的平均值形式呈现。
- 登录计数和连接故障是时间段内发生次数的计数,因此以时间段内的总和形式呈现。
并发的数据评估
会话必须重叠才能被视为并发。但是,当时间间隔为 1 分钟时,该分钟内的所有会话(无论是否重叠)都被视为并发。由于间隔太小,计算精度所涉及的性能开销不值得其带来的价值。如果会话发生在同一小时内,但不在同一分钟内,则不视为重叠。
汇总表与原始数据的关联
数据模型以两种不同方式表示指标:
- 汇总表以每分钟、每小时和每天的时间粒度表示指标的聚合视图。
- 原始数据表示在会话、连接、应用程序和其他对象中跟踪的单个事件或当前状态。
在尝试跨 API 调用或在数据模型本身中关联数据时,了解以下概念和限制至关重要:
- 部分间隔无汇总数据。 指标汇总旨在满足长期历史趋势的需求。这些指标被聚合到汇总表中以形成完整间隔。在数据收集的开始(最旧的可用数据)和结束时,没有部分间隔的汇总数据。当查看一天的聚合(间隔=1440)时,这意味着第一个和最近的不完整日期没有任何数据。尽管这些部分间隔可能存在原始数据,但它们从不被汇总。您可以通过从特定汇总表中提取最小和最大 SummaryDate 来确定特定数据粒度的最早和最晚聚合间隔。SummaryDate 列表示间隔的开始。Granularity 列表示聚合数据的间隔长度。
- 按时间关联。 指标按照上一节所述,聚合到汇总表中以形成完整间隔。它们可用于历史趋势,但原始事件的状态可能比为趋势分析而汇总的数据更具时效性。任何基于时间的汇总数据与原始数据比较都必须考虑到,对于可能出现的部分间隔或时间段的开始和结束,没有汇总数据。
- 遗漏和延迟事件。 如果事件在聚合期间被遗漏或延迟,聚合到摘要表中的指标可能会略有不准确。尽管监控服务会尝试维护准确的当前状态,但它不会回溯时间来重新计算摘要表中遗漏或延迟事件的聚合。
- 连接高可用性。 在连接高可用性期间,当前连接的摘要数据计数中会出现空白,但会话实例仍将在原始数据中运行。
- 数据保留期。 摘要表中的数据保留计划与原始事件数据的计划不同。数据可能因已从摘要表或原始表中清除而丢失。不同粒度的摘要数据,其保留期也可能不同。较低粒度的数据(分钟)比较高粒度的数据(天)清除得更快。如果某个粒度的数据因清除而丢失,则可能在更高粒度中找到。由于 API 调用只返回请求的特定粒度,因此某个粒度没有数据并不意味着在同一时间段内更高粒度的数据不存在。
- 时区。 指标使用 UTC 时间戳存储。摘要表按小时时区边界进行聚合。对于不按小时边界划分的时区,数据聚合的位置可能会存在一些差异。
数据粒度和保留
Director 检索的聚合数据的粒度是所请求的时间 (T) 跨度的函数。规则如下:
- 0 < T <= 1 小时 - 使用每分钟粒度
- 0 < T <= 30 天 - 使用每小时粒度
- T > 31 天 - 使用每日粒度
未从聚合数据中获取的请求数据来自原始会话和连接信息。此数据往往增长迅速,因此有其自己的清除设置。清除可确保仅保留长期相关的有用数据。清除可确保更好的性能,同时保持报告所需的粒度。Premium 许可站点的客户可以将其清除保留期更改为所需的保留天数,否则将使用默认值。如果与站点数据库失去连接,监控服务将使用下表中指定的 Premium 授权的默认保留天数。
要访问这些设置,请在交付控制器™ 上运行以下 PowerShell 命令:
asnp Citrix.*
Get-MonitorConfiguration
Set-MonitorConfiguration -<setting name> <value>
<!--NeedCopy-->
| # | 设置名称 | 受影响的架构表 | 监控页面中受影响的表和图表 | Premium 的保留天数 | 高级设置的保留天数 |
|---|---|---|---|---|---|
| 1 | 清理会话保留天数 | 监控数据.会话表和监控数据.连接表 | 此设置会影响“趋势”页面上的会话详细信息、按用户会话划分的登录持续时间、基于应用程序的使用情况表。 | 90 | 31 |
| 2 | 清理失败保留天数 | 监控数据.机器故障日志 和 监控数据.连接故障日志 | 趋势页面:此设置会影响“故障”选项卡上的图表和表格。 | 90 | 31 |
| 3 | 清理负载索引保留天数 | 监控数据.负载索引 | 此设置影响“趋势”页面上“负载评估器索引”选项卡中显示的数据。 | 3 | 3 |
| 4 | 已删除数据清理保留天数 | MonitorData 中的机器、目录、桌面组和虚拟机管理程序实体,其生命周期状态为“已删除”。此设置还会删除任何相关的会话、会话详细信息、摘要、故障或负载指数记录。 | 具有“已删除”生命周期状态的计算机、目录、桌面组和虚拟机管理程序实体。此设置还会删除任何相关的会话、会话详细信息、摘要、故障或负载指数记录。 | 90 | 31 |
| 5 | 清理摘要保留天数 | 监控数据.桌面组摘要、监控数据.故障日志摘要 和 监控数据.负载指数摘要 | 此设置影响“趋势”页面上的所有图表数据。 | 365 | 31 |
| 6 | 清理机器热修复日志保留天数 | 监控数据.热修复 | 此设置会影响“计算机详细信息”页面上显示的 VDA 修补程序数据。 | 90 | 31 |
| 7 | 清理分钟数据保留天数 | 所有摘要表 | 此设置会影响“趋势”页面上显示的“最近 2 小时”时间段的图表。 | 3 | 3 |
| 8 | 清理每小时保留天数 | 所有摘要表 | 这会影响趋势页面上显示的每周图表。 | 32 | 31 |
| 9 | 清理应用程序实例保留天数 | 监视数据.应用程序实例 | 此设置会影响容量管理选项卡上的图表和表格以及趋势页面上的应用程序使用情况表格。 | 90 | 不适用于此 |
| 10 | 清理通知日志保留天数 | 监视数据.通知日志 | 此设置会影响 Monitor 上显示的警报。 | 90 | 不适用此项 |
| 11 | 清理资源使用原始数据保留天数 | 监控数据.资源利用率 | 此设置会影响“历史计算机利用率”计算机详细信息页面中显示的 CPU 和内存图表,以及成本优化区域“工作负载规模调整选项卡”上的数据计算。 | 3 | 3 |
| 12 | 清理资源使用情况分钟数据保留天数 | 监控数据.资源利用率摘要 | 此设置会影响“历史计算机利用率”计算机详细信息页面中显示的“最近 2 小时”时间段的 CPU 和内存图表,以及成本优化区域“工作负载规模调整选项卡”上的数据计算。 | 7 | 7 |
| 13 | 清理资源使用小时数据保留天数 | 监控数据.资源利用率摘要 | 此设置影响在“历史计算机利用率”计算机详细信息页面中看到的 CPU 和内存图表,以及成本优化区域“工作负载大小调整选项卡”上的数据计算。 | 30 | 30 |
| 14 | 清理资源使用天数据保留天数 | 监控数据.资源利用率摘要 | 此设置影响在“趋势”页面上的计算机“资源利用率”中以及特定计算机的“计算机利用率”页面中看到的 CPU 和内存图表。 | 365 | 31 |
| 15 | 清理进程使用原始数据保留天数 | 监控数据.进程利用率 | 此设置影响显示在计算机历史使用情况页面上的每个进程的资源趋势信息。 | 1 | 1 |
| 16 | 清理进程使用分钟数据保留天数 | 监控数据.进程利用率分钟摘要 | 此设置影响历史计算机利用率页面上显示的“最近 2 小时”内每进程的 CPU 和内存使用情况图表。 | 3 | 3 |
| 17 | 清理进程使用小时数据保留天数 | 监控数据.进程利用率小时摘要 | 此设置影响计算机历史使用情况页面上显示的每进程的 CPU 和内存使用趋势。 | 7 | 7 |
| 18 | 清理进程使用日数据保留天数 | 监控数据.进程利用率日汇总 | 此设置会影响在计算机历史使用情况页面上显示的每个进程的 CPU 和内存使用趋势。 | 30 | 30 |
| 19 | 清理会话指标数据保留天数 | 监控数据.会话指标 | 此设置会影响用户详细信息页面“会话性能”选项卡上显示的所有图表。 | 1 | 1 |
| 20 | 清理机器指标数据保留天数 | 监控数据.机器指标 | 此设置会影响“趋势”页面上“资源利用率”选项卡中的图表和表格。 | 3 | 3 |
| 21 | 清理机器指标日汇总数据保留天数 | 监控数据.机器指标每日汇总 | 此设置会影响“趋势”页面上“资源利用率”选项卡中的图表和表格。 | 365 | 31 |
| 22 | 清理应用程序错误保留天数 | MonitorData.ApplicationError | 此设置会影响“应用程序”页面上“应用程序错误”列中显示的错误详细信息。 | 1 | 1 |
| 23 | 应用程序故障保留天数 | 监控数据.应用程序故障 | 此设置影响“应用程序”页面上的“应用程序故障”列。 | 1 | 1 |
注意:
修改 Monitor Service 数据库上的值需要重新启动服务,新值才能生效。建议您仅在 Citrix 支持人员的指导下对 Monitor Service 数据库进行更改。
The settings GroomProcessUsageRawDataRetentionDays, GroomResourceUsageRawDataRetentionDays, and GroomSessionMetricsDataRetentionDays are limited to their default values of 1, while GroomProcessUsageMinuteDataRetentionDays is limited to its default value of 3. The PowerShell commands to set these values have been disabled, as the process usage data tends to grow quickly. Also, license based retention settings are as follows:
- 高级版许可站点 - 所有设置的清理保留期限制为 1000 天(Citrix 建议 365 天)。
- 高级许可站点 - 所有设置的清理保留期限制为 31 天。
- 所有其他站点 - 所有设置的清理保留期限制为 7 天。
例外:
- GroomApplicationInstanceRetentionDays can be set only in Premium licensed sites.
- GroomApplicationErrorsRetentionDays and GroomApplicationFaultsRetentionDays are limited to 31 days in Premium licensed sites.
长期保留数据可能会对表大小产生以下影响:
-
每小时数据。 如果每小时数据允许在数据库中保留长达两年,一个包含 1000 个交付组的站点可能导致数据库按如下方式增长:
1000 个交付组 x 24 小时/天 x 365 天/年 x 2 年 = 17,520,000 行数据。聚合表中的如此大量数据会对性能产生显著影响。鉴于仪表板数据是从此表中提取的,对数据库服务器的要求可能会很高。过大的数据量可能会对性能产生巨大影响。
-
会话和事件数据。 每次会话启动和建立连接/重新连接时都会收集数据。对于大型站点(10 万用户),此数据增长迅速。例如,这些表两年内将收集超过 1 TB 的数据,需要高端企业级数据库。