下载本文的PDF版本 PDF

关于磁盘,你其实一窍不通
DAVE ANDERSON,希捷科技

柱面和磁道都发生了什么变化?

自 20 世纪 60 年代初期以来,磁盘驱动器一直是计算机系统的核心。它们不仅在处理性能方面带来了显著的优势,也为程序员带来了新的复杂性。磁盘驱动器的三维几何结构取代了基于磁带的简单线性地址空间编程模型。

传统上,程序员的磁盘存储工作模型由一组均匀的柱面组成,每个柱面都有一组均匀的磁道,而磁道又包含固定数量的 512 字节扇区,每个扇区都有唯一的地址。柱面由多盘驱动器中每个磁盘盘片上的同心圆(或磁道)组成。每个磁道像馅饼一样被分成扇区。由于这个三维存储空间中的任何位置都可以通过柱面号、磁头(表面)号和扇区号唯一标识,因此这构成了磁盘驱动器原始编程模型的基础:柱面-磁头-扇区访问。

这就提出了一个问题:如果数据是这样存储在驱动器上的,为什么我们现在不继续将其用作编程模型呢?答案并不简单,但其根源在于这样一个事实:这种几何模型一直延续到智能接口 SCSI 和 ATA 的出现。[IBM 大型机世界使用略有不同的模型,允许使用用户定义长度的记录(块)写入磁道。一个单独的磁道可以有不同大小的扇区。作为一名编写计数键数据 (CKD) 存储程序的程序员,我可以证明它为应用程序提供了极好的灵活性,但驱动器设计方面的挑战已将其载入史册。此外,纯粹主义者可能会指出,标准礼仪要求 SCSI 使用块,而 ATA 使用扇区,但我将交替使用这些术语。]

磁盘接口协议实现了磁盘驱动器的编程模型。早期的驱动器接口几乎没有做任何事情,只是暴露信号,让主机直接操作驱动器机制,并启动目标位置的数据传输。这使得程序员的任务是处理所有驱动器特有的低级特性,这些程序员负责开发固件或软件支持。

ATA 和 SCSI 的引入从根本上改变了这一点。表 1 描述了更重要的接口演进过程中智能从主机到驱动器的迁移。有了这些智能接口协议,磁盘驱动器的编程使用变得容易得多。磁盘驱动器设计人员也获得了设计更高容量和更高性能驱动器所需的行动自由。我将研究驱动器设计人员如何在他们的设计中利用这种行动自由,但首先重要的是要理解驱动器设计背后的基本目标:提高面密度。

表 1
智能从主机到驱动器的转移

接口
ST-506 ESDI / SMD SCSI / ATA
引入日期
1980 1972/1985 1981/1991
MBps
.5 高达 3 至 320 MBps
智能级别
模拟数据信号 数字数据信号 消息
智能从主机转移到驱动器
不适用 数据分隔符,一些几何控制 几何抽象,缺陷映射

基础知识:TPI 和 BPI

磁盘驱动器,最简单地说,是一种使用磁记录技术进行持久存储的交付机制。驱动器设计过程的目标是以最小的成本提高这种机制的容量、可靠性和性能。驱动器可以被认为是记录信息的三维空间。磁盘表面提供两个维度,构成驱动器的磁盘堆栈是第三个维度。

容量可以通过增加磁盘来提高。但这会增加成本,并随着磁盘拥挤度的增加而导致提高面密度的难度加大。主轴中振动的增加、对外部振动的敏感性以及湍流气流引起的内部干扰都会随着给定空间中磁盘数量的增加而增加。

几十年来,磁盘驱动器的容量一直通过减小数据磁道之间的间距(或磁道间距,以每英寸磁道数 (TPI) 衡量)以及增加沿磁道的比特线性密度(以每英寸比特数 (BPI) 衡量)来提高,如图 1 所示。

图 1

 

这些术语的乘积是面密度,今天以每平方英寸千兆位来衡量。最先进的磁盘驱动器可能具有每平方英寸 30 多千兆位的面密度。设计磁头、介质和信号处理系统以实现更高的面密度是任何磁盘驱动器开发的主要挑战。

图 2 显示了面密度增长的历史。

图 2

过去的日子:并没有那么好

