CN107111481A - 分布式主动混合存储系统 - Google Patents
分布式主动混合存储系统 Download PDFInfo
- Publication number
- CN107111481A CN107111481A CN201580053670.2A CN201580053670A CN107111481A CN 107111481 A CN107111481 A CN 107111481A CN 201580053670 A CN201580053670 A CN 201580053670A CN 107111481 A CN107111481 A CN 107111481A
- Authority
- CN
- China
- Prior art keywords
- data
- active
- management system
- inventory management
- node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0685—Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/38—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Library & Information Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
公开了一种主动存储系统。该主动存储系统包括存储装置、非易失性存储器和主动驱动控制器。该主动驱动控制器在主动存储系统内执行数据管理和/或集群管理,主动驱动控制器包括用于接收至少对象和/或文件数据的数据接口。
Description
优先权声明
本申请要求2014年10月3日提交的新加坡专利申请No.10201406349V的优先权。
技术领域
本发明涉及一种用于数据中心的存储系统。更具体地说,本发明涉及一种用于数据中心的分布式主动混合存储系统。
背景技术
目前的存储装置或容量具有很少的智能或者就没有智能。它们是可被指示执行简单的读取/写入操作的虚拟装置。它依赖于存储服务器中的一组系统软件来提取基于块的存储装置。数据中心的数据越多,就需要越多的存储服务器来管理装置并提供存储摘要。这不仅增加了硬件成本,而且还增加了服务器维护的成本。
随着中央处理单元(CPU)和非易失性存储器(NVM)技术的发展,越来越可行的是,将系统和集群软件实现和其它数据管理的功能并入较小的控制板以优化系统的效率和性能,从而降低总拥有成本(TOC)。NVM是一种以非常高的速度和/或非常低的延迟访问时间来存储数据的固态存储器和存储技术,并且即使随着电力的移除NVM仍会保留存储的数据。NVM技术的例子包括但不限于STT-MRAM(自旋力矩转移MRAM)、ReRAM(阻变RAM)和闪存储器。也可以通过各种不同的NVM技术的混合或组合来提供NVM,以实现成本和性能之间平衡。
因此,需要一种系统,其利用CPU和NVM技术来给存储装置提供智能并减少或消除它们对用于这种智能的存储服务器的依赖。此外,结合附图和本公开文本的背景,根据随后的具体实施方式和附随的属权利要求,其它期望的特点和特征将变得明显。
发明内容
根据本发明的一个方面,公开了一种主动存储系统。该主动存储系统包括存储装置、非易失性存储器和主动驱动控制器。该主动驱动控制器在主动存储系统中执行数据管理和/或集群管理,该主动驱动控制器还包括用于至少接收对象和/或文件数据的数据接口。
根据本发明的另一方面,还公开了另一种主动存储系统。该主动存储系统包括元数据服务器和一个或多个主动混合节点。每个主动混合节点都包括多个混合对象存储装置(HOSD)和对应的多个主动驱动控制器,多个主动驱动控制器中的每个都包括用于至少接收对应HOSD的对象和/或文件数据的数据接口。多个主动驱动控制器中的一个还包括主动管理节点,该主动管理节点与元数据服务器和多个主动驱动存储装置中的每个进行交互以管理和监控主动混合节点。
附图说明
在附图中,相同的附图标记是指所有单独视图中相同或功能相似的元件,将附图连同下面的具体实施方式一起并入说明书中,并形成说明书的一部分,附图仅通过非限制性实例的方式来示例各种实施例和说明根据本发明的各种原理和优势。
参考下面的附图,在下文中描述本发明的实施例,其中:
图1是描绘根据本实施例的主动驱动存储系统的例子的图示。
图2是描绘根据本实施例的主动驱动分布式存储系统体系结构的例子的图示。
图3是描绘根据本实施例的主动驱动存储系统的例子的方框图的图示。
图4是描绘根据本实施例的一对一的键值到对象的映射的的视图的图示。
图5是描绘根据本实施例的多对一的键值到对象的映射的视图的图示。
图6是描绘根据本实施例的一对多的键值到对象的映射的视图的图示。
图7是描绘根据本实施例的主动混合节点(AHN)体系结构的例子的方框图。
图8是描绘根据本实施例的主动管理节点(AMN)软件体系结构的方框图。
图9是描绘常规分布式存储系统中的数据更新过程的方框图。
图10是描绘根据本实施例的分布式主动混合存储系统的示例性网络优化的方框图。
图11是描绘根据本实施例的交换机控制板(SCB)中的可编程交换包转发流程的流程图。
图12是描述根据本实施例的在遇到HOSD失效时的重建过程的流程图。
技术人员应该意识到,为了简单清晰,图中的元件是示例性的,并且不一定按比例绘制。
具体实施方式
下面的详细描述实际上仅是示例性的,并且不意指限制本发明或本发明的应用和用途。此外,不意指受本发明前面的背景或下面的详细描述所提出的任何理论的约束。本发明的目的是提出一种主动存储系统,该主动存储系统包括耦合到用于执行数据管理和集群管理的系统中的混合存储装置的主动驱动控制器,集群管理包括与元数据服务器和其它主动驱动控制器交互以发现和加入集群或形成和维持集群。根据本实施例的主动驱动控制器包括用于接收对象数据、文件数据和键值数据的数据接口。
参考图1,图100描绘了根据本实施例系统100的主动驱动存储系统的例子。主动驱动存储系统包括三个主要组成部分:应用服务器102、主动混合节点(AHN)104和主动管理节点(AMN)106。AHN 104是一种具有附接的硬盘驱动器(HDD)112和非易失性存储器(NVM)110的混合存储节点。多个AHN 104可以形成集群120。AMN 106包含少量的NVM作为存储介质。数据包130经由网络140在应用服务器102和AHN 104之间流动。
参考图2,其描绘了根据本实施例的主动驱动分布式存储系统200的体系结构的例子。主动驱动分布式存储系统包括经由因特网204耦合到多个主动混合驱动器206的应用/客户端服务器202。在数据中心配置中,主动混合驱动器206可被安装在机架(诸如42U机架210)中,该机架包括用于将安装在其中的主动混合驱动器206耦合到应用/客户端服务器202的可编程交换机220。由于数据直接传输到主动混合驱动器206,所以这种体系结构消除了存储节点。
参考图3,其示例了根据本实施例的分布式主动混合驱动存储系统302的例子的示意图300。应用服务器102耦合到AHN 104、304,其中一些AHN 104包括NVM 110、HDD 112和主动驱动控制器306,其它的AHN 304包括NVM 110、固态驱动器(SSD)310和主动驱动控制器306。多个AHN 104、304可形成集群315。为了提高性能和增加存储利用率,分布式主动混合存储系统302采用并行数据访问和纠删码。为了写入数据,应用服务器102可将数据分条到不同的AHN 104、304,使用元数据服务器320跟踪部分数据。在读取数据期间,应用服务器102可同时从不同的AHN 104、304中同步读取多个条以实现高性能。
参考图4,映射图400描绘了根据本实施例的一对一的键值与对像映射的视图。对象410由三部分组成:对象标识(OID)412、对象数据414和对象元数据416。OID 412是对象410的唯一ID/名称。对象数据414是对象410的实际内容。对象元数据416可以是对象410的任何预先设定的属性或信息。
键值(KV)接口建立在对象存储的顶部。映射层被设计和实现为将KV条目420映射到对象410。将KV映射到对象有各种机制。在如映射图400所描绘的一对一映射中,每个KV条目420都被映射到单个对象410。KV条目420包括键422、值424和其它信息426。键422被映射432到对象ID 412。值424被映射434到对象数据414。其它信息426可包括版本、校验和值大小,并被映射436到对象元数据416。
图5描绘了根据本实施例的多对一映射方案的视图的映射图500。多个KV条目520被映射到同一个对象510。对象ID 512表示键的范围522。具有在范围522内的键的KV条目520都被映射到这个对象510。对于每个条目520,其键524和属性526都被映射532到对象元数据516。属性526可通过在对象元数据516中搜索键524来找到。有存储在对象元数据516中的命名为“偏移”的属性526,当每个值528都被映射534到对像数据514时,“偏移”表示键值的存储代表的偏移540。
图6描绘了根据本实施例的一对多的键值到对象的映射的视图的映射图,其中每个KV条目620被映射到多个对象610。键622被映射到多个对象ID 612,每个对象ID 612都组合有后缀(#000、#001等)的键622。属性624存储在第一对象610的元数据614中。属性strip_sz 626表示映射到每个对象数据616的值630的片段大小628。最后的对象数据616可存储比strip_sz 628少的字节。备选地,每个对象610可存储不同的片段大小628,单个片段大小存储在对象614、615的元数据中。
参考图7,方框图700描绘了具有节点后台程序704的AHN 702的体系结构。后台程序是作为后台进程运行的一种计算机程序,并且可以有许多后台程序,诸如混合对象存储装置(HOSD)后台程序,该HOSD后台程序包括一个或多个HOSD或映射减少工作706,其在AHN702是大的大数据存储池的存储节点时能处理映射减少工作。还可以有实现的其它后台程序,诸如重建后台程序708或元数据分类后台程序(例如,以将数据分类以用于本地存储)。应用或客户端服务器(例如,服务器102)可将工作发布和安装到AHN 702中执行,节点后台程序704中的消息处理程序710为AHN 702提供了与应用/客户端服务器102通信的信息处理能力,其中客户端服务器可以是对象客户端712或键值(KV)客户端714。
AHN 702还包括对象存储716、本地文件存储718和混合存储720,混合存储720包括HDD 112和NVM 110。本地文件存储包括对象元数据416(或对象元数据516、614、615)和对象数据文件414(或对象数据文件514、616)。对象存储716包括用于与对象客户端712接口的对象接口722和用于与KV客户端714接口的键值接口724。键值接口724负责KV到对象的映射,如图4、5和6所示的映射,对象存储716中的文件存储726负责对象到文件的映射。数据压缩和混合数据管理728也是对象存储716的控制形式。
更详细地描述了形成AHN 702的操作和功能的软件体系结构和模块。可执行软件存储在用于程序代码存储的非易失性介质中,并在执行启动时通过AHN处理器将其召回到主存储器中。AHN 702提供了与对象客户端服务器712和KV客户端服务器714中的应用接口的对象接口和键值(KV)接口。对象接口722是关于基础对象存储716的本地接口。对象存储716可被备选地实现为文件存储(例如,文件存储726)以将对象存储为文件。
软件有三个主要层:节点后台程序704、对象存储716和本地文件系统718。节点后台程序层704是指各种独立运行的程序或软件后台程序。消息处理后台程序710处理与其它ANH、AMN和客户终端的、用于形成和保持分布式集群系统并在客户端服务器和ANH之间提供数据传输的、基于TCP/IP的通信协议。
重建后台程序708负责通过对来自相关的尚存的数据和校验码驱动器的数据进行解码而执行从系统中的失效驱动器重建丢失的数据的过程。映射减少后台程序706为映射减少框架中的工作跟踪提供映射减少和大数据分布式文件系统(HDFS)接口,以将数据分析任务指定给ANH执行,使得处理所需要的数据可以在ANH节点中的多个存储装置中的一个存储装置中被直接本地访问。客户端可安装程序后台程序730被配置为执行存储在附接到ANH的任何一个或多个存储装置上的程序。由于应用或客户端服力器可将工作发布和安装到AHN中执行,所以客户端可安装程序后台程序可与客户终端进行通信,以将可执行程序上传和安装到附接到ANH的一个或多个存储装置。
运行在AHN 702中计算的数据的原则是使计算更接近存储,即后台程序大部分时间只需要访问来自本地AHN 702的数据和将工作的结果发送回应用或客户端服务器。在许多情况下,数据计算的结果的大小要比用于计算的本地数据小很多。这样,可以减少需要在网络140上传输的数据量,并可随着存储资源分配大数据处理或计算,以便大大提高整个系统性能。
对象存储716是一种将对象接口722和KV接口724提供到节点后台程序层704的软件层。对象存储层716还通过文件存储726将对象映射到文件,以使对象能被下层的文件系统存储和管理。数据压缩和混合数据管理是对象存储层716中的另外两个主要模块(为了简单通过图7的单模块728示出)。根据本实施例,数据压缩分别对数据写入和读取执行行内数据编码和解码。混合数据管理根据本实施例管理混合存储,以使经常使用的数据存储在NVM中。在对象存储层716中还可实现其它的数据管理服务,诸如存储服务质量(QoS)。
本地文件系统层718通过将每个对象分解成一个或多个存储装置的对应扇区块,来提供用于存储对象元数据416和对象数据414的下层的一个或多个存储装置的数据块的文件系统管理。根据本实施例,用于删除对象的数据扇区块被本地文件系统层718回收,以便将来分配用于存储新创建的对象的扇区空间。
参考图8,方框图800描绘了根据本实施例的主动管理节点(AMN)802的软件体系结构的例子。AMN 802可经由消息处理后台程序812与AMN 802所属的集群中的其它AMN(如果有)804、AHN 806、应用服务器808和交换机控制板(SCB)交换机810进行通信。
AMN 802是一种多功能节点。除了集群管理和监控功能814之外,由于新节点的加入或、失效和不活动的AHN、或对AHN的不平衡的数据访问,AMN 802从数据迁移和重建后台程序816发送迁移数据的指令。此外,AMN 802还能够通过经由交换机控制器后台程序818向SCB交换机810发送向发送器未指定的目的地转发数据包的指令,有利地减少网络流量。
消息处理程序后台程序812实现了与其它AMN(如果有)、集群中的AHN、应用服务器和可编程交换机的通信协议。集群管理和监控后台程序814提供了形成和保持有关集群的信息的算法和功能。客户服务器与集群管理和监控后台程序814进行通信,以在集群中提取最新的HOSD拓扑结构,以便确定相应的HOSD来存储或检索数据。基于集群的监控状态,由于新节点的加入、或失效和不活动的AHN、或对AHN的不平衡的数据访问,AMN 802从数据迁移和重建后台程序816发送迁移数据的指令。此外,AMN 802还可以经由交换机控制器后台程序818向可编程交换机发送复制和转发数据包到目的地的指令,以自主地减少客户端通信的负载。
参考图9,方框图900描绘了具有为可靠性而实现有纠删码的常规分布式存储系统中的数据更新过程。应用服务器902经由网络交换机904耦合到包括数据节点906(即,DN1、DN2,…,DNn)和校验节点908(即,PN1、PN2和PN3)的存储器。校验节点908保持来自DN1至DNn的编码数据,以便每当将数据写入数据节点(例如,在步骤912将数据W写入DN1),就将数据复制到校验节点908(例如,在步骤914将数据W复制到PN1、PN2和PN3)。如果校验节点908的编码数据由Reed Solomon码来计算,则存储系统可同时维持三个节点失效。元数据服务器910还经由网络交换机904耦合到数据节点906和校验节点908。
参考图10,方框图1000示例了根据本实施例的分布式主动混合存储系统1002的示例性网络优化。应用服务器902经由网络交换机904与分布式主动混合存储系统1002进行通信。网络交换机904与分布式主动混合存储系统1002的可编程交换机1004进行接口,以与AHN数据节点1006和AHN校验节点1008通信。可编程交换机1004包括流量表1010和校验节点索引1012,并响应于来自AMN 1014的可编程命令进行操作。数据节点1006和校验节点1008可以是在AMN 1014控制下的主动混合驱动存储集群中的HOSD。应用服务器902和存储节点(即,数据节点1006和校验节点1008)之间的数据传输使用TCP/IP作为传输和路由协议在网络上实现。数据节点1006和校验节点1008是主动混合节点,诸如AHN 702(图7),并使用主动混合节点702的软件体系结构解除了将多个数据副本发送到不同存储节点的应用服务器902。这种结构还降低了数据中心网络交换机904带宽的消耗。
参考图11,流程图1100描绘了根据本实施例的、在可编程交换机1004(图10)的交换机控制板(SCB)中的、用于转发应用服务器902的引入数据的可编程交换包转发流程。当从应用服务器902接收1102数据包时,可编程交换机1004的SCB检查数据包报头和对应的有效载荷参数信息,并检查1104流量表1010和校验节点1012,以确定该数据包是否是写入数据包并将该包转发到AHN节点1006。
如果在流量表中没有找到1106相关条目,则将数据包报头和相关的有效载荷参数发送到AMN 1014以获得用于这个包或流量的新条目,并根据从包含新表条目信息的AMN1014接收的响应,在可编程交换机1004中更新1108流量和校验节点表。当找到1106该条目时,将数据包转发1110到包含该条目所指示的目标HOSD的AHN。从应用服务器902接收的具有相同数据的独立数据写入请求通过可编程交换机1004来重复1112、1114,以转发到与校验节点表1012中的对应条目所列出的数据节点1006相关的每个校验节点1008。校验节点1008和数据节点1006由分布式存储集群中的HOSD来提供。
参考图12,流程图1200描绘了在一个或多个HOSD失效时的重建过程。最初,AHN识别1202其附接的HOSD/HDD失效。一旦识别出替代驱动器,就开始重建过程。在单个HOSD/HDD失效1204和来自同一AHN的多个HOSD/HDD失效1206的情况下,附接到出现HOSD失效的AHN的AMN 802的重建后台程序使用AHN 702包含的对象映射开始1208重建过程。首先,重建后台程序816搜索1210在所附接的NVM中可用的数据,并将其直接复制到替代HOSD/HDD。在重建每个对象之后或者在重建1214多个对象之后,更新1212也用作重建映射的对象映射。
对于多个HOSD/HDD失效横跨不同的AHN 1216发生的情况,每个AHN将负责自己的HOSD/HDD重建1218。对于每个AHN,重建过程是重建后台程序816,该重建后台程序816查找1220在所附接的NVM中可用的数据并将其直接复制到替代HOSD/HDD,以及在重建每个对象之后或者在重建1214多个对象之后,更新1212也用作重建映射的对象映射。
因此,可以看出,本实施例提供了一种系统,其利用CPU和NVM技术给存储装置提供智能并减少或消除它们为了这种智能而对该存储服务器的依赖。此外,本实施例提供了一种有利的方法,其通过使数据计算更接近数据存储和只转发数据计算结果来减少网络通信,其中数据计算结果大小比在网络上用于计算的本地数据小很多。在这种方式中,能够减少需要在网络上传输的数据量,并能随着存储资源分配大数据处理或计算,从而大大提高了整个系统性能。虽然在本发明的上述详细描述中已经给出了示例性实施例,但应该意识到会存在大量变化。
应该进一步意识到,示例性实施例仅是示例性的,并不意指以任何方式限制本发明的范围、适用性、操作或配置。相反地,前述详细描述将为本领域的技术人员提供实现本发明的示例性实施例的方便路线图,应该理解,在不偏离附属权利要求所阐述的本发明的范围的情况下,可在示例性实施例所描述的元件的功能和布置和操作的方法方面制造各种变更。
Claims (15)
1.一种主动存储系统,包括:
存储装置;
非易失性存储器;和
主动驱动控制器,其中该主动驱动控制器耦合到存储装置和非易失性存储器,并在主动存储系统中执行数据管理和/或集群管理,主动驱动控制器包括用于接收至少对象和/或文件数据的数据接口。
2.根据权利要求1所述的主动存储系统,其中,数据接口接收键值数据。
3.根据权利要求1所述的主动存储系统,其中,数据管理包括缓存、分层、压缩、服务质量(QoS)和快照中的至少一种。
4.根据权利要求1的任一项所述的主动存储系统,其中,集群管理包括与元数据服务器和同等层级装置交互以发现和加入集群。
5.根据权利要求4的任一项所述的主动存储系统,其中,集群管理进一步包括与元数据服务器和同等层级装置交互以形成和维护集群。
6.根据权利要求1所述的主动存储系统,进一步包括允许用户/客户端下载和执行主动存储系统内的程序的可安装程序。
7.根据权利要求1所述的主动存储系统,进一步包括一个或多个混合对象存储装置(HOSD)后台程序。
8.根据权利要求1所述的主动存储系统,其中,主动存储系统控制可编程交换机。
9.一种主动驱动分布式存储系统,包括:
元数据服务器;和
一个或多个主动混合节点,每个主动混合节点都包括多个主动驱动存储装置,每个主动驱动存储装置都包括混合存储装置和主动驱动控制器,每个主动驱动控制器都包括用于接收至少对象和/或文件数据以用于对应的混合存储装置的数据接口,其中一个或多个主动混合节点的每个中的多个主动驱动存储装置中的一个主动驱动存储装置的主动驱动控制器进一步包括主动管理节点,主动管理节点与元数据服务器和多个主动驱动存储装置中的每个交互,以管理和监控主动混合节点。
10.根据权利要求9所述的主动存储系统,其中,数据接口进一步接收键值数据。
11.根据权利要求9所述的主动存储系统,其中,多个主动驱动存储装置中的每个都包括混合对象存储装置(HOSD)后台程序。
12.根据权利要求9所述的主动存储系统,其中,每个主动驱动控制器进一步执行包括缓存、分层、压缩、服务质量(QoS)和快照中的至少一种的数据管理。
13.根据权利要求9所述的主动存储系统,其中,主动管理节点响应于新的主动混合节点的加入、一个或多个主动混合节点中的一个的失效、和对对应的主动混合节点的不平衡的数据访问中的一种或多种,指示主动混合节点内的数据迁移。
14.根据权利要求9所述的主动存储系统,进一步包括允许用户/客户端下载和执行主动存储系统内的程序的可安装程序。
15.根据权利要求9所述的主动存储系统,其中,主动存储系统控制可编程交换机,并且其中,主动管理节点向可编程交换机转发将数据包转发到发送器没有指定的目的地的指令,以降低网络流量。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SG10201406349V | 2014-10-03 | ||
SG10201406349V | 2014-10-03 | ||
PCT/SG2015/050367 WO2016053198A1 (en) | 2014-10-03 | 2015-10-02 | Distributed active hybrid storage system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107111481A true CN107111481A (zh) | 2017-08-29 |
Family
ID=55631073
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580053670.2A Pending CN107111481A (zh) | 2014-10-03 | 2015-10-02 | 分布式主动混合存储系统 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20170277477A1 (zh) |
EP (1) | EP3180690A4 (zh) |
JP (1) | JP2017531857A (zh) |
CN (1) | CN107111481A (zh) |
SG (1) | SG11201701440SA (zh) |
WO (1) | WO2016053198A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110096220A (zh) * | 2018-01-31 | 2019-08-06 | 华为技术有限公司 | 一种分布式存储系统、数据处理方法和存储节点 |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106796491A (zh) * | 2014-10-03 | 2017-05-31 | 新加坡科技研究局 | 优化混合对象存储装置的数据重建的方法 |
CN107436725B (zh) * | 2016-05-25 | 2019-12-20 | 杭州海康威视数字技术股份有限公司 | 一种数据写、读方法、装置及分布式对象存储集群 |
US10034407B2 (en) * | 2016-07-22 | 2018-07-24 | Intel Corporation | Storage sled for a data center |
JP6953713B2 (ja) * | 2016-12-28 | 2021-10-27 | 日本電気株式会社 | 通信ノード、通信システム、通信方法及びプログラム |
TWI735585B (zh) * | 2017-05-26 | 2021-08-11 | 瑞昱半導體股份有限公司 | 具有網路功能的資料管理電路及基於網路的資料管理方法 |
CN107479827A (zh) * | 2017-07-24 | 2017-12-15 | 上海德拓信息技术股份有限公司 | 一种基于io和元数据分离的混合存储系统实现方法 |
CN107967124B (zh) * | 2017-12-14 | 2021-02-05 | 南京云创大数据科技股份有限公司 | 一种分布式持久性内存存储系统及方法 |
US11392544B2 (en) * | 2018-02-06 | 2022-07-19 | Samsung Electronics Co., Ltd. | System and method for leveraging key-value storage to efficiently store data and metadata in a distributed file system |
US10956365B2 (en) * | 2018-07-09 | 2021-03-23 | Cisco Technology, Inc. | System and method for garbage collecting inline erasure coded data for a distributed log structured storage system |
CN108920725B (zh) * | 2018-08-02 | 2020-08-04 | 网宿科技股份有限公司 | 一种对象存储的方法及对象存储网关 |
US11287994B2 (en) * | 2019-12-13 | 2022-03-29 | Samsung Electronics Co., Ltd. | Native key-value storage enabled distributed storage system |
KR102531765B1 (ko) * | 2020-12-07 | 2023-05-11 | 인하대학교 산학협력단 | Put 오브젝트 처리속도 상향을 위한 하이브리드 오브젝트 스토리지 시스템 및 그 동작 방법 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040177256A1 (en) * | 2003-01-09 | 2004-09-09 | Shinichiro Kobayashi | Semiconductor apparatus |
CN1728665A (zh) * | 2005-07-26 | 2006-02-01 | 华中科技大学 | 一种可扩展的基于对象的存储系统及其控制方法 |
CN1293456C (zh) * | 2003-11-21 | 2007-01-03 | 株式会社日立制作所 | 集群型存储系统 |
US7266556B1 (en) * | 2000-12-29 | 2007-09-04 | Intel Corporation | Failover architecture for a distributed storage system |
US7287180B1 (en) * | 2003-03-20 | 2007-10-23 | Info Value Computing, Inc. | Hardware independent hierarchical cluster of heterogeneous media servers using a hierarchical command beat protocol to synchronize distributed parallel computing systems and employing a virtual dynamic network topology for distributed parallel computing system |
CN102136003A (zh) * | 2011-03-25 | 2011-07-27 | 上海交通大学 | 大规模分布式存储系统 |
CN102855284A (zh) * | 2012-08-03 | 2013-01-02 | 北京联创信安科技有限公司 | 一种集群存储系统的数据管理方法及系统 |
CN102904948A (zh) * | 2012-09-29 | 2013-01-30 | 南京云创存储科技有限公司 | 一种超大规模低成本存储系统 |
US20130117225A1 (en) * | 2011-11-03 | 2013-05-09 | Michael W. Dalton | Distributed storage medium management for heterogeneous storage media in high availability clusters |
US20130275391A1 (en) * | 2012-04-17 | 2013-10-17 | Fusion-Io, Inc. | Data Expiry in a Non-Volatile Device |
EP2669806A1 (en) * | 2011-01-28 | 2013-12-04 | Nec Corporation | Storage system |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110231602A1 (en) * | 2010-03-19 | 2011-09-22 | Harold Woods | Non-disruptive disk ownership change in distributed storage systems |
-
2015
- 2015-10-02 SG SG11201701440SA patent/SG11201701440SA/en unknown
- 2015-10-02 EP EP15847287.8A patent/EP3180690A4/en not_active Withdrawn
- 2015-10-02 CN CN201580053670.2A patent/CN107111481A/zh active Pending
- 2015-10-02 JP JP2017514472A patent/JP2017531857A/ja active Pending
- 2015-10-02 WO PCT/SG2015/050367 patent/WO2016053198A1/en active Application Filing
- 2015-10-02 US US15/509,109 patent/US20170277477A1/en not_active Abandoned
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7266556B1 (en) * | 2000-12-29 | 2007-09-04 | Intel Corporation | Failover architecture for a distributed storage system |
US20040177256A1 (en) * | 2003-01-09 | 2004-09-09 | Shinichiro Kobayashi | Semiconductor apparatus |
US7287180B1 (en) * | 2003-03-20 | 2007-10-23 | Info Value Computing, Inc. | Hardware independent hierarchical cluster of heterogeneous media servers using a hierarchical command beat protocol to synchronize distributed parallel computing systems and employing a virtual dynamic network topology for distributed parallel computing system |
CN1293456C (zh) * | 2003-11-21 | 2007-01-03 | 株式会社日立制作所 | 集群型存储系统 |
CN1728665A (zh) * | 2005-07-26 | 2006-02-01 | 华中科技大学 | 一种可扩展的基于对象的存储系统及其控制方法 |
EP2669806A1 (en) * | 2011-01-28 | 2013-12-04 | Nec Corporation | Storage system |
CN102136003A (zh) * | 2011-03-25 | 2011-07-27 | 上海交通大学 | 大规模分布式存储系统 |
US20130117225A1 (en) * | 2011-11-03 | 2013-05-09 | Michael W. Dalton | Distributed storage medium management for heterogeneous storage media in high availability clusters |
US20130275391A1 (en) * | 2012-04-17 | 2013-10-17 | Fusion-Io, Inc. | Data Expiry in a Non-Volatile Device |
CN102855284A (zh) * | 2012-08-03 | 2013-01-02 | 北京联创信安科技有限公司 | 一种集群存储系统的数据管理方法及系统 |
CN102904948A (zh) * | 2012-09-29 | 2013-01-30 | 南京云创存储科技有限公司 | 一种超大规模低成本存储系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110096220A (zh) * | 2018-01-31 | 2019-08-06 | 华为技术有限公司 | 一种分布式存储系统、数据处理方法和存储节点 |
CN110096220B (zh) * | 2018-01-31 | 2020-06-26 | 华为技术有限公司 | 一种分布式存储系统、数据处理方法和存储节点 |
US11262916B2 (en) | 2018-01-31 | 2022-03-01 | Huawei Technologies Co., Ltd. | Distributed storage system, data processing method, and storage node |
Also Published As
Publication number | Publication date |
---|---|
US20170277477A1 (en) | 2017-09-28 |
SG11201701440SA (en) | 2017-04-27 |
EP3180690A4 (en) | 2018-10-03 |
EP3180690A1 (en) | 2017-06-21 |
JP2017531857A (ja) | 2017-10-26 |
WO2016053198A1 (en) | 2016-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107111481A (zh) | 分布式主动混合存储系统 | |
US10671289B2 (en) | Tenant-level sharding of disks with tenant-specific storage modules to enable policies per tenant in a distributed storage system | |
Li et al. | Scaling IP multicast on datacenter topologies | |
CN104734878B (zh) | 软件定义联网灾难恢复的方法和系统 | |
RU2630377C1 (ru) | Способ и устройство для обработки запроса операции в системе хранения данных | |
DE102018214774A1 (de) | Technologien zum dynamischen Managen der Zuverlässigkeit disaggregierter Betriebsmittel in einem gemanagten Knoten | |
CN107852342A (zh) | 用于在高性能计算环境中使构架级组成员资格与子网级分区成员资格相关的系统和方法 | |
CN108476208A (zh) | 多路径传输设计 | |
CN111565113B (zh) | 用于sdn控制器的灵活以太网网络拓扑抽象方法及系统 | |
CN103810061B (zh) | 一种高可用云存储方法 | |
WO2019231646A1 (en) | Garbage collection implementing erasure coding | |
CN107852339A (zh) | 用于无损网络中的高效虚拟化的系统和方法 | |
CN103891209A (zh) | 用于转换通用流的机箱控制器 | |
US10956501B2 (en) | Network-wide, location-independent object identifiers for high-performance distributed graph databases | |
CN109314721B (zh) | 分布式文件系统的多个集群的管理 | |
US10608951B2 (en) | Live resegmenting of partitions in distributed stream-processing platforms | |
CN104247341B (zh) | 分布式交换机及其多播树层次结构的动态优化方法 | |
CN107111513A (zh) | 为高性能云计算环境提供InfiniBand SR‑IOV vSWITCH体系架构的系统和方法 | |
CN107211036A (zh) | 一种数据中心网络组网的方法以及数据中心网络 | |
US11601365B2 (en) | Wide area networking service using provider network backbone network | |
CN104508651A (zh) | 镜像非对称集群多处理器系统中的连接网 | |
US11463276B2 (en) | System and method for providing a multi-dimensional ring-lattice network topology | |
US11824773B2 (en) | Dynamic routing for peered virtual routers | |
CN103140851A (zh) | 包括中间件机环境的系统 | |
KR102001572B1 (ko) | 분산 파일 시스템 및 이의 데이터 관리 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20170829 |