包括微阵列存储系统的机架可安装的计算机系统的制作方法

文档序号:11916595阅读:240来源:国知局
包括微阵列存储系统的机架可安装的计算机系统的制作方法与工艺

本发明的领域是数据处理,或者更具体地是包括微阵列存储系统的机架可安装的计算机系统,以及用于在这样的机架可安装的计算机系统内的数据通信的方法和产品。



背景技术:

1948年对EDVAC计算机系统的开发常常被当作计算机时代的开始。从那时起,计算机系统已经演变成极其复杂的设备。现今的计算机比早期系统(诸如EDVAC)复杂很多。计算机系统通常包括硬件和软件组件、应用程序、操作系统、处理器、总线、存储器、输入/输出设备等的组合。由于半导体处理和计算机体系结构中的进步推动计算机的性能越来越高,所以更复杂的计算机软件已经发展到利用更高性能的硬件的优点,使得比刚过去的几年强大得多的现代计算机系统。

计算机系统中的一个改进领域在于对数据存储的大规模管理。例如,数据中心现在存在以用于维护大量数据存储,并且这些数据中心通常包括机架,机架包含多个个体的机架可安装的壳体单元。



技术实现要素:

在本说明书中公开了一种包括微阵列存储系统的机架可安装的计算机系统、一种用于在这样的机架可安装的计算机系统内的数据通信的方法以及一种用于在这样的机架可安装的计算机系统内的数据通信的产品。在这样的机架可安装的计算机系统内的数据通信可以包括:从微阵列控制器向通信结构发送对数据的请求,其中微阵列控制器是被容纳在外壳的驱动器托架内的多个微阵列控制器之一,其中外壳包括多个存储设备,并且其中微阵列控制器控制存储设备中的一个或多个存储设备;由通信结构确定来自多个微阵列控制器之中的目的地微阵列控制器,其中目的地微阵列控制器控制存储设备中的另外的一个或多个存储设备;从目的地微阵列控制器向通信结构发送由对数据的请求指定的数据;以及在微阵列控制器处从通信结构接收由对数据的请求指定的数据。

本发明的前述目的和其他目的、特征和优点将从如在附图中图示的本发明的示例性实施例的下面的更具体的描述中变得显而易见,其中类似的参考标记总体上表示本发明的示例性实施例的类似的部分。

附图说明

图1阐述了根据本发明的实施例配置的微阵列系统的图示。

图2阐述了根据本发明的实施例的包括被配置用于控制机架可安装的微阵列系统中的微阵列的一个或多个存储设备的示例性微阵列控制器的自动化计算机器的框图。

图3阐述了描绘根据本发明的实施例的在机架可安装的壳体内的微阵列系统的图示。

图4阐述了描绘根据本发明的实施例的在机架可安装的壳体内的微阵列系统的图示。

图5图示了图示根据本发明的实施例的用于在机架可安装的壳体内的微阵列系统的示例性方法的流程图。

具体实施方式

在本说明书中公开了一种包括微阵列系统的示例性机架可安装的计算机系统、一种用于在这样的机架可安装的计算机系统内的数据通信的方法以及一种用于在这样的机架可安装的计算机系统内的数据通信的产品,参考附图对这些内容进行描述,以图1开始。

图1阐述了根据本发明的实施例配置的微阵列系统(104)的示意图。示例性微阵列系统包括多个微阵列。每个微阵列可以包括被映射到一个或多个存储设备(110)的一个或多个微阵列控制器(108)。下面更详细地描述具有微阵列控制器到存储设备的不同映射的不同示例微阵列。如下面进一步所描述的,每个微阵列可以实施存储系统,其中不同的微阵列可以实施不同类型的存储系统。

