CN110515555A - 基于多路对象存储服务的高可靠性企业级存储系统及读写方法 - Google Patents

基于多路对象存储服务的高可靠性企业级存储系统及读写方法 Download PDF

Info

Publication number
CN110515555A
CN110515555A CN201910784630.5A CN201910784630A CN110515555A CN 110515555 A CN110515555 A CN 110515555A CN 201910784630 A CN201910784630 A CN 201910784630A CN 110515555 A CN110515555 A CN 110515555A
Authority
CN
China
Prior art keywords
node
read
write
data
storage service
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.)
Granted
Application number
CN201910784630.5A
Other languages
English (en)
Other versions
CN110515555B (zh
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.)
Hangzhou Qianyun Data Technology Co Ltd
Original Assignee
Hangzhou Qianyun Data Technology 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 Hangzhou Qianyun Data Technology Co Ltd filed Critical Hangzhou Qianyun Data Technology Co Ltd
Publication of CN110515555A publication Critical patent/CN110515555A/zh
Application granted granted Critical
Publication of CN110515555B publication Critical patent/CN110515555B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • 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/0629Configuration or reconfiguration of storage systems
    • 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/0671In-line storage system

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

本发明涉及基于多路对象存储服务的高可靠性企业级存储系统及读写方法。高可靠性企业级存储系统,包括一个由m个本地存储节点和n个对象存储服务虚拟节点组成的可动态自调节的存储系统、NPave接口转换系统和读写客户端,读写客户端通过NPave接口转换系统读写可动态自调节的存储系统中的数据,可动态自调节的存储系统会从对象读写缓冲区获取数据,并基于纠删码算法对数据进行分片,并把分片好的数据同时通过ISCSI接口将部分对象写入本地节点和通过RESTFUL API将另外部分对象写入对象存储服务虚拟节点。本发明提高了数据读写的效率,防止数据丢失,减少对互联网的依赖性,降低流量费用。

Description

