CN110187825A - 一种超融合多副本加速存储系统 - Google Patents

一种超融合多副本加速存储系统 Download PDF

Info

Publication number
CN110187825A
CN110187825A CN201810672195.2A CN201810672195A CN110187825A CN 110187825 A CN110187825 A CN 110187825A CN 201810672195 A CN201810672195 A CN 201810672195A CN 110187825 A CN110187825 A CN 110187825A
Authority
CN
China
Prior art keywords
caching
write
read
logic
api
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
Application number
CN201810672195.2A
Other languages
English (en)
Inventor
陈鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orca Data Technology Xian Co Ltd
Original Assignee
Orca Data Technology Xian Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Orca Data Technology Xian Co Ltd filed Critical Orca Data Technology Xian Co Ltd
Priority to CN201810672195.2A priority Critical patent/CN110187825A/zh
Publication of CN110187825A publication Critical patent/CN110187825A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明属于数据存储领域,公开了一种超融合的多副本加速存储系统,包括包括读写拦截模块和至少一个存储节点,存储节点包括块设备服务器组件、多副本NVRAM缓存组件和分布式文件系统组件。本发明公开的存储系统与现有技术相比,在底层结构上增加NARAM缓存,将块设备映射到底层文件上,统一存储,简化了管理复杂度,底层双活的分布式文件系统、使得上层独立;多个节点的底层分布式文件系统可提供横向扩展,数据自动分布到底层各个节点的文件系统中,实现自动平衡分布;数据的读写故障自动重定向,使得客户端对故障状态无感知,数据优先存储于NVRAM缓存中,大大延长了SSD的生命周期。

Description

