低质量数据的调节:视图与(表格+预定程序)

时间:2013-02-15 13:28:40

标签: database oracle database-design data-quality

TL; DR:如何根据移动规则从不良移动数据构建一致,正确的视图?

大家好:)我正在构建一个数据库,在这个数据库中必须转换数据,在可能的情况下进行重新调整并大量丰富。

(顺便说一句,如果您对这个一般主题有一本好书,请发帖!)

在我的特定情况下,原始数据来自两个表。

以下是原始表格上发生的事情:

  • 未格式化的数据(需格式化:电话号码,小写电子邮件等)
  • 缺少数据:某些字段缺失,将来可以丰富
  • 更新数据:某些行已更新
  • 新数据:插入新行

对帐部分使用的字段(ID,邮政地址等)可能是部分的,在表中丢失或在另一个表中找不到。使用了几个对帐规则。所有都可以用SQL表示。其中一些使用GROUP BY s(阻止视图可更新)。

约束是:

  • 可以更新基础表格。新数据最多只能在72小时后效仿。
  • 新数据必须采用可查询的形式(表格或视图或物化视图),且性能可接受。
  • 新数据中的行必须在一段时间内保持一致,以便可以对它们进行注释(以丰富它们,将它们标记为已经发送到其他地方等)。
  • 新数据中的某些行必须手动丰富。
  • 新数据中的行必须包含重新调整的时间(以及更新后的更新时间)
  • 可以更新对帐方法。新数据最多只能在72小时后效仿。

我无法决定使用视图,还是使用使用存储过程更新的表进行操作。

视图可以很好地处理对帐规则中原始数据和更新的更改。但它不支持新线的注释。

使用存储过程更新的表可以很好地处理,但在更改协调规则或更新原始数据时需要进行一些复杂的处理。

我在考虑使用视图并在旁边有一个表,表的主键是新数据的某些稳定字段的散列。

这些工具是:Oracle 10g(加上Java,如果需要的话)

对不起文字墙。

问题是:你会做什么?

1 个答案:

答案 0 :(得分:0)

将原始表中的所有数据插入到2个或更多其他表中。新表格根据关系理论进行了适当的设计,可以对它们进行有效的查询。