以下关于RDBMS数据分布的叙述中,错误的是______。
A.数据垂直分割是将不同表的数据存储到不同的服务器上
B.数据水平分割是将不同行的数据存储到不同的服务器上
C.数据复制是将数据的多个副本存储到不同的服务器上
D.数据复制中由RDBMS维护数据的一致性
参考答案:A
解析:数据分割和数据复制是数据分布的两种重要方式。数据分割是指将数据库中的表智能地分布在多个磁盘(或服务器)上,即可以将一个表的数据分布在不同的磁盘空间上,从而有效地提高并行处理的性能和高可用性。数据分割可以分为水平分割和垂直分割两种。
水平分割是将表中不同行的数据存储到不同的磁盘上。例如,当多个事务频烦访问数据表的不同行时,水平分割表,并消除新表中的冗余数据列。若个别事务要访问整个数据,则要用连接操作。水平分割会给应用增加复杂度,它通常在查询时需要多个表名,查询所有数据需要并操作。在许多数据库应用中,这种复杂性会超过它带来的优点,因为只要索引关键字不大,则在索引用于查询时,表中增加两到三倍数据量,查询时也就增加读一个索引层的磁盘次数。
垂直分割是将表中不同字段的数据存储到不同的磁盘上。例如,当多个事务频繁访问表的不同列时,可将该表垂直分成多个表。垂直分割可以使得数据行变小(因为列少了,一行数据就变小),一个数据页就能存放更多的数据,在查询时就会减少I/O次数。其缺点是需要管理冗余列,查询所有数据时需要连接操作。
数据分割增加了维护数据完整性的代价。
数据复制是为了提升数据访问效率而采用的一种增加数据冗余的方法,它将数据的多个副本存储到不同的服务器上,由RDBMS负责维护数据的一致性。