一种超融合多副本加速存储系统
【技术领域】
本发明属于数据存储领域,具体涉及一种超融合多副本加速存储系统。
【背景技术】
在现有的“Cinder”兼容的后端存储设备中,存在两点问题,或者速度快,延迟低,但横向扩展性不强,或者横向扩展性强,但速度慢,延迟高。不能兼顾速度和横向扩展性。
【发明内容】
本发明的目的在于针对现有技术的不足,提供一种超融合多副本加速存储系统,可兼顾速度和横向扩展性。
本发明中英文名词翻译如下表:
NVRAM缓存 非易失性随机访问存储器
API 应用编程接口
Cinder 逻辑存储卷”
OpenStack 开源云计算管理平台项目
vlun 虚拟局域网
具体的,本发明的技术方案是:
一种超融合多副本加速存储系统,包括读写拦截模块和至少三个存储节点,其特征在于:所述存储节点包括块设备服务器组件、多副本NVRAM缓存组件和分布式文件系统组件;所述块设备服务器组件通过Scoket API与读写拦截模块进行通信,多副本NVRAM缓存组件服务于块设备服务器组件,分布式文件系统组件作为块设备服务器组件和多副本NVRAM
进一步的,所述读写拦截模块为Open stack cinder读写拦截模块,所述Openstack cinder读写拦截模块包括Cinder API、写请求逻辑、读请求逻辑和块设备API,所述块设备API发送读写请求到块设备服务器组件。
进一步的,所述Cinder API为标准的LINUX异步IO接口。
进一步的,所述读请求逻辑配置两个IP地址,读请求顺序尝试每个IP地址,直到其中一个成功返回或两个IP地址都尝试失败。
进一步的,所述写请求逻辑配置两个IP地址,写请求顺序尝试每个IP地址,直到其中一个成功返回或两个IP地址都尝试失败。
进一步的,所述块设备服务器组件包括Socket API、缓存API、文件系统API、写逻辑和读逻辑;所述Socket API与读写拦截模块通信,所述缓存API中写逻辑先被缓存在一个NVRAM缓存中,读逻辑的结果由缓存中的页面和文件系统提供的页面组成,所述文件系统API中,如果块设备服务器组件没有设置缓存,则直接转发写请求到底层文件系统,对于读请求,从文件系统中读取所有当前不在缓存中的页。
进一步的,所述多副本NVRAM缓存组件包括缓存协调、缓存复制、API、写逻辑和读逻辑。所述缓存协调中,当一个缓存节点发生故障后重新加入时,需要识别出在其离线期间所发生的写操作,使得多份缓存副本达到一致状态。所述写逻辑中,一个卷的当前主缓存接收所有的写请求,并且复制到其他副本。所述读逻辑中,如果一个卷的主缓存NVRAM故障,则尝试从其他缓存副本中获取页。所述缓存复制中,数据页同步地从主缓存被复制到其他缓存。
与现有技术相比,本发明公开的后端存储系统,底层双活的分布式文件系统,融合NVRAM加速的块设备存储,在底层结构上增加NARAM缓存,将块设备映射到底层文件上,统一存储,简化了管理复杂度;底层双活的分布式文件系统、使得上层独立;多个节点的底层分布式文件系统可提供横向扩展,数据自动分布到底层各个节点的文件系统中,实现自动平衡分布;数据的读写故障自动重定向,使得客户端对故障状态无感知,数据优先存储于NVRAM缓存中,大大延长了SSD的生命周期。
【附图说明】
图1为本发明实施例的结构示意图。
图2为实施例中Open stack cinder读写拦截模块的读请求逻辑流程图。
图3为实施例中Open stack cinder读写拦截模块的写请求逻辑流程图。
图4为实施例中用户态的块服务模块组件的读写流程图。
图5为实施例中多副本NVRAM缓存组件中缓存协调的流程图。
图6为实施例中多副本NVRAM缓存组件中写逻辑的流程图。
图7为实施例中多副本NVRAM缓存组件中读逻辑的流程图。
图8为实施例中多副本NVRAM缓存组件中缓存复制的流程图。
图9为实施例中缓存配置流程图。
图10为实施例中缓存节点启动流程图。
图11为内存结构初始化流程图。
图12为缓存刷新流程图。
图13为缓存刷新规则示意图。
图14为哈希队列插入流程图。
图15为哈希队列算法流程图。
【具体实施方式】
下面将结合附图对本发明的技术方案进行清楚完整的描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域的普通技术人员在没有做出创造性劳动的前提下所获得的其他实施例,都属于本发明的保护范围。
实施例:参照图1,
一种超融合多副本加速存储系统,包括一个Open stack cinder读写拦截模块,两个存储节点。每个存储节点包括一个用户态的块设备服务器组价,一个多副本NVRAM缓存组件和一个分布式多副本文件系统组件。Open stack cinder读写拦截模块提供了一个标准的RBD块设备插件。
该Open stack cinder读写拦截模块包括Cinder API、写请求逻辑、读请求逻辑和块设备API,该块设备API发送读写请求到块设备服务器组件。该Cinder API为标准的LINUX异步IO接口。该读请求逻辑配置2个IP地址,读请求顺序尝试每个IP地址,直到其中一个成功返回或者两个IP地址都尝试失败。该写请求逻辑配置2个IP地址,写请求顺序尝试每个IP地址,直到其中一个成功返回或者两个IP地址都尝试失败。
该用户态的块设备服务器组件包括Socket API、缓存API、文件系统API、写逻辑和读逻辑。该Socket API与RBD读写拦截模块通信。该缓存API中,写逻辑先被缓存在一个NVRAM缓存中,读逻辑的结果由缓存中的页面和文件系统提供的页面组成。该文件系统API中,如果块设备没有设置缓存,则直接转发写逻辑给底层文件系统。对于读逻辑,则从文件系统中读取所有当前不在缓存中的页。
该多副本NVRAM缓存组件中包括缓存协调、缓存复制、API、写逻辑和读逻辑。所述缓存协调中,当一个缓存节点发生故障后重新加入时,需要识别出在其离线期间所发生的写操作,使得多份缓存副本达到一致状态。所述写逻辑中,一个卷的当前主缓存接收所有的写请求,并且复制到其他副本。所述读逻辑中,如果一个卷的主缓存NVRAM故障,则尝试从其他缓存副本中获取页。所述缓存复制中,数据页同步地从主缓存被复制到其他缓存。
该存储系统的数据配置中包括Open stack、缓存配置和块设备。该Open stack用Cinder作为后端,与所有Cinder配置相同。Cinder会调用读写拦截模块查询块设备服务,获取块设备基本信息。块设备服务提供接口API,在底层文件系统创建稀疏文件,并映射为Cinder块设备(vlun)。缓存配置中,先将缓存分为三个分区,每个分区扮演不同角色,然后根据配置文件中的定义创建从lun到缓存分区的映射,最后创建空闲列表,空闲列表被所有分区分享。
上述实施例仅用于说明本发明的技术方案,而非对其限制。本发明并不局限于上面已经描述并在附图中示意的准确结构,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,做出的各种改变和变形,都应当视为属于本发明的保护范围。

