一种存储系统、存储节点和数据存储方法技术方案

技术编号:27740383 阅读:20 留言:0更新日期:2021-03-19 13:33
一种存储系统、存储节点和数据存储方法。所述存储系统包括多个计算节点和多个存储节点,每个存储节点包括硬盘。客户端将待存储数据写入第一计算节点的内存,并将所述待存储数据的日志写入第一存储节点的第一访问地址对应的存储空间,从而实现了所述待存储数据的存储。另外,在第一存储节点内部无需将所述第一访问地址转换为其他地址,而是将所述第一访问地址转发给所述第一访问地址所属的第一硬盘,由所述第一硬盘基于所述第一访问地址存储所述日志。和现有技术相比,由于不需要转换访问地址,因此缩短了数据访问路径。

【技术实现步骤摘要】
一种存储系统、存储节点和数据存储方法
本申请涉及存储
,特别是一种存储系统、存储节点和数据存储方法。
技术介绍
目前的存储系统通常包含多个存储节点,各个存储节点之间通过以太网互联。在每个存储节点内部设置有处理器、内存等计算资源。这些计算资源用于执行空间管理、地址转换、数据读写等操作。另外,每个存储节点还包括若干硬盘。硬盘用于存储数据,来自各个应用的用户数据存储在这些硬盘中。然而,在现有的存储系统架构中,存储节点对应用来说是不可见的。存储节点和应用之间还具有存储服务层,存储服务层用于对用户数据的元数据进行管理、增值服务、将硬盘提供的物理空间进行虚拟化等操作。因此,当应用触发一个数据访问请求时,该数据访问请求需穿越存储服务层和存储节点内部的计算资源才能到达硬盘。数据访问请求的路径过长,导致访问数据所需的时间过长。
技术实现思路
本申请提供一种存储系统、存储节点和数据存储方法,可以在一定程度上缩短数据访问路径,加快数据存取的速度。本申请第一方面提供了一种存储系统,包括多个计算节点和多个存储节点。每个计算节点包括内存,本文档来自技高网...

【技术保护点】
1.一种存储系统,其特征在于,包括多个计算节点和多个存储节点,每个计算节点包括内存,每个存储节点包括一个或多个硬盘;/n所述多个计算节点中的第一计算节点,用于:/n接收客户端发送的写数据请求,所述写数据请求包括应用有关的待存储数据;/n将所述待存储数据写入所述第一计算节点的内存中;/n所述多个存储节点中的第一存储节点,用于:/n接收所述客户端发送的第一写指令,所述第一写指令包括所述待存储数据的日志,以及所述第一计算节点为所述待存储数据的日志分配的第一存储对象的访问地址;/n解析所述第一写指令以获得所述待存储数据的日志和所述第一存储对象的访问地址;/n将所述待存储数据的日志和所述第一存储对象的访...

【技术特征摘要】
20190918 CN 20191088366541.一种存储系统,其特征在于,包括多个计算节点和多个存储节点,每个计算节点包括内存,每个存储节点包括一个或多个硬盘;
所述多个计算节点中的第一计算节点,用于:
接收客户端发送的写数据请求,所述写数据请求包括应用有关的待存储数据;
将所述待存储数据写入所述第一计算节点的内存中;
所述多个存储节点中的第一存储节点,用于:
接收所述客户端发送的第一写指令,所述第一写指令包括所述待存储数据的日志,以及所述第一计算节点为所述待存储数据的日志分配的第一存储对象的访问地址;
解析所述第一写指令以获得所述待存储数据的日志和所述第一存储对象的访问地址;
将所述待存储数据的日志和所述第一存储对象的访问地址转发给所述第一存储节点包括的第一硬盘;
所述第一硬盘用于根据所述第一存储对象的访问地址将所述待存储数据的日志写入所述第一存储对象对应的存储空间。


2.根据权1所述的存储系统,其特征在于,
所述第一计算节点,还用于:
为所述待存储数据的日志分配所述第一存储对象,所述第一存储对象的访问地址包括所述第一存储对象的标识以及所述第一存储对象的偏移量;
将所述第一存储对象的访问地址发送给所述客户端。


3.根据权2所述的存储系统,其特征在于,所述第一硬盘具有对象语义接口。


4.根据权1所述的存储系统,其特征在于,
所述第一计算节点,还用于:
在将所述待存储数据写入所述第一计算节点的内存中之后,向所述客户端发送第一响应消息,所述第一响应消息用于指示所述待存储数据已写入所述内存;
所述第一存储节点,还用于:
在所述待存储数据的日志被写入所述第一硬盘之后,向所述客户端发送第二响应消息,所述第二响应消息用于指示所述待存储数据的日志已写入所述第一硬盘;
所述客户端,还用于:
在接收所述第一响应消息和所述第二响应消息之后,向所述应用反馈所述待存储数据已保存。


