EAV模型

EAV(Entity-Attribute-Value)模型是一种将指标以行式存储的数据模型。在对事件表进行建模时,可选择表模型为 EAV模型

适用场景

当事件表的数据结构满足以下特征时,适合使用 EAV 模型:

  • 指标 ID、指标名称直接存储在事件表中,作为独立的列存在
  • 指标的数值单独存储在一列中

例如,一张事件表中记录了多个指标的值:

日期指标ID指标名称数值
2025-01-01001销售额10000
2025-01-01002订单数500
2025-01-02001销售额12000
2025-01-02002订单数600

在此结构下,用户提问时希望直接通过指标名称(如"销售额")获取对应的汇总值

而不是通过列名(如"销售额数值")逐一引用。

配置步骤

1. 创建实体表

将指标 ID 和指标名称从事件表中单独提取出来,构建一张实体表。该实体表至少包含两列:指标 ID 和指标名称。

2. 建立实体关联

在事件表 Schema 中,将指标 ID 列与上述实体表进行实体关联,确保系统能够通过指标 ID 解析出对应的指标名称。

3. 启用 EAV 模型

进入事件表 Schema 的基本信息页面:

  1. 选中 表模型 为「EAV模型」
  2. EAV模型的指标列 中选择事件表中存储指标 ID 的列
  3. EAV模型的数值列 中选择事件表中存储指标数值的列

问答效果

配置完成后,用户可以直接通过指标名称进行问答,系统会自动完成以下处理:

  • 根据指标名称匹配对应的指标 ID
  • 对数值列进行聚合(如求和、平均等)
  • 返回该指标的汇总结果

示例提问:

提问系统行为
"今年的销售额是多少"匹配"销售额"对应的指标 ID,汇总数值列