在一些实施方式中,微阵列系统(104)内的不同的微阵列可以彼此通信以对客户机应用提供数据存储服务,例如数据库、数据库服务,或者一般地,请求存储和取回数据的服务的任何客户机应用。可以通过数据通信结构(106)来提供这样的通信。也就是说,每个微阵列控制器可以被配置为通过数据通信结构(106)与其他微阵列控制器并且与存储设备(110)进行通信。图1的示例通信结构(106)可以实施任何数目的联网拓扑、数据通信协议、交换机,等等。在一些实施例中,例如,通信结构(106)可以实施以太网数据通信结构并且可以包括一个或多个以太网交换机。

在一些实施方式中,机架可安装的壳体(102)可以包括用于安装存储设备(110)的任何数目的驱动器托架。在一些实施方式中,微阵列控制器(108)可以被安装或被定位在多个驱动器托架中的针对其存储设备(110)可以被安装或被定位的任何驱动器托架内。也就是说,在一些实施方式中,每个微阵列控制器(108)可以具有与存储设备(110)的形式因子相同的形式因子。

在一些实施方式中,一个或多个机架可安装的壳体(102)可以适合放入在单个机架(100)内,其中机架可以被配置为向机架(100)内的微阵列系统中的每个微阵列系统提供功率、冷却和通信骨干网,并且用于与其他计算机网络或客户端计算机设备进行通信。在一些情况下,计算机网络可以包括包含微阵列系统(104)的多个机架(100)的数据中心内的本地计算机网络。

构成图1中图示的示例性系统的设备的布置是为了解释而非限制。如本领域技术人员将想到的,根据本发明的各种实施例有用的数据处理系统可以包括未示出在图1中的附加的服务器、路由器、其他设备以及对等体系结构。这样的数据处理系统中的网络可以支持多个数据通信协议,包括例如TCP(传输控制协议)、IP(因特网协议)、HTTP(超文本传输协议)、WAP(无线访问协议)、HDTP(手持设备传输协议)、iSCSI、SWIFT、以及如本领域技术人员将想到的其他协议。本发明的各种实施例可以被实施在除了图1中图示的硬件平台之外的各种硬件平台上。

通常利用计算机来实施在机架可安装的壳体内的微阵列系统,即利用自动化计算机器来实施。在图1的系统中,例如,微阵列系统(104)、通信结构(106)、微阵列控制器(108)以及存储设备(110)可以全部至少在某种程度上被实施为计算机。

为了进一步解释,因而图2阐述了根据本发明的实施例的包括被配置用于控制机架可安装的微阵列系统中的微阵列的一个或多个存储设备的示例性微阵列控制器(112)的自动化计算机器的框图。图2的微阵列控制器(112)包括至少一个计算机处理器(156)或‘CPU’以及随机访问存储器(168)(‘RAM’),其通过高速存储器总线(166)和总线适配器(158)连接到处理器(156)并且连接到微阵列控制器(112)的其他组件。在一些实施方式中,计算机处理器(156)可以为低功率处理器,例如ARMTM处理器或一些其他类似的低功率处理器。

存储在RAM(168)中的是微阵列控制模块(130),其是用于控制根据本发明的实施例的机架可安装的壳体内的微阵列系统的微阵列中的一个或多个存储设备的计算机程序指令的模块。

还存储在RAM(168)中的是操作系统(154)。在被配置用于根据本发明的实施例的包括微阵列系统的机架可安装的计算机系统的计算机中利用的操作系统包括UNIXTM、LinuxTM、Microsoft XPTM、AIXTM、IBM的i5/OSTM以及如本领域技术人员将想到的其他系统。图2的示例中的操作系统(154)和微阵列控制器模块(130)被示出在RAM(168)中,但是这样的软件中的许多组件通常也被存储在非易失性存储器中,例如被存储在磁盘驱动器(170)上。

图2的微阵列控制器(112)包括磁盘驱动器适配器(172),其通过扩展总线(160)和总线适配器(158)耦合到处理器(156)和微阵列控制器(112)的其他组件。磁盘驱动器适配器(172)将非易失性数据存储连接到磁盘驱动器(170)形式的微阵列控制器(112)。在被配置用于根据本发明的实施例的包括微阵列系统的机架可安装的计算机系统的计算机中利用的磁盘驱动器适配器可以包括集成驱动器电子(‘IDE’)适配器、小型计算机系统接口(‘SCSI’)适配器以及如本领域技术人员将想到的其他。非易失性计算机存储器还可以被实施为光盘驱动器、电可擦可编程只读存储器(所谓的‘EEPROM’或‘闪存’存储器)、RAM驱动器、如本领域技术人员将想到的其他等等。

