如何检测大数据的完整性

时间:2013-12-27 06:46:45

标签: database nosql bigdata

假设我有一个表,其中有N个数据,即row1,row2,··,rowN。如何检测这些数据是否未被非法更改?

我的意思是我们可以为每个数据执行哈希函数,例如:

TABLE

row1    hash(row1)
row2    hash(row2)

· · ·
rowN    hash(rowN)

当我想知道这些数据是否被非法更改时,我可以遍历所有数据以查看rowi的哈希值是否等于原始哈希值(rowi)。

但如果有大量数据,遍历非常耗时,我想知道是否还有其他方法来检测bigdata的完整性?

1 个答案:

答案 0 :(得分:0)

以下是一些解决方案:

  1. 具有控制/校验和的字段(轻量级,简单操作,如sum或div / mod by X)或散列(如您所写)
  2. 仅对数据库+审核日志表/实体提供插入和删除操作(表中的一行是一个插入包)
  3. 使用AutoUpdate Fiels:CreateTimeStamp& ModifyTimestamp - 如果数据库提供此类型的字段 - 并进行比较
  4. 在BigData方法中,我建议选项2。