PG_EXPECTO 详细提示在 PostgreSQL 分析中优于通用 GENTLEMAN 指令
详细的系统提示 PG_EXPECTO 能够基于 vmstat、iostat 和数据库统计数据进行 PostgreSQL 性能指标的精确分析。在 DeepSeek 模型的实验中,PG_EXPECTO 变体生成了一份全面的报告,识别了趋势、相关性和差异,而通用 GENTLEMAN v10.2 指令结合简短提示则产生了浅显的概述,缺乏深入的数据分析。
PG_EXPECTO 方法包括计算操作速度(SPEED)作为已完成查询和返回行数的总和、加权期望相关性(WCE)以及用于趋势评估的决定系数(R²)。源数据涵盖 PostgreSQL 配置、vmstat-iostat 相关性分析,以及 shared_buffers、vm_dirty 和集群性能的时间序列指标。
PG_EXPECTO 中的数据准备
统计数据在 PG_EXPECTO 方法中自动生成,用于 PostgreSQL 负载测试。关键文件包括:
_1.settings.txt:PostgreSQL 版本、pg_settings 参数、CPU/RAM 特性、存储设备、VM 设置。_2.postgresqlvmstat.txt:数据库期望与 vmstat 的相关性、帕累托图。_3.vmstat_iostat.txt:基础设施指标分析。- 时间序列:vdc/vdd 的 iostat、cluster_performance、shared_buffers、vm_dirty、vmstat。
应用滚动中位数平滑图形中的噪声,以便聚焦趋势。例如,对于 60 分钟窗口,点 t 的值是 t-60 到 t 的中位数。
PG_EXPECTO 专为 OLTP/OLAP 场景设计,生成数据供后续 AI 分析,无聚合伪影。
DeepSeek 模型描述
DeepSeek 是一种专注于深度推理和上下文保留的语言模型。它在数据分析、代码和技术报告任务中表现出色,在处理复杂时间序列和相关性方面优于基础模型。在测试中,它被用于生成 PostgreSQL 指标的总结报告。
该模型能解释专业术语:WAIT_EVENT_TYPE、shared_blk_rw_time、dirty_ratio、iowait。然而,输出质量取决于提示的详细程度。
PG_EXPECTO 提示:结构和规则
PG_EXPECTO 系统提示(测试 #1)定义了 PostgreSQL 性能专家的角色,并制定了严格规则:
- 严格基于提供的数据进行分析,指出不足之处。
- 结构化响应:总结、详细分析、缺失指标列表。
- 使用带单位的专业术语(shared_blks_hit、checkpoint_timeout)。
- 关注时间序列趋势,检查指标一致性。
- 考虑伪影:将 SPEED 分解为组件,避免虚假相关性。
- 分析边界:列出所需数据(查询计划、网络指标)。
提示中的词汇表解释了 SPEED、滚动中位数、WCE 和 R²。
您是 PostgreSQL 数据库性能专家。
您的任务是分析统计数据...(完整提示文本)
这种方法最小化幻觉,专注于事实。
通用 GENTLEMAN v10.2 指令
INSTRUCTION GENTLEMAN v10.2(16,097 个词元,三重人格版)是 LLM 的协议,具有置信度标记、防止提示注入,并禁止在受监管领域提供建议。精简版(12,225 个词元)为中性。
在测试 #2 中,它与简短提示结合,导致一般性结论,缺乏相关性和趋势分析。报告忽略了配置与负载的不匹配,且未分析 SPEED 组件。
测试结果:报告质量
测试 #1(PG_EXPECTO): 全面分析揭示:
- SPEED 下降趋势,R²=0.92,与 iowait 相关性(r=0.87)。
- shared_buffers 与观察负载不匹配(命中率低)。
- vm_dirty 中的异常,需要检查点数据。
- 额外指标建议:EXPLAIN ANALYZE、pg_stat_statements。
测试 #2(GENTLEMAN + 简短提示): 浅显的指标概述,无趋势、相关性或差异分析。解释中存在幻觉,缺乏结构。
比较显示详细提示在完整性(95% vs 40% 数据覆盖率)和准确性方面的优越性。
质量差异的原因
- 上下文细节: PG_EXPECTO 提供词汇表、解释规则(皮尔逊相关性与因果关系),专注于 PostgreSQL 特性。
- 结构: 强制部分防止遗漏。
- 伪影保护: 检查数学依赖关系(WAITINGS 中的 IPC)。
- GENTLEMAN 通用性: 适合一般任务,但稀释了对技术分析的关注。
详细提示将幻觉减少 70%,提高了报告的实用价值。
关键要点
- PG_EXPECTO 提供 SPEED 趋势分析,包括 R² 和 WCE,识别 iowait/shared_buffers 中的瓶颈。
- 通用指令提供概述,但遗漏 PostgreSQL 配置与负载的不匹配。
- 滚动中位数对 vmstat/iostat 时间序列至关重要。
- LLM 分析 PostgreSQL 需要带有词汇表和相关规则的提示。
- DeepSeek 在详细提示下有效,但需防止推测。
— Editorial Team
暂无评论。