CN103699496A - 分级存储器管理 - Google Patents
分级存储器管理 Download PDFInfo
- Publication number
- CN103699496A CN103699496A CN201310447130.5A CN201310447130A CN103699496A CN 103699496 A CN103699496 A CN 103699496A CN 201310447130 A CN201310447130 A CN 201310447130A CN 103699496 A CN103699496 A CN 103699496A
- Authority
- CN
- China
- Prior art keywords
- server
- storer
- memory
- data
- storage system
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0893—Caches characterised by their organisation or structure
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1652—Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
- G06F13/1663—Access to shared memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0813—Multiuser, multiprocessor or multiprocessing cache systems with a network or matrix configuration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0871—Allocation or management of cache space
-
- 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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to 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/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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/604—Details relating to cache allocation
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)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
在一个实施例中,一种存储系统包括:第一类型接口,其可操作用于使用远程存储器访问来与服务器通信;第二类型接口,其可操作用于使用块I/O(输入/输出)访问来与服务器通信;存储器;以及控制器,其可操作用于管理:(1)分配用于存储数据的存储器的存储区域的第一部分,被存储的数据将被存储在由服务器上的操作系统所管理的物理地址空间中,并且所述被存储的数据从服务器经由第一类型接口而发送;以及(2)分配用于高速缓存数据的存储器的存储区域的第二部分,被高速缓存的数据从服务器经由第二类型接口向存储系统的逻辑卷发送,并且所述被高速缓存的数据将被存储在存储系统的与逻辑卷相对应的存储设备中。
Description
技术领域
本发明总体涉及存储系统,并且更具体地涉及使用RDMA(远程直接存储器访问)技术在服务器与存储系统之间的分级存储器管理。
背景技术
远程存储器访问和分配技术、比如RDMA(远程直接存储器访问)可用。一种方式涉及RDMA环境中的动态存储器管理(例如见第7,849,272号美国专利)。另一方式涉及多个计算机上的分布式共享存储器(例如见US/2009/0144388)。服务器附着的PCI-Express(TM)快闪比大容量RDIMM(注册双列直插存储器模块)模块更低位成本。
服务器具有依赖于CPU架构的有限物理存储器容量。为了扩展服务器DRAM(直接随机访问存储器)的容量,需要RDIMM(注册双列直插存储器模块)。大容量RDIMM在任何其它DIMM类型之中成本最高。服务器DIMM套接字不可热交换。为了扩展服务器的存储器容量,服务器管理员停止OS(操作系统)并且停止向服务器的供电,并且继而服务器管理员向母板的DIMM槽安装DIMM。
本地服务器存储器提供比RDMA(远程直接存储器访问)的远程存储器访问更高的性能,因为DDR SDRAM(双数据速率同步动态随机存取存储器)接口具有比RDMA网络更高的访问延时和网络吞吐容量。DRAM具有比快闪存储器更低的访问延时。传统技术并未公开(1)哪个类型的本地存储器或者远程存储器对于性能而言是更佳分级以及(2)哪个类型的DRAM、快闪存储器或者其它新存储器设备具有DRAM存储器等级的最佳分级。此外,RDMA协议的当前存储器分配也未提供存储器类型信息。
存储系统的高速缓存存储器构成DRAM和/或快闪存储器。当前存储系统未共享存储系统的存储器作为存储装置高速缓存和服务器存储器扩展二者。
发明内容
本发明的示例实施例提供管理本地和远程存储器和分级的服务器。存储装置管理服务器分配存储器区域。存储装置管理DRAM或者快闪存储器在存储装置高速缓存数据区域与服务器存储器数据之间的分区。服务器和存储装置二者具有远程存储器接口和存储块I/O接口。服务器具有用于分配或者收回本地或者远程物理地址空间的远程分级高速缓存管理。存储装置管理分配高速缓存数据区域和服务器存储器数据。这样,服务器管理分级存储器,并且更易于扩展服务器存储器区域而无需主机OS(操作系统)停止。另外,存储装置提供存储器空间作为服务器存储器数据,并且将服务器存储器资源合并成多个存储装置的物理存储器池。
根据本发明的一个方面,一种存储系统包括:第一类型接口,其可操作用于使用远程存储器访问来与服务器通信;第二类型接口,其可操作用于使用块I/O(输入/输出)访问来与服务器通信;存储器;以及控制器,其可操作用于管理:(1)分配用于存储数据的存储器的存储区域的第一部分,被存储的数据将被存储在由服务器上的操作系统所管理的物理地址空间中,并且所述被存储的数据从服务器经由第一类型接口而发送;以及(2)分配用于高速缓存数据的存储器的存储区域的第二部分,被高速缓存的数据从服务器经由第二类型接口向存储系统的逻辑卷发送,并且所述被高速缓存的数据将被存储在存储系统的与逻辑卷相对应的存储设备中。
在一些实施例中,控制器可操作用于管理存储系统中的存储器的每个介质类型的容量信息。存储器包括DRAM存储器或者快闪存储器中的至少一个存储器。控制器可操作用于管理(3)分配用于存储数据的存储器的存储区域的第三部分,被存储的数据将被存储在由另一服务器上的操作系统所管理的物理地址空间中,并且被存储的数据从所述另一服务器经由第一类型接口发送,以及管理分配用于高速缓存数据的存储器的存储区域的第二部分,被高速缓存的数据从所述另一服务器经由第二类型接口向存储系统的逻辑卷发送,并且被高速缓存的数据将被存储在存储系统的与逻辑卷相对应的存储设备中。控制器可操作用于响应于来自服务器的请求向服务器提供存储系统中的存储器的存储区域的第一部分的每个介质类型的容量信息。
在具体实施例中,控制器可操作用于如果服务器的用于与第一类型接口通信的远程存储器接口被停止,则从服务器存储器分配表的条目去除服务器,服务器存储器分配表存储关于由存储系统为一个或者多个服务器分配的存储器的信息。控制器可操作用于响应于来自服务器的具有所需容量和存储器性能之一或者所述存储器的存储区域的所述第一部分的存储器分配位置范围的远程存储器绑定请求,向服务器返回具有映射地址信息的存储器绑定结果。控制器可操作用于响应于来自服务器的远程释放请求,从服务器存储器分配表的条目去除服务器,服务器存储器分配表存储关于由存储系统为一个或者多个服务器分配的存储器的信息。
本发明的另一方面涉及一种用于存储系统的存储器管理的方法,存储系统具有:第一类型接口,其可操作用于使用远程存储器访问来与服务器通信;第二类型接口,其可操作用于使用块I/O(输入/输出)访问来与服务器通信;以及存储器。该方法包括管理:(1)分配用于存储数据的存储器的存储区域的第一部分,被存储的数据将被存储在由服务器上的操作系统所管理的物理地址空间中,并且被存储的数据从服务器经由第一类型接口发送;以及(2)分配用于高速缓存数据的存储器的存储区域的第二部分,所述被高速缓存的数据从服务器经由第二类型接口向存储系统的逻辑卷发送,并且所述被高速缓存的数据将被存储在存储系统的与逻辑卷相对应的存储设备中。
在一些实施例中,该方法还包括:如果服务器的用于与第一类型接口通信的远程存储器接口被停止,或者如果从服务器接收到远程释放请求,则从服务器存储器分配表的条目去除服务器,服务器存储器分配表存储关于由存储系统为一个或者多个服务器分配的存储器的信息。
本发明的另一方面涉及一种存储多个指令的计算机可读存储介质,多个指令用于控制数据处理器以管理用于存储系统的存储器,存储系统具有:第一类型接口,其可操作用于使用远程存储器访问来与服务器通信;第二类型接口,其可操作用于使用块I/O(输入/输出)访问来与服务器通信;以及存储器。多个指令包括使数据处理器管理以下各项的指令:(1)分配用于存储数据的存储器的存储区域的第一部分,被存储的数据将被存储在由服务器上的操作系统所管理的物理地址空间中,并且所述被存储的数据从服务器经由第一类型接口发送;以及(2)分配用于高速缓存数据的存储器的存储区域的第二部分,被高速缓存的数据从服务器经由第二类型接口向存储系统的逻辑卷发送,并且所述被高速缓存的数据将被存储在存储系统的与逻辑卷相对应的存储设备中。
在一些实施例中,多个指令还包括使数据处理器管理存储系统中的存储器的每个介质类型的容量信息的指令,其中存储器包括DRAM存储器或者快闪存储器中的至少一个。多个指令还包括如果服务器的用于与第一类型接口通信的远程存储器接口被停止,则使数据处理器从服务器存储器分配表的条目去除服务器的指令,服务器存储器分配表存储关于由存储系统为一个或者多个服务器分配的存储器的信息。多个指令还包括使数据处理器响应于来自服务器的具有所需容量和存储器性能之一或者所述存储器的存储区域的所述第一部分的存储器分配位置范围的远程存储器绑定请求,向服务器返回具有映射地址信息的存储器绑定结果的指令。多个指令还包括使数据处理器响应于来自服务器的远程释放请求,从服务器存储器分配表的条目去除服务器的指令,服务器存储器分配表存储关于由存储系统为一个或者多个服务器分配的存储器的信息。
本发明的这些和其它特征以及优点将鉴于具体实施例的以下具体描述变得为本领域普通技术人员所清楚。
附图说明
图1图示可以在其中应用本发明的方法和装置的系统的硬件配置的示例。
图2示出用于图1的配置的存储器地址映射的示例。
图3示出图1的系统的具体配置的示例。
图4示出存储系统中的存储器分区的示例。
图5示出用于图3和4的配置的DRAM和快闪存储器分级以及远程访问的存储器地址映射的示例。
图6示出具有多个存储系统的系统的硬件配置的示例。
图7示出用于图6的配置的DRAM和快闪存储器分级以及远程访问的存储器地址映射的示例。
图8示出具有多个服务器和多个存储系统的系统的硬件配置的示例。
图9示出用于图8的配置的DRAM和快闪存储器分级以及远程访问的存储器地址映射的示例。
图10示出主机服务器中的设备发现表的示例。
图11示出主机服务器中的地址映射表的示例。
图12示出存储装置中的存储器分区表的示例。
图13示出存储装置中的服务器存储器分配表的示例。
图14是图示存储器设备发现和初始化过程的过程流程的流程图的示例。
图15是图示存储器设备发现和初始化过程的过程流程的流程图的示例。
图16是图示服务器存储分配过程流程的流程图的示例。
图17是图示服务器存储器取消分配(释放)系统调用过程流程的流程图的示例。
图18是图示存储器读取操作的流程图的示例。
图19是图示存储器写入操作的流程图的示例。
图20是图示块I/O写入操作的流程图的示例。
图21是图示块I/O读取操作的流程图的示例。
具体实施方式
在本发明的以下具体描述中参照附图,附图形成公开内容的部分并且在附图中通过示例而非限制的方式示出可以用来实现本发明的示例性实施例。在附图中,相似标号描述贯穿若干视图的基本上相似部件。另外应当注意,尽管具体描述提供如以下描述和如在附图中图示的各种示例实施例,但是本发明不限于这里描述和图示的实施例、但是可以扩展至如本领域技术人员将已知或者如将变成为本领域技术人员所知的其它实施例。在说明书中引用“一个实施例”、“这一实施例”或者“这些实施例”意味着结合实施例描述的特定特征、结构或者特点包含于本发明的至少一个实施例中,并且这些短语出现于说明书中的各处未必都引用相同实施例。此外,在以下具体描述中,阐述许多具体细节以便提供本发明的透彻理解。然而,本领域普通技术人员将清楚,这些具体细节可以不都是为了实现本发明而需要的。在其它境况中,尚未具体描述和/或可以用框图形式图示公知结构、材料、电路、过程和接口以免不必要地模糊本发明。
在计算机内的操作的算法和符号表示方面呈现以下具体描述的一些部分。这些算法描述和符号表示是数据处理领域技术人员用来向本领域其他技术人员最有效传达他们的创新实质的手段。算法是促成所需最终状态或者结果的系列定义的步骤。在本发明中,执行的步骤需要物理操纵有形数量用于实现有形结果。尽管非必需但是通常地,这些数量采用能够存储、传送、组合、比较和另外操纵的电或者磁信号的形式。主要出于普遍使用的原因而将这些信号称为位、值、单元、符号、字符、项、数、指令等已经证实有时是方便的。然而应当谨记,这些和相似术语中的所有术语将与适当物理数量关联并且仅为应用于这些数量的方便标记。除非另有具体明示或者如根据以下讨论而清楚的那样,理解贯穿该描述,利用比如“处理”、“计算”、“运算”、“确定”、“显示”等术语的讨论可以包括计算机系统或者其它信息处理设备的动作和过程,该计算机系统或者其它信息处理设备将计算机系统的寄存器和存储器内表示为物理(电子)数量的数据操纵和变换成在计算机系统的存储器或者寄存器或者其它信息存储、传输或者显示设备内类似地表示为物理数量的其它数据。
本发明也涉及一种用于执行这里的操作的装置。装置可以被具体配置用于所需目的,或者它可以包括一个或者多个计算机程序有选择地激活或者重新配置的一个或者多个通用计算机。可以在计算机可读存储介质中存储这样的计算机程序,该计算机可读存储介质包括非易失性介质、比如但不限于光盘、磁盘、只读存储器、随机存取存储器、固态设备和驱动或者适合于存储电子信息的任何其它类型的介质。这里呈现的算法和显示未固有地与任何特定计算机或者其它装置有关。各种通用系统可以与根据这里的教导的程序和模块一起使用,或者构造更专门化的装置以执行所需方法步骤可以证实是方便的。此外,未参照任何特定编程语言描述本发明。将理解多种编程语言可以用来实施如这里描述的本发明的教导。编程语言的指令可以由一个或者多个处理设备、例如中央处理单元(CPU)、处理器或者控制器执行。
如以下将更具体描述的本发明的示例实施例提供用于使用RDMA技术在服务器与存储系统之间的分级存储器管理的装置、方法和计算机程序。
图1图示可以在其中应用本发明的方法和装置的系统的硬件配置的示例。系统代表具有主机服务器1和存储装置2的计算机环境。块I/O接口13、比如SCSI(小型计算机系统接口)连接服务器1和存储装置2。主机服务器1具有用于存储服务器存储器数据和处理器12的DRAM存储器11。
图2示出用于图1的配置的存储器地址映射的示例。服务器OS(操作系统)具有虚拟存储器地址空间200。服务器OS管理以在虚拟存储器地址空间200与DRAM物理地址空间210之间映射OS。在服务器OS分配虚拟存储器地址中的存储器时,服务器OS的分配器程序收集物理地址空间210的一些段并且将它们映射到一个连续服务器存储器数据段。服务器存储器数据40是虚拟地址空间200中的一个连续存储器段。分配数据41是服务器存储器数据40在物理地址空间210中的实际存储器段。将服务器存储器数据40映射到分配数据41的一个或者多个段。
图3示出用于图1的系统的具体配置的示例。主机服务器1包括处理器12、用于服务器存储器数据的DRAM存储器11、用于服务器存储器数据的快闪存储器14和用于管理本地和远程分级存储器地址空间的地址映射表16。主机服务器1具有用于访问远程分级存储器地址空间的远程存储器接口15和用于访问储装置2中存储的数据的块I/O接口13。存储装置2包括处理器22、数据存储库28、用于存储数据存储库28的分级存储器空间和高速缓存存储器的DRAM存储器21、用于存储数据存储库28的分级存储器空间和高速缓存存储器的快闪存储器24、远程存储器接口25、块I/O接口23、用于将存储装置2的DRAM/快闪存储器分区成服务器存储数据区域和存储装置高速缓存存储器区域以及服务器存储器分配表27的存储器分区表26。
图4示出存储系统中的存储器分区的示例。存储系统2具有大容量DRAM存储器21和快闪存储器24。存储器分区表26管理划分用于存储块访问数据高速缓存的存储装置高速缓存存储器区域110和用于服务器物理存储器地址空间的服务器存储器数据区域100。
图5示出用于图3和4的配置的DRAM和快闪存储器分级和远程访问的存储器地址映射的示例。在主机分配逻辑存储器地址空间(OS虚拟地址空间)中的服务器存储器数据40时,主机OS映射到本地DRAM或者PRAM存储器地址空间210、远程DRAM或者PRAM地址空间220、本地快闪地址空间230或者远程快闪地址空间240。在主机服务器1分配服务器存储器数据40时,主机OS基于对本地DRAM存储器21的所需最高访问频率发出存储器分配系统调用。在主机OS或者应用无需存储器访问的最高性能时,主机OS向快闪存储器24或者远程DRAM地址空间220或者远程快闪地址空间240分配服务器存储器数据区域。主机OS管理地址映射表16以分配物理存储器地址空间(210-240)的区域。
图6示出具有多个存储系统的系统的硬件配置的示例。在这一计算机环境中,服务器1具有与图3中的组成相同的组成,并且每个存储装置2具有与图3中的组成相同的组成。包括多个存储系统的这一实施例使用存储装置DRAM存储器21和存储装置快闪存储器24来创建服务器存储器数据的“分布式物理地址空间”50。从多个存储系统2中的每个存储系统中的存储装置高速缓存存储器空间分离分布式物理地址空间50。
图7示出用于图6的配置的DRAM和快闪存储器分级以及远程访问的存储器地址映射的示例。主机40的逻辑存储器地址200共享远程DRAM地址空间的物理存储器地址空间220和远程快闪地址空间的物理存储器地址空间240。存在一个逻辑存储器地址#1200、分离的远程DRAM地址空间220a、220b和分离的远程快闪地址空间240a、240b。
图8示出具有多个服务器和多个存储系统的系统的硬件配置的示例。在这一计算机环境中,多个服务器1共享分布式物理地址空间50作为服务器存储器容量池。
图9示出用于图8的DRAM和快闪存储器分级以及远程访问的存储器地址映射的示例。两个主机的多个逻辑存储器地址200a和200b共享远程DRAM地址空间的物理存储器地址空间220和远程快闪地址空间的物理存储器地址空间240。存在分离的逻辑存储器地址#1200a和#2200b、分离的逻辑DRAM地址空间210a、210b和分离的逻辑快闪地址空间230a、230b。
图10示出主机服务器1中的设备发现表17的示例。远程设备字段91是远程存储器设备的本地地址(本地RAM或者快闪存储器)或者标识、比如Inifiniband(注册商标)名称标识符。存储器设备类型字段92包含诸如DRAM、PRAM或者快闪存储器之类的存储器介质类型。分配容量字段93包含物理存储器地址空间服务器分配的本地或者远程分配容量。
图11示出主机服务器1中的地址映射表16的示例。虚拟存储器地址字段101是主机OS虚拟地址空间200的地址空间。远程设备字段102是远程存储器设备的本地地址(本地RAM或者快闪存储器)或者诸如Inifiniband(注册商标)名称标识符之类的标识。存储器设备类型字段103包含诸如DRAM、PRAM或者快闪之类的存储器介质类型。分配物理存储器地址字段104包含本地或者远程物理存储器地址。
图12示出存储装置2中的存储器分区表26的示例。存储器分区表26将存储装置的DRAM存储器或者快闪存储器划分成服务器存储器数据区域和存储装置高速缓存数据区域。物理存储器地址字段111包含存储装置快闪存储器或者存储装置DRAM存储器的物理存储器地址。存储器设备类型字段112包含诸如DRAM、PRAM或者快闪之类的存储器介质类型。分区类型字段113包含存储装置高速缓存存储器区域或者服务器存储器数据区域的存储器区域类型。远程设备字段114包含远程主机服务器的标识、比如Inifiniband(注册商标)名称标识符。
图13示出存储装置2中的服务器存储器分配表27的示例。服务器存储器分配表27使得能够在多个服务器之中共享服务器存储数据的物理地址空间。远程设备字段121包含远程主机服务器的标识、比如Inifiniband(注册商标)名称标识符。存储器设备类型字段122包含诸如DRAM、PRAM或者快闪存储器之类的存储器本地资源介质类型。物理存储器地址字段123包含本地物理存储器地址。
图14是图示存储器设备发现和初始化过程的过程流程的流程图的示例。在网络51检测到新服务器或者存储设备时,网络51通知所有设备。然后主机服务器1发现具有远程存储器设备能力的新存储设备2(步骤S131)。主机服务器1向设备发现表17的远程设备条目91添加远程存储器设备资源(图10)。在步骤S132中,主机服务器1获得用于每个新发现远程存储器设备的每个介质类型的容量信息并且构造设备发现表17的存储器类型条目92和分配容量条目93。在步骤S136中,存储装置2向参考存储器分区表26返回容量信息。存储器分区表包含主机用于远程物理存储器的远程物理存储器可用容量。在S136中,存储装置返回远程物理存储器的容量信息。在步骤S133中,主机服务器1确定哪个主机服务器具有足够存储器容量或者存储器性能。如果容量或者性能足够(是),则程序跳过步骤S134并且前进至步骤S135。否则,程序执行步骤S134,在该步骤中,主机服务器1请求向特定存储器类型分配更多容量。在存储装置2接收请求时,存储装置2返回具有存储器类型和分配容量的良好结果。如果存储装置2无用于向主机服务器分配任何容量的更多资源,则存储装置返回具有容量缺乏错误的不良状态。在步骤S135中,主机OS更新存储器容量。主机OS动态更新物理容量而无OS重新引导或者关停过程。
图15是图示存储器设备发现和初始化过程的过程流程的流程图的示例。在步骤S141中,管理员停止服务器OS,或者运行主机服务器1的应用程序发出释放存储器调用。在步骤S142中,存储装置2收回与主机服务器对应的存储器。在步骤S143中,如果主机服务器1的远程存储器接口被停止,则存储装置2去除服务器存储器分配表27(图13)的具体服务器设备(远程设备)条目的条目。
图16是图示服务器存储器分配(alloc)过程流程的流程图的示例。在步骤S151中,主机OS请求新服务器存储器数据。主机1的应用向主机发出存储器分配系统调用。在步骤S152中,如果主机服务器的本地存储器具有充分容量(是),则主机OS分配本地存储器并且前进至步骤S156。如果主机服务器的本地存储器无充分容量或者更高性能存储器容量、比如DRAM不足(否),则程序在步骤S156之前执行步骤S153至S155。
在步骤S153中,主机服务器1使用设备发现表17来检查远程存储器容量。如果远程存储器可用(是),则下一步骤是S154。如果远程存储器不可用(否),则存储器分配已经失败并且主机OS需要交换操作以扩展全部存储器的容量。交换操作是用于向文件块移动存储器数据并且存储到块存储装置的数据存储库的虚拟存储器地址映射。在步骤S154中,主机存储器向存储装置存储器接口发出远程存储器绑定请求、比如RDMA操作存储器分配功能。主机请求与远程DRAM区域或者远程快闪区域的所需容量和存储器性能或者存储器分配位置范围绑定的存储器。在步骤S155中,存储装置2更新服务器存储器分配表27,并且返回主机请求特定性能或者远程存储器地址空间的远程DRAM或者快闪地址空间的物理存储器地址。存储装置返回具有映射地址信息的存储器绑定结果。在步骤S156中,主机OS更新地址映射表16以分配本地或者远程存储器。应用用来访问使用RDMA映射到本地存储器区域或者远程存储器区域的服务器存储器数据。
图17是图示服务器存储器收回(释放)系统调用过程流程的流程图的示例。在步骤S161中,主机OS请求释放服务器存储器数据。主机1的应用向主机OS发出存储器收回(存储器释放)系统调用。在步骤S162中,如果分配区域是主机服务器的本地存储器(是),则主机OS收回本地存储器并且前进至步骤S166。如果分配区域是远程存储器(否),则程序在步骤S166之前执行步骤S163至S165。
在步骤S163中,主机存储器向存储装置2的远程存储器接口25发出远程存储器释放请求。在步骤S164中,存储装置2使用设备发现表17来检查远程存储器容量。如果分配远程存储器(是),则下一步骤是S165。如果未分配远程存储器(否),则存储器释放请求已经由于违反存储器地址而失败。存储装置2的远程存储器接口25返回具有存储器违反错误响应的结果,并且继而主机OS执行存储器错误处置。在步骤S165中,存储装置2更新服务器存储器分配表27以去除存储器释放请求的具体条目和返回结果。在步骤S166中,主机OS更新地址映射表16以去除特定远程存储器分配条目、并且继而收回本地或者远程存储器。主机服务器的虚拟存储器地址空间清理服务器存储器数据。
图18是图示存储器读取操作的流程图的示例。主机1向存储装置2发出存储器读取操作。存储装置针对分配的物理地址123检查服务器存储器分配表27、向主机发送来自服务器存储器数据区域100的读取的数据并且向主机返回存储器读取操作的结果。从存储装置向主机的数据传送在存储装置向主机发送来自服务器存储器数据区域100的读取的数据时出现。
图19是图示存储器写入操作的流程图的示例。主机1向存储装置2发出存储器写入操作。存储装置针对分配的物理地址123检查服务器存储器分配表27、从主机向存储装置的服务器存储器数据区域100读取数据并且向主机返回存储器写入操作的结果。从存储装置向数据并且往回向存储装置的数据传送在存储装置从主机向存储装置的服务器存储器数据区域100读取数据时出现。这一流程用于“服务器向远程存储器写入服务器本地存储器中的存储器数据”。服务器经由RDMA接口向存储装置发出存储器写入命令。在下一步骤中,存储装置接收RDMA存储器写入命令。存储装置针对分配的物理地址123检查服务器存储器分配表27。然后,存储装置获得(读取)已经在服务器本地存储器中存在的写入数据(主机写入数据)。目标启动RDMA数据传送操作。主机向存储装置发送写入存储器数据。存储装置执行RDMA写入操作以读取主机本地存储器数据。
图20是图示块I/O写入操作的流程图的示例。主机1向存储装置2发出块I/O写入操作。存储装置针对分区类型113(存储装置高速缓存)和物理存储器地址111检查存储器分区表26并且向主机1通知它何时准备好用于数据传送。作为响应,主机向存储装置发送写入数据。存储装置向存储高速缓存区域110存储写入数据、向主机返回块I/O写入操作的结果并且向数据存储库28转送(destage)来自存储高速缓存区域110的脏数据。从主机向存储装置的数据传送在主机向存储装置发送写入数据时出现。
图21是图示块I/O读取操作的流程图的示例。主机1向存储装置2发送块I/O读取操作。存储装置针对分区类型113(存储装置高速缓存)和物理存储器地址111检查存储器分区表26、执行读取的数据从数据存储库28向高速缓冲存储器区域110的临时存储(stage)、向主机发送块读取I/O数据并且向主机返回块I/O读取操作的结果。从存储装置向主机的数据传送在存储装置向主机返回块读取I/O数据时出现。
当然,图1、6和7中所示系统配置仅纯粹举例说明其中可以实施本发明的信息系统,并且本发明不限于具体硬件配置。实施本发明的计算机和存储系统也可以具有已知I/O设备(例如CD和DVD驱动、软盘驱动、硬盘驱动等),这些I/O设备可以存储和读取用来实施以上描述的本发明的模块、程序和数据结构。可以在这样的计算机可读介质上编码这些模块、程序和数据结构。例如可以与在本发明中使用的程序驻留于其上的一个或者多个计算机可读介质独立地在计算机可读介质上存储本发明的数据结构。任何形式或者介质的数字数据通信、例如通信网络可以互连系统的部件。通信网络的示例包括局域网、广域网、例如因特网、无线网络、存储区域网络等。
在说明书中,出于说明的目的而阐述许多细节以便提供本发明的透彻理解。然而本领域技术人员将清楚,这些具体细节中的并非所有具体细节是为了实现本发明而需要的。也注意可以描述本发明为如下过程,通常描绘该过程为过程图、流程图、结构图或者框图。虽然流程图可以描述操作为依次过程,但是可以并行或者并发执行操作中的许多操作。此外,可以重排操作的顺序。
如本领域所知,以上描述的操作可以由硬件、软件或者软件和硬件的某一组合执行。可以使用电路和逻辑器件(硬件)来实施本发明的实施例的各种方面,而可以使用机器可读介质上存储的指令(软件)来实施其它方面,这些指令如果由处理器执行则将使处理器执行用于实现本发明的实施例的方法。另外,可以仅在硬件中实现本发明的一些实施例,而可以仅在软件中实施其它实施例。另外,可以在单个单元中执行描述的各种功能或者可以用任何数目的方式跨越多个部件散布这些功能。在由软件执行时,处理器、比如通用计算机可以基于计算机可读介质上存储的指令执行方法。如果需要,则可以用压缩和/或加密格式在介质上存储指令。
从前文将清楚本发明提供用于使用RDMA技术在服务器与存储系统之间的分级存储器管理的在计算机可读介质上存储的方法、装置和程序。此外,尽管已经在本说明书中图示和描述具体实施例,但是本领域普通技术人员理解可以用被设计用于实现相同目的的任何布置替换公开的具体实施例。本公开内容旨在于覆盖本发明的任何和所有适配或者变化,并且将理解不应解释所附权利要求中使用的措词使本发明限于在说明书中公开的具体实施例。实际上,本发明的范围将完全由将根据建立的权利要求解释原则解释的所附权利要求以及向这样的权利要求给予的完全等效范围确定。
Claims (20)
1.一种存储系统,包括:
第一类型接口,其可操作用于使用远程存储器访问来与服务器通信;
第二类型接口,其可操作用于使用块I/O(输入/输出)访问来与所述服务器通信;
存储器;以及
控制器,其可操作用于管理:(1)分配用于存储数据的所述存储器的存储区域的第一部分,被存储的数据将被存储在由所述服务器上的操作系统所管理的物理地址空间中,并且所述被存储的数据从所述服务器经由所述第一类型接口而发送;以及(2)分配用于高速缓存数据的所述存储器的所述存储区域的第二部分,被高速缓存的数据从所述服务器经由所述第二类型接口向所述存储系统的逻辑卷发送,并且所述被高速缓存的数据将被存储在所述存储系统的与所述逻辑卷相对应的存储设备中。
2.根据权利要求1所述的存储系统,
其中所述控制器可操作用于管理所述存储系统中的所述存储器的每个介质类型的容量信息。
3.根据权利要求1所述的存储系统,
其中所述存储器包括DRAM存储器或者快闪存储器中的至少一个存储器。
4.根据权利要求1所述的存储系统,
其中所述控制器可操作用于管理(3)分配用于存储数据的所述存储器的存储区域的第三部分,被存储的数据将被存储在由另一服务器上的操作系统所管理的物理地址空间中,并且所述被存储的数据从所述另一服务器经由所述第一类型接口发送,以及管理分配用于高速缓存数据的所述存储器的所述存储区域的所述第二部分,被高速缓存的数据从所述另一服务器经由所述第二类型接口向所述存储系统的逻辑卷发送,并且所述被高速缓存的数据将被存储在所述存储系统的与所述逻辑卷相对应的存储设备中。
5.根据权利要求1所述的存储系统,
其中所述控制器可操作用于响应于来自所述服务器的请求,向所述服务器提供所述存储系统中的所述存储器的存储区域的所述第一部分的每个介质类型的容量信息。
6.根据权利要求1所述的存储系统,
其中所述控制器可操作用于如果所述服务器的用于与所述第一类型接口通信的远程存储器接口被停止,则从服务器存储器分配表的条目去除所述服务器,所述服务器存储器分配表存储关于由所述存储系统为一个或者多个服务器分配的存储器的信息。
7.根据权利要求1所述的存储系统,
其中所述控制器可操作用于响应于来自所述服务器的具有所需容量和存储器性能之一或者所述存储器的存储区域的所述第一部分的存储器分配位置范围的远程存储器绑定请求,向所述服务器返回具有映射地址信息的存储器绑定结果。
8.根据权利要求1所述的存储系统,
其中所述控制器可操作用于响应于来自所述服务器的远程释放请求,从服务器存储器分配表的条目去除所述服务器,所述服务器存储器分配表存储关于由所述存储系统为一个或者多个服务器分配的存储器的信息。
9.一种用于存储系统的存储器管理的方法,所述存储系统具有:第一类型接口,其可操作用于使用远程存储器访问来与服务器通信;第二类型接口,其可操作用于使用块I/O(输入/输出)访问来与所述服务器通信;以及存储器,所述方法包括:
管理:(1)分配用于存储数据的所述存储器的存储区域的第一部分,被存储的数据将被存储在由所述服务器上的操作系统所管理的物理地址空间中,并且所述被存储的数据从所述服务器经由所述第一类型接口发送;以及(2)分配用于高速缓存数据的所述存储器的所述存储区域的第二部分,被高速缓存的数据从所述服务器经由所述第二类型接口向所述存储系统的逻辑卷发送,并且所述被高速缓存的数据将被存储在所述存储系统的与所述逻辑卷相对应的存储设备中。
10.根据权利要求9所述的方法,还包括:
管理(3)分配用于存储数据的所述存储器的存储区域的第三部分,被存储的数据将被存储在由另一服务器上的操作系统所管理的物理地址空间中,并且所述被存储的数据从所述另一服务器经由所述第一类型接口发送,以及管理分配用于高速缓存数据的所述存储器的所述存储区域的所述第二部分,被高速缓存的数据从所述另一服务器经由所述第二类型接口向所述存储系统的逻辑卷发送,并且所述被高速缓存的数据将被存储在所述存储系统的与所述逻辑卷相对应的存储设备中。
11.根据权利要求9所述的方法,还包括:
响应于来自所述服务器的请求,向所述服务器提供所述存储系统中的所述存储器的存储区域的所述第一部分的每个介质类型的容量信息。
12.根据权利要求9所述的方法,还包括:
如果所述服务器的用于与所述第一类型接口通信的远程存储器接口被停止,或者如果从所述服务器接收到远程释放请求,则从服务器存储器分配表的条目去除所述服务器,所述服务器存储器分配表存储关于由所述存储系统为一个或者多个服务器分配的存储器的信息。
13.根据权利要求9所述的方法,还包括:
响应于来自所述服务器的具有所需容量和存储器性能之一或者所述存储器的存储区域的所述第一部分的存储器分配位置范围的远程存储器绑定请求,向所述服务器返回具有映射地址信息的存储器绑定结果。
14.一种存储多个指令的计算机可读存储介质,所述多个指令用于控制数据处理器以管理用于存储系统的存储器,所述存储系统具有:第一类型接口,其可操作用于使用远程存储器访问来与服务器通信;第二类型接口,其可操作用于使用块I/O(输入/输出)访问来与所述服务器通信;以及存储器,所述多个指令包括:
使所述数据处理器管理以下各项的指令:(1)分配用于存储数据的所述存储器的存储区域的第一部分,被存储的数据将被存储在由所述服务器上的操作系统所管理的物理地址空间中,并且所述被存储的数据从所述服务器经由所述第一类型接口发送;以及(2)分配用于高速缓存数据的所述存储器的所述存储区域的第二部分,被高速缓存的数据从所述服务器经由所述第二类型接口向所述存储系统的逻辑卷发送,并且所述被高速缓存的数据将被存储在所述存储系统的与所述逻辑卷相对应的存储设备中。
15.根据权利要求14所述的计算机可读存储介质,其中所述多个指令还包括:
使所述数据处理器管理所述存储系统中的所述存储器的每个介质类型的容量信息的指令;
其中所述存储器包括DRAM存储器或者快闪存储器中的至少一个。
16.根据权利要求14所述的计算机可读存储介质,其中所述多个指令还包括:
使所述数据处理器管理(3)分配用于存储数据的所述存储器的存储区域的第三部分的指令,被存储的数据将被存储在由另一服务器上的操作系统所管理的物理地址空间中,并且所述被存储的数据从所述另一服务器经由所述第一类型接口发送,以及使所述数据处理器管理分配用于高速缓存数据的所述存储器的所述存储区域的所述第二部分的指令,被高速缓存的数据从所述另一服务器经由所述第二类型接口向所述存储系统的逻辑卷发送,并且所述被高速缓存的数据将被存储在所述存储系统的与所述逻辑卷相对应的存储设备中。
17.根据权利要求14所述的计算机可读存储介质,其中所述多个指令还包括:
使所述数据处理器响应于来自所述服务器的请求,向所述服务器提供所述存储系统中的所述存储器的存储区域的所述第一部分的每个介质类型的容量信息的指令。
18.根据权利要求14所述的计算机可读存储介质,其中所述多个指令还包括:
如果所述服务器的用于与所述第一类型接口通信的远程存储器接口被停止,则使所述数据处理器从服务器存储器分配表的条目去除所述服务器的指令,所述服务器存储器分配表存储关于由所述存储系统为一个或者多个服务器分配的存储器的信息。
19.根据权利要求14所述的计算机可读存储介质,其中所述多个指令还包括:
使所述数据处理器响应于来自所述服务器的具有所需容量和存储器性能之一或者所述存储器的存储区域的所述第一部分的存储器分配位置范围的远程存储器绑定请求,向所述服务器返回具有映射地址信息的存储器绑定结果的指令。
20.根据权利要求14所述的计算机可读存储介质,其中所述多个指令还包括:
使所述数据处理器响应于来自所述服务器的远程释放请求,从服务器存储器分配表的条目去除所述服务器的指令,所述服务器存储器分配表存储关于由所述存储系统为一个或者多个服务器分配的存储器的信息。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/628,363 US9304828B2 (en) | 2012-09-27 | 2012-09-27 | Hierarchy memory management |
US13/628,363 | 2012-09-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103699496A true CN103699496A (zh) | 2014-04-02 |
Family
ID=49123722
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310447130.5A Pending CN103699496A (zh) | 2012-09-27 | 2013-09-24 | 分级存储器管理 |
Country Status (4)
Country | Link |
---|---|
US (2) | US9304828B2 (zh) |
EP (1) | EP2713262B1 (zh) |
JP (1) | JP6062331B2 (zh) |
CN (1) | CN103699496A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104573020A (zh) * | 2015-01-12 | 2015-04-29 | 浪潮电子信息产业股份有限公司 | 一种分级存储系统中数据自动迁移优化方法 |
CN105119964A (zh) * | 2014-04-18 | 2015-12-02 | Hgst荷兰公司 | 经由物理块地址的文件存储 |
CN105701233A (zh) * | 2016-02-18 | 2016-06-22 | 焦点科技股份有限公司 | 一种优化服务器缓存管理的方法 |
CN106527982A (zh) * | 2016-10-25 | 2017-03-22 | 西安交通大学 | 一种针对由异构存储设备组成的对象存储系统的对象分布算法 |
CN106911776A (zh) * | 2017-02-24 | 2017-06-30 | 郑州云海信息技术有限公司 | 一种云存储设备的管理方法及装置 |
CN107515727A (zh) * | 2016-06-16 | 2017-12-26 | 伊姆西公司 | 用于在存储系统中管理存储器的方法和系统 |
CN109840217A (zh) * | 2017-11-28 | 2019-06-04 | 华为技术有限公司 | 一种缓存资源分配和装置 |
CN110059022A (zh) * | 2017-12-22 | 2019-07-26 | 三星电子株式会社 | 用于分布式高速缓存的系统和方法 |
CN110275771A (zh) * | 2018-03-15 | 2019-09-24 | 中国移动通信集团有限公司 | 一种业务处理方法、物联网计费基础设施系统及存储介质 |
CN110780805A (zh) * | 2018-07-25 | 2020-02-11 | 爱思开海力士有限公司 | 存储器装置、处理系统及控制处理系统的方法 |
CN114730298A (zh) * | 2019-10-24 | 2022-07-08 | 美光科技公司 | 使用加权存储器存取操作类型的存储器装置的服务质量 |
CN110059022B (zh) * | 2017-12-22 | 2024-05-31 | 三星电子株式会社 | 用于分布式高速缓存的系统和方法 |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140280669A1 (en) * | 2013-03-15 | 2014-09-18 | Microsoft Corporation | Memory Sharing Over A Network |
US9311230B2 (en) * | 2013-04-23 | 2016-04-12 | Globalfoundries Inc. | Local direct storage class memory access |
US10002367B2 (en) | 2013-10-09 | 2018-06-19 | Selligent, Inc. | System and method for managing message campaign data |
US9940301B2 (en) * | 2014-10-31 | 2018-04-10 | International Business Machines Corporation | Cache management for RDMA data stores |
WO2016122607A1 (en) * | 2015-01-30 | 2016-08-04 | Hewlett Packard Enterprise Development Lp | Dedicated memory server |
US20160291887A1 (en) * | 2015-03-30 | 2016-10-06 | Kabushiki Kaisha Toshiba | Solid-state drive with non-volatile random access memory |
US9940028B2 (en) * | 2015-11-13 | 2018-04-10 | Samsung Electronics Co., Ltd | Multimode storage device |
US20170315924A1 (en) * | 2016-04-29 | 2017-11-02 | Netapp, Inc. | Dynamically Sizing a Hierarchical Tree Based on Activity |
US10606625B1 (en) * | 2016-09-16 | 2020-03-31 | Google Llc | Hot growing a cloud hosted block device |
JP6732684B2 (ja) * | 2017-03-15 | 2020-07-29 | キオクシア株式会社 | 情報処理装置、ストレージデバイスおよび情報処理システム |
US10430333B2 (en) | 2017-09-29 | 2019-10-01 | Intel Corporation | Storage system with interconnected solid state disks |
US11074004B2 (en) * | 2019-01-15 | 2021-07-27 | Intel Corporation | Tenant-based telemetry for persistent storage media |
WO2020214757A1 (en) * | 2019-04-17 | 2020-10-22 | John Rankin | Virtual memory pool within a network which is accessible from multiple platforms |
US11100007B2 (en) * | 2019-05-28 | 2021-08-24 | Micron Technology, Inc. | Memory management unit (MMU) for accessing borrowed memory |
WO2020243244A1 (en) * | 2019-05-28 | 2020-12-03 | John Rankin | Supporting a virtual memory area at a remote computing machine |
CN111177019B (zh) * | 2019-08-05 | 2021-07-16 | 腾讯科技(深圳)有限公司 | 一种内存分配管理方法、装置、设备及存储介质 |
US11269780B2 (en) | 2019-09-17 | 2022-03-08 | Micron Technology, Inc. | Mapping non-typed memory access to typed memory access |
US11494311B2 (en) * | 2019-09-17 | 2022-11-08 | Micron Technology, Inc. | Page table hooks to memory types |
US11163490B2 (en) | 2019-09-17 | 2021-11-02 | Micron Technology, Inc. | Programmable engine for data movement |
US11397694B2 (en) | 2019-09-17 | 2022-07-26 | Micron Technology, Inc. | Memory chip connecting a system on a chip and an accelerator chip |
US10963396B1 (en) | 2019-09-17 | 2021-03-30 | Micron Technology, Inc. | Memory system for binding data to a memory namespace |
US11650742B2 (en) | 2019-09-17 | 2023-05-16 | Micron Technology, Inc. | Accessing stored metadata to identify memory devices in which data is stored |
US20210081318A1 (en) * | 2019-09-17 | 2021-03-18 | Micron Technology, Inc. | Flexible provisioning of multi-tier memory |
US11416422B2 (en) | 2019-09-17 | 2022-08-16 | Micron Technology, Inc. | Memory chip having an integrated data mover |
US11567803B2 (en) * | 2019-11-04 | 2023-01-31 | Rambus Inc. | Inter-server memory pooling |
US11573719B2 (en) * | 2020-03-26 | 2023-02-07 | Oracle International Corporation | PMEM cache RDMA security |
JP6998419B2 (ja) * | 2020-04-16 | 2022-01-18 | 株式会社三菱Ufj銀行 | 制御プログラム |
CN112199042A (zh) * | 2020-09-30 | 2021-01-08 | 深圳市汇顶科技股份有限公司 | 存储空间管理方法、装置、芯片、设备及存储介质 |
EP4256737A1 (en) * | 2020-12-03 | 2023-10-11 | Nokia Solutions and Networks Oy | Methods, apparatuses, and computer readable media for binding and de-binding neighboring apparatuses |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090292861A1 (en) * | 2008-05-23 | 2009-11-26 | Netapp, Inc. | Use of rdma to access non-volatile solid-state memory in a network storage system |
CN101622606A (zh) * | 2006-12-06 | 2010-01-06 | 弗森多系统公司(dba弗森-艾奥) | 用于作为大容量、非易失性存储器的高速缓存的固态存储器的装置、系统和方法 |
CN101715575A (zh) * | 2006-12-06 | 2010-05-26 | 弗森多系统公司(dba弗森-艾奥) | 采用数据管道管理数据的装置、系统和方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5941972A (en) * | 1997-12-31 | 1999-08-24 | Crossroads Systems, Inc. | Storage router and method for providing virtual local storage |
US7043623B2 (en) * | 2003-01-22 | 2006-05-09 | Intelitrac, Inc. | Distributed memory computing environment and implementation thereof |
EP1528478A1 (en) * | 2003-11-03 | 2005-05-04 | Sun Microsystems, Inc. | Generalized addressing scheme for remote direct memory access enabled devices |
JP4631301B2 (ja) * | 2004-03-31 | 2011-02-16 | 株式会社日立製作所 | 記憶装置のキャッシュ管理方法 |
US20060190552A1 (en) * | 2005-02-24 | 2006-08-24 | Henze Richard H | Data retention system with a plurality of access protocols |
US8595313B2 (en) * | 2005-11-29 | 2013-11-26 | Netapp. Inc. | Systems and method for simple scale-out storage clusters |
US20090144388A1 (en) | 2007-11-08 | 2009-06-04 | Rna Networks, Inc. | Network with distributed shared memory |
US7849272B2 (en) | 2007-12-17 | 2010-12-07 | International Business Machines Corporation | Dynamic memory management in an RDMA context |
WO2009113553A1 (ja) * | 2008-03-11 | 2009-09-17 | シャープ株式会社 | 光ディスクドライブ装置 |
JP5192932B2 (ja) * | 2008-07-23 | 2013-05-08 | 株式会社日立製作所 | ストレージシステム内の論理ユニットを論理ボリュームに割り当てる方法及び記憶制御装置 |
US9015426B2 (en) * | 2011-02-28 | 2015-04-21 | Kove Corporation | High performance data storage using observable client-side memory access |
-
2012
- 2012-09-27 US US13/628,363 patent/US9304828B2/en active Active
-
2013
- 2013-08-27 JP JP2013175445A patent/JP6062331B2/ja not_active Expired - Fee Related
- 2013-09-06 EP EP13183286.7A patent/EP2713262B1/en active Active
- 2013-09-24 CN CN201310447130.5A patent/CN103699496A/zh active Pending
-
2016
- 2016-02-23 US US15/050,902 patent/US9760497B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101622606A (zh) * | 2006-12-06 | 2010-01-06 | 弗森多系统公司(dba弗森-艾奥) | 用于作为大容量、非易失性存储器的高速缓存的固态存储器的装置、系统和方法 |
CN101715575A (zh) * | 2006-12-06 | 2010-05-26 | 弗森多系统公司(dba弗森-艾奥) | 采用数据管道管理数据的装置、系统和方法 |
US20090292861A1 (en) * | 2008-05-23 | 2009-11-26 | Netapp, Inc. | Use of rdma to access non-volatile solid-state memory in a network storage system |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105119964A (zh) * | 2014-04-18 | 2015-12-02 | Hgst荷兰公司 | 经由物理块地址的文件存储 |
CN104573020A (zh) * | 2015-01-12 | 2015-04-29 | 浪潮电子信息产业股份有限公司 | 一种分级存储系统中数据自动迁移优化方法 |
CN104573020B (zh) * | 2015-01-12 | 2017-11-10 | 浪潮电子信息产业股份有限公司 | 一种分级存储系统中数据自动迁移优化方法 |
CN105701233A (zh) * | 2016-02-18 | 2016-06-22 | 焦点科技股份有限公司 | 一种优化服务器缓存管理的方法 |
CN105701233B (zh) * | 2016-02-18 | 2018-12-14 | 南京焦点领动云计算技术有限公司 | 一种优化服务器缓存管理的方法 |
CN107515727B (zh) * | 2016-06-16 | 2020-09-25 | 伊姆西Ip控股有限责任公司 | 用于在存储系统中管理存储器的方法和系统 |
CN107515727A (zh) * | 2016-06-16 | 2017-12-26 | 伊姆西公司 | 用于在存储系统中管理存储器的方法和系统 |
CN106527982A (zh) * | 2016-10-25 | 2017-03-22 | 西安交通大学 | 一种针对由异构存储设备组成的对象存储系统的对象分布算法 |
CN106527982B (zh) * | 2016-10-25 | 2019-04-12 | 西安交通大学 | 一种针对由异构存储设备组成的对象存储系统的对象分布算法 |
CN106911776A (zh) * | 2017-02-24 | 2017-06-30 | 郑州云海信息技术有限公司 | 一种云存储设备的管理方法及装置 |
CN109840217A (zh) * | 2017-11-28 | 2019-06-04 | 华为技术有限公司 | 一种缓存资源分配和装置 |
CN109840217B (zh) * | 2017-11-28 | 2023-10-20 | 华为技术有限公司 | 一种缓存资源分配和装置 |
CN110059022A (zh) * | 2017-12-22 | 2019-07-26 | 三星电子株式会社 | 用于分布式高速缓存的系统和方法 |
CN110059022B (zh) * | 2017-12-22 | 2024-05-31 | 三星电子株式会社 | 用于分布式高速缓存的系统和方法 |
CN110275771A (zh) * | 2018-03-15 | 2019-09-24 | 中国移动通信集团有限公司 | 一种业务处理方法、物联网计费基础设施系统及存储介质 |
CN110780805A (zh) * | 2018-07-25 | 2020-02-11 | 爱思开海力士有限公司 | 存储器装置、处理系统及控制处理系统的方法 |
CN114730298A (zh) * | 2019-10-24 | 2022-07-08 | 美光科技公司 | 使用加权存储器存取操作类型的存储器装置的服务质量 |
CN114730298B (zh) * | 2019-10-24 | 2024-05-17 | 美光科技公司 | 使用加权存储器存取操作类型的存储器装置的服务质量 |
Also Published As
Publication number | Publication date |
---|---|
US20160170895A1 (en) | 2016-06-16 |
EP2713262A1 (en) | 2014-04-02 |
JP6062331B2 (ja) | 2017-01-18 |
US20140089585A1 (en) | 2014-03-27 |
EP2713262B1 (en) | 2015-08-19 |
US9760497B2 (en) | 2017-09-12 |
US9304828B2 (en) | 2016-04-05 |
JP2014071893A (ja) | 2014-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103699496A (zh) | 分级存储器管理 | |
JP6798960B2 (ja) | 仮想化ストレージエリアネットワークのための仮想ディスクブループリント | |
US10437486B2 (en) | Method and apparatus for tenant-aware storage sharing platform | |
JP6607901B2 (ja) | スケーラブル分散ストレージアーキテクチャ | |
CN102314378B (zh) | 使用共享存储来迁移虚拟机的技术 | |
CN110795206B (zh) | 用于促进集群级缓存和内存空间的系统和方法 | |
DE112011103026B4 (de) | Bedarfsgesteuertes Streaming von Abbildern virtueller Maschinen | |
US8578370B2 (en) | Managing memory in multiple virtual machines | |
CN109344090B (zh) | 数据中心中kvm虚拟机的虚拟硬盘系统及数据中心 | |
EP3356936B1 (en) | Network attached memory using selective resource migration | |
US10909072B2 (en) | Key value store snapshot in a distributed memory object architecture | |
US20160266923A1 (en) | Information processing system and method for controlling information processing system | |
TWI646423B (zh) | 針對大型共享位址空間之映射機構 | |
CN104252319A (zh) | 针对多个逻辑分区的备份管理 | |
US8122182B2 (en) | Electronically addressed non-volatile memory-based kernel data cache | |
US20170177225A1 (en) | Mid-level controllers for performing flash management on solid state drives | |
US20190332275A1 (en) | Information processing system and volume allocation method | |
CN105335223A (zh) | 源主机和目的主机上的虚拟机内存迁移装置、方法及系统 | |
US20230221897A1 (en) | Implementing coherency and page cache support for a storage system spread across multiple data centers | |
US20230273899A1 (en) | Data migration in a distributive file system | |
US11036404B2 (en) | Devices, systems, and methods for reconfiguring storage devices with applications | |
US20190324868A1 (en) | Backup portion of persistent memory | |
US20210132979A1 (en) | Goal-directed software-defined numa working set management | |
CN110447019B (zh) | 存储器分配管理器及由其执行的用于管理存储器分配的方法 | |
WO2020024589A1 (en) | Key value store snapshot in a distributed memory object architecture |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into 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: 20140402 |