上线检查分析域
分析域配置完成后,应通过健康度扫描和人工检查确认它是否具备稳定问答能力。健康度扫描不是形式检查,它会提示可能影响问答正确性的配置问题,例如字段描述缺失、指标缺失、表关系异常等。
本指南用于帮助管理员在分析域上线前完成质量检查。
健康度扫描的作用
健康度扫描会检查分析域中的数据配置,并提示可能影响问答准确性的异常或警告。
实际页面说明中,健康度会关注:
- 字段描述信息缺失。
- 字段控制问题。
- 表关联关系。
- 是否定义指标。
- 是否定义答案构建器。
- 空值比例等数据质量问题。
- 错误 Join 关系导致的数据膨胀风险。
健康度结果通常分为:
| 等级 | 含义 | 处理建议 |
|---|---|---|
| 正常 | 当前未发现明显问题 | 仍建议用典型问题验证问答效果。 |
| 警告 | 可能影响问答正确性 | 上线前应评估是否需要处理。 |
| 异常 | 极大可能影响问答正确性 | 上线前优先处理,或明确说明暂不处理原因。 |
健康度扫描可以帮助发现配置缺口,但不能替代业务验收。它不能自动判断某个业务词的真实口径是否符合公司定义,也不能保证用户所有问法都会命中正确字段。健康度正常只能说明当前配置没有明显结构性问题,上线前仍需要用典型自然语言问题检查答案、SQL 和记录。
健康度入口
进入健康度扫描的一般路径:
- 进入 管理 -> 分析域管理。
- 打开目标分析域。
- 在 基础信息 页查看 数据健康度。
- 点击 重新扫描 可提交新的扫描任务。
需要注意,重新扫描可能是异步任务。点击后页面可能先提示“重新扫描任务提交成功”,健康度结果不一定立即刷新。建议稍后重新进入页面或再次查看更新时间。
常见健康度问题
字段缺少描述
实际操作中,健康度曾提示:
字段描述缺失会影响系统理解字段含义。例如
active_subscription 如果没有描述,系统可能不知道它表示当前订阅是否有效,也可能无法稳定回答“活跃账户”相关问题。
处理建议:
- 优先补充核心字段描述。
- 对容易歧义的字段写清适用场景和不适用场景。
- 对布尔字段写清 TRUE/FALSE 的业务含义。
- 对时间字段写清业务含义,例如创建时间、取消时间、支付时间。
分析域不存在指标
健康度可能提示:
这说明当前分析域缺少可复用计算口径。没有指标时,系统仍可能临时生成 SQL,但同一问题的口径更容易不稳定。
处理建议:
- 为高频、简单、稳定的聚合口径创建指标。
- 对自动生成指标进行人工筛选,不要直接全部采纳。
- 为指标补充业务化名称、别名和描述。
缺少答案构建器
如果分析域包含复杂口径、多指标组合、多表 JOIN 或明细查询,但没有答案构建器,系统可能每次临时生成 SQL。
处理建议:
- 将复杂 SQL 固化为答案构建器。
- 使用
支持动态过滤。${filters} - 使用
支持动态分组。${dims} - 补充输出指标名称、别名和描述。
表关系异常或缺失
多表分析依赖正确表关系。如果 Join 关系错误,可能导致结果放大、重复或漏数。
处理建议:
- 加入多张表后再测试自动关联。
- 对自动关联结果进行人工确认。
- 自动关联无结果时,不要假设多表问答可靠。
- 用典型多表问题查看 SQL 中 JOIN 是否正确。
字段空值或基数异常
字段存在大量空值或过高基数时,可能影响过滤、分组和图表展示。
处理建议:
- 查看表详情中的 统计分析。
- 关注
、NULL VALUE
、DISTINCT
、MIN
。MAX - 高基数字段不建议作为默认维度。
- 大量空值字段不建议作为核心过滤条件,除非明确处理空值逻辑。
上线前人工检查清单
健康度扫描不能替代人工检查。正式上线前,建议逐项确认以下内容。
1. 分析域基础信息
- 分析域名称是否清晰。
- 描述是否说明适用业务范围。
- 数据源是否正确。
- 权限是否配置给正确用户或角色。
- 推荐问题是否能覆盖核心使用场景。
2. 表配置
- 是否只加入了当前分析域需要的表。
- 表展示名是否业务化。
- 表描述是否说明表的业务含义和粒度。
- 无关表是否未加入分析域。
- 灰色不可选表是否已通过“选择已有表”确认已添加。
3. 字段语义
- 核心字段是否有别名。
- 核心字段是否有描述。
- 字段类型是否合理。
- 字段用途是否合理。
- 高基数字段是否避免作为默认维度。
- 敏感或无关字段是否隐藏。
- 常用枚举字段是否适合索引。
- 虚拟列是否运行验证并补充语义配置。
4. 知识配置
- 核心业务词是否配置知识。
- 同义词是否写入知识。
- 业务口径是否写清字段和计算规则。
- 知识是否关联到当前分析域。
- 知识状态是否启用。
- 是否通过记录确认知识能被命中。
5. 指标配置
- 高频简单指标是否已配置。
- 自动生成指标是否经过人工确认。
- 指标名称是否业务化。
- 指标别名是否覆盖用户常用说法。
- 指标描述是否写清口径。
- 指标是否已加入当前分析域并启用。
6. 答案构建器配置
- 复杂口径是否用答案构建器固化。
- SQL 是否通过运行校验。
- 是否配置
。${filters} - 需要动态分组时是否配置
。${dims} - 过滤字段和维度字段是否绑定正确。
- 输出字段是否补充业务化指标名、别名和描述。
- 是否用预览和自然语言问题验证。
7. 表关系配置
- 多表场景是否配置表关系。
- 自动关联结果是否人工确认。
- Join 字段是否唯一或符合业务粒度。
- 是否用多表问题验证 SQL。
- 是否避免错误 Join 导致数据膨胀。
8. 问答验证
- 是否准备固定测试问题集。
- 是否查看最终答案。
- 是否查看 SQL语句。
- 是否查看记录。
- 是否确认知识、指标、答案构建器命中路径。
- 是否确认过滤、分组、输出列符合预期。
推荐上线门槛
建议满足以下条件后再开放给业务用户:
| 检查项 | 推荐标准 |
|---|---|
| 健康度 | 无未解释的异常项。 |
| 字段语义 | 核心字段有别名和描述。 |
| 知识 | 核心业务口径有知识说明。 |
| 指标 | 高频简单指标已配置。 |
| 答案构建器 | 复杂口径已固化并验证。 |
| 表关系 | 多表 JOIN 已人工确认。 |
| 验证问题 | 核心问题测试通过。 |
| 权限 | 用户只能访问应访问的数据。 |
对于非核心问题,可以逐步补充配置;但核心业务口径、核心字段和核心指标应在上线前完成。
健康度问题处理优先级
如果健康度或人工检查发现多个问题,建议按以下顺序处理:
- 权限和敏感字段问题。
- 错误或缺失的表关系。
- 核心字段描述缺失。
- 核心业务口径缺少知识。
- 高频指标缺失。
- 复杂口径缺少答案构建器。
- 推荐问题和体验优化。
原因是权限和 Join 问题可能造成严重错误或数据泄露;字段、知识、指标和答案构建器影响问答准确性;推荐问题主要影响用户体验。
常见问题
| 问题 | 说明 | 处理建议 |
|---|---|---|
| 重新扫描后结果没马上变 | 扫描可能是异步任务 | 稍后刷新或重新进入分析域查看。 |
| 健康度提示无指标,但我刚添加了指标 | 健康度可能仍是旧结果 | 重新扫描,并确认指标已加入当前分析域。 |
| 字段描述很多,是否都要补 | 不必一开始补全所有字段 | 先补核心字段、高频字段、易歧义字段。 |
| 自动生成指标是否可以直接上线 | 不建议 | 自动生成只是候选建议,需要人工确认口径。 |
| 自动关联没有结果怎么办 | 说明系统未识别可靠关系 | 手工确认关系,或暂不支持该多表问题。 |
| 健康度正常是否代表问答一定正确 | 不代表 | 还需要用典型自然语言问题验证。 |
交付检查表
上线前可以用下面的最终检查表:
- 分析域名称和描述清晰。
- 数据表范围正确。
- 核心字段语义已补充。
- 敏感字段已隐藏或通过底层权限控制。
- 核心知识已配置并验证命中。
- 核心指标已配置并验证。
- 复杂口径答案构建器已配置并验证。
- 多表关系已确认。
- 健康度异常已处理或说明。
- 典型问题已验证答案、SQL 和记录。
- 已记录当前分析域的适用范围和限制。
健康度扫描的目标不是让页面看起来”没有红点”,而是让分析域具备稳定、可解释、可复用的问答能力。