基于多路对象存储服务的高可靠性企业级存储系统及读写 方法
技术领域
本发明涉及一种基于多路对象存储服务的高可靠性企业级存储系统及读写方法。
背景技术
随着社会经济的不断发展,特别是近几年,数据正在爆发式地不断增长,社会上各行各业都面临着巨大的数据文件需要进行存储。同时,在如何以低成本、高可靠和高可用性的方式来进行数据文件存储,成为了大多数企业的难题。
如果要达到高可靠和高可用性,往往需要对数据文件进行多副本存储,那么企业需要购买容量数倍于数据文件大小的存储服务器部署在企业机房内部。同时,为了防止单个机房的电源或者环境故障带来的数据损失,企业还需要在不同的地点建立2个或以上的机房来部署更多的存储服务器。
对象存储服务是由网络服务商提供的一种海量、弹性、高可用、高性价比的存储服务,是一项面向Internet访问的服务,提供了基于HTTP/HTTPS协议的Web服务接口,用户可以随时随地在任意可以连接至Internet的电脑上,通过接口调用来访问和管理存储在对象存储服务中的数据。目前,我们国内涌现了多家优秀的互联网公司提供的对象存储服务。对象存储服务把存储作为一种服务资源进行按需付费,即使用多少存储支付多少费用,用户只需花极少的钱就可以获得一个几乎无限的存储空间,可以随时根据需要调整对资源的占用,并只需为真正使用的资源付费。
当然,对象存储服务在带给客户便利和经济的同时,也存在如下的问题:
A、由于对象存储服务是由第三方互联网公司以服务的方式提供,那么用户对于存储的介质并没有掌控的力度,也就是说服务的好坏取决于购买的那家服务提供商的供给能力,如果服务提供商的供给能力出现问题,会导致数据出现丢失或者无法获取的情况。
B、由于对象存储是面向Internet访问的服务,因此它重度依赖互联网,也就是说用户企业内部采用对象存储提供的存储应用会因为网络原因导致无法使用。
C、同样对象存储是面向Internet访问的服务,对象存储服务商往往会对数据读取时产生的网络流量进行收费,如果不加以控制和处理,将会使企业面临巨额的流量账单。
另一方面,对于我们存储在纠删码权重值动态确定的过程中,我们主要关心的是网络延时和抖动。因为我们在纠删码分片写入的过程中采用的是tcp协议写入,所以网络延时和稳定性在很大程度上决定了我们每个节点写入的能力。
探测发生以时间为周期,独立于存储的分片写入线程,每次探测都会最终形成一个结果报告,依据此报告进行处理。每次探测对于每个节点会有三种结果:1、节点完全断开(即探测结果为回包在超时时间内没有到达)。2、节点在超时时间内响应,这里就需要进一步计算响应时间。3、本次探测排除该节点,通常来说这个节点是落在“坏节点”隔离区域。
如果按照最常规的做法,那么就是每次根据探测报告,按照响应时间排序,时间越短权值越高。但是如果这样做,会出现以下情况:1、如果为了节约开销,当一个节点被移入“坏节点”隔离区以后将不再被探测。这样做会导致节点无法动态恢复,不适合生产环境中网络出现抖动的情况。2、如果无论节点是否被移入“坏节点”隔离区,对所有节点一视同仁,同样周期性探测,这样会对系统产生不必要的开销。3、当一个节点一次探测响应超时就被移入“坏节点”隔离区,那么下次计算纠删码时就会先排除这个节点,但是网络超时的可能性有很多,不能因为一个周期的探测失败就确定它是“坏节点”。
发明内容
针对现有技术存在的问题,本发明提供一种基于多路对象存储服务的高可靠性企业级存储系统及读写方法,提高了数据读写的效率,防止数据丢失,减少对互联网的依赖性,降低流量费用。
本发明采取的技术方案是:基于多路对象存储服务的高可靠性企业级存储系统,其特征在于包括m个本地存储节点和n个对象存储服务虚拟节点组成的可动态自调节的存储系统、NPave接口转换系统和读写客户端,读写客户端依据m个本地存储节点和n个对象存储服务虚拟节点组成的可动态自调节的存储系统中读写数据,
读写客户端通过NPave接口转换系统读写由m个本地存储节点和n个对象存储服务虚拟节点组成的可动态自调节的存储系统中的数据,所述的NPave接口转换系统包括POSIX虚拟文件系统服务模块,POSIX虚拟文件系统服务模块连接文件读写缓冲模块,文件读写缓冲模块通过Linux内核接口连接NPave用户态文件系统模块,NPave用户态文件系统模块将数据拆分为散列的对象,并将对象的元数据信息记录在对象元数据数据库中,然后把对象通过Linux XFS文件系统接口投递到对象读写缓冲区。接下来,所述的由m个本地存储节点和n个对象存储服务虚拟节点组成的可动态自调节的存储系统会从对象读写缓冲区获取数据,并基于纠删码算法对数据进行分片,并把分片好的数据同时通过ISCSI接口将部分对象写入本地节点和通过RESTFUL API将另外部分对象写入对象存储服务虚拟节点。
所述的m个本地存储节点和n个对象存储服务存储节点组成的可动态自调节的存储系统是基于一种动态调节权重的纠删码算法,该算法核心是建一个权重环,并基于权重环中各个节点的权重,把根据纠删码进行分片的对象数据完成最终的对应节点写入和读取,权重环表示的是读写优先权重,动态进行自调节是指权重环被分为三个区域:完美区、正常区和隔离区,其中完美区通常是本地节点,因为这些本地节点读写响应最为迅速。每个区的刻度根据实际网络和节点个数分布情况调节,每次加入一个新的节点时,节点处于正常区刻度正中心,每经过一次探测,利用如下公式进行计算:step=(该节点探测延时/平均延时)*时间加权+(该节点探测次数/探测总次数)*次数加权;step如果大于1,那么向隔离区方向前进一个刻度,反之向完美区前进一个刻度。
当节点处于正常区时,探测周期设定为30秒,当节点步入完美区时,探测周期小于30秒,隔离区探测周期大于30秒。当节点处于正常区时,探测周期设定为30秒,当节点步入完美区时,探测周期相应减少为15秒。因为,完美区的节点在读写时是作为优先读写节点,因此需要较高的响应速度。反之,当节点步入隔离区时,为了减少因为不断无效探测影响正常网络质量,将隔离区探测周期增加至5分钟,直到隔离区节点步入正常区。节点在完美区和隔离区的step计算方法和在正常区没有区别,只是完美区和隔离区的step步进方向不像正常区是向两个方向,它们的步进方向只有一个就是向正常区步进。
所述节点探测的周期采用tcp带负载的ping,然后根据各个节点通过网络进行响应的网络延时。
将m个本地存储节点和n个对象存储服务虚拟节点建立带权重拓扑的一致性散列分布,本地实际存储节点通常处于权重环的完美区,其权重为1,对象存储服务虚拟节点即通过对象存储服务虚拟出来的节点,通常处于权重环的正常区,其权重值为大于0且小于1,处于权重环的隔离区的节点权重为0,1表示读写最优选择,0表示最差选择,读写客户端连接读写代理模块,读写代理模块进行hash计算,计算得到的hash值可以定位出由哪些节点进行文件的读取。
所述的RESTFUL API客户端与对象存储服务虚拟节点之间的传输为加密传输。
所述的本地存储节点间采用内网高速通讯,n个对象存储服务虚拟存储节点由n个不同服务提供商提供对象存储服务。
上述企业级存储系统的读写方法是客户端首先将读写请求发送给读写代理,读写代理根据文件的全路径进行hash计算,计算得到的hash值可以定位出由哪一个节点进行文件的接收或读取;
当文件被某一个完美区节点接收以后,这个节点负责将文件拆分为m片,然后分别将这m片的数据写入到权重环中位于完美区的m个节点中(包括自己),m分片数据写入完成后,此节点负责将完成信号提交给NPave校验补偿计算模块,NPave校验补偿计算模块根据编码矩阵和分块数据做乘法,计算出n个校验片,并把这个n个校验片写入到剩余的节点中,一个文件的写入过程完成;
当这个节点接受了文件读取请求后,节点根据权重在权重环完美区和正常区找到任意m个节点,然后把读取请求发送这m个节点,最后将获取到的m个分片数据进行组合,并将组合得到的结果通过读写代理返回给客户端,一个文件的读取过程完成。
客户端通过NPave接口转换系统读取对象存储服务数据的方法是通过读取接口提交到POSIX虚拟文件系统服务模块,POSIX虚拟文件系统服务模块先从读写缓冲区查找是否存在缓存,如果存在就直接返回数据,如果不存在则进一步将请求通过Linux内核接口提交到NPave用户态文件系统模块,NPave用户态文件系统模块根据对象元数据数据库,将数据请求映射为散列对象请求并将对象请求通过Linux XFS文件系统接口投递到对象读写缓冲区,如果对象读写缓冲区存在这些散列对象缓存则直接返回,否则从m个本地存储节点和n个对象存储服务虚拟节点组成的可动态自调节的存储系统中获取对象数据,最后通过上述一系列模块向客户端返回。
本发明采用企业内部存储服务器和多路对象存储服务结合的方法来构建企业低成本、高可靠和高可用性存储。在NPave接口转换系统增加的缓冲机制使得NPave接口转换系统不仅仅可以实现协议转换,还可以有效地抵御由于网络短时间出现抖动问题而带来的存储中数据不可用的情况。
通过建立一个基于纠删码算法的高可靠性存储,并通过强弱一致性结合的方法确保系统的可用性。在写入时,采用强弱一致性结合的方法,尽可能先将数据分片写入权重高的节点,并在分片写入完成后就反馈客户端写入成功的结果。同时,由后台运行的NPave校验补偿计算模块继续完成计算校验片和写入校验片的过程。这既保证了写入的性能,又保证了数据的冗余性。在读取时,也尽可能地选取权重高的节点来获取数据,既保证了读取性能,又保证了在有个别节点宕机的情况下也能成功获取数据。
附图说明
图1是本发明的NPave接口转换系统的原理结构示意图。
图2是本发明的文件写入的结构示意图。
图3是权重环的结构示意图。
具体实施方式
下面结合附图,对本发明的技术方案作进一步说明:
基于多路对象存储服务的高可靠性企业级存储系统,包括m个本地存储节点和n个对象存储服务虚拟节点组成的可动态自调节的存储系统、NPave接口转换系统和读写客户端,读写客户端依据m个本地存储节点和n个对象存储服务虚拟节点组成的可动态自调节的存储系统中读写数据。
读写客户端通过NPave接口转换系统读写对象存储服务存储节点中的数据,所述的NPave接口转换系统包括POSIX虚拟文件系统服务模块,POSIX虚拟文件系统服务模块连接文件读写缓冲模块,文件读写缓冲模块通过Linux内核接口连接NPave用户态文件系统模块,NPave用户态文件系统模块将数据拆分为散列的对象,并将对象的元数据信息记录在对象元数据数据库中,然后把对象通过Linux XFS文件系统接口投递到对象读写缓冲区。接下来,所述的由m个本地存储节点和n个对象存储服务虚拟节点组成的可动态自调节的存储系统会从对象读写缓冲区获取数据,并基于纠删码算法对数据进行分片,并把分片好的数据同时通过ISCSI接口将部分对象写入本地节点和通过RESTFUL API将另外部分对象写入对象存储服务虚拟节点。
如图3所示,所述的m个本地存储节点和n个对象存储服务存储节点组成的可动态自调节的存储系统是基于一种动态调节权重的纠删码算法,该算法核心是建一个权重环,并基于权重环中各个节点的权重,把根据纠删码进行分片的对象数据完成最终的对应节点写入和读取,权重环表示的是读写优先权重。动态进行自调节是指权重环被分为三个区域:完美区、正常区和隔离区,其中完美区通常是本地节点,因为这些本地节点读写响应最为迅速。每个区的刻度根据实际网络和节点个数分布情况调节,每次加入一个新的节点时,节点处于正常区刻度正中心,经过一次探测,利用如下公式进行计算:step=(该节点探测延时/平均延时)*时间加权+(该节点探测次数/探测总次数)*次数加权;step如果大于1,那么向隔离区方向前进一个刻度,反之向完美区前进一个刻度。
当节点处于正常区时,探测周期设定为30秒,当节点步入完美区时,探测周期相应减少为15秒。因为,完美区的节点在读写时是作为优先读写节点,因此需要较高的响应速度。反之,当节点步入隔离区时,为了减少因为不断无效探测影响正常网络质量,将隔离区探测周期增加至5分钟,直到隔离区节点步入正常区。节点在完美区和隔离区的step计算方法和在正常区没有区别,只是完美区和隔离区的step步进方向不像正常区是向两个方向,它们的步进方向只有一个就是向正常区步进。所述节点探测的周期采用tcp带负载的ping,然后根据各个节点通过网络进行响应的网络延时。
将m个本地存储节点和n个对象存储服务存储节点建立带权重拓扑的一致性散列分布,本地实际存储节点大多数处于完美区,权重为1,虚拟节点大多处于正常区,权重值为大于0且小于1,1表示读写最优选择,0表示最差选择,读写客户端连接读写代理模块,读写代理模块进行hash计算,计算得到的hash值可以定位出由哪些节点进行文件的读取。权重完全由用户根据对象存储服务的质量而定,质量高的接近于1,质量低的接近于0.5。权重表示优先选择,1表示读写最优选择,0表示最差选择。这样,m+n个几点就形成了一个均匀分布的,每个节点都带有自身权重的散列环。
如图1所示,客户端通常来讲是一个标准的POSIX文件系统的客户端,后端的所有转换过程对这个客户端是透明的。POSIX虚拟文件系统服务模块是一个标准的POSIX文件接口的实现,不需要客户端对后台有任何感知,那么POSIX文件系统客户端会通过标准的POSIX文件系统接口向NPave接口转换系统写入数据,写入数据的请求首先通过标准POSIX写入接口提交到POSIX虚拟文件系统服务模块。POSIX虚拟文件系统服务模块先将数据写入到文件读写缓冲区中,缓冲区在数据达到阈值后通过Linux内核接口写入数据到NPave用户态文件系统模块。
NPave用户态文件系统模块将数据拆分为散列的对象,并将对象的元数据信息记录在对象元数据数据库中,然后把对象通过Linux XFS文件系统接口投递到对象读写缓冲区,最后除了由本地节点存储的分片数据之外,其余分片数据由RESTFUL API客户端把对象并发多线程上传到对象存储服务中。
同时,我们考虑到企业的数据往往都是企业的重要资产,因此在上传过程中,我们需要对上传数据流进行加密,以保证无论在互联网传输过程中以及在数据被对象存储服务存储的期间里面,企业数据不会有被流失的风险。
反之,客户端通过标准的POSIX文件系统接口向NPave接口转换系统读取数据时,请求首先通过读取接口提交到POSIX虚拟文件系统服务模块,POSIX虚拟文件系统服务模块先从读写缓冲区查找是否存在缓存,如果存在就直接返回数据,如果不存在则进一步将请求通过Linux内核接口提交到NPave用户态文件系统模块。NPave用户态文件系统模块根据对象元数据数据库,将数据请求映射为散列对象请求并将对象请求通过Linux XFS文件系统接口投递到对象读写缓冲区,如果对象读写缓冲区存在这些散列对象缓存则直接返回,否则由m个本地存储节点和n个对象存储服务虚拟节点组成的可动态自调节的存储系统中获取对象数据,最后通过上述一系列模块向客户端返回。
通过上述过程这样一个转换过程,我们就可以把申请到的对象存储服务虚拟化成了对标准POSIX文件读写透明的存储节点。而且,我们增加的缓冲机制使得NPave接口转换系统不仅仅可以实现协议转换,还可以有效地抵御由于网络短时间出现抖动问题而带来的存储中数据不可用的情况。如此一来,加上本地的m个存储节点,我们就获得了m+n个存储节点,接下来就可以利用这些节点实现多存储节点冗余读写。
如图2所示,上述企业级存储系统的读写方法是由客户端首先将读写请求发送给读写代理,读写代理根据文件的全路径进行hash计算,计算得到的hash值可以定位出由哪一个节点进行文件的接收或读取;
当文件被某一个完美区节点接收以后,这个节点负责将文件拆分为m片,然后分别将这m片的数据写入到权重环中位于完美区的m个节点中(包括自己),m分片数据写入完成后,此节点负责将完成信号提交给NPave校验补偿计算模块,NPave校验补偿计算模块根据编码矩阵和分块数据做乘法,计算出n个校验片,并把这个n个校验片写入到剩余的节点中,一个文件的写入过程完成;
当这个节点接受了文件读取请求后,节点根据权重在权重环完美区和正常区找到任意m个节点,然后把读取请求发送这m个节点,最后将获取到的m个分片数据进行组合,并将组合得到的结果通过读写代理返回给客户端,一个文件的读取过程完成。
本发明采用企业内部存储服务器和多路对象存储服务结合的方法来构建企业低成本、高可靠和高可用性存储。在NPave接口转换系统增加的缓冲机制使得NPave接口转换系统不仅仅可以实现协议转换,还可以有效地抵御由于网络短时间出现抖动问题而带来的存储中数据不可用的情况。
通过建立一个基于动态调节权重的纠删码算法的高可靠性存储,并通过强弱一致性结合的方法确保系统的可用性。在写入时,采用强弱一致性结合的方法,尽可能先将数据分片写入权重高的节点,并在分片写入完成后就反馈客户端写入成功的结果。同时,由后台运行的NPave校验补偿计算模块继续完成计算校验片和写入校验片的过程。这既保证了写入的性能,又保证了数据的冗余性。在读取时,也尽可能地选取权重高的节点来获取数据,既保证了读取性能,又保证了在有个别节点宕机的情况下也能成功获取数据。

