【问题标题】:How should I model data accuracy/confidence in a database?我应该如何对数据库中的数据准确性/置信度进行建模?
【发布时间】:2012-07-02 03:31:35
【问题描述】:

假设我有一个保存时间戳的数据库。对于每个时间戳属性,我可能会添加一个准确度属性,说明置信区间,因此存储的信息可能是“2012 年 7 月 1 日 12:13,+/- 3 个月”。

但总的来说,记录准确性/置信度并不是那么简单。家谱数据库可能需要记录一个人可能是另一个人的父亲这一事实。

那么,在以不同程度的准确性/可信度存储信息方面,是否有任何一般原则或最佳实践?

【问题讨论】:

    标签: sql database-design data-modeling


    【解决方案1】:

    以你父亲的例子很容易;不可能超过 100% 确信某人是别人的父亲;一般来说,对任何事情都没有超过 100% 的信心!这反过来意味着您可以简单地存储任何数据属性的百分比置信水平。

    但是,您可能不想将置信水平存储为百分比;它取决于数据属性本身以及数据的含义

    例如,如果您想存储特定字符串与另一个字符串相比的“准确”程度,您可能希望存储Levenshtein distance。在您的时间戳示例中,我个人将存储最小值和最大值,但您也可以存储要添加或减去的月数;两者都可以快速计算从数据库中的选择。

    我可能不清楚地试图写的是,您问题的答案不取决于数据库,而是取决于其中的 数据 以及您的用户、业务等的需求。因为它取决于数据,每个单独的属性或列都需要一个单独的解决方案;不可能有一个“通用”的解决方案。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-08
      • 1970-01-01
      • 1970-01-01
      • 2023-03-30
      • 2010-10-30
      • 1970-01-01
      相关资源
      最近更新 更多