这种与数据物理组织相吻合的原始几何编程模型给程序员带来了一些挑战。了解这种物理模型的一些局限性是有帮助的。

几何结构的具体细节渗透到操作系统 (OS) 软件中。例如,两家驱动器制造商可能会开发出容量相当的驱动器,但一家可能会通过 TPI 获得更多容量,另一家可能会通过 BPI 获得更多容量,而能力较弱的第三家供应商可能需要在驱动器中添加额外的磁盘。这将导致驱动器的柱面、磁道和每磁道扇区的值差异很大。更糟糕的是——或者更好,这取决于你的观点——一些磁盘控制器能够通过使用更复杂的电子设备,例如通过缩短扇区之间的间隙,来获得每磁道多一到两个扇区。结果是,即使是给定的磁盘驱动器,也可能根据它所连接的控制器而具有不同的几何值。

支持所有驱动器产品的复杂性相当大。正如前面在面密度讨论中解释的那样,每一代磁盘驱动器都会增加每磁道扇区数(BPI 效应)和柱面数(TPI 效应)。这意味着操作系统或控制器需要包含一个驱动器几何形状表,该表的大小乘以它包含的代数。

处理缺陷是一个更大的问题。当面密度足够低时(大约每平方英寸 2 兆位,这在 20 世纪 70 年代中期是最先进的技术),有可能构建一个没有缺陷或坏扇区的磁盘堆栈。随着面密度的增加,这很快变得不可能。由于操作系统正在查看原始设备,因此它有责任管理坏块缺陷,以使其不会危及用户数据。

经过多代驱动器、控制器和操作系统,开发人员忍受了这些问题。但随后出现了最后一根稻草:分区位记录 (ZBR)。

柱面、磁头、扇区 (CHS) 模型的一个缺陷是假设每个磁道都具有相同数量的扇区。当驱动器设计人员寻找创新的方法来提供更多容量时,他们看到磁盘外径上较长的磁道可以比内磁道容纳更多的数据。为了利用这一点,驱动器被划分为径向记录带或区域(即,附近的柱面簇)。给定区域内的所有磁道都具有相同数量的扇区。然而,靠近磁盘外径的区域中的磁道可能比同一磁盘上靠近内径的区域中的磁道多 50% 的扇区。这对于 3.5 英寸驱动器来说是正确的。ZBR 提供的优势因介质尺寸而异,并且是记录带外半径与内半径相对大小的函数。今天的驱动器通常有 15 到 25 个区域。

ZBR 增加了巨大的价值:对于 5.25 英寸驱动器(ZBR 首次出现时的主流外形尺寸),在不增加材料成本的情况下,容量增加了 25% 或更多。它迫使行业采用更智能的接口——一种可以隐藏 ZBR 的复杂性,同时也可以通过将该功能拉入驱动器中来隐藏几何形状和坏块缺陷问题的接口。

发生了什么变化

智能接口——首先是 SCSI,然后是 ATA——的出现彻底改变了磁盘支持的性质。磁盘驱动器使用微处理器来管理这些更高级别的接口,主机的编程从低级、了解所有信号线和时序的工程任务转变为任何有经验的程序员都可以管理的计算机间通信问题。

这些智能接口基于一种编程模型,该模型本质上类似于磁带——顺序扇区或块地址。尽管驱动器仍然具有块随机访问能力,但在编程模型中不再看到物理几何结构。在这种新模型或接口的背后,驱动器供应商已经能够生产出更高容量、更可靠和性能更快的存储设备。

当今驱动器内部

柱面,当每个柱面有很多磁头时,它是一个非常重要的分配单元,即使它可以通过接口公开,它的实用性也在迅速丧失。

驱动器中最有趣的趋势之一是每个驱动器中磁盘平均数量的快速减少。如今,大多数驱动器(以个人桌面市场为主)仅配备单个磁盘或盘片。事实上,很大一部分驱动器(根据希捷市场研究的估计,约占行业总量的 31%)配备了单个磁头。这些驱动器展示了面密度大幅提高带来的好处之一。对于对成本敏感的 PC 市场,通过仅在一个磁盘的一侧使用一个记录头,可以最经济地实现足以满足大多数客户的容量。放入 1 英寸高 3.5 英寸磁盘驱动器的最多磁盘数量是 6 个,相应地有 12 个磁头。理论上可能实现的与客户购买的之间的差异是巨大的,如图 3 所示。