Claims (8)

1.基于多路对象存储服务的高可靠性企业级存储系统,其特征在于包括一个由m个本地存储节点和n个对象存储服务虚拟节点组成的可动态自调节的存储系统、NPave接口转换系统和读写客户端,读写客户端通过NPave接口转换系统读写由m个本地存储节点和n个对象存储服务虚拟节点组成的可动态自调节的存储系统中的数据,
所述的NPave接口转换系统包括POSIX虚拟文件系统服务模块,POSIX虚拟文件系统服务模块连接文件读写缓冲模块,文件读写缓冲模块通过Linux内核接口连接NPave用户态文件系统模块,NPave用户态文件系统模块将数据拆分为散列的对象,并将对象的元数据信息记录在对象元数据数据库中,然后把对象通过Linux XFS文件系统接口投递到对象读写缓冲区;
可动态自调节的存储系统会从对象读写缓冲区获取数据,并基于纠删码算法对数据进行分片,并把分片好的数据同时通过ISCSI接口将部分对象写入本地节点和通过RESTFULAPI将另外部分对象写入对象存储服务虚拟节点。
2.根据权利要求1所述的基于多路对象存储服务的高可靠性企业级存储系统,其特征在于所述的m个本地存储节点和n个对象存储服务存储节点组成的可动态自调节的存储系统是基于一种动态调节权重的纠删码算法,该算法核心是建一个权重环,并基于权重环中各个节点的权重,把根据纠删码进行分片的对象数据完成最终的对应节点写入和读取,权重环表示的是读写优先权重,动态进行自调节是指权重环被分为三个区域:完美区、正常区和隔离区,每个区的刻度根据实际网络和节点个数分布情况调节,每次加入一个新的节点时,节点处于正常区刻度正中心,每经过一次探测,利用如下公式进行计算:step=(该节点探测延时/平均延时)*时间加权+(该节点探测次数/探测总次数)*次数加权;step如果大于1,那么向隔离区方向前进一个刻度,反之向完美区前进一个刻度。
3.根据权利要求2所述的基于多路对象存储服务的高可靠性企业级存储系统,其特征在于当节点处于正常区时,探测周期设定为30秒,当节点步入完美区时,探测周期远小于30秒,隔离区探测周期远大于30秒。
4.根据权利要求3所述的基于多路对象存储服务的高可靠性企业级存储系统,其特征在于所述节点探测的周期采用tcp带负载的ping,然后根据各个节点通过网络进行响应的网络延时。
5.根据权利要求4所述的基于多路对象存储服务的高可靠性企业级存储系统,其特征在于将m个本地存储节点和n个对象存储服务虚拟节点建立带权重拓扑的一致性散列分布,本地实际存储节点通常处于权重环的完美区,其权重为1,对象存储服务虚拟节点即通过对象存储服务虚拟出来的节点,通常处于权重环的正常区,其权重值为大于0且小于1,处于权重环的隔离区的节点权重为0,1表示读写最优选择,0表示最差选择,读写客户端连接读写代理模块,读写代理模块进行hash计算,计算得到的hash值可以定位出由哪些节点进行文件的读取。
6.根据权利要求1所述的基于多路对象存储服务的高可靠性企业级存储系统,其特征在于所述的RESTFUL API客户端与对象存储服务虚拟节点之间的传输为加密传输。
7.根据权利要求1所述的基于多路对象存储服务的高可靠性企业级存储系统,其特征在于所述的本地存储节点间采用内网高速通讯,n个对象存储服务虚拟节点基于n个不同服务提供商提供对象存储服务。
8.根据权利要求2所述的企业级存储系统的读写方法,其特征在于客户端首先将读写请求发送给读写代理,读写代理根据文件的全路径进行hash计算,计算得到的hash值可以定位出由哪一个节点进行文件的接收或读取;
当文件被某一个完美区节点接收以后,这个节点负责将文件拆分为m片,然后分别将这m片的数据写入到权重环中位于完美区的m个节点中(包括自己),m分片数据写入完成后,此节点负责将完成信号提交给NPave校验补偿计算模块,NPave校验补偿计算模块根据编码矩阵和分块数据做乘法,计算出n个校验片,并把这个n个校验片写入到剩余的节点中,一个文件的写入过程完成;
当这个节点接受了文件读取请求后,节点根据权重在权重环完美区和正常区找到任意m个节点,然后把读取请求发送这m个节点,最后将获取到的m个分片数据进行组合,并将组合得到的结果通过读写代理返回给客户端,一个文件的读取过程完成。
CN201910784630.5A 2019-05-27 2019-08-23 基于多路对象存储服务的高可靠性企业级存储系统及读写方法 Active CN110515555B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN2019104438588 2019-05-27
CN201910443858 2019-05-27