Claims (8)

1.一种超融合多副本加速存储系统,包括读写拦截模块和至少三个存储节点,其特征在于:所述存储节点包括块设备服务器组件、多副本NVRAM缓存组件和分布式文件系统组件;所述块设备服务器组件通过Scoket API与读写拦截模块进行通信,多副本NVRAM缓存组件服务于块设备服务器组件,分布式文件系统组件作为块设备服务器组件和多副本NVRAM的后端存储。
2.根据权利要求1所述的存储系统,其特征在于:所述读写拦截模块为Open stackcinder读写拦截模块,所述Open stack cinder读写拦截模块包括Cinder API、写请求逻辑、读请求逻辑和块设备API,所述块设备API发送读写请求到块设备服务器组件。
3.根据权利要求2所述的存储系统,其特征在于:所述Cinder API为标准的LINUX异步IO接口。
4.根据权利要求2所述的存储系统,其特征在于:所述读请求逻辑配置两个IP地址,读请求顺序尝试每个IP地址,直到其中一个成功返回或两个IP地址都尝试失败。
5.根据权利要求2所述的存储系统,其特征在于:所述写请求逻辑配置两个IP地址,写请求顺序尝试每个IP地址,直到其中一个成功返回或两个IP地址都尝试失败。
6.根据权利要求1-5任一项所述的存储系统,其特征在于:所述块设备服务器组件包括Socket API、缓存API、文件系统API、写逻辑和读逻辑;所述Socket API与读写拦截模块通信,所述缓存API中写逻辑先被缓存在一个NVRAM缓存中,读逻辑的结果由缓存中的页面和文件系统提供的页面组成,所述文件系统API中,如果块设备服务器组件没有设置缓存,则直接转发写请求到底层文件系统,对于读请求,从文件系统中读取所有当前不在缓存中的页。
7.根据权利要求1-5任一项所述的存储系统,其特征在于:所述多副本NVRAM缓存组件包括缓存协调、缓存复制、API、写逻辑和读逻辑;所述缓存协调中,当一个缓存节点发生故障后重新加入时,需要识别出在其离线期间所发生的写操作,使得多份缓存副本达到一致状态;所述写逻辑中,一个卷的当前主缓存接收所有的写请求,并且复制到其他副本;所述读逻辑中,如果一个卷的主缓存NVRAM故障,则尝试从其他缓存副本中获取页;所述缓存复制中,数据页同步地从主缓存被复制到其他缓存。
8.根据权利要6任一项所述的存储系统,其特征在于:所述多副本NVRAM缓存组件包括缓存协调、缓存复制、API、写逻辑和读逻辑;所述缓存协调中,当一个缓存节点发生故障后重新加入时,需要识别出在其离线期间所发生的写操作,使得多份缓存副本达到一致状态;所述写逻辑中,一个卷的当前主缓存接收所有的写请求,并且复制到其他副本;所述读逻辑中,如果一个卷的主缓存NVRAM故障,则尝试从其他缓存副本中获取页;所述缓存复制中,数据页同步地从主缓存被复制到其他缓存。
CN201810672195.2A 2018-06-26 2018-06-26 一种超融合多副本加速存储系统 Pending CN110187825A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810672195.2A CN110187825A (zh) 2018-06-26 2018-06-26 一种超融合多副本加速存储系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810672195.2A CN110187825A (zh) 2018-06-26 2018-06-26 一种超融合多副本加速存储系统

Publications (1)

Publication Number Publication Date
CN110187825A true CN110187825A (zh) 2019-08-30

Family

ID=67713473

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810672195.2A Pending CN110187825A (zh) 2018-06-26 2018-06-26 一种超融合多副本加速存储系统