图 3

其他因素进一步降低了柱面维度的重要性。长期以来,更小直径磁盘的趋势缩短了平均磁道的长度,并缩小了典型柱面尺寸。特别是,最高性能的 SCSI 驱动器采用了更小直径的介质。在 3.5 英寸外形尺寸中,最大的介质可能是 95 毫米。虽然它提供了最大的容量,但更大的介质有几个负面影响。它的摆动幅度更大,径向和圆周曲率都更大,并且对于给定的 RPM 消耗更多的功率。这些使得实现更高的面密度更加困难。由于这些和其他原因,驱动器随着 RPM 的增加而使用更小的介质

RPM 5400 7200 10,000 15,000
直径 95 毫米 95 毫米 84 毫米 65-70 毫米
寻道时间 9 8 5.5 3.5

最近数据布局的更改有效地消除了柱面概念。逻辑块过去在驱动器上排序,以便在一个柱面上的所有扇区在使用完之前不会转到下一个柱面。现在情况不一定如此。在一个记录区域中沿单个表面螺旋排列扇区,然后再移动到该区域中的另一个表面,具有一些优势,例如顺序传输性能。

考虑三盘驱动器中的外部记录区域。驱动器的前 n 个磁道将是构成第一个表面上第一个记录区域的 n 个磁道。驱动器的下 n 个磁道将是下一个表面上的 n 个磁道,但从内径向外工作,以最大限度地减少寻道长度并保持顺序性能。下 n 个磁道将与前 n 个磁道相同,但在第三个表面上,下 n 个磁道再次从记录区域的内磁道向外半径延伸。(参见图 4。)

图 4

这种蛇形格式有多种变体,并非所有驱动器都使用它。关键是,我们对柱面作为执行器固定位置的概念,原本希望将其用作分配单元,但现在它不是一个可靠的概念。

磁道本身的布局也经历了转变。从历史上看,每个用户数据扇区都由附加信息构成,这些信息使驱动器能够定位正确的扇区并确保其正确。这些额外数据过去占磁道上总比特数的约 20%。图 5 说明了重要的字段。

图 5

地址(称为标头)用于与所需地址进行比较,以定位目标数据。纠错码 (ECC) 字段提供错误恢复信息。间隙是给磁头时间来根据需要关闭或打开写入器。如果没有这些间隙,来自磁头的噪声可能会擦除数据或后续的扇区标头字段。由于这些字段代表开销和可用容量的损失,因此它们是更改的候选对象,以便可以为用户提供更多容量。

当驱动器使用感应磁头时,每个扇区都有自己的单独标头,如前所述。磁阻 (MR) 和巨磁阻 (GMR) 磁头使标头成为一个更复杂的问题。虽然它们具有用于读取数据的 MR 元件,但它们仍然具有感应写入器。这些执行读取和写入的两个元件彼此相邻位于磁头上。由于它们位于旋转执行器上,因此它们不能同时定位在所需磁道上方。这意味着当磁头定位用于写入时,读取元件不在磁道上。驱动器通常使用两个标头:一个与数据扇区对齐以验证读取的地址;另一个与数据扇区偏移,以便在写入时验证地址。这显然朝着错误的方向发展,消耗了更多的容量而不是更少。

随着 TPI 的增加,伺服信息被放置在数据磁道上,而不是单独的专用伺服表面上。今天典型的驱动器可能每个伺服脉冲有三到五个扇区,这主要取决于驱动器是 SCSI 还是 ATA。(更多的伺服脉冲会消耗容量,但在存在外部影响(如振动)的情况下提供更高的性能和可靠性。)这些伺服脉冲采用短信息块的形式,消耗磁道上 5% 到 10% 的比特。随着驱动器设计人员在使用嵌入式伺服脉冲方面积累了经验,他们意识到实际上不需要标头。他们可以使用伺服中的定位信息,只需计数直到他们通过足够的扇区到达所需的扇区。(参见图 6。)

图 6

可靠性和性能