Publications (2)

Publication Number Publication Date
CN110515555A true CN110515555A (zh) 2019-11-29
CN110515555B CN110515555B (zh) 2023-03-14

Family

ID=68627342

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910784630.5A Active CN110515555B (zh) 2019-05-27 2019-08-23 基于多路对象存储服务的高可靠性企业级存储系统及读写方法

Country Status (1)

Country Link
CN (1) CN110515555B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111857592A (zh) * 2020-07-21 2020-10-30 星辰天合(北京)数据科技有限公司 基于对象存储系统的数据存储方法及装置、电子设备
CN113126920A (zh) * 2021-04-02 2021-07-16 深圳市杉岩数据技术有限公司 对象存储批量读取及写入方法、客户端、存储网关及介质
CN114301931A (zh) * 2022-03-11 2022-04-08 上海凯翔信息科技有限公司 一种基于云端nas的数据同步系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050283649A1 (en) * 2004-06-03 2005-12-22 Turner Bryan C Arrangement in a network for passing control of distributed data between network nodes for optimized client access based on locality
CN102307221A (zh) * 2011-03-25 2012-01-04 国云科技股份有限公司 一种云存储系统及其实现方法
CN103914402A (zh) * 2014-04-17 2014-07-09 华中科技大学 一种基于纠删码缓存的重构优化方法
CN105549905A (zh) * 2015-12-09 2016-05-04 上海理工大学 一种多虚拟机访问分布式对象存储系统的方法
CN105760116A (zh) * 2016-03-10 2016-07-13 天津科技大学 一种多网盘下的增量纠删码存储方法及系统
CN106156289A (zh) * 2016-06-28 2016-11-23 北京百迈客云科技有限公司 一种读写对象存储系统中的数据的方法以及装置
US20170063399A1 (en) * 2015-08-28 2017-03-02 Qualcomm Incorporated Systems and methods for repair redundancy control for large erasure coded data storage

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050283649A1 (en) * 2004-06-03 2005-12-22 Turner Bryan C Arrangement in a network for passing control of distributed data between network nodes for optimized client access based on locality
CN102307221A (zh) * 2011-03-25 2012-01-04 国云科技股份有限公司 一种云存储系统及其实现方法
CN103914402A (zh) * 2014-04-17 2014-07-09 华中科技大学 一种基于纠删码缓存的重构优化方法
US20170063399A1 (en) * 2015-08-28 2017-03-02 Qualcomm Incorporated Systems and methods for repair redundancy control for large erasure coded data storage
CN105549905A (zh) * 2015-12-09 2016-05-04 上海理工大学 一种多虚拟机访问分布式对象存储系统的方法
CN105760116A (zh) * 2016-03-10 2016-07-13 天津科技大学 一种多网盘下的增量纠删码存储方法及系统
CN106156289A (zh) * 2016-06-28 2016-11-23 北京百迈客云科技有限公司 一种读写对象存储系统中的数据的方法以及装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111857592A (zh) * 2020-07-21 2020-10-30 星辰天合(北京)数据科技有限公司 基于对象存储系统的数据存储方法及装置、电子设备
CN113126920A (zh) * 2021-04-02 2021-07-16 深圳市杉岩数据技术有限公司 对象存储批量读取及写入方法、客户端、存储网关及介质
CN114301931A (zh) * 2022-03-11 2022-04-08 上海凯翔信息科技有限公司 一种基于云端nas的数据同步系统