图2的示例微阵列控制器(112)包括一个或多个输入/输出(‘I/O’)适配器(178)。I/O适配器通过例如软件驱动器和计算机硬件来实施面向用户的输入/输出,以控制到诸如计算机显示屏的显示设备的输出以及控制来自诸如键盘和鼠标的用户输入设备的用户输入。图2的示例微阵列控制器(112)包括视频适配器(209),其为被专门设计用于到诸如显示屏或计算机监视器的显示设备(180)的图形输出的I/O适配器的示例。视频适配器(209)通过高速视频总线(164)、总线适配器(158)和前端总线(162)(其也为高速总线)连接到处理器(156)。

图2的示例微阵列控制器(112)包括用于与其他计算机(未示出)的数据通信和用于与数据通信网络(未示出)的数据通信的通信适配器(167)。可以通过RS-232连接、通过诸如通用串行总线(‘USB’)的外部总线、通过诸如IP数据通信网络的数据通信网络以及以如本领域技术人员将想到的其他方式来连续地实施这样的数据通信。通信适配器实施硬件层的数据通信,通过硬件层的数据通信,一个计算机直接地或通过数据通信网络将数据通信发送到另一计算机。在根据本发明的实施例的计算机中利用的通信适配器的示例包括用于有线拨号通信的调制解调器、用于有线数据通信的以太网(IEEE 802.3)适配器、以及用于无线数据通信的802.11适配器。

通信适配器(167)还可以将微阵列控制器(112)适配用于通过通信结构(106)与存储设备和其他微阵列控制器进行通信。在不同的实施方式中,通信结构(106)可以为以太网结构、光纤信道结构、或更一般地任何类型的网络交换机、被配置为提供在不同的计算设备之间的消息的路由和数据的传输的通信协议的任何实施方式。在一些情况下,消息可以为与不同的网络协议相对应的不同的格式,或者与不同的存储管理系统相对应。另外,数据传输可以是基于对象的、基于文件的、基于块的或者更一般地基于存储在存储设备(110)中的一个或多个存储设备中的任何量或大小的可寻址数据。

在一些实施例中,在微阵列控制器与存储设备之间的映射可以取决于期望的工作负载。例如,如果针对给定微阵列的给定微阵列控制器确定了高期望的工作负载,则与在期望微阵列控制器的较低的工作负载相比,给定微阵列控制器可以被映射到较小数目的存储设备。换言之,针对具有不同的微阵列控制器的不同的微阵列,其中不同的微阵列控制器具有相似的处理性能,不同的微阵列控制器可以基于不同的期望的工作负载而被映射到不同量的存储设备。

在一些实施例中,微阵列控制器(108)和存储设备(110)的体系结构配置可以与在微阵列系统(104)中所描述的不同。通常,微阵列控制器(108)中的微阵列控制器可以被配置为与存储设备(110)中的、微阵列控制器(108)被配置为控制所针对的一个或多个存储设备进行通信。

在一些实施例中,不同的微阵列控制器可以被配置为具有不同量的处理功率、不同量的存储、或更一般地具有不同组合的硬件组件和不同组合的硬件组件的处理能力。在一些情况下,不可以利用不同的操作系统来配置同的微阵列控制器(108)。另外,在一些情况下,给定微阵列控制器可以被配置为至少基于给定微阵列控制器的一个或多个性能特性来控制存储设备的量。例如,微阵列控制器可以由于硬件性能特性而被配置为控制不多于八(8)个存储设备。