更抽象的接口将主机与驱动器错误恢复和缺陷管理隔离,从而有助于提高存储系统的可靠性。驱动器利用智能接口的一种方式是使用复杂的错误恢复。由于纠错码和恢复技术现在在驱动器内部处理,因此驱动器具有主机不具备的能力。例如,如果某个特定扇区难以读取,驱动器可以在重复尝试恢复磁盘上的信息时进行一系列复杂的调整。它可以稍微向左或向右移动磁头,或者它可以调整时序,基本上提前或延迟几毫秒开始读取。驱动器可能会在偏移和时序的各种组合中进行 20 到 30 次重试,以便给自己最好的机会来拾取数据。此过程不会经常发生,但它可以区分可以读取的数据和无法读取的数据。一旦恢复信息,它可以选择将驱动器的该部分标记为坏扇区,并将这些逻辑块重写到另一部分。驱动器原始容量的某个百分比被保留用于稍后变坏的扇区的重新映射。此空间既不可寻址,也不通过接口可见。

智能接口带来了立竿见影的性能优势,因为它们可以缓冲数据,直到主机准备好接受它。同样,它们可以接受数据,而不管驱动器何时定位以写入数据,从而消除了主机将其连接与磁头的数据传输定位同步的需要。虽然这种缓冲被证明是重要的性能改进,但驱动器在提高性能方面远远不止于此。

在要求苛刻的工作负载环境中,高性能驱动器可以接受命令队列。基于对这些特定命令的了解,驱动器可以优化它们的执行方式并最大限度地减少完成它们所需的时间。这假设可以发出多个命令,并且它们的结果可以在驱动器中缓冲或以与初始请求不同的顺序返回。命令队列越长,吞吐量优化的可能性就越大。当然,主机文件系统或控制器也这样做,许多人认为它可以管理更多命令。然而,驱动器提供了一些特殊的优势。

考虑连接到单个主机的驱动器。如果主机正在管理 I/O 队列,它可以确信读/写头大致位于它发出的最后一个 I/O 的位置。它通常会选择另一个尽可能靠近前一个命令的命令发送到驱动器,通常从逻辑块地址 (LBA) 范围的一端工作到另一端,然后再返回。LBA 范围是前面提到的顺序“磁带”模型。这与主机允许的 LBA 调度模型一样好。

另一方面,驱动器知道数据的实际几何结构。这包括有关径向磁道位置和数据的角度或旋转位置的精确信息。如果它有一个要处理的队列,它会根据时间上最近的操作选择下一个操作,这可能与最近的 LBA 大相径庭。考虑以下工作队列

操作 起始 LBA 长度
读取 724 8
读取 100 16
读取 9987 1
读取 26 128

主机可能会将其重新排序为

操作 起始 LBA 长度
读取 26 128
读取 100 16
读取 724 8
读取 9987 1

这似乎是有道理的。然而,数据的实际旋转位置可能使这成为最差的排序。驱动器可以利用寻道距离和旋转距离来产生图 7 中所示的最佳排序。

图 7

驱动器排序的队列将在四分之三转内完成,而主机排序的队列将花费三转。当驱动器对队列进行排序时,改进可能令人印象深刻。

如图 8 所示,一个在没有队列的情况下能够实现约 170 个随机 I/O/秒吞吐量的驱动器,在队列足够长的情况下(诚然,256 个 I/O 的队列会相当大)可以实现超过三倍的吞吐量。另请注意,随着队列长度的增加,响应时间的波动可能会上升。单个操作的平均服务时间将减少,但某些命令将在队列中停留更长时间,成为整体优化的受害者。这导致平均响应时间和——用户通常更关心的是——响应时间波动性的增加。接口提供了一个计时器,让用户限制任何 I/O 必须在服务之前可以等待的最长时间。

图 8

如果驱动器正在为来自多个系统的工作提供服务,则驱动器管理队列带来的好处可能尤其有价值。两个主机可能都像它是 I/O 请求的唯一来源一样运行。即使两者都在对其队列进行排序方面尽了最大努力,但两个独立队列的冲突有时可能会产生干扰模式,从而导致性能下降。驱动器可以有效地合并这些工作负载,并获得单个更长队列的好处。在企业级磁盘阵列中,其中四到八个存储管理器可能正在访问每个驱动器,这种好处就更加明显了。

ATA 与 SCSI

