CN106911743B - 小文件的写聚合、读聚合方法及系统和客户端 - Google Patents
小文件的写聚合、读聚合方法及系统和客户端 Download PDFInfo
- Publication number
- CN106911743B CN106911743B CN201510980277.XA CN201510980277A CN106911743B CN 106911743 B CN106911743 B CN 106911743B CN 201510980277 A CN201510980277 A CN 201510980277A CN 106911743 B CN106911743 B CN 106911743B
- Authority
- CN
- China
- Prior art keywords
- small documents
- ono
- oid
- client
- small
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
Abstract
本发明公开了一种小文件的写聚合方法及系统,该写聚合方法包括:客户端发起小文件的写请求;元数据服务器为小文件分配全局唯一编号ino和存储区域唯一编号ono;客户端根据ino和ono计算小文件在对象存储设备OSD中的聚合位置oid;对象存储设备OSD根据oid将小文件聚合。本发明还公开了一种小文件的读聚合方法和客户端。本发明能够解决耗费较多小文件读取时间和写入时间的问题。
Description
技术领域
本发明涉及分布式存储技术领域,尤其涉及一种小文件的写聚合、读聚合方法及系统。
背景技术
随着云计算、移动互联网等技术的发展,需要存储及读取的数据量日益增大,而不同的数据的存储与读取方式是不同的,如只有数千字节的小文件,广泛采用随机聚合、查表索引的方式来进行存储与读取。由于聚合策略导致小文件在聚合时,需要额外创建这些小文件的映射表,并通过查映射表才能读取这些小文件,因此耗费较多小文件的读取和写入的时间。
发明内容
本发明的主要目的在于提供一种小文件写聚合、读聚合方法及系统,旨在解决在小文件的写聚合和读聚合过程中需要耗费较多读取和写入的时间的问题。
为实现上述目的,本发明提供的一种小文件写聚合方法,包括:
客户端发起小文件的写请求;
元数据服务器为所述小文件分配全局唯一编号ino和存储区域唯一编号ono;
所述客户端根据所述ino和所述ono计算所述小文件在对象存储设备OSD中的聚合位置oid;
所述对象存储设备OSD根据所述oid将小文件聚合。
优选地,所述oid的计算公式为:oid=((ino+ono+1)<<32)|1。
优选地,所述元数据服务器为小文件分配全局唯一编号ino和存储区域唯一编号ono的步骤包括:
元数据服务器按时序递增的分配原则为所述小文件分配全局唯一编号ino;
将预判为在所述聚合位置oid中聚合的N个ino连续的所述小文件分配存储区域唯一编号ono。
优选地,所述对象存储设备OSD根据所述oid将小文件聚合的步骤包括:
所述对象存储设备OSD接收所述客户端发送的小文件写聚合请求;
所述对象存储设备OSD根据所述小文件写聚合请求逐个检测N个ino连续小文件的ono,在所述小文件的ono为负数时,将所述小文件写入编号为oid的对象中的第-ono个区域中。
此外,为实现上述目的,本发明还提供一种小文件写聚合系统,包括:
所述小文件写聚合系统包括:客户端、元数据服务器及对象存储设备OSD,其中,
所述客户端,用于发起小文件的写请求;
所述元数据服务器,用于为小文件分配全局唯一编号ino和存储区域唯一编号ono;
所述客户端,还用于根据所述ino和所述ono计算小文件在所述对象存储设备OSD中的聚合位置oid;
所述对象存储设备OSD,用于根据所述oid将小文件聚合。
优选地,所述oid的计算公式为:oid=((ino+ono+1)<<32)|1。
优选地,所述元数据服务器还用于:
按时序递增的分配原则为所述小文件分配全局唯一编号ino;
将预判为在所述聚合位置oid中聚合的N个ino连续的所述小文件分配存储区域唯一编号ono。
优选地,所述对象存储设备OSD还用于:
所述对象存储设备OSD接收所述客户端发送的小文件写聚合请求;
所述对象存储设备OSD根据所述小文件写聚合请求逐个检测N个ino连续小文件的ono,在所述小文件的ono为负数时,将所述小文件写入编号为oid的对象中的第-ono个区域中。
本发明通过客户端发起小文件的写请求,以供元数据服务器为小文件分配全局唯一编号ino和存储区域唯一编号ono,该客户端根据该ino和该ono计算小文件在对象存储设备OSD中的聚合位置oid,使得该对象存储设备OSD根据该oid将小文件聚合。由于该小文件存储位置的是通过计算获取到的ino和ono而确定,并根据该小文件存储位置写入该小文件,因此不需要额外创建该小文件的映射表,从而解决了耗费较多小文件的写入时间的问题。
为实现上述目的,本发明提供的一种小文件读聚合方法,包括:
客户端发起小文件的读请求;
从元数据服务器获取所述小文件的全局唯一编号ino和存储区域唯一编号ono;
根据所述ino和所述ono计算小文件在对象存储设备OSD中的聚合位置oid;
根据所述oid从所述对象存储设备OSD中获取所述小文件。
优选地,所述oid的计算公式为:oid=((ino+ono+1)<<32)|1。
优选地,在所述客户端发起小文件的读请求的步骤之后,还包括:
检测所述客户端的缓存中是否存在所述小文件;
在所述客户端的缓存中存在所述小文件时,则获取所述小文件;
在所述客户端的缓存中未存在所述小文件时,则执行所述从元数据服务器获取所述小文件的全局唯一编号ino和存储区域唯一编号ono的步骤。
优选地,所述根据所述oid获取所述小文件的步骤包括:
向所述对象存储设备OSD发送读聚合请求;
接收所述对象存储设备OSD发送的所述oid中所有的小文件并保存;
获取所述ono的绝对值对应区域中的小文件。
此外,为实现上述目的,本发明还提供一种客户端,包括:
读请求模块,用于发起小文件的读请求;
编号获取模块,用于从元数据服务器获取所述小文件的全局唯一编号ino和存储区域唯一编号ono;
计算模块,用于根据所述ino和所述ono计算小文件在对象存储设备OSD中的聚合位置oid;
小文件获取模块,用于根据所述oid从所述对象存储设备OSD中获取所述小文件。
优选地,所述oid的计算公式为:oid=((ino+ono+1)<<32)|1。
优选地,所述客户端还包括:
检测模块,用于检测所述客户端的缓存中是否存在所述小文件;
所述小文件获取模块,还用于在所述客户端的缓存中存在所述小文件时,则获取所述小文件;
所述编号获取模块,还用于在所述客户端的缓存中未存在所述小文件时,则从元数据服务器获取所述小文件的全局唯一编号ino和存储区域唯一编号ono。
优选地,所述小文件获取模块包括:
发送单元,用于向所述对象存储设备OSD发送读聚合请求;
接收单元,用于接收所述对象存储设备OSD发送的所述oid中所有的小文件并保存;
获取单元,用于获取所述ono的绝对值对应区域中的小文件。
本发明通过客户端发起小文件的读请求,根据该小文件的读请求从元数据服务器获取小文件的全局唯一编号ino和存储区域唯一编号ono,并根据ino和ono计算小文件在对象存储设备OSD中的聚合位置oid,使得该客户端根据oid从OSD中获取小文件。由于该小文件存储位置的是通过计算获取到的ino和ono而确定,并根据该小文件存储位置读取该小文件,因此不需要通过查映射表来读取该小文件,从而解决了耗费较多小文件读取时间的问题。
附图说明
图1为本发明小文件的写聚合方法的第一实施例的流程示意图;
图2为本发明小文件的写聚合方法的第二实施例中元数据服务器为小文件分配全局唯一编号ino和存储区域唯一编号ono的细化流程示意图;
图3为本发明小文件写聚合方法的第三实施例中对象存储设备OSD根据oid将小文件聚合的细化流程示意图;
图4为本发明小文件写聚合系统的第一实施例的功能模块示意图;
图5为本发明小文件读聚合方法的第一实施例的流程示意图;
图6为本发明小文件读聚合方法的第二实施例的流程示意图;
图7为本发明小文件读聚合方法的第三实施例中根据oid获取小文件的细化流程示意图;
图8为本发明客户端的第一实施例的功能模块示意图;
图9为本发明客户端的第二实施例的功能模块示意图;
图10为本发明客户端的第三实施例中小文件获取模块的细化功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
基于上述问题,本发明提供一种小文件的写聚合方法。
参照图1,图1为本发明小文件的写聚合方法的第一实施例的流程示意图。
在本实施例中,所述小文件的写聚合方法包括:
步骤S10,客户端发起小文件的写请求;
在本实施例中,一个小文件的文件大小小于1MB,客户端发起小文件写请求,客户端将该小文件的内容写入客户端的本地缓存中。
步骤S20,元数据服务器为小文件分配全局唯一编号ino和存储区域唯一编号ono;
在该客户端将该小文件的内容写入该客户端的本地缓存中后,该客户端向元数据服务器发送创建这些小文件的元数据请求,该元数据服务器接收到该请求后,将会为该小文件逐一分配全局唯一编号ino和小文件在对象中的存储区域唯一编号ono,再将该ino及该ono回传给该客户端,该客户端接收该ino和该ono。
步骤S30,客户端根据ino和ono计算小文件在对象存储设备OSD中的聚合位置oid;
在该客户端接收到该元数据服务器回传该ino和该ono后,该客户端通过该oid的计算公式oid=((ino+ono+1)<<32)|1,计算该小文件在对象存储设备OSD中的聚合位置oid,即小文件对象的编号=((小文件的文件编号+小文件在对象中的区域编号+1)<<32)|1,计算出该小文件聚合成对象后,该对象的编号。该oid为该小文件在聚合成对象后,该对象在全局对象中的唯一编号。在同一对象中任一区域的小文件通过计算后得出的oid均相同。该对象存储设备OSD的确定是通过公式OSD_num=HUSH(oid),计算得到的,即对象存储设备的编号=HASH(文件的对象编号),计算出该对象所处的对象存储设备的编号,其中,HUSH泛化了计算机领域常见的、公开的数据分布算法,包括但不限于:平方取中间值、模运算取余、DHT算法、CRUSH算法。
步骤S40,对象存储设备OSD根据oid将小文件聚合。
在计算得到该小文件的oid后,该对象存储设备将具有相同的oid的小文件聚合在同一对象中,分别写入不同区域中。同时,在对象存储设备OSD将该小文件聚合完成后,该对象存储设备向该客户端发送小文件聚合写完成指令,该客户端接收到该小文件聚合写完成指令后,该客户端向元数据服务器发送元数据更新请求更新指令,通知该元数据服务器更新该小文件的元数据信息,以更新该小文件的文件编号、区域编号、小文件的创建时间、小文件的修改时间、访问权限、文件大小。
本实施例通过客户端发起小文件的写请求,以供元数据服务器为小文件分配全局唯一编号ino和存储区域唯一编号ono,该客户端根据该ino和该ono计算小文件在对象存储设备OSD中的聚合位置oid,使得该对象存储设备OSD根据该oid将小文件聚合。由于该小文件存储位置的是通过计算获取到的ino和ono而确定,并根据该小文件存储位置写入该小文件,因此不需要额外创建该小文件的映射表,从而解决了耗费较多小文件的写入时间的问题。
进一步的,基于第一实施例,提出本发明小文件的写聚合方法的第二实施例,在本实施例中,参照图2,上述步骤S20包括:
步骤S21,元数据服务器按时序递增的分配原则为小文件分配全局唯一编号ino;
在本实施例中,在该客户端发起该小文件的写请求后,该客户端向该元数据服务器发送该小文件元数据的创建请求,该元数据服务器根据该小文件元数据的创建请求为该小文件逐一分配全局唯一编号ino,该小文件的全局唯一编号ino的分配顺序是按照时序递增的顺序来分配的,将该元数据服务器中预设的全局唯一编号ino,分配给该小文件中最早创建的小文件,将预设的唯一的小文件的文件编号增加1。该元数据服务器按照小文件的创建时间来分配小文件的全局唯一编号ino,小文件的创建时间越晚,被分配到的小文件的文件编号越大。例如,小文件包括B、C、D、E、F、G、H、I、J、K、L、M,它们的创建时间依次增大,将该元数据服务器中预设的小文件的文件编号2015分配给小文件B,则小文件C的文件编号为2016,则小文件D的文件编号为2017,其中小文件E、F、G、H、I、J、K、L、M的文件编号可以依次类推。
步骤S22,将预判为在聚合位置oid中聚合的N个ino连续的小文件分配存储区域唯一编号ono。
一个对象的内存容量为4MB,一个对象中最多聚合4个小文件,至少要聚合一个小文件,其中,一个对象中分配4个存储区域。在该元数据服务器为该小文件逐一分配该小文件的全局唯一编号ino后,该元数据服务器将具有连续小文件的全局唯一编号ino的4个小文件预判为同一个对象,例如,将(B、C、D、E)、(F、G、H、I)、(J、K、L、M)12个小文件判定分别合并在三个对象中。
需要说明的是,当未聚合完毕的小文件的数量小于预设聚合数量时,将所述未聚合完毕的小文件聚合于同一对象中,并为其对象分配存储区域唯一编号ono。分配原则为:第K个区域中的小文件ono为-k。例如,对小文件B、C、D、E、F、G、H、I、J、K进行聚合,则将(B、C、D、E)、(F、G、H、I)、(J、K)10个小文件分别聚合成三个对象中,其中包含(J、K)2个小文件的对象占用内存大小是4MB。
在该小文件聚合成对象后,该元数据服务器为该小文件逐一分配在该对象中的区域编号。例如,小文件B在对象中的区域编号为-1、小文件C在对象中的区域编号为-2、小文件D在对象中的区域编号为-3、小文件E在对象中的区域编号为-4、小文件F在对象中的区域编号为-1、小文件G在对象中的区域编号为-2、小文件H在对象中的区域编号为-3、小文件I在对象中的区域编号为-4、小文件J在对象中的区域编号为-1、小文件K在对象中的区域编号为-2、小文件L在对象中的区域编号为-3、小文件M在对象中的区域编号为-4。
该元数据服务器逐一为上述小文件创建其他的元数据,如小文件的创建时间、访问权限、最后修改时间、文件大小。
本实施例通过元数据服务器按时序递增的分配原则为小文件分配全局唯一编号ino,并为预判为同一对象的N个ino连续的小文件分配存储区域唯一编号ono。由于该小文件的ino及该ono是按时序递增的原则分配的,并按照区域编号有序聚合在对象中,因此不需要额外创建这些小文件的映射表,从而提高对小文件的效率。
进一步的,基于第一实施例,提出本发明小文件的写聚合方法的第三实施例,在本实施例中,参照图3,上述步骤S40包括:
步骤S41,对象存储设备OSD接收客户端发送的小文件写聚合请求;
在本实施例中,在该客户端确定该小文件将要写入的OSD后,该客户端向该OSD发送该小文件写聚合请求,该OSD接收客户端发送的小文件写聚合请求。
步骤S42,对象存储设备OSD根据小文件写聚合请求逐个检测N个ino连续小文件的ono,在小文件的ono为负数时,将小文件写入编号为oid的对象中的第-ono个区域中。
在该OSD接收客户端发送的小文件写聚合请求,该OSD逐个检测接收到的小文件的ono是否为负数,在确定接收到的小文件的ono为负数后,该OSD通知该OSD中小文件聚合模块对该小文件进行小文件聚合写操作。该小文件聚合模块将连续个ino小文件聚合在同一个对象中;或者,根据该ono的绝对值确定该小文件在该对象的区域,将该小文件写入该小文件的ono的绝对值对应的区域中。
本实施例通过对象存储设备OSD接收客户端发送的小文件写聚合请求,并根据小文件写聚合请求逐个检测N个ino连续小文件的ono,在小文件的ono为负数时,将小文件写入编号为oid的对象中的第-ono个区域中,使得小文件存储位置是定向的、唯一的,从而解决了耗费较多的读写时间的问题。
本发明进一步提供一种小文件的写聚合系统。
参照图4,图4为本发明小文件的写聚合系统的第一实施例的功能模块示意图。
在本实施例中,该系统包括:客户端10、元数据服务器20、对象存储设备OSD 30。
所述客户端10,用于发起小文件的写请求;
在本实施例中,一个小文件的文件大小小于1MB,客户端发起小文件写请求,客户端将该小文件的内容写入客户端的本地缓存中。
所述元数据服务器20,用于为小文件分配全局唯一编号ino和存储区域唯一编号ono;
在该客户端将该小文件的内容写入该客户端的本地缓存中后,该客户端向元数据服务器发送创建这些小文件的元数据请求,该元数据服务器接收到该请求后,将会为该小文件逐一分配全局唯一编号ino和小文件在对象中的存储区域唯一编号ono,再将该ino及该ono回传给该客户端,该客户端接收该ino和该ono。
所述客户端10,还用于根据ino和ono计算小文件在对象存储设备OSD中的聚合位置oid;
在该客户端接收到该元数据服务器回传该ino和该ono后,该客户端通过该oid的计算公式oid=((ino+ono+1)<<32)|1,计算该小文件在对象存储设备OSD中的聚合位置oid,即小文件对象的编号=((小文件的文件编号+小文件在对象中的区域编号+1)<<32)|1,计算出该小文件聚合成对象后,该对象的编号。该oid为该小文件在聚合成对象后,该对象在全局对象中的唯一编号。在同一对象中任一区域的小文件通过计算后得出的oid均相同。该对象存储设备OSD的确定是通过公式OSD_num=HUSH(oid),计算得到的,即对象存储设备的编号=HASH(文件的对象编号),计算出该对象所处的对象存储设备的编号,其中,HUSH泛化了计算机领域常见的、公开的数据分布算法,包括但不限于:平方取中间值、模运算取余、DHT算法、CRUSH算法。
所述对象存储设备OSD 30,用于根据oid将小文件聚合。
在计算得到该小文件的oid后,该对象存储设备将具有相同的oid的小文件聚合在同一对象中,分别写入不同区域中。同时,在对象存储设备OSD将该小文件聚合完成后,该对象存储设备向该客户端发送小文件聚合写完成指令,该客户端接收到该小文件聚合写完成指令后,该客户端向元数据服务器发送元数据更新请求更新指令,通知该元数据服务器更新该小文件的元数据信息,以更新该小文件的文件编号、区域编号、小文件的创建时间、小文件的修改时间、访问权限、文件大小。
所述元数据服务器20,还用于按时序递增的分配原则为小文件分配全局唯一编号ino;
在本实施例中,在该客户端发起该小文件的写请求后,该客户端向该元数据服务器发送该小文件元数据的创建请求,该元数据服务器根据该小文件元数据的创建请求为该小文件逐一分配全局唯一编号ino,该小文件的全局唯一编号ino的分配顺序是按照时序递增的顺序来分配的,将该元数据服务器中预设的全局唯一编号ino,分配给该小文件中最早创建的小文件,将预设的唯一的小文件的文件编号增加1。该元数据服务器按照小文件的创建时间来分配小文件的全局唯一编号ino,小文件的创建时间越晚,被分配到的小文件的文件编号越大。例如,小文件包括B、C、D、E、F、G、H、I、J、K、L、M,它们的创建时间依次增大,将该元数据服务器中预设的小文件的文件编号2015分配给小文件B,则小文件C的文件编号为2016,则小文件D的文件编号为2017,其中小文件E、F、G、H、I、J、K、L、M的文件编号可以依次类推。
所述元数据服务器20,还用于将预判为在聚合位置oid中聚合的N个ino连续的小文件分配存储区域唯一编号ono。
一个对象的内存容量为4MB,一个对象中最多聚合4个小文件,至少要聚合一个小文件,其中,一个对象中分配4个存储区域。在该元数据服务器为该小文件逐一分配该小文件的全局唯一编号ino后,该元数据服务器将具有连续小文件的全局唯一编号ino的4个小文件预判为同一个对象,例如,将(B、C、D、E)、(F、G、H、I)、(J、K、L、M)12个小文件判定分别合并在三个对象中。
需要说明的是,当未聚合完毕的小文件的数量小于预设聚合数量时,将所述未聚合完毕的小文件聚合于同一对象中,并为其对象分配存储区域唯一编号ono。分配原则为:第K个区域中的小文件ono为-k。例如,对小文件B、C、D、E、F、G、H、I、J、K进行聚合,则将(B、C、D、E)、(F、G、H、I)、(J、K)10个小文件分别聚合成三个对象中,其中包含(J、K)2个小文件的对象占用内存大小是4MB。
在该小文件聚合成对象后,该元数据服务器为该小文件逐一分配在该对象中的区域编号。例如,小文件B在对象中的区域编号为-1、小文件C在对象中的区域编号为-2、小文件D在对象中的区域编号为-3、小文件E在对象中的区域编号为-4、小文件F在对象中的区域编号为-1、小文件G在对象中的区域编号为-2、小文件H在对象中的区域编号为-3、小文件I在对象中的区域编号为-4、小文件J在对象中的区域编号为-1、小文件K在对象中的区域编号为-2、小文件L在对象中的区域编号为-3、小文件M在对象中的区域编号为-4。
该元数据服务器逐一为上述小文件创建其他的元数据,如小文件的创建时间、访问权限、最后修改时间、文件大小。
所述对象存储设备OSD 30,还用于接收客户端发送的小文件写聚合请求;
在本实施例中,在该客户端确定该小文件将要写入的OSD后,该客户端向该OSD发送该小文件写聚合请求,该OSD接收客户端发送的小文件写聚合请求,其中,该小文件写聚合请求包括小文件、ino、ono及oid。
所述对象存储设备OSD 30,还用于根据小文件写聚合请求逐个检测N个ino连续小文件的ono,在小文件的ono为负数时,将小文件写入编号为oid的对象中的第-ono个区域中。。
在该OSD接收客户端发送的小文件写聚合请求,该OSD逐个检测接收到的小文件的ono是否为负数,在确定接收到的小文件的ono为负数后,该OSD通知该OSD中小文件聚合模块对该小文件进行小文件聚合写操作。该小文件聚合模块将连续个ino小文件聚合在同一个对象中;或者,根据该ono的绝对值确定该小文件在该对象的区域,将该小文件写入该小文件的ono的绝对值对应的区域中。
本实施例通过通过客户端10发起小文件的写请求,以供元数据服务器20为小文件分配全局唯一编号ino和存储区域唯一编号ono,该客户端10根据该ino和该ono计算小文件在对象存储设备OSD 30中的聚合位置oid,使得该对象存储设备OSD 30根据该oid将小文件聚合。由于该小文件存储位置的是通过计算获取到的ino和ono而确定,并根据该小文件存储位置写入该小文件,因此不需要额外创建该小文件的映射表,从而解决了耗费较多小文件的写入时间的问题。
本发明进一步提供一种小文件的读聚合方法。
参照图5,图5为本发明小文件的读聚合方法的第一实施例的流程示意图。
在本实施例中,所述小文件的读聚合方法包括:
步骤S50,客户端发起小文件的读请求;
在本实施例中,一个小文件的文件大小小于1MB,客户端向小文件发起小文件读请求,即根据该客户端对该小文件按顺序进行读取。
步骤S60,从元数据服务器获取小文件的全局唯一编号ino和存储区域唯一编号ono;
该客户端向元数据服务器获取当前读取的小文件的元数据。该元数据服务器根据该客户端发起的小文件的读请求,检测该客户端对小文件的访问权限,如果该元数据服务器判定该客户端对该小文件的是非法访问,则向该客户端反馈该客户端对该文件是非法访问的信息,该客户端检查对该小文件的读取是否完成,如果没有完成则继续读取该小文件中的下一个小文件,如果完成则结束小文件的读取;如果该元数据服务器判定该客户端对该小文件的是合法访问,则元数据服务器将该读取小文件的全局唯一编号ino和存储区域唯一编号ono发送给该客户端,该客户端接收该元数据服务器发送的该ino和该ono。
步骤S70,根据ino和ono计算小文件在对象存储设备OSD中的聚合位置oid;
在该客户端接收到该元数据服务器回传该ino和该ono后,该客户端通过该oid的计算公式oid=((ino+ono+1)<<32)|1,计算该小文件在对象存储设备OSD中的聚合位置oid,即小文件所属对象的编号=((小文件的文件编号+小文件在对象中的区域编号+1)<<32)|1,计算出该小文件聚合成的对象后,该对象的对象编号。该oid为该小文件在聚合成对象后,该对象在全局对象中的唯一编号。在同一对象中任一区域的小文件通过计算后得出的oid均相同。该对象存储设备OSD的确定是通过公式OSD_num=HUSH(oid),计算得到的,即对象存储设备的编号=HASH(文件的对象编号),计算出该对象所处的对象存储设备的编号,其中,HUSH泛化了计算机领域常见的、公开的数据分布算法,包括但不限于:平方取中间值、模运算取余、DHT算法、CRUSH算法。
步骤S80,根据oid从对象存储设备OSD中获取小文件。
在该客户端计算出该小文件的聚合位置后,即计算出该小文件在OSD中的oid后,该OSD中的小文件聚合模块将该oid中聚合的所有小文件发送给该客户端。客户端根据该小文件的ono,将该小文件中的数据反馈给客户端的应用,该oid中包含的其他小文件则存储在该客户端的本地缓存中。
本实施例通过客户端发起小文件的读请求,根据该小文件的读请求从元数据服务器获取小文件的全局唯一编号ino和存储区域唯一编号ono,并根据ino和ono计算小文件在对象存储设备OSD中的聚合位置oid,使得该客户端根据oid从OSD中获取小文件。由于该小文件存储位置的是通过计算获取到的ino和ono而确定,并根据该小文件存储位置读取该小文件,因此不需要通过查映射表来读取该小文件,从而解决了耗费较多小文件读取的时间的问题。
进一步的,基于第一实施例,提出本发明小文件的读聚合方法的第二实施例,在本实施例中,参照图6,上述步骤S10之后,还包括:
步骤S90,检测客户端的缓存中是否存在小文件;
在本实施例中,该客户端检测当前读取的该小文件是否存在该客户端的本地缓存中,可以理解的是,对该小文件读取的同时也将该小文件聚合成的对象中的所有文件读取出来并保存,因此可以通过查找该客户端的缓存中是否存在该小文件,可以减少对该小文件的读取时间。
步骤S100,在客户端的缓存中存在小文件时,则获取小文件;
在该检测到该客户端的缓存中存在该小文件时,该客户端获取该小文件,并将该小文件中的数据返回给该客户端的应用。
在客户端的缓存中未存在小文件时,则执行步骤S60,即从元数据服务器获取小文件的全局唯一编号ino和存储区域唯一编号ono。
在检测到客户端的缓存中未存在该小文件时,则该客户端向该元数据服务器发送该小文件的有序读请求,使得该客户端获取该元数据服务器为该小文件分配的文件编号及该小文件在对象中的区域编号。例如,客户端发起小文件B、C、D、E、F、G、H、I、J、K、L、M的有序读请求时,检测到该客户端的缓存中未存在该小文件,则该客户端向该元数据服务器发送该小文件的有序读请求,以获取元数据服务器为小文件分配的全局唯一编号ino及小文件在对象存储区域唯一编号ono。
本实施例通过检测该客户端的缓存中是否存在该小文件,如果该客户端的缓存中存在该小文件时,则获取该小文件;如果客户端的缓存中未存在所述小文件,则从元数据服务器获取小文件的全局唯一编号ino和存储区域唯一编号ono,使得该客户端在对该小文件发起有序读请求后能够快速的对该小文件进行读取,从而提高了客户端对小文件的读写效率。
进一步的,基于所述第一实施例,提出本发明小文件的读聚合方法的第三实施例,在本实施例中,参照图7,上述步骤S80包括:
步骤S81,向对象存储设备OSD发送读聚合请求;
在本实施例中,该客户端确定该小文件聚合成对象后所存储的OSD,该客户端向该OSD发送该小文件的读聚合请求,该OSD判断该小文件的ono是否为负数,在确定该小文件的ono为负数后,该OSD通知该OSD中的小文件聚合模块对该小文件进行小文件聚合读操作。
步骤S82,接收对象存储设备OSD发送的oid中所有的小文件并保存;
该小文件聚合模块从该OSD中将该小文件所述的对象中的所有小文件发送给该客户端,该客户端并保存该对象中所有小文件。同时,在对象存储设备OSD将该小文件聚合读取完成后,该对象存储设备向该客户端发送小文件聚合读取完成指令,该客户端接收到该小文件聚合读取完成指令后,该客户端向元数据服务器发送元数据更新请求更新指令,通知该元数据服务器更新该小文件的元数据信息,如小文件的最后访问时间、对象的最后访问时间。
步骤S83,获取ono的绝对值对应区域中的小文件。
该客户端将该小文件的ono的绝对值,即该对象中第-ono个区域的小文件从该对象中读取出,并将该小文件中的数据反馈给该客户端的应用。
本实施例通过客户端向OSD发送读聚合请求,该OSD判断该小文件的ono是否为负数,在确定该小文件的ono为负数后,该客户端接收OSD发送的oid中所有的小文件并保存,从而该客户端获取ono的绝对值对应区域中的小文件,使得不用通过查映射表来读取该小文件,节约了对小文件的读取的时间。
本发明进一步提供一种客户端。
参照图8,图8为本发明客户端的第一实施例的功能模块示意图。
在本实施例中,该客户端包括:读请求模块40、编号获取模块50、计算模块60、小文件获取模块70。
所述读请求模块40,用于发起小文件的读请求;
本实施例中,一个小文件的文件大小小于1MB,客户端向小文件发起小文件读请求,即根据该客户端对该小文件按顺序进行读取。
所述编号获取模块50,用于从元数据服务器获取小文件的全局唯一编号ino和存储区域唯一编号ono;
该客户端向元数据服务器获取当前读取的小文件的元数据。该元数据服务器根据该客户端发起的小文件的读请求,检测该客户端对小文件的访问权限,如果该元数据服务器判定该客户端对该小文件的是非法访问,则向该客户端反馈该客户端对该文件是非法访问的信息,该客户端检查对该小文件的读取是否完成,如果没有完成则继续读取该小文件中的下一个小文件,如果完成则结束小文件的读取;如果该元数据服务器判定该客户端对该小文件的是合法访问,则元数据服务器将该读取小文件的全局唯一编号ino和存储区域唯一编号ono发送给该客户端,该客户端接收该元数据服务器发送的该ino和该ono。
所述计算模块60,用于根据ino和ono计算小文件在对象存储设备OSD中的聚合位置oid;
在该客户端接收到该元数据服务器回传该ino和该ono后,该客户端通过该oid的计算公式oid=((ino+ono+1)<<32)|1,计算该小文件在对象存储设备OSD中的聚合位置oid,即小文件所属对象的编号=((小文件的文件编号+小文件在对象中的区域编号+1)<<32)|1,计算出该小文件聚合成的对象后,该对象的对象编号。该oid为该小文件在聚合成对象后,该对象在全局对象中的唯一编号。在同一对象中任一区域的小文件通过计算后得出的oid均相同。该对象存储设备OSD的确定是通过公式OSD_num=HUSH(oid),计算得到的,即对象存储设备的编号=HASH(文件的对象编号),计算出该对象所处的对象存储设备的编号,其中,HUSH泛化了计算机领域常见的、公开的数据分布算法,包括但不限于:平方取中间值、模运算取余、DHT算法、CRUSH算法。
所述小文件获取模块70,用于根据oid从对象存储设备OSD中获取小文件。
在该客户端计算出该小文件的聚合位置后,即计算出该小文件在OSD中的oid后,该OSD中的小文件聚合模块将该oid中聚合的所有小文件发送给该客户端。客户端根据该小文件的ono,将该小文件中的数据反馈给客户端的应用,该oid中包含的其他小文件则存储在该客户端的本地缓存中。
本实施例通过读请求模块40发起小文件的读请求,编号获取模块50根据该小文件的读请求从元数据服务器获取小文件的全局唯一编号ino和存储区域唯一编号ono,计算模块60根据ino和ono计算小文件在对象存储设备OSD中的聚合位置oid,使得该小文件获取模块70根据oid从OSD中获取小文件。由于该小文件存储位置的是通过计算获取到的ino和ono而确定,并根据该小文件存储位置读取该小文件,因此不需要通过查映射表来读取该小文件,从而解决了耗费较多小文件读取的时间的问题。
进一步的,基于第一实施例,提出本发明客户端第二实施例,参照图9,在本实施例中,所述客户端还包括:检测模块50。
所述检测模块80,用于检测客户端的缓存中是否存在小文件;
在本实施例中,该客户端检测当前读取的该小文件是否存在该客户端的本地缓存中,可以理解的是,对该小文件读取的同时也将该小文件聚合成的对象中的所有文件读取出来并保存,因此可以通过查找该客户端的缓存中是否存在该小文件,可以减少对该小文件的读取时间。
所述小文件获取模块70,还用于在客户端的缓存中存在小文件时,则获取小文件;
在该检测到该客户端的缓存中存在该小文件时,该客户端获取该小文件,并将该小文件中的数据返回给该客户端的应用。
所述编号获取模块50,还用于在客户端的缓存中未存在小文件时,则从元数据服务器获取小文件的全局唯一编号ino和存储区域唯一编号ono。
在检测到客户端的缓存中未存在该小文件时,则该客户端向该元数据服务器发送该小文件的有序读请求,使得该客户端获取该元数据服务器为该小文件分配的文件编号及该小文件在对象中的区域编号。例如,客户端发起小文件B、C、D、E、F、G、H、I、J、K、L、M的有序读请求时,检测到该客户端的缓存中未存在该小文件,则该客户端向该元数据服务器发送该小文件的有序读请求,以获取元数据服务器为小文件分配的全局唯一编号ino及小文件在对象存储区域唯一编号ono。
本实施例通过检测该客户端的缓存中是否存在该小文件,如果该客户端的缓存中存在该小文件时,则获取该小文件;如果客户端的缓存中未存在所述小文件,则从元数据服务器获取小文件的全局唯一编号ino和存储区域唯一编号ono,使得该客户端在对该小文件发起有序读请求后能够快速的对该小文件进行读取,从而提高了客户端对小文件的读写效率。
进一步的,基于第一实施例,提出本发明客户端第三实施例,参照图10,在本实施例中,所述小文件获取模块70包括发送单元71、接收单元72、获取单元73。
所述发送单元71,用于向对象存储设备OSD发送读聚合请求;
在本实施例中,该客户端确定该小文件聚合成对象后所存储的OSD,该客户端向该OSD发送该小文件的读聚合请求,该OSD判断该小文件的ono是否为负数,在确定该小文件的ono为负数后,该OSD通知该OSD中的小文件聚合模块对该小文件进行小文件聚合读操作。
所述接收单元72,用于接收对象存储设备OSD发送的oid中所有的小文件并保存;
该小文件聚合模块从该OSD中将该小文件所述的对象中的所有小文件发送给该客户端,该客户端并保存该对象中所有小文件。同时,在对象存储设备OSD将该小文件聚合读取完成后,该对象存储设备向该客户端发送小文件聚合读取完成指令,该客户端接收到该小文件聚合读取完成指令后,该客户端向元数据服务器发送元数据更新请求更新指令,通知该元数据服务器更新该小文件的元数据信息,如小文件的最后访问时间、对象的最后访问时间。
所述获取单元73,用于获取ono的绝对值对应区域中的小文件。
该客户端将该小文件的ono的绝对值,即该对象中第-ono个区域的小文件从该对象中读取出,并将该小文件中的数据反馈给该客户端的应用。
本实施例通过客户端向OSD发送读聚合请求,该OSD判断该小文件的ono是否为负数,在确定该小文件的ono为负数后,该客户端接收OSD发送的oid中所有的小文件并保存,从而该客户端获取ono的绝对值对应区域中的小文件,使得不用通过查映射表来读取该小文件,节约了对小文件的读取的时间。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (6)
1.一种小文件写聚合方法,其特征在于,所述小文件写聚合方法包括以下步骤:
客户端发起小文件的写请求;
元数据服务器为所述小文件分配全局唯一编号ino和存储区域唯一编号ono,包括:元数据服务器按时序递增的分配原则为所述小文件分配全局唯一编号ino;为在聚合位置oid中聚合的N个ino连续的小文件预判为同一个对象,并为该对象中的小文件逐一分配该小文件在该对象中的分配存储区域唯一编号ono;其中,一个对象聚合N个小文件,一个对象中分配N个存储区域,分配所述ono的原则为:第K个存储区域中小文件的ono为-k;
所述客户端根据所述ino和所述ono计算所述小文件在对象存储设备OSD中的聚合位置oid,所述oid的计算公式为:oid=((ino+ono+1)<<32)|1;所述聚合位置oid是所述小文件在聚合成对象后,所述对象在全局对象中的唯一编号,在同一对象中任一区域的小文件通过计算后得出的oid均相同;
所述对象存储设备OSD根据所述oid将所述小文件聚合,包括:
所述对象存储设备OSD接收所述客户端发送的小文件写聚合请求;
所述对象存储设备OSD根据所述小文件写聚合请求逐个检测N个ino连续小文件的ono,在所述小文件的ono为负数时,将所述小文件写入编号为oid的对象中的第-ono个区域中。
2.一种小文件写聚合系统,其特征在于,所述小文件写聚合系统包括:客户端、元数据服务器及对象存储设备OSD,其中,
所述客户端,用于发起小文件的写请求;
所述元数据服务器,用于为所述小文件分配全局唯一编号ino和存储区域唯一编号ono,包括:元数据服务器按时序递增的分配原则为所述小文件分配全局唯一编号ino,为在聚合位置oid中聚合的N个ino连续的小文件预判为同一个对象,并为该对象中的小文件逐一分配该小文件在该对象中的分配存储区域唯一编号ono;其中,一个对象聚合N个小文件,一个对象中分配N个存储区域,分配所述ono的原则为:第K个存储区域中小文件的ono为-k;
所述客户端,还用于根据所述ino和所述ono计算所述小文件在所述对象存储设备OSD中的聚合位置oid,所述oid的计算公式为:oid=((ino+ono+1)<<32)|1;所述聚合位置oid是所述小文件在聚合成对象后,所述对象在全局对象中的唯一编号,在同一对象中任一区域的小文件通过计算后得出的oid均相同;
所述对象存储设备OSD,用于根据所述oid将所述小文件聚合,包括:
接收所述客户端发送的小文件写聚合请求;
根据所述小文件写聚合请求逐个检测N个ino连续小文件的ono,在所述小文件的ono为负数时,将所述小文件写入编号为oid的对象中的第-ono个区域中。
3.一种小文件读聚合方法,其特征在于,所述小文件读聚合方法包括以下步骤:
客户端发起小文件的读请求;
从元数据服务器获取所述小文件的全局唯一编号ino和存储区域唯一编号ono;其中,所述ino是按时序递增的分配原则分配的,一个对象聚合N个小文件,一个对象中分配N个存储区域,分配所述ono的原则为:第K个存储区域中小文件的ono为-k;
根据所述ino和所述ono计算所述小文件在对象存储设备OSD中的聚合位置oid,所述oid的计算公式为:oid=((ino+ono+1)<<32)|1;所述聚合位置oid是所述小文件在聚合成对象后,所述对象在全局对象中的唯一编号,在同一对象中任一区域的小文件通过计算后得出的oid均相同;
根据所述oid从所述对象存储设备OSD中获取所述小文件,包括:
向所述对象存储设备OSD发送读聚合请求;
接收所述对象存储设备OSD发送的所述oid中所有的小文件并保存;
获取所述ono的绝对值对应区域中的小文件。
4.如权利要求3所述的小文件读聚合方法,其特征在于,在所述客户端发起小文件的读请求的步骤之后,还包括:
检测所述客户端的缓存中是否存在所述小文件;
在所述客户端的缓存中存在所述小文件时,则获取所述小文件;
在所述客户端的缓存中未存在所述小文件时,则执行所述从元数据服务器获取所述小文件的全局唯一编号ino和存储区域唯一编号ono的步骤。
5.一种客户端,其特征在于,所述客户端包括:
读请求模块,用于发起小文件的读请求;
编号获取模块,用于从元数据服务器获取所述小文件的全局唯一编号ino和存储区域唯一编号ono;其中,所述ino是按时序递增的分配原则分配的,一个对象聚合N个小文件,一个对象中分配N个存储区域,分配所述ono的原则为:第K个存储区域中小文件的ono为-k;
计算模块,用于根据所述ino和所述ono计算所述小文件在对象存储设备OSD中的聚合位置oid,所述oid的计算公式为:oid=((ino+ono+1)<<32)|1;所述聚合位置oid是所述小文件在聚合成对象后,所述对象在全局对象中的唯一编号,在同一对象中任一区域的小文件通过计算后得出的oid均相同;
小文件获取模块,用于根据所述oid从所述对象存储设备OSD中获取所述小文件,所述小文件获取模块包括:
发送单元,用于向所述对象存储设备OSD发送读聚合请求;
接收单元,用于接收所述对象存储设备OSD发送的所述oid中所有的小文件并保存;
获取单元,用于获取所述ono的绝对值对应区域中的小文件。
6.如权利要求5所述的客户端,其特征在于,所述客户端还包括:
检测模块,用于检测所述客户端的缓存中是否存在所述小文件;
所述小文件获取模块,还用于在所述客户端的缓存中存在所述小文件时,则获取所述小文件;
所述编号获取模块,还用于在所述客户端的缓存中未存在所述小文件时,则从元数据服务器获取所述小文件的全局唯一编号ino和存储区域唯一编号ono。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510980277.XA CN106911743B (zh) | 2015-12-23 | 2015-12-23 | 小文件的写聚合、读聚合方法及系统和客户端 |
PCT/CN2016/111473 WO2017107948A1 (zh) | 2015-12-23 | 2016-12-22 | 文件的写聚合、读聚合方法及系统和客户端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510980277.XA CN106911743B (zh) | 2015-12-23 | 2015-12-23 | 小文件的写聚合、读聚合方法及系统和客户端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106911743A CN106911743A (zh) | 2017-06-30 |
CN106911743B true CN106911743B (zh) | 2019-03-26 |
Family
ID=59088982
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510980277.XA Active CN106911743B (zh) | 2015-12-23 | 2015-12-23 | 小文件的写聚合、读聚合方法及系统和客户端 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN106911743B (zh) |
WO (1) | WO2017107948A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107506466B (zh) * | 2017-08-30 | 2020-08-04 | 郑州云海信息技术有限公司 | 一种小文件存储方法及系统 |
CN109241004B (zh) * | 2018-09-26 | 2022-02-18 | 郑州云海信息技术有限公司 | 元数据文件大小恢复方法、系统、装置及可读存储介质 |
CN109597903B (zh) * | 2018-11-21 | 2021-12-28 | 北京市商汤科技开发有限公司 | 图像文件处理装置和方法、文件存储系统及存储介质 |
CN111309687A (zh) * | 2020-01-21 | 2020-06-19 | 苏州浪潮智能科技有限公司 | 一种对象存储小文件处理方法、装置、设备及存储介质 |
CN112463730B (zh) * | 2020-12-02 | 2022-07-19 | 苏州浪潮智能科技有限公司 | 一种存储海量小文件分级优化的方法、系统及介质 |
CN113128175B (zh) * | 2021-04-19 | 2023-01-24 | 福建福昕软件开发股份有限公司 | 一种大批量pdf文件合并的方法及系统 |
CN113590560A (zh) * | 2021-06-29 | 2021-11-02 | 济南浪潮数据技术有限公司 | 一种分布式系统的缓存优化方法、系统、设备和存储介质 |
CN114817978A (zh) * | 2022-03-25 | 2022-07-29 | 阿里云计算有限公司 | 数据访问方法及系统、硬件卸载设备、电子设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103514210A (zh) * | 2012-06-28 | 2014-01-15 | 华为技术有限公司 | 小文件处理方法及装置 |
CN104079600A (zh) * | 2013-03-27 | 2014-10-01 | 中兴通讯股份有限公司 | 文件存储方法、装置、访问客户端及元数据服务器系统 |
CN104965845A (zh) * | 2014-12-30 | 2015-10-07 | 浙江大华技术股份有限公司 | 一种小文件的定位方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4660142A (en) * | 1981-05-22 | 1987-04-21 | Data General Corporation | Digital data processing system employing an object-based addressing system with a single object table |
CN105187502A (zh) * | 2015-08-07 | 2015-12-23 | 北京思特奇信息技术股份有限公司 | 一种基于分布式弹性块存储的方法和系统 |
-
2015
- 2015-12-23 CN CN201510980277.XA patent/CN106911743B/zh active Active
-
2016
- 2016-12-22 WO PCT/CN2016/111473 patent/WO2017107948A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103514210A (zh) * | 2012-06-28 | 2014-01-15 | 华为技术有限公司 | 小文件处理方法及装置 |
CN104079600A (zh) * | 2013-03-27 | 2014-10-01 | 中兴通讯股份有限公司 | 文件存储方法、装置、访问客户端及元数据服务器系统 |
CN104965845A (zh) * | 2014-12-30 | 2015-10-07 | 浙江大华技术股份有限公司 | 一种小文件的定位方法及系统 |
Non-Patent Citations (2)
Title |
---|
分布式文件系统客户端关键技术研究;桂莅;《中国优秀硕士论文全文数据库》;20140615;论文第2.1.2节 |
海量小文件存储与Ceph实践;it_arch_notes;《博客园》;20150815;1-2 |
Also Published As
Publication number | Publication date |
---|---|
WO2017107948A1 (zh) | 2017-06-29 |
CN106911743A (zh) | 2017-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106911743B (zh) | 小文件的写聚合、读聚合方法及系统和客户端 | |
CN105354151B (zh) | 一种缓存管理方法与设备 | |
US9697247B2 (en) | Tiered data storage architecture | |
CN105224255B (zh) | 一种存储文件管理方法及装置 | |
US9612758B1 (en) | Performing a pre-warm-up procedure via intelligently forecasting as to when a host computer will access certain host data | |
CN104115134A (zh) | 复合非易失性存储设备的数据迁移 | |
CN110321325A (zh) | 文件索引节点查找方法、终端、服务器、系统及存储介质 | |
CN110765076B (zh) | 数据存储方法、装置、电子设备及存储介质 | |
US10310748B2 (en) | Determining data locality in a distributed system using aggregation of locality summaries | |
CN107391600A (zh) | 用于在内存中存取时序数据的方法和装置 | |
CN111737168A (zh) | 一种缓存系统、缓存处理方法、装置、设备及介质 | |
CN104111898A (zh) | 基于多维数据相似性的混合存储系统及数据管理方法 | |
CN109144406A (zh) | 分布式存储系统中元数据存储方法、系统及存储介质 | |
US11386078B2 (en) | Distributed trust data storage system | |
CN110377572A (zh) | 一种缓存空间管理方法、装置、设备及介质 | |
CN111737265B (zh) | 区块数据访问方法、区块数据存储方法及装置 | |
CN106528451A (zh) | 针对小文件的二级缓存预取的云存储框架及构建方法 | |
CN110008197A (zh) | 一种数据处理方法、系统及电子设备和存储介质 | |
CN103942301A (zh) | 一种面向多数据类型访问应用的分布式文件系统 | |
CN107506466A (zh) | 一种小文件存储方法及系统 | |
US10146833B1 (en) | Write-back techniques at datastore accelerators | |
CN103077099A (zh) | 一种块级快照系统及基于该系统的用户读写方法 | |
US10853286B2 (en) | Performance improvement for an active-active distributed non-ALUA system with address ownerships | |
US11544242B2 (en) | System and method for storing and retrieving data in different data spaces | |
US11249991B2 (en) | System and method for creating storage containers in a data storage system |
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 |