基于闪存的存储系统中的分布式RAID架构技术方案

技术编号:12461255 阅读:150 留言:0更新日期:2015-12-06 10:50
本发明专利技术公开了一种基于闪存的存储系统,其包含多个存储节点,每个存储节点包含分布式RAID控制器代理、存储控制器和多个存储器件。所有存储节点由一个或多个高速串行通信链路连接成环型拓扑。更具体而言,在每个存储节点内,RAID控制器代理与存储控制器紧密耦合。

【技术实现步骤摘要】

本文所公开的系统涉及一种基于闪存的存储系统,更具体而言,涉及一种采用分布式独立磁盘冗余阵列(RAID)的基于闪存的存储系统。
技术介绍
RAID控制器和存储控制器是当代存储系统中的两个重要的组成部分。RAID控制器通常会提供诸如智能数据管理、奇偶校验数据生成和缓存备份等任务。存储控制器通常提供闪存存储器件管理、物理地址到逻辑地址转换、损耗均衡、块采集以及垃圾收集。RAID控制器和存储控制器经常是两个独立的实体,且这种系统架构在带宽上受到局限,因为它们相互之间的连接受限;此外,此类系统的性能也受到集中式RAID控制器中的计算能力的限制,且使用复杂的切换或互连方法时可能会出现瓶颈。为克服市场上现有系统的上述缺点,本文所公开的系统提供了一种优化的基于闪存的存储系统,其具有与存储控制器紧密耦合的分布式RAID控制器代理,这种架构可提供更为有效的数据流互连和奇偶校验计算负载共享。
技术实现思路
本文所公开的基于闪存的存储系统包括多个存储节点。每个存储节点包括RAID控制器代理、存储控制器以及多个存储器件。每个RAID控制器代理均与存储控制器紧密耦合。每个存储节点均通过一个或多个高速串行通信链路被连接至环型拓扑中的其他存储节点。存储控制器由一个或多个并行或串行的通信链路连接至多个存储器件。每个存储节点均通过高速串行通信链路被连接至I/O接口模块,而每个I/O接口模块被配置为通过一个或多个通信链路与外部主机设备进行通信。在系统初始化期间,将有一个准备阶段,会对每个存储节点分配一个独一无二的节点标识号(NID)。此外还将公开运行本系统的方法。所述方法包括分配NID、设置数据路由路径表和数据包格式的步骤。【附图说明】图1所示为包括主机设备和存储系统的一个示例计算系统的框图。图2所示为一种优选示例存储系统的框图,其中所述存储系统具有多个存储节点,且节点之间相互连接。图3所示为图2所述的存储节点之一(节点122)的一个示例数据路由表。图4所示为图2所述系统中每个存储节点的一个示例地址范围。图5所示为一种优选示例存储系统中的一种示例数据包格式。图6所示为一个示例存储节点(节点121)的框图。图7所不为一个不例主机设备的框图。图8所示为包处理的示例流程图。【具体实施方式】尽管本文所公开的专利技术可接受各种改动和替代形式,但以事例的方式,在附图中显示了特定的实施例,并对其进行了详细说明。应该理解的是,本文所给出的附图和详细说明并不意图将本专利技术局限于所公开的特定形式。相反,本专利技术涵盖落入所附权利要求限定的本专利技术的精神和范围内的所有改动、等效方案和替代方案。图1所示的一种示例计算存储系统可能包括主机设备10和存储系统100。将要执行的最常见的操作包括从存储系统100内的地址读取数据,以返回给主机设备10,或者将主机设备10所提供的数据写入到存储系统100内的地址。要读取或写入的数据可以由单个地址或块地址和块尺寸组成。在图1中,在代表存储系统100外部的全局环境的主机设备10与存储系统100之间的接口可以采用任何接口类型,包括但不限于PCIe、XAU1、Infiniband、千兆以太网或其他高速串行及光纤信道,它们具有一个或多个双向信道。在图2中,存储系统100与多个输入/输出接口模块进行通信。在本例中,示出了 6个I/O模块(即101、102、103、104、105和106),不过I/O模块的数量并非关键因素,可能会有改变。每个I/O模块可通过主机通信信道(分别为101a、102a、103a、104a、105a和106a)耦合到一个或多个外部主机设备,或者I/O模块也可以是主机设备的组成部分,如图7所示。信道101a、102a、103a、104a、105a和106a使外部主机设备(例如服务器或其他任何可作为主机运行的设备)可以将命令、指令和数据提供到I/O接口模块101、102、103、104、105和106,和/或从I/O接口模块101、102、103、104、105和106接收命令、指令和数据。在图2中,系统100包括并采用多个存储节点。在本例中,示出了 6个存储节点(即121、122、123、124、125和126),不过存储节点的数量并非关键因素,可能会有改变。每个存储节点包括RAID控制器代理、存储控制器和存储器件的阵列。每个存储节点通过一个通信信道(分别为111、112、113、114、115和116)连接至一个I/O模块。信道111、112、113、114、115和116可以是任何类型的高速串行通信接口。在图2中,提供有多个通信链路,使得所有存储节点可以进行相互间的通信。这些串行链路可以是高速SERDES (串行器/解串器,Serializer/Deserializer)或LVDS (低压差分信号,Low Voltage Differential Signaling)或目前已知或将要开发的类似链路。在图2中,存储节点之间的通信可采用每个存储节点均与其他存储节点相连的环型拓扑形式。例如,节点121通过高速通信链路138与节点124直接相连;由此,节点121与节点124之间的传输时间被缩短。在如图2所示的一种优选实施例中,来自每个I/O模块的数据将被传送至相应的存储节点;随后数据可能会被分发至与存储节点相关联的闪存存储器件或用于进行奇偶校验或其他数据处理操作的其他存储节点。每个节点有其自己的数据路由路径表。图3中示出了节点112的一个示例路由路径表。路由路径表通常至少包括针对源节点、目的节点以及从源节点到目的节点的路径数据。从源节点到目的节点可能有一个或多个路径。例如,在图3所示示例中,从节点122到节点126有两条路径(信道132和131或信道139和136)。可以采用轮转仲裁或其他方法来确定数据传输的路径。在采用RAID的另一种优选实施例中,每一组数据被传输至节点121、122、123、124、125,并被存储在相关联的存储器件内。数据也将通过每当前第1页1 2 本文档来自技高网...

【技术保护点】
一种基于闪存的存储系统,包括:多个存储节点,其中每个所述存储节点均与环型拓扑中的其他所述存储节点进行通信,其中每个所述存储节点进一步包括:分布式RAID控制器代理;存储控制器;以及存储器件的阵列;其中每个所述存储节点均通过一个或多个I/O模块、经由高速通信链路被连接至外部主机设备;其中在所述存储节点内的每个分布式RAID代理和每个存储控制器均通过并行总线或高速串行通信链路被连接至所述存储器件的阵列。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:廖玉峰吴佐英周正宁
申请(专利权)人:AUPERA技术有限公司
类型:发明
国别省市:加拿大;CA

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1