ATA 和 SCSI 有许多共同之处,并且基本上使用相同的寻址模型,但它们具有细微的协议差异,反映了两个接口的不同应用。[最重要的差异与接口无关,而与磁头磁盘组件 (HDA) 有关,接口正在将 HDA 连接到系统。有关这些差异的完整讨论,请参见 Dave Anderson、Erik Riedel 和 Jim Dykes 于 2003 年在 FAST 上发表的“ATA 与 SCSI:不仅仅是一个接口”。]

两个接口通常都使用 512 字节扇区。SCSI 支持其他扇区大小,包括增量长度。这些广泛用于磁盘阵列中,其中主机可以读取和写入 512 字节扇区,但阵列控制器读取和写入的扇区可能为 520 或 528 字节,如图 9 所示。(驱动器必须格式化为这种更长的扇区。)控制器将附加数据信息,它使用这些信息来验证扇区——包括其地址和内容。这可以防止驱动器或阵列控制器中的任何固件错误或电子错误在阵列不知情的情况下损坏数据。这是企业子系统中的一个关键功能,企业子系统具有最高的可靠性和数据完整性。

图 9

SCSI 接口(光纤通道、并行 SCSI 和串行连接 SCSI)允许多个主机连接到驱动器。这为驱动器固件带来了更高的复杂性,但实现了容错配置——即,没有单点故障。它还需要一些特殊命令。例如,SCSI 协议具有保留和释放命令,允许主机在必要时独占控制驱动器。这些对于管理多主机存储系统至关重要。同样,这种功能在低端阵列或个人计算机的驱动器中是不合理的,但在保持业务正常运行的系统中,其价值远远超过成本。

SCSI 接口包括其他管理功能,允许对驱动器的操作进行更详细的控制。各自的标准委员会,SCSI 的 T10 [www.t10.org] 和 ATA 的 T13 [www.t13.org],是获取信息的好来源。

最紧迫的问题以及还可能发生的变化

磁盘驱动器旧几何模型的最后遗迹是固定的 512 字节扇区。这仍然直接映射到写入介质的物理单元。这可能是驱动器制造商最希望摆脱的下一个东西。

纠错码的使用是保护数据并确保可以从磁盘恢复数据并准确返回数据的重要驱动器组件。ECC 信息附加到每个 512 字节的数据扇区。此附加信息意味着需要更多磁盘空间来存储信息。随着数据位变得越来越小,缺陷实际上变得越来越大——也就是说,每个缺陷可以损坏更多的位。使驱动器能够从这些缺陷中恢复的 ECC 不得不变得更长,从 1995 年每个扇区可能 16 字节的 ECC 到今天的两倍以上。为了继续提高面密度,它将变得更长。为了最大限度地减少专用于 ECC 开销的磁盘空间比例,驱动器供应商普遍希望更长的扇区大小——建议的长度为 4,096 字节。虽然驱动器中支持 4K 扇区所需的工作很简单,但让计算机系统的其余部分采用它却非常困难。目前尚不清楚这种情况何时可能发生,但公司已经在研究操作系统和驱动程序问题。

一些研究认为编程模型未来会发生令人兴奋的变化,包括完全向主机隐藏物理扇区大小。以有用的方式向主机操作系统公开驱动器的几何结构是不可能的,因为它会发生变化和变化。然而,当确定文件的特定布局方法时,了解确切的驱动器几何结构,包括缺陷位置等信息,将有利于性能。

存储网络行业协会 (SNIA) 和国际信息技术标准委员会 T10 技术委员会对基于对象的存储设备 (OSD) 进行研究的动机之一是认识到驱动器可以被分配组织信息存储空间的责任 [请参阅 “工作项目草案 T10/1355-D 修订版 06 信息技术——SCSI 基于对象的存储设备命令 (OSD)”,Ralph Weber 编辑,2002 年 8 月 2 日]。它可以采用精确的几何模型,因为它了解其三维空间的独特细节,并且理论上可以基于该知识智能地分配数据。OSD 还可以解决长扇区问题;它通过以字节长度传输数据来完全抽象化底层驱动器格式。

安全性是用户日益关注的问题。OSD 研究提倡一种有吸引力的安全模型。麻省理工学院最近的研究发现,从已“擦除”和丢弃的驱动器中仍然可以恢复大量敏感数据 [“出售计算机?请务必擦除硬盘驱动器文件”,Justin Pope,《明尼阿波利斯论坛报》,2003 年 1 月 20 日]。OSD 包括一个安全模型,该模型将安全策略与驱动器级别的数据相结合。始终需要唯一的密码等特殊信息才能解码存储在介质上的信息。由于数据无法与安全控制分离,因此可以避免此类漏洞。

