
117
第 7 章
确保数据完整性
在使用开源企业数据管理系统时,在数据架构中使用多个存储和处理层是很常见的。为了
优化访问,通常会使用多种格式存储数据。这意味着可能会存在重复数据。在过去,由于
费用和复杂性方面的问题,这可能会被视为一种反模式,但随着新系统和廉价存储的出
现,这种方式反而变得切实可行。
当数据从数据源移动到最终存储时,需要确保数据完整性,这一点始终未变。
数据完整性
是指数据在整个数据管道中的准确性和一致性。为了确保数据完整性,必须知道所有流经
系统的数据的谱系。
本章将讨论数据完整性,并提供一些示例来说明在数据流经系统时如何确保数据完整性。
我们将讨论全保真数据,即保留了源数据完整上下文的数据。这些数据可能与源数据的存
储格式不同,但只要能够返回到原始状态,它就被认为是完全保真的。我们还将讨论从原
始源数据派生出来的数据集,例如,经过过滤和聚合的数据。无论最终的数据集是完全保
真的还是派生的,保持数据完整性都至关重要。
数据在系统中移动时所发生的处理类型可以用来确定数据是完全保真的还是派生的。为了
更清楚地说明这一点,下面提供一些全保真数据集和派生数据集的例子。
全保真数据集
•
使用无损压缩格式压缩的数据——这些是完全保真的数据,只是被压缩了。
•
数据从一种格式转换为另一种格式,例如,从
JSON
到
protobuf
——这些也是完全保
真的,只不过格式不同。