Also Published As

Publication number Publication date
CN110515555B (zh) 2023-03-14

Similar Documents

Publication Publication Date Title
US20210184780A1 (en) Blockchain node synchronization method and device using trust mechanism
US20230109969A1 (en) Data processing method and apparatus based on node internal memory, device and medium
CN110515555A (zh) 基于多路对象存储服务的高可靠性企业级存储系统及读写方法
CN108011929A (zh) 数据请求处理方法、装置、计算机设备和存储介质
CN101916289B (zh) 支持海量小文件和动态备份数的数字图书馆存储系统的构建方法
US9569742B2 (en) Reducing costs related to use of networks based on pricing heterogeneity
CN112559637B (zh) 基于分布式存储的数据处理方法、装置、设备以及介质
CN106933868A (zh) 一种调整数据分片分布的方法及数据服务器
US11799954B2 (en) Intelligent, decentralized and autonomous marketplace for distributed computing and storage
CN113391890A (zh) 一种任务处理方法、装置、设备和计算机存储介质
CN106445409A (zh) 一种分布式块存储的数据写入方法及装置
US20220358106A1 (en) Proxy-based database scaling
CN108206839A (zh) 一种基于多数派数据存储方法、装置及系统
CN111459948B (zh) 一种基于中心化块链式账本的交易完整性验证方法
CN107422989A (zh) 一种Server SAN系统多副本读取方法及存储架构
CN105208096A (zh) 分布式缓存系统和方法
Li et al. NFT content data placement strategy in P2P storage network for permissioned blockchain
CN105095310A (zh) 数据处理方法、第一服务器、第二服务器和数据处理系统
US10481995B1 (en) Methods and systems for measuring user and system metrics
CN113989034B (zh) 银行属性数据管理方法、装置、电子设备及存储介质
CN113688115A (zh) 一种基于Hadoop的档案大数据分布式存储系统
CN110175179A (zh) 数据传输方法及系统、服务节点、存储装置
CN113672161A (zh) 一种存储系统及其建立方法
CN117057799B (zh) 资产数据处理方法、装置、设备及存储介质
WO2022127674A1 (zh) 账户额度的核对方法、装置及核对系统、存储介质

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
GR01 Patent grant
GR01 Patent grant