并发控制是另一个可能对编程模型产生影响的研究领域。两个项目表明,驱动器由于是来自多个系统的访问的收敛点,因此可以帮助集群更具可扩展性 [请参阅 Khalil Amiri、Garth Gibson 和 Richard Golding 的“共享存储阵列的可扩展并发控制和恢复”,CMU-CS-99-111,1999 年 2 月;以及 Steven R. Soltis、Thomas M. Ruwart 和 Matthew T. O'Keefe 的“全局文件系统”,第五届 NASA 戈达德太空飞行中心海量存储系统和技术会议论文集,1996 年 9 月 17-19 日]。其他示例包括用于磁盘锁的应用,例如围栏和访问权限撤销。希捷和其他驱动器制造商参与了这项正在进行的研究的多个方面,大多数人认为这些想法中的许多都是未来磁盘驱动器架构的有价值的候选者。

DAVE ANDERSON 是希捷科技的战略规划总监,在计算机领域拥有 20 多年的经验。他的职责包括所有磁盘接口的总体战略。自光纤通道首次作为磁盘接口提出以来,他就一直参与光纤通道的架构和规划。他还是磁盘 XOR 命令的主要架构师之一,这些命令现在是标准 SCSI 接口规范的一部分,并且是 SNIA 为提交给 SCSI 标准委员会而开发的原始基于对象的存储设备 (OSD) 提案的作者和编辑。Anderson 是 SNIA 技术委员会最初的九名当选成员之一。他也是串行连接 SCSI 工作组的创始成员之一。作者感谢 Zip Cotter 的技术和编辑敏锐性。

多少存储空间才足够?
Peter Lyman 和 Hal R. Varian,加州大学伯克利分校

2000 年,加州大学伯克利分校信息管理与系统学院的教职员工和学生发起了一项研究,以衡量世界每年产生多少信息。他们研究了几种媒体,并估计了年度产量、累计库存、增长率和其他变量。该报告约 200 页,试图汇集几乎所有已知的有关信息生产的信息。自 2000 年 10 月首次发布以来,技术和实践发生了巨大变化。该研究的更新正在进行中,应于 2003 年夏季在线发布。有关该报告的详细信息,请访问 www.sims.berkeley.edu/how-much-info。以下内容摘自该报告。

1999 年,世界产生了约 1.5 艾字节的可存储内容(1018 字节)。这是 15 亿千兆字节,相当于地球上每个人、男人、女人和儿童约 250 兆字节。各种印刷文件仅占总量的 0.003%。磁存储是迄今为止最大的信息存储介质,也是增长最快的介质,硬盘驱动器容量每年翻一番。磁存储正迅速成为信息存储的通用介质。

单位  
103
106
109
1012
1015
1018
1021
1024

我们是如何计算出产生的字节数的?世界上大部分内容都很容易计数:书籍、杂志、报纸、电影、CD 等都具有唯一的标识符(ISBN 编号、ISSN 编号等)。关于摄影胶片、硬盘驱动器和其他媒体,存在良好的生产数据。

困难的部分是数字内容,尽管那是最重要的组成部分。根据我们的估计,如今超过 90% 的信息内容是数字原生内容。转换为 ASCII、MP3、MPEG 和其他压缩技术可将存储需求大幅降低一到两个数量级。如果世界上每年出版的所有印刷材料都以 ASCII 表示,则可以将其存储在不到 5 太字节的空间中。

个人产生大量的非数字信息;然而,随着照片和视频转向数字格式,家庭将不得不管理太字节的数据。印刷和胶片内容正迅速转向磁存储和光存储。现在专业用途是这样,个人用户也会越来越如此。每年拍摄超过 800 亿张照片;这将消耗超过 400 拍字节的存储空间——比文本的存储需求高出 8000 万倍以上。
我们的项目主要关注由机构或个人存储的内容。然而,许多资料在没有被系统地存储的情况下就被传播。其中一些资料是原生数字化的,例如电子邮件、Usenet 和 Web 信息。另一些是非数字化的,例如电话和信件。

我们预计数字通信将在不久的将来被系统地存档,从而增加对存储的需求。1999 年,我们估计电子邮件每年约为 12PB,Usenet 约为 73TB,静态 HTML Web 约为 20TB。许多网页是从数据库中的数据动态生成的,因此“深层 Web”的总大小要大得多。

尽管 Web 的社会影响是巨大的,但每年产生的电子邮件数量大约是网页的 500 倍。据显示,每年发送约 6100 亿封电子邮件,而静态网页为 21 亿页。即使是 Usenet 新闻的年度流量也超过了网页库存的三倍。正如 Andrew Odlyzko [参见“Content is not Kin”,技术报告,AT&T Labs,2000,www.research.att.com/~amo/doc/networks.html] 所说,“沟通,而不是内容,才是杀手级应用。”

PETER LYMAN 是加州大学伯克利分校信息管理与系统学院的教授和副院长。他获得了斯坦福大学的哲学学士学位、加州大学伯克利分校的政治学硕士学位和斯坦福大学的政治学博士学位。他担任图书馆和信息资源委员会 (CLIR)、Sage Publications Inc. 和 互联网档案馆 的董事会成员; Getty 信息研究所和 Chadwyck-Healy Inc. 的顾问委员会成员;美国大学协会数字网络和知识产权委员会成员;以及 American Behavioral Scientist 和 Electronic Publishing Journal 的编委会成员。

HAL R. VARIAN 是 加州大学伯克利分校信息管理与系统学院 的院长,同时也是 加州大学伯克利分校 的教授。他还是 哈斯商学院经济学系 的教授。他获得了麻省理工学院的学士学位,以及 加州大学伯克利分校 的数学硕士学位和经济学博士学位。他曾在 麻省理工学院斯坦福大学牛津大学密歇根大学 以及世界各地的其他大学任教。Varian 是 古根海姆基金会计量经济学会美国艺术与科学院 的院士。他曾担任 美国经济评论 的联合编辑,并且是多家期刊的编委会成员。他目前的研究涉及信息技术的经济学和 信息经济。他是商业策略书籍 信息规则:网络经济的战略指南 的合著者,并为 纽约时报 撰写 每月专栏

acmqueue

最初发表于 Queue vol. 1, no. 4
数字图书馆 中评论这篇文章





更多相关文章

Pat Helland - 关注你的状态以保持精神状态
随着应用程序进入分布式和可扩展的世界,它们经历了有趣的演变。同样,存储及其近亲数据库也与应用程序并肩发展变化。很多时候,存储和应用程序的语义、性能和故障模型都在微妙地共舞,以支持不断变化的业务需求和环境挑战。规模的扩大确实让情况变得更加复杂。本文着眼于其中的一些问题及其对系统的影响。


Alex Petrov - 现代存储系统背后的算法
本文深入探讨了现代数据库中常用​​的两种存储系统设计方法(读优化 B 树和写优化 LSM(日志结构合并)树),并描述了它们的用例和权衡取舍。


Mihir Nanavati, Malte Schwarzkopf, Jake Wires, Andrew Warfield - 非易失性存储
在大多数执业计算机科学家的整个职业生涯中,一个基本观察结果始终成立:CPU 的性能和成本都远高于 I/O 设备。事实上,CPU 可以极高的速度处理数据,同时为多个 I/O 设备提供服务,这对各种规模系统的硬件和软件设计产生了深远的影响,几乎从我们开始构建它们以来就一直是如此。


Thanumalayan Sankaranarayana Pillai, Vijay Chidambaram, Ramnatthan Alagappan, Samer Al-Kiswany, Andrea C. Arpaci-Dusseau, Remzi H. Arpaci-Dusseau - 崩溃一致性
数据的读取和写入,是任何冯·诺依曼计算机最基本的方面之一,但其微妙之处和细微差别却令人惊讶。例如,考虑在具有多个处理器的系统中访问共享内存。虽然一种称为强一致性的简单直观的方法最容易被程序员理解,但许多较弱的模型也在广泛使用(例如,x86 总存储排序);这些方法提高了系统性能,但代价是使对系统行为的推理更加复杂且容易出错。





© 保留所有权利。

© . All rights reserved.