5.根据权1所述的存储系统,其特征在于,
所述第一计算节点,还用于:
当所述第一计算节点的内存中写入的数据总量达到预设阈值时,将所述数据的部分或全部作为待搬移数据写入所述多个存储节点。


6.根据权5所述的存储系统,其特征在于,所述待搬移数据包括所述待存储数据;
所述第一计算节点,具体用于:
为所述待存储数据分配第二存储对象;
向所述第一存储节点发送第二写指令,所述第二写指令包括所述待存储数据以及所述第二存储对象的访问地址,所述第二存储对象的访问地址包括所述第二存储对象的标识以及所述第二存储对象的偏移量;
所述第一存储节点,还用于:
接收所述第二写指令;
解析所述第二写指令以获得所述待存储数据和所述第二存储对象的访问地址;
将所述待存储数据和所述第二存储对象的访问地址转发给所述第一硬盘;
所述第一硬盘还用于根据所述第二存储对象的访问地址将所述待存储数据写入所述第二存储对象对应的存储空间。


7.根据权6所述的存储系统,其特征在于,
所述第一存储节点,还用于:
在所述第一硬盘将所述待存储数据写入所述第二存储对象对应的存储空间之后,删除写入所述第一存储对象对应的存储空间中的所述待存储数据的日志。


8.一种存储节点,其特征在于,包括网卡和一个或多个硬盘,
所述网卡,用于:
接收第一写指令,所述第一写指令包括待存储数据的日志,以及为所述待存储数据的日志分配的第一存储对象的访问地址;
向第一硬盘转发所述待存储数据的日志和所述第一存储对象的访问地址,所述第一硬盘是所述一个或多个硬盘中的一个硬盘,所述第一存储对象的访问地址位于所述第一硬盘中;
所述第一硬盘,用于根据所述第一存储对象的访问地址,将所述待存储数据的日志写入所述第一存储对象对应的存储空间。


9.根据权8所述的存储节点,其特征在于,
所述网卡,还用于:
接收第二写指令,所述第二写指令包括所述待存储数据以及为所述待存储数据分配的第二存储对象的访问地址,所述第二存储对象的访问地址包括所述第二存储对象的标识以及所述第二存储对象的偏移量;
将所述待存储数据和所述第二存储对象的访问地址转发给所述第一硬盘;
所述第一硬盘还用于根据所述第二存储对象的访问地址将所述待存储数据写入所述第二存储对象对应的存储空间。


10.根据权8或权9所述的存储节点,其特征在于,所述第一存储对象的访问地址或所述第二存储对象的访问地址还包括硬盘的标识;
所述网卡,还用于根据所述硬盘的标识,从所述一个或多个硬盘中确定所述第一硬盘。


11.一种存储系统,其特征在于,包括多个计算节点和多个存储节点,每个存储节点包括一个或多个硬盘;
所述多个计算节点中的第一计算节点,用于:
接收客户端发送的读数据请求,所述读数据请求用于请求读取待读取数据;
获取所述待读取数据对应的访问地址;
向所述多个存储节点中的第一存储节点发送读指令,所述读指令包括所述访问地址,所述访问地址为所述第一存储节点包括的第一硬盘中的一个访问地址;
所述多个存储节点中的第一存储节点,用于:
接收所述读指令;
基于所述访问地址从所述第一硬盘中读取所述待读取数据;
向所述客户端返回所述待读取数据。


12.根据权11所述的系统,其特征在于,所述读数据请求包括所述待读取数据的逻辑地址,所述第一计算节点中保存有所述逻辑地址与所述访问地址之间的对应关系;
所述第一计算节点获取所述待读取数据对应的访问地址,具体用于:
根据所述逻辑地址以及所述逻辑地址与所述访问地址之间的对应关系,获得所述访问地址。


13.根据权11或12所述的系统,其特征在于,所述访问地址包括所述第一计算节点为所述待读取数据的分配的存储对象的标识以及所述存储对象的偏移量,,所述存储对象的偏移量用于指示所述待读取数据位于所述存储对象内的位置。


14.根据权11所述的系统,其特征在于,所述第一存储节点基于所述访问地址从所述第一硬盘中读取所述待读取数据,具体用于:
将所述读指令转发给所述第一硬盘,所述第一硬盘基于所述访问地址读取所述待读取数据,所述第一硬...

【专利技术属性】
技术研发人员:何益罗四维程韬李立
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

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

1