在一些实施例中,存储设备(110)可以包括具有相似的或相同的存储和性能特性的存储设备。在其他实施例中,存储设备(110)可以包括不同类型的存储设备。存储设备可以例如被配置具有不同类型的存储器、不同大小的存储器或者不同的性能特性。例如,存储设备中的一些可以为闪存存储器,其他可以为硬盘驱动器,并且另外的其他可以为特定的一些其他类型的存储装置。

在不同的实施方式中,微阵列系统(104)可以将多个微阵列控制器(108)、多个存储设备(110)以及通信结构(106)包括在相同的单个机架可安装的壳体(102)内。在一些实施方式中,机架可安装的壳体(102)可以被称为外壳、机架壳体单元、壳体单元或机架单元。然而,不同的术语通常是指长度、高度和宽度的特定物理尺寸,使得由机架可安装的壳体的特定物理尺寸占有的空间连同可能的其他机架可安装的壳体适合放入在机架(102)内。在不同的情况下,不同的机架可安装的壳体可以具有不同物理尺寸的长度、高度和宽度,并且仍然被配置为适合放入在单个机架(100)内。例如,针对机架可安装的壳体存在不同的工业标准大小,其中不同的标准大小可以仍然适合放入在相同的机架内。如图2中所描绘的,机架(100)可以包括机架可安装的壳体(102)并且还包括具有不同物理尺寸的机架可安装的壳体(120)。

为了进一步解释,图3阐述了描绘根据本发明的实施例的在机架可安装的壳体(102)内的、包括多个不同的微阵列的微阵列系统(104)的图示,多个不同的微阵列在该示例中为微阵列(302)、微阵列(304)、微阵列(306)以及微阵列(308)。

在一些实施方式中,不同的微阵列可以被配置为实施不同的存储管理系统。在其他实施方式中,不同的微阵列可以被配置为实施相同的存储管理系统。

在该示例中,微阵列(302)可以被配置为实施虚拟LAN(310),其在该示例中包括十四(14)个存储设备和两(2)个微阵列控制器;微阵列(304)可以被配置为实施虚拟LAN(312),其在该示例中包括七(7)个存储设备和一(1)个微阵列控制器;微阵列(306)可以被配置为实施虚拟LAN(314),其在该示例中包括七(7)个存储设备和一(1)个微阵列控制器;以及微阵列(308)可以被配置为实施虚拟LAN(316),其在该示例中包括二十八(28)个存储设备和四(4)个微阵列控制器。

在该实施例中,微阵列(302)可以被配置为实施基于块的存储管理系统,微阵列(304)可以被配置为实施基于文件的存储管理系统,以及微阵列(306)和(308)可以被配置为实施基于对象的存储管理系统。在不同的情况下,在基于文件的存储管理系统中存储并取回的文件可以具有任意大小,以及取决于由通过针对特定微阵列的一个或多个微阵列控制器控制的特定微阵列和存储设备支持的块大小,在基于块的存储管理系统中存储并取回的文件可以被定义为不同的大小。另外,在一些实施方式中,微阵列系统(104)的给定微阵列控制器可以实施独立磁盘系统的冗余阵列,或者RAID系统。

为了进一步解释,图4阐述了描绘根据本发明的实施例的在机架可安装的壳体内的、包括多个不同的微阵列的微阵列系统(402)的图示。在该示例中,不同的微阵列被描绘为微阵列(308)、微阵列(402)、微阵列(404)和微阵列(406),其中微阵列(308)可以实施虚拟LAN(316),微阵列(402)可以实施虚拟LAN(408),微阵列(404)可以实施虚拟LAN(410),并且微阵列(406)可以实施虚拟LAN(412)。

在不同的实施例中,给定微阵列控制器可以被映射到存储设备(110)中的任何存储设备,以创建具有任意大小的微阵列,并且其中微阵列控制器或控制器可以任意地位于机架可安装的壳体的驱动器托架中的任何驱动器托架内。另外,存储设备或微阵列的设备还可以任意地位于机架可安装的壳体的驱动器托架中的任何驱动器托架内。换言之,存储设备被映射到机架可安装的壳体的任何驱动器托架中的任何一个或多个存储设备,而没有任何接近或位置的要求。例如,微阵列(402)包括微阵列控制器(414),微阵列(404)包括微阵列控制器(416)和微阵列控制器(418),微阵列(406)包括微阵列控制器(420);以及微阵列(308)包括微阵列控制器(422)、微阵列控制器(424)、微阵列控制器(426)和微阵列控制器(428)。

