Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 如何检测bigdata的完整性_Database_Nosql_Bigdata - Fatal编程技术网

Database 如何检测bigdata的完整性

Database 如何检测bigdata的完整性,database,nosql,bigdata,Database,Nosql,Bigdata,假设我有一个表,其中有N条数据,即row1,row2,··,rowN。如何检测这些数据未被非法更改 我的意思是我们可以对每个数据执行哈希函数,例如: TABLE row1 hash(row1) row2 hash(row2) · · · rowN hash(rowN) 当我想知道这些数据是否被非法更改时,我可以遍历所有数据,查看rowi的散列值是否等于原始散列(rowi) 但是如果有很多数据,遍历非常耗时,我想知道是否有其他方法来检测bigdata的完整性?以下是一些解决

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

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

TABLE

row1    hash(row1)
row2    hash(row2)

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


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

以下是一些解决方案:

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