1、 PDF外文:http:/ Scale-up x Scale-out: A Case Study using Nutch/Lucene Maged Michael, Jos E. Moreira, Doron Shiloach, Robert W. Wisniewski IBM Thomas J. Watson Research Center Yorktown Heights, NY 10598-0218 向上向外 扩展 :关于研究 Nutch/Lucene的互操作性
2、 摘 要 在过去几年 中 , 多处理系统 提高运行能力 的解决方案 一直困扰着主流的商业计算。 主要的服务器供应商继续提供越来越 强悍的机器,而近期,向外扩展的解决方案, 规模较小的机器集群的形式 ,更加被商业计算所接受。 向外扩展的解决方案是以网络为中心高吞吐量的特别有效的应用。 在本文中,我们调查了向上扩展和向外扩展这两种相对的方法 在一个新兴的搜索应用程序 中并行的情况 。 我们的结论表明,向外扩展的策略即使在向上扩展的机器中依然可以表现良好。 此外,向外扩展的解决方案提供更好的价格 /性能比,虽然增加了管理
3、的复杂性。 1 简介 在过去 10年里的商业计 算 中 ,我们目睹了 计算机系统 单处理器 到 多处理器的全面 换代 。 80年代初期引发的计算机行业的科技革命导致它占领了 90年代商业计算大部分的市场。 我们可以 根据 不同的做法, 将 采用多处理器系统的运算(包括商业和技术 /科学)分为两个大组: 向上扩展: 大型共享存储服务器的部署应用( 多处理系统 ) 。 向外扩展:多个小相互服务器应用程序的部署( 网络 集群)。 在第一阶段的 商业计算革命 中 , 向上扩展的 优势是显而易见的
4、。 多处理系统规模 的 增加,处理器时钟速率 的 提高 , 提供 更高的 计算能力来处理 事物 的需要,即使是目前最大的 公司也面临这 些问题 . 对称多处理系统 是目前的主流商业计算。 IBM 、 惠普和 Sun这样的 公司每一代人 都 投入巨资 以 建设更大 、 更好 多处理系统 。 最 近,针对于商业计算的向外扩展越来越被关注。对于许多新的以网络产品为主的企业(例如谷歌、雅虎、 eBay、亚马逊),使用向外扩展是是解决必要计算能力唯一的办法。另外,计算机制造商更容易部署基于机架最佳化和刀片服务器的向外扩展解决方案。向外扩展在过去好多年一直是大规模科学计算的唯一可行方案,我们
5、可以观察世界 500强系统的发展。 在此论文中,我们研究的是一个新兴的商业应用,非结构化数据的 检索,根 据两个不同的系统:一个是以向上扩展为基础的超线程酷睿 POWER5处理器。另一种是基于 IBMBlade Center刀片服务器向外扩展系统。这两个系统配置价格差不多(约 20万美元),从而可以公平的进行性价比的比较。 其中一个重要的结论,我们的工作是一个“纯粹”的向上扩展的方案而不是很有效的利用所有的处理器在一个大型的对称多处理。在纯粹的向上扩展中,我们只有一个实例运行的应用程序中的 SMP,并使用该实例的所有可用资源(处理器)。 我们更擅长于开发 P
6、ower5的 对称多处理 与“ 基于 abox向外扩展”的 方案 。在 这种情况下,多个实例方法同时运行在一个单 操作系统 下 。后一种做法 显著 提高性能,同时 又能 保持单一系统形象,是一个很 具 优势的 对称多处理系统 。 我们的另外一个结论是 ,同样的价格尺度系统 的情况下, 向外扩展的系统能够实现 4倍的性能。 在我们的应用案例中, 这一业绩 的 衡量 精确到了秒 。 向外扩展系统需要使用 多个系统的图像,因此, 可以有效方便的降低 管理成本。 不同 情况 下 ,这 点或许能 改善性能。 其余 部分 本文安排 如下 .Section 2叙述 了向上扩展系统和向
7、外扩展系统荣在 我们的研究 中的配置 。第 3节介绍了 Nutch / Lucene在我们 的系统中 运行 的工作量。第 4节介绍我们的结论。 2 向上和向外扩展系统 在 IBM的产品线,系统 z,p和 i全部建立在具有跨度范围广泛的计算能力的多处理系统上。我们选择了 Power5的 p5 575机器作为代表着 目前技术水平的系统 。这 个 8位或 16位 系统已经由于其低成本,高性能,小型化 ( 2U或 3.5英寸的高 24英寸机架) 已经吸引了不少客户 。 POWER5的 p5 575是图片如图 1所示。 我们所用的特殊 p5 575测
8、试系统拥有 16个 8位酷睿单元 和 32GB( 1G= 1,073 , 741824字节)的主 存 。 每个核心是双 线程,因此 这个 操作系统 相当于一个 32位 的SMP。 处理器速度是 1.5G赫兹。 另外, p5 575connects有 两个 Gigabit/s以太网接口。 它也有自己的专用 DS4100存储控制器。( 见下面的说明 DS4100) 向外 扩展系统有许多不同的形状和形式 , 但它们一般包括多个相互关联的节点,每一个节点 代表 一个独立的操作系统。 我们选择的 BladeCenter作为我们的向外 扩展平台。这是这个平台 基于向外 扩展方向 的
9、一个自然 选择 。 第一种 在 商业计算成为流行的 向外扩展系统 是机架式集群。 IBM BladeCenter,解决 方案 (和类似的系统公司,如惠普和戴尔) 引领着下一步 机架式集群 向外 扩展系统的商业计算。 BladeCenter的刀片服务器 使用 和 机架式集群服务器 相似的能力 : 4处理器的配置, 16-32培养基的最大内存,内置以太网,并扩展卡两种光纤通道, Infiniband的 , Myrinet的,或 10Gbit/s以太网。 同时还提供有多达 8个处理器的双宽叶片配置和 额外 的内存。 BladeCenter-H是最新的
10、 IBM BladeCenter机架 。 与之前的 BladeCenter 1机架相比 ,它有 14个刀片插槽的刀片服务器。它也有 多 达 两个管理单元, 4个交换机模块,四桥模块和四个高速交换机模块 的 空间。 (在 机架上 交换机模块 3与 4和桥梁模块 3与 4均共享相同的插槽。 ) 我们在每个机架配备 两个 1-Gbit/s以太网交换机模块和 2个光纤通道交换机模块。 三种不同叶片中使用了我们的 集群 : JS21( PowerPC处理器), HS21 (英特尔 Woodcrest处理器) 和 LS21( AMD O
11、pteron处理器)。每一个刀片( JS21, HS21,或 LS21)既有本地磁盘驱动器( 73 GB的容量) 也有 双光纤通道的网络适配器。在光纤通道适配器,两个用于连 接 的 刀片光纤通道交换机, 都被 插入机 架 。 大约一半的集群( 4底盘)组成 JS21刀片。这是四处理器(双插槽,双核心)的 PowerPC 970片 ,运行在 2.5 GHz。每一个刀片有 8GiB的内存。在本文中 的结论报告中 ,我们 着重关注 这些 JS21刀片。 DS4100存储子系统包括双存储控制器,每一个 都配有 2Gb/s的光纤通道接口,并且在主要抽屉中容纳了 14个 SATA驱
12、动器。 尽管 每个 DS4100是搭配一个 专门 的BladeCenter-H机架 , 但 由于我们 运行的 光纤通道网络 ,集群中的 任何刀片 都可以 可以 查 看到存储系统 的每个逻辑 单元 。 3 Nutch / Lucene的工作量 Nutch / Lucene是一种执行搜索应用 的框架 。这是基于非结构化数据(网页)搜索的 应用程序日益增多的表现 。 我们已经习惯了 谷歌和雅虎 这样 开放互联网运作的搜索引擎。然而,搜索也是公司 局域网、 内部网络的 一个重要的运作 。 Nutch / Lucene完全是基于 Java和其代码 的开源性 。
13、Nutch / Lucene, 作为一个典型的搜寻工作,有三个主要部分组成:( 1)检索,( 2)索引,和( 3)查询。在本文中,我们列出 查询结果的组成部分。 为了完整性 ,我们简要介绍了 其他组成部分。 抓取操作是浏览和检索信息的网页, 然后输入将要搜索的文本信息 。 这一套文件在搜索术语 称为语料库 。 爬行可以 同时在 内部网络(内联网)以及外部网络(因特网) 内执行。 检索, 尤其 是在互联网,是一个复杂的 工作 。 无论是 有意 还是 无意, 总有许多的网站 难以检索 到 。 检索的性能通常是被检索系统和被检索系统之间的网络带宽给制约着。 在 Nutch / Lucene的搜索框架 包含 一个使用 MapReduce编程模型 的 并行索引操作书面。 MapReduce提供了一个方便的方式处理一个重要的(尽管有限)类 ,通过程序员在现实生活中 的商业应用并行和容错性问题让他们关注 问题域。MapReduce在 2004年出版了谷歌 网站 ,并迅速成为这 类 工作量 分析的 标准。MapReduce模式 的 并行索引 操作 如下 。 首先, 将要建立的 数据分割成大致相同大小 的部分 。每一部分, 按照既定的方式进行处理 ,生成(键,值),其中 KEY