在一些实施例中,在机架可安装的壳体内的任何微阵列控制器可以位于存储设备可以被定位在其中的任何驱动器托架中。例如,微阵列控制器可以具有与机架可安装的壳体的驱动托架中的存储设备的物理尺寸相似的物理尺寸,并且微阵列控制器可以具有相似的通信端口,例如以太网端口、USB端口或一些其他通信协议端口。

为了进一步解释,图5阐述了图示用于根据本发明的实施例的在机架可安装的壳体内的微阵列(104)的示例性方法的流程图,该示例性方法包括将对数据的请求(502A)从微阵列控制器(320)发送到通信结构(106),其中微阵列控制器是被容纳在外壳的驱动器托架内的多个微阵列控制器(108)之一,并且其中外壳包括多个存储设备(110),并且其中微阵列控制器(320)控制一个或多个存储设备,例如在虚拟LAN(316)和微阵列(308)内的一个或多个存储设备。

微阵列系统(104)的该示例性方法还包括由通信结构(106)确定(504)目的地微阵列控制器(322),其中目的地微阵列控制器(322)控制存储设备(110)中的另外的一个或多个存储设备,例如在虚拟LAN(314)和微阵列(306)内的一个或多个存储设备。

微阵列系统(104)的该示例性方法还包括将由对从微阵列控制器(320)接收到的数据的请求(506A)指定的数据从通信结构(106)发送(506)到微阵列控制器(320)。

另外在该示例中,将数据发送(506)到微阵列控制器(320)包括:首先,从目的地微阵列控制器(322)接收数据,其包括将对于由对数据的请求(502A)指定的数据的请求(506B)从通信结构(106)发送(506A)到目的地微阵列控制器(322)。另外在该示例中,将数据发送(506)到微阵列控制器(320)包括:将由对数据的请求(506B)指定的数据从目的地微阵列控制器(322)发送(506C)到通信结构(106)。另外在该示例中,将数据发送(506)到微阵列控制器(320)包括:在通信结构(106)处从目的地微阵列控制器(322)接收(506E)由对数据的请求(502A)指定的数据。

最终在该示例中,微阵列系统(104)的示例性方法还包括在微列控制器(320)处从通信结构(106)接收(508)由对数据的请求(502A)指定的数据。通过这种方式,微阵列控制器(320)可以与另外的微阵列控制器(322)进行通信以便传输数据。

类似地,在一些实施例中,如果来自任何给定微阵列的任何给定微阵列控制器接收到对数据的请求,其中数据未被存储在由给定微阵列控制器控制的存储设备中,则给定微阵列控制器可以与来自其他微阵列的其他微阵列控制器进行通信以获得并提供数据以满足对数据的请求。换言之,微阵列系统(104)的多个微阵列控制器(108)可以共同地接收对数据的请求并对其做出响应,其中数据可以驻存在由不同的微阵列控制器控制的不同的微阵列内。通过这种方式,被存储在共同的微阵列内的数据可以对请求数据存储设备的应用呈现为单个名字空间。在一些示例中,这样的数据存储服务可以将请求应用呈现为按比例缩小的文件系统。

本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上具有用于使处理器执行本发明的各个方面的计算机可读程序指令。

