22.5. Vinum 目标

为了解决这些问题,Vinum 提出了一个四层的目标结构:

下面的章节描述了这些目标提供了Vinum 所要求的功能的方法。

22.5.1. 卷的大小要求

在Vinum的配置中,Plex可以把多个subdisk 分布在所有的驱动上。 结果, 每个独立的驱动器的大小都不会限制plex 的大小,从而不会限制卷的大小

22.5.2. 多余的数据存储

Vinum 通过给一个卷连上多个plex 来完成镜象的功能。 每个plex 是一个在一个卷中的数据的描述。一个卷可以包含一个 到八个plex。

虽然一个plex 描述了一个卷的所有数据,, 但可能描述的部分被物理地丢失了。可能是设计的问题 (没有为plex 部分定义一个subdisk)也可能是意外的故障 (由于驱动器的故障导致)。只要至少有一个plex 能够为 卷的完全地址范围提供数据,卷就能够正常工作。

22.5.3. 性能问题

Vinum 在plex 水平既执行串联也执行分段:

  • 一个串连的plex轮流使用 每个subdisk 的地址空间。

  • 一个 分段的plex 在每个subdisk 上 划分数据. Subdisk 必须是大小一样的,为了从一个连接的plex 中 区分开它,必须至少有两个subdisk。

22.5.4. 哪种plex 组织更有效?

FreeBSD 9.1提供的Vinum 版本能实现两种plex:

  • 串联的plex 更加灵活:它们可以包含任何数量的subdisk, subdisk 也可能有不同的长度。Plex 可以通过添加额外的subdisk 来得到扩展。 与分段 plex 不同, 它们需要的 CPU 时钟更少, 尽管 CPU 上的负载差异是不可测量的。 另一方面,它们的负载可能不平衡,一个磁盘可能负载很重, 而其他的可能很空闲。

  • 分段(RAID-0) plexes 的最大优点是 它们减少了负载不平衡的情况: 通过选择一个最合适大小的分段 (大约是256 kB), 您甚至可以在各个组成的驱动器上降低负载 . 这种方法的缺点是在subdisk 上受到非常复杂的编码限制 : 它们必须是同样大小, 通过添加新的subdisk 来扩展一个plex 是非常复杂的,以至Vinum 当前没有实现它. Vinum 利用一个额外 的,代价不高的限制:一个分段的plex 必须有至少两个subdisk, 否则, 它就无法区分连接的 plex 了。

表 22.1 “Vinum Plex组织图” 总结一下每个plex 组织 的优点和缺点.

表 22.1. Vinum Plex组织图
Plex 类型最少subdisks可否添加subdisks尺寸相同应用
串联 1可以不必须带有很大弹性和适中性能的大数据量存储。
分段2不可以必须大量并发访问时,具有较高性能。

本文档和其它文档可从这里下载: ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

如果对于FreeBSD有问题,请先阅读 文档,如不能解决再联系 <questions@FreeBSD.org>.

关于本文档的问题请发信联系 <doc@FreeBSD.org>.