Country Status (1)

Country Link
CN (1) CN110187825A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116149558A (zh) * 2023-02-21 2023-05-23 北京志凌海纳科技有限公司 一种分布式存储双活模式中的副本分配策略系统及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080046538A1 (en) * 2006-08-21 2008-02-21 Network Appliance, Inc. Automatic load spreading in a clustered network storage system
CN104317736A (zh) * 2014-09-28 2015-01-28 曙光信息产业股份有限公司 一种分布式文件系统多级缓存实现方法
CN106850856A (zh) * 2017-03-28 2017-06-13 南京卓盛云信息科技有限公司 一种分布式存储系统及其同步缓存方法
CN107197022A (zh) * 2017-06-02 2017-09-22 华南理工大学 OpenStack存储优化方法及系统
CN107301022A (zh) * 2017-06-27 2017-10-27 北京溢思得瑞智能科技研究院有限公司 一种基于容器技术的存储访问方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080046538A1 (en) * 2006-08-21 2008-02-21 Network Appliance, Inc. Automatic load spreading in a clustered network storage system
CN104317736A (zh) * 2014-09-28 2015-01-28 曙光信息产业股份有限公司 一种分布式文件系统多级缓存实现方法
CN106850856A (zh) * 2017-03-28 2017-06-13 南京卓盛云信息科技有限公司 一种分布式存储系统及其同步缓存方法
CN107197022A (zh) * 2017-06-02 2017-09-22 华南理工大学 OpenStack存储优化方法及系统
CN107301022A (zh) * 2017-06-27 2017-10-27 北京溢思得瑞智能科技研究院有限公司 一种基于容器技术的存储访问方法及系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116149558A (zh) * 2023-02-21 2023-05-23 北京志凌海纳科技有限公司 一种分布式存储双活模式中的副本分配策略系统及方法
CN116149558B (zh) * 2023-02-21 2023-10-27 北京志凌海纳科技有限公司 一种分布式存储双活模式中的副本分配策略系统及方法

Similar Documents

Publication Publication Date Title
US10523786B2 (en) I/O bandwidth reduction using storage-level common page information
US10360120B2 (en) High availability failover manager
CN106716377B (zh) 在分布式储存系统中的快照的同步
CN104049918B (zh) 一种双控存储服务器的缓存管理方法
US7882304B2 (en) System and method for efficient updates of sequential block storage
CN110226157A (zh) 用于减少行缓冲冲突的动态存储器重新映射
CN107391391B (zh) 在固态硬盘的ftl实现数据拷贝的方法、系统及固态硬盘
WO2020204880A1 (en) Snapshot-enabled storage system implementing algorithm for efficient reclamation of snapshot storage space
US9047195B2 (en) Computer system with virtualization mechanism and management table, cache control method and computer program
CN105980991A (zh) 在多个计算节点之间的存储资源共享
JP2003162377A (ja) ディスクアレイシステム及びコントローラ間での論理ユニットの引き継ぎ方法
US10146696B1 (en) Data storage system with cluster virtual memory on non-cache-coherent cluster interconnect
US9916249B2 (en) Space allocation in a multi-grained writeback cache
US20160098302A1 (en) Resilient post-copy live migration using eviction to shared storage in a global memory architecture
US10114566B1 (en) Systems, devices and methods using a solid state device as a caching medium with a read-modify-write offload algorithm to assist snapshots
WO2019049224A1 (ja) 分散ストレージシステム及び分散記憶制御方法
US10346077B2 (en) Region-integrated data deduplication
US20210208786A1 (en) Implementing coherency and page cache support in a distributed way for files
CN110187825A (zh) 一种超融合多副本加速存储系统
CN116009761A (zh) 一种数据写入方法以及相关设备
Anderson et al. Assise: performance and availability via NVM colocation in a distributed file system
US20230236759A1 (en) Scanning pages of shared memory
US11074003B2 (en) Storage system and restoration method
US20140188952A1 (en) Reading data without an indirection logical reference identifier in a system that uses indirection access
US7657717B1 (en) Coherently sharing any form of instant snapshots separately from base volumes

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