计算机可读存储介质能够是能够保留并存储用于由指令执行设备使用的指令的有形设备。计算机可读存储介质可以例如但不限于电子存储设备、磁性存储设备、光学存储设备、电磁存储设备、光学存储设备、电磁存储设备、半导体存储设备或前述的任何适当组合。计算机可读存储介质的更具体示例的非穷举式列表包括以下:便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦可编程只读存储器(EPROM或闪速存储器)、静态随机存取存储器(SRAM)、便携式紧凑盘只读存储器(CD-ROM)、数字多用盘(DVD)、记忆棒、软盘、诸如具有指令记录在其上的槽中的穿孔卡或凸起结构的机械编码设备以及前述的任何适当组合。如本文中使用的计算机可读存储介质不应被解释为暂态信号本身,例如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤线缆传递的光脉冲)或通过电线传输的电信号。

本文中描述的计算机可读程序指令能够从计算机可读存储介质下载到相应计算/处理设备或经由网络下载到外部计算机或外部存储设备,该网络例如因特网、局域网、广域网和/或无线网络。网络可以包括铜传输线缆、光学传输纤维、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或网络接口从网络接收计算机可读程序指令并将计算机可读程序指令转发以用于存储在相应计算/处理设备内的计算机可读存储介质中。

用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集结构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任何组合编写的源代码或目标代码,该一种或多种编程语言包括诸如Smalltalk、C++等的面向对象编程语言和诸如“C”编程语言或类似的编程语言的传统过程式编程语言。计算机可读程序指令可以全部地运行在用户的计算机上、部分地运行在用户的计算机上、作为独立软件包运行、部分地运行在用户的计算机上并且部分地运行在远程计算机上或全部地运行在远程计算机或服务器上。在后一种情形下,远程计算机可以通过包括局域网(LAN)或广域网(WAN)的任何类型的网络连接到用户的计算机,或者可以(例如,通过使用因特网服务提供商的因特网)对外部计算机进行连接。在一些实施例中,包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA)的电子电路可以通过利用用于使电子电路个性化的计算机可读程序指令的状态信息来运行计算机可读程序指令以便执行本发明的方面。

本文参考根据本发明的实施例的方法、计算设备(系统)和计算机程序产品的流程图和/或框图来描述本发明的各个方面。将理解,能够通过计算机可读程序指令来实施流程图和/或框图的每个框以及流程图和/或框图中的框的组合。

这些计算机可读程序指令可以被提供给通用计算机、专用计算机或其他可编程数据处理计算设备的处理器以产生一种机器,使得经由计算机或其他可编程数据处理计算设备的处理器运行的指令创建用于实施流程图和/或一个或多个框图框中指定的功能/动作的模块。这些计算机可读程序指令还可以被存储在计算机可读存储介质中,其能够指引计算机、可编程数据处理计算设备和/或其他设备以特定方式工作,使得具有指令存储在其中的计算机可读存储介质包括制品,其包含实施流程图和/或一个或多个框图框中指定的功能/动作的方面的指令。

计算机可读程序指令还可以被下载到计算机、其他可编程数据处理装置或其他设备上,以使一系列操作步骤在计算机、其他可编程数据处理计算设备或其他设备上被执行,从而产生计算机实施的过程,使得运行在计算机、其他可编程数据处理计算设备或其他设备上的指令实施流程图和/或一个或多个框图框中指定的功能/动作。

附图中的流程图和框图图示了根据本发明的各个实施例的系统、方法和计算机程序产品的可能实施方式的体系结构、功能和操作。在这一点上,流程图或框图中的每个框可以表示包括用于实施(一个或多个)指定的逻辑功能的一个或多个可执行指令的模块、片段或指令的一部分。在一些备选实施方式中,框中指出的功能可以不以附图中指出的顺序发生。例如,取决于所涉及的功能,连续示出的两个框实际上可以基本上同时地被运行,或各框可以有时以相反的顺序被运行。还将指出,框图和/或流程图中的每个框以及框图和/或流程图中的框的组合能够由执行指定功能或动作或执行专用硬件和计算机指令的组合的基于专用硬件的系统来实施。

将从前述描述中理解,可以在不脱离本发明的真实精神的情况下,在本发明的各种实施例中进行修改和改变。在本说明书中的描述仅仅为了说明的目的并且不应在限制性的意义上来解读。本发明的范围仅仅由所附的权利要求的语言限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1