当您将表和索引分段分布到不同的磁盘或者设备上时,将提高数据在磁盘或设备发生故障的情况下的可用性。 数据库服务器此时仍然允许访问存储于正常运行的磁盘或设备上的分段。
不要求数据库服务器访问不可用分段中的数据的查询,仍然可以成功地从可用的分段中检索数据。 例如:如果分布表达式使用了单个列,数据库服务器可以在不访问分段的情况下判断出分段中是否包含某行。 如果查询只访问包含在可用分段中的行,那么即使表中有些数据不可用,查询也可以成功完成。 有关更多信息,请参阅设计基于表达式的分布方案。
对于一些应用程序,其设计方法可能使得它们能够接受分段中的数据的不可用性,并要求它们具有检索可用数据的能力。 为指定哪些分段可以跳过,这些应用程序可以在执行查询之前执行 SET DATASKIP 语句。或者,数据库服务器管理员也可以使用 -f 选项,以制定哪些分段不可用。
如果分段存储的目标是数据可用性的提高,那么可以同时对表行和索引键分段,这样如果磁盘驱动器发生故障,一些数据仍可用。 如果应用程序必须总是访问某个数据子集,那么可将子集中的那些行一起放入同一个镜像的数据库空间中。