CN112035428A - 分布式存储系统、方法、装置、电子设备和存储介质 - Google Patents

分布式存储系统、方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN112035428A
CN112035428A CN202010954902.4A CN202010954902A CN112035428A CN 112035428 A CN112035428 A CN 112035428A CN 202010954902 A CN202010954902 A CN 202010954902A CN 112035428 A CN112035428 A CN 112035428A
Authority
CN
China
Prior art keywords
file
resource pool
metadata
merging
files
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
CN202010954902.4A
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.)
iFlytek Co Ltd
Original Assignee
iFlytek 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 iFlytek Co Ltd filed Critical iFlytek Co Ltd
Priority to CN202010954902.4A priority Critical patent/CN112035428A/zh
Publication of CN112035428A publication Critical patent/CN112035428A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • G06F16/148File search processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例提供一种分布式存储系统、方法、装置、电子设备和存储介质,该系统包括:热缓存资源池,用于缓存文件,并将所述文件置于合并队列;冷存储资源池,用于存储合并数据,所述合并数据是所述合并队列中文件数量达到预设阈值后合并而成;元数据存储资源池,用于存储所述文件的元数据的索引信息、合并后的元数据以及自定义映射信息中的至少一种。本发明实施例提供的系统、方法、装置、电子设备和存储介质,解决了写入性能瓶颈和文件直接落盘的膨胀率问题,并且从合并规模层面上减少了合并操作带来的操作开销,同时保证了合并数据的大小可控,有助于进一步消除落盘膨胀的问题。

Description

分布式存储系统、方法、装置、电子设备和存储介质
技术领域
本发明涉及存储领域,尤其涉及一种分布式存储系统、方法、装置、电子设备和存储介质。
背景技术
随着网络服务的日益发展,海量小文件(Lots Of Small Files,LOSF)的存储问题也日益突出。
海量小文件的存储会引发很多问题,海量小文件直接落盘会引起大量的数据均衡,导致数据均衡时间过长,存储系统的稳定性也因此受到挑战;此外,小文件直接落盘会引起大量的膨胀,造成存储资源的空间浪费。
发明内容
本发明实施例提供一种分布式存储系统、方法、装置、电子设备和存储介质,用以解决现有技术中小文件存储稳定性差、空间浪费的缺陷。
第一方面,本发明实施例提供一种分布式存储系统,包括:
热缓存资源池,用于缓存文件,并将所述文件置于合并队列;
冷存储资源池,用于存储合并数据,所述合并数据是所述合并队列中的文件数量达到预设阈值后合并而成;
元数据存储资源池,用于存储所述文件的元数据的索引信息、合并后的元数据以及自定义映射信息中的至少一种。
可选地,所述热缓存资源池、所述冷存储资源池和所述元数据存储资源池均包括若干个存储集群,每一存储集群包括多个存储资源池,每一存储资源池包括多个可用域。
可选地,所述元数据存储资源池包括:
第一资源池,用于存储所述自定义映射信息;
第二资源池,用于存储所述元数据的索引信息;
第三资源池,用于存储所述合并后的元数据。
可选地,对象存储网关与所述热缓存资源池和所述冷存储资源池均基于分布式文件架构的同一层结构设置。
可选地,所述文件置于的合并队列为所述文件所属桶对应的合并队列,所述文件所属桶是对所述文件的文件名称进行哈希取模得到的。
第二方面,本发明实施例提供一种基于第一方面提供的分布式存储系统的文件存储方法,包括:
若检测到存在文件写入,则将所述文件缓存入所述热缓存资源池,并将所述文件置于合并队列;
检测所述合并队列中的文件数量,若所述文件数量达到预设阈值,则对所述合并队列中的文件进行合并,得到合并数据并存入所述冷存储资源池。
可选地,所述对所述合并队列中的文件进行合并,得到合并数据并存入所述冷存储资源池,具体包括:
对所述合并队列中的文件进行合并,得到合并数据;
若所述合并数据与所述热缓存资源池内对应缓存的文件一致,则将所述合并数据存入所述冷存储资源池。
第三方面,本发明实施例提供一种基于第一方面提供的分布式存储系统的文件读取方法,包括:
若检测到文件读取请求,则在所述热缓存资源池中查询所述文件读取请求指示的待读取文件;
若未在所述热缓存资源池中查询得到所述待读取文件,则在所述冷存储资源池中查询所述待读取文件所属的合并数据并从中提取返回所述待读取文件。
可选地,所述在所述冷存储资源池中查询所述待读取文件所属的合并数据并从中提取返回所述待读取文件,具体包括:
基于元数据存储资源池中的自定义映射信息,确定所述待读取文件所属合并数据在所述冷存储资源池中的位置;
基于所述元数据存储资源池中的元数据的索引信息和合并后的元数据,确定所述待读取文件在所属合并数据中的位置;
基于所述待读取文件所属合并数据在所述冷存储资源池中的位置,以及所述待读取文件在所属合并数据中的位置,从所述冷存储资源池中提取返回所述待读取文件。
第四方面,本发明实施例提供一种基于第一方面提供的分布式存储系统的文件存储装置,包括:
热缓存单元,用于若检测到存在文件写入,则将所述文件缓存入所述热缓存资源池,并将所述文件置于合并队列;
冷存储单元,用于检测所述合并队列中的文件数量,若所述文件数量达到预设阈值,则对所述合并队列中的文件进行合并,得到合并数据并存入所述冷存储资源池。
第五方面,本发明实施例提供一种基于第一方面提供的分布式存储系统的文件读取装置,包括:
热缓存查询单元,用于若检测到文件读取请求,则在所述热缓存资源池中查询所述文件读取请求指示的待读取文件;
判断返回单元,用于若未在所述热缓存资源池中查询得到所述待读取文件,则在所述冷存储资源池中查询所述待读取文件所属的合并数据并从中提取返回所述待读取文件。
第六方面,本发明实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第二方面提供的文件存储方法或第三方面提供的文件读取方法的步骤。
第七方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现第二方面提供的文件存储方法或第三方面提供的文件读取方法的步骤。
本发明实施例提供的一种分布式存储系统、方法、装置、电子设备和存储介质,设置热缓存资源池和冷存储资源池,通过文件热缓存写入、冷存储合并写入的冷热分层机制,解决了写入性能瓶颈和文件直接落盘的膨胀率问题。在此基础上,基于预设阈值进行数据合并,从合并规模层面上减少了合并操作带来的操作开销,同时保证了合并数据的大小可控,有助于进一步消除落盘膨胀的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的分布式存储系统的结构示意图;
图2为本发明另一实施例提供的分布式存储系统的结构示意图;
图3为本发明实施例提供的合并数据落盘布局示意图;
图4为本发明实施例提供的文件存储方法的流程示意图;
图5为本发明另一实施例提供的文件存储方法的流程示意图;
图6为本发明实施例提供的数据合并方法的流程示意图;
图7为本发明实施例提供的零拷贝方法的流程示意图;
图8为本发明实施例提供的多线程合并的流程示意图;
图9为本发明实施例提供的文件读取方法的流程示意图;
图10为本发明实施例提供的基于元数据存储资源池的文件读取方法的流程示意图;
图11为本发明实施例提供的文件存储装置的结构示意图;
图12为本发明实施例提供的文件读取装置的结构示意图;
图13为本发明实施例提供的电子设备的结构示意图;
附图标记说明:
110-热缓存资源池;120-冷存储资源池;130-元数据存储资源池。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在互联网、物联网、云计算、大数据等高速发展的大背景下,数据呈现爆炸式地增长。社会化网络、移动通信、网络视频音频、电子商务、传感器网络、科学实验等各种应用产生的数据,不仅存储容量巨大,而且还具有数据类型繁多、流动快等显著特点,往往能够产生千万级、亿级甚至十亿、百亿级的海量小文件。通常大小在1MB以内的文件称为小文件,百万级数量及以上称为海量,由此来量化定义海量小文件LOSF的存储问题。
海量小文件的存储会引发很多问题,海量小文件直接落盘会引起大量的数据均衡,导致数据均衡时间过长,存储系统的稳定性也因此受到挑战;此外,小文件直接落盘会引起大量的膨胀,造成存储资源的空间浪费。目前,针对这一问题,主要通过合并小文件,并在元数据中心中存储合并后的小文件的元数据实现。但是上述方案多是基于本地文件系统或者hdfs(Hadoop Distributed File System,Hadoop分布式文件系统)实现,对于小文件的存储存在冗余。且由于引入了外部元数据中心来存储合并后的元数据,当数据量不停增长时,元数据中心也会成为瓶颈。
对此,本发明实施例提供一种分布式存储系统,分布式存储系统既可以应用于小文件的存储,也可以应用于其他类型的文件存储,本发明实施例对此不作具体限定。图1为本发明实施例提供的分布式存储系统的结构示意图,如图1所示,分布式存储系统包括热缓存资源池110、冷存储资源池120和元数据存储资源池130。
其中,热缓存资源池110用于缓存文件,并将文件置于合并队列;
冷存储资源池120用于存储合并数据,所述合并数据是合并队列中的文件数量达到预设阈值后合并而成。
元数据存储资源池130用于存储文件的元数据的索引信息、合并后的元数据以及自定义映射信息中的至少一种。
具体地,文件即写入分布式存储系统的文件,具体可以是小文件,也可以是其他类型的文件。文件本身可以反映为数据的形式,可以表示为data;文件的元数据即用于描述文件属性的数据,可以包含文件的文件名称、文件类型、文件大小和创造时间等文件属性,元数据可以表示为metadata。此处写入的文件可以是文件本身的数据data,也可以既包含文件本身的数据data也包含文件的元数据metadata,本发明实施例对此不作具体限定。
为了避免文件直接落盘,尤其是海量小文件场景下的下文件的直接落盘,本发明实施例中设置了冷热分层的存储机制,通过热缓存资源池110和冷存储资源池120实现:
其中,热缓存资源池110用于缓存写入分布式存储系统的文件,缓存在热缓存资源池110内的文件可以在达到TTL(Time To Live,生存时间值)后被删除。热缓存资源池110属于高速缓冲存储资源池,自身具备高速读写的特性,因此在存在大量待写入的文件,尤其是海量待写入的小文件的情况下,能够实现海量文件的高速写入,以缓解海量文件写入的性能压力。
冷存储资源池120用于文件的落盘存储。在落盘存储的过程,考虑到海量文件直接落盘会导致的存储问题,本发明实施例在落盘存储之前对热缓存资源池110中缓存的文件进行合并,通过合并操作缩减需要落盘的文件数量规模,从而降低海量文件直接落盘所需满足的写入性能需求,解决落盘膨胀的问题。
相应地,为了配合小文件合并,可以预先在热缓存资源池110中设置若干个合并队列,此处一个合并队列用于缓存需要进行合并的一组文件,不同合并队列之间相互独立,不同合并队列内的文件不发生合并。热缓存资源池110在承担文件缓存任务的同时,还用于将写入分布式存储系统的文件及置于合并队列中,以供后续进行数据合并和落盘。
预设阈值即预先设定的执行数据合并操作的文件数量的最小值。本发明实施例中,针对任一合并队列,可以每隔一段时间,对该合并队列中包含的文件数量进行检测,如果该合并队列中包含的文件数量大于等于预设阈值,则对该合并队列中包含的所有文件进行合并,得到合并数据,并将合并数据存入冷存储资源池120,从而实现该合并队列所包含的所有文件的整体落盘。
此处,基于预设阈值进行数据合并,相较于在线实时合并的方案,所得的合并数据大小可控,避免了合并数据本身所涵盖的文件数量较少,合并效果不明显、文件数量规模缩减较少导致的落盘膨胀未能消除的问题。
此外,对合并队列中包含的文件数据进行检测的动作,可以每隔预设时间执行一次,此处预设时间即预先设定的数据合并操作执行的间隔时间。基于预设时间进行数据合并,相较于在线实时合并的方案,数据合并的执行次数有效减少,避免了频繁读写和合并导致的大量操作开销。
需要说明的是,在分布式存储系统应用于小文件存储时,热缓存资源池110中缓存的文件可以包含写入的小文件的文件data及其元数据metadata,且热缓存资源值还可以预先将小文件及其元数据进行合并,得到表示为“metadata,data”形式的小文件数据,并将小文件数据置于合并队列。对应地,合并数据可以既包括合并队列中的所有小文件数据的合并结果,也包括合并队列中所有元数据的合并结果,本发明实施例对此不作具体限定。
在冷热分层机制下,合并后的合并数据被存储在冷存储资源池120中。为了便于从冷存储资源池120中读取文件,本发明实施例还在分布式存储系统中设置了元数据存储资源池130,元数据存储资源池130可以存储文件的元数据的索引信息,以供后续用户需从冷存储资源池120中读取目标文件时,能够通过元数据存储资源池内存储的元数据的索引信息,快速定位查找目标文件的元数据,进而定位目标文件所属的合并数据在冷存储资源池中的存储位置,加速目标文件的读取。
此外,在对文件及其元数据合并时,可以具体划分为两种合并类型,一种是将文件及其元数据进行预合并,得到表示为“metadata,data”形式的文件数据,并将合并队列中的所有文件数据进行合并,由此得到合并数据;另一种是将每个文件的元数据单独进行合并,得到仅包含元数据的合并结果,即合并后的元数据。对应元数据资源池130中存储的即单独对文件的元数据进行合并后的结果,单独对文件的元数据进行合并的方式与合并文件数据的方式一致,此处不再赘述。在元数据存储资源池130中存储合并后的元数据,能够为用户提供文件的在库查询,使得用户能够快速便捷地查询文件是否在库,以及文件的文件类型、文件大小和创造时间等文件属性。此外,由于单独合并元数据的方式与形成合并数据的方式一致,在合并后的元数据中查询待读取文件的元数据,有助于快速定位待读取文件在所属合并数据中的具体位置。
另外,自定义映射信息表征自定义的文件所属的桶(bucket)所在存储集群的信息,可以反映为桶与存储集群内各个存储资源池的映射信息(bucket_pool_mapping)。自定义映射信息具体可以包括bucket所在存储集群的集群rados网关、认证信息、存储资源池信息等,可以用于确定bucket内的文件最终写入了哪个存储集群下的哪个存储资源池。元数据存储资源池130中还可以存储上述自定义映射信息,从而实现分布式存储系统在扩容时映射信息的可控。
本发明实施例提供的系统,设置热缓存资源池和冷存储资源池,通过文件热缓存写入、冷存储合并写入的冷热分层机制,解决了写入性能瓶颈和文件直接落盘的膨胀率问题。在此基础上,基于预设阈值进行数据合并,从合并规模层面上减少了合并操作带来的操作开销,同时保证了合并数据的大小可控,有助于进一步消除落盘膨胀的问题。
此外,在分布式存储系统内部设置元数据存储资源池,无需引入外部数据库即可实现元数据的索引信息、合并后的元数据以及自定义映射信息中至少一种的存储,缩短了io路径。其中,元数据的索引信息的存储,有助于快速定位查找目标文件,加速目标文件的读取;合并后的元数据的存储,提供了快速便捷的文件的在库查询以及元数据查询接口;自定义映射信息的存储,有助于实现系统扩容的可控性。
目前,小文件存储的另一个难点在于日常的存储系统运维,基于HDFS(Hadoop分布式文件系统)或者引入元数据中心的存储方式存在天然的扩展性缺陷,一旦小文件的规模突破百亿、千亿,扩容难度会非常大。考虑到这一问题,基于上述任一实施例,分布式存储系统中热缓存资源池、冷存储资源池和元数据存储资源池均包括若干个存储集群,每一存储集群包括多个存储资源池,每一存储资源池包括多个可用域。。
具体地,分布式存储系统中热缓存资源池、冷存储资源池和元数据存储资源池均采取了多存储集群和多资源池可用域的配置方式,热缓存资源池、冷存储资源池和元数据存储资源池均包括一个或多个存储集群,每个存储集群包括多个存储资源池,每个存储资源池包括多个可用域。针对热缓存资源池、冷存储资源池和元数据存储资源池中的任意一个,在需要扩容时,可以将数据写入当前存储集群中其他可用的存储资源池中,即通过存储资源池的线性扩展实现扩容。此外,考虑到单个存储集群中的存储资源池其性能达到一定规模后无法线性扩展,还可以将数据写入其他存储集群的存储资源池中,即通过存储集群的线性扩展进行扩容。
此外,由于冷存储资源池和元数据存储资源池均采取了多存储集群和多资源池可用域的配置方式,因此元数据存储资源池可以跟随存储合并数据的冷存储资源池进行线性扩容,元数据存储资源池的存在替代了元数据中心,因而也避免了元数据中心扩容难的问题。
再者,针对热缓存资源池采取多存储集群和多资源池可用域的配置方式,有助于分布式存储系统有力应对大并发流量,提高分布式存储系统的性能和规模。
本发明实施例提供的系统中,热缓存资源池、冷存储资源池和元数据存储资源池均采取多存储集群和多资源池可用域的配置方式,解决了小文件存储扩容难的问题,使得分布式存储系统的性能足以应对千亿量级的小文件规模。
基于上述任一实施例,元数据存储资源池包括:
第一资源池,用于存储自定义映射信息;
第二资源池,用于存储元数据的索引信息;
第三资源池,用于存储合并后的元数据。
具体地,针对元数据存储资源池同时存储自定义映射信息、元数据的索引信息和合并后的元数据的情况,为了避免不同类型数据存储的混淆,可以在元数据存储资源池中具体设置三个相互独立的资源池,即第一资源池、第二资源池和第三资源池,用于分别实现上述三类数据的独立存储。
需要说明的是,热缓存资源池、冷存储资源池,以及元数据存储资源池中的第一资源池和第三资源池,是分布式系统中最为关键的底层存储组成部分。其中第一资源池存储了分布式系统所有存储资源池和桶之间的映射,热缓存资源池作为热缓存,同时进行文件及其元数据的合并操作,第三资源池存储合并后的元数据,冷存储资源池存储最终合并而成的合并数据。
为了保障数据安全,当较为高速的第三资源池不可用或者数据丢失时,可以基于冷存储资源池的合并数据中包含的元数据,对第三资源池中存储的合并后的元数据进行恢复。此处,具体可以采用数据恢复算法从冷存储资源池中对第三资源池中的数据进行恢复。
图2为本发明另一实施例提供的分布式存储系统的结构示意图,如图2所示,分布式存储系统包括热缓存资源池110、冷存储资源池120以及元数据存储资源池130。
热缓存资源池110中包含热缓存存储集群Rados Cache Cluster,Rados CacheCluster包含多个热缓存资源池Cache_pool,在写入小文件时,分布式存储系统可以根据待写入的小文件对应的写入请求,以及Rados Cache Cluster内部的资源分配状态,将待写入的小文件及其元数据写入某个可用的Cache_pool中,从而起到隔离故障域的作用。此外,存储过程中可以对热缓存资源池进行线性扩充以应付大并发流量,例如从Cache_pool_2扩充至Cache_pool_3。
元数据存储资源池130中包含元数据存储集群Rados MD Cluster,Rados MDCluster包含多个存储资源池,其中第一资源池Bucket_pool_mapping用于存储自定义映射信息;第二资源池Md_index_pool用于存储元数据的索引信息,Md_index_pool可以与Hdd_data_pool一并进行线性扩容;第三资源池Filemerge_md_pool用于存储合并后的元数据。为了保障数据安全,Filemerge_md_pool不可用的情况下,可以从Hdd_data_pool存储的合并数据中对合并后的元数据进行恢复。
冷存储资源池120包含多个冷存储集群Rados HDD Cluster,一个Rados HDDCluster包含多个冷存储资源池Hdd_data_pool,Hdd_data_pool用于存储合并数据。存储过程中,可以对单一冷存储集群内的冷存储资源池进行线性扩充,例如在Rados HDD ClusterA中,从Hdd_data_pool_2扩充至Hdd_data_pool_N;考虑到单个存储集群中的存储资源池其性能达到一定规模后无法线性扩展,还可以对冷存储资源池120中的冷存储集群进行线性扩充,例如从Rados HDD Cluster A扩充到Rados HDD Cluster B。
此外,图2示出的分布式存储系统可以是基于Ceph中的Rados pool结合不同存储介质构建的。具体分布式存储系统的底层存储引擎可以是bluestore,其硬件加速层具体可以基于DPDK(Data Plane Development Kit,数据平面开发套件)或者SDPK(StoragePerformance Development Kit,存储性能开发工具包)实现。
进一步地,热缓存资源池110可以采用高速缓存介质optane。
本发明实施例提供的系统中,热缓存资源池、冷存储资源池和元数据存储资源池均采取多存储集群和多资源池可用域的配置方式,使得分布式存储系统的性能足以应对千亿量级的小文件规模。
Ceph是一种常用的分布式文件系统,通过RGW(Rados Gateway,对象存储网关)对外提供对象存储服务。在将Ceph作为存储架构搭建分布式存储系统时,通常使用RGW作为Ceph的底层存储接口,而将RGW作为底层存储接口会导致io路径过长、存储资源池映射规则不便于自定义修改,导致难查找和难配置的问题。
对此,基于上述任一实施例,该系统中,对象存储网关与所述热缓存资源池和所述冷存储资源池均基于分布式文件架构的同一层结构设置。
具体地,相较于传统的分布式文件构架中将存储资源池与对象存储网关分别基于不同的层结构实现,例如在Ceph构架中,存储资源池基于librados层实现,对象存储网关基于S3接口实现,本发明实施例中存储资源池与对象存储网关均基于同一层结构实现,因此存储资源池与对象存储网关之间数据的传输无需跨越层结构,io路径更短,更易于实现存储资源池映射规则的自定义和修改,相应地文件的查找和配置更加容易实现,此外io路径的缩短还有助于缩短文件的读写开销。
可选地,分布式存储系统是基于Ceph构建的,分布式存储系统中的热缓存资源池、冷存储资源池,以及对象存储网关均是基于Ceph的librados层实现的,相较于原生场景,基于librados层实现冷热分层机制、跨集群以及对象存储网关,能够有效缩短io路径。
基于上述任一实施例,该系统中,文件置于的合并队列为文件所属桶对应的合并队列,文件所属桶是对文件的文件名称进行哈希取模得到的。
具体地,热缓存资源池在将缓存的文件置入合并队列之前,需要确定文件与合并队列之间的对应关系。预先可以设置多个桶,每个桶对应若干个合并队列,针对任一文件,可以对文件的文件名称进行哈希取模,将编号与哈希取模所得的模值相等的桶作为与该文件所属的桶,进而确定该文件对应的合并队列。此处,哈希取模是指通过哈希算法将文件名称转换为固定长度的散列值,然后将该散列值对桶的总数取模,其模值即对应桶的编号。例如,N+1个桶的编号分别为0,1,2,…,N,将文件名称哈希所得的散列值对N+1取模,所得的模值为0,1,2,…,N中的任一整数。
通过哈希取模的方式确定文件与桶之间的对应关系,能够将热缓存资源池中缓存的文件均衡地置入各个桶的合并队列中,从而保证文件的随机分布。此外,哈希取模的对应方式,能够天然地支持跨集群操作,从而更适应分布式存储系统的扩容需求,解决分布式系统中一组存储网关对多个相互独立的存储集群的服务可用性和弹性扩展性的问题。
图3为本发明实施例提供的合并数据落盘布局示意图,如图3所示,落盘的合并数据的文件名的命名方式可以是(bucket_name)/data/n的形式,其中bucket_name即被合并的文件所属的bucket的名称,例如bucket可以以文件写入的时间戳作为名称。n表示桶的编号,n可以是0至N之间的任意整数。落盘的合并数据布局中,每个桶对应一个合并数据的大文件,合并数据表示为对应桶的合并队列中所有“metadata,data”形式的文件数据的整合。
基于上述任一实施例,图4为本发明实施例提供的文件存储方法的流程示意图,如图4所示,基于分布式存储系统的文件存储方法包括:
步骤410,若检测到存在文件写入,则将文件缓存入热缓存资源池,并将文件置于合并队列。
步骤420,检测合并队列中的文件数量,若文件数量达到预设阈值,则对合并队列中的文件进行合并,得到合并数据并存入冷存储资源池。
具体地,基于分布式存储系统的冷热分层机制,可以将写入分布式存储系统的文件进行分层存储。实时检测当前时刻是否存在写入的文件,如果存在则将文件均缓存入分布式存储系统的热缓存资源池中,并且从热缓存资源池中预先设置的若干个合并队列中确定出文件对应的合并队列,将文件置于对应合并队列中,以供后续进行数据合并和落盘。此外,缓存在热缓存资源池内的文件可以在达到TTL后被删除。
通过将写入的文件缓存入热缓存资源池,能够有效提高文件的读写速度。此外,将文件置于对应合并队列,为实现文件合并,缩减需要落盘的文件数量规模,降低海量文件直接落盘所需满足的写入性能需求提供了条件。
针对任意一个合并队列,可以每隔一段时间对合并队列中包含的文件数量进行一次检测,如果该合并队列中包含的文件数量大于等于预设阈值,则对该合并队列中包含的所有文件进行合并,得到合并数据,并将合并数据存入冷存储资源池;如果该合并队列中包含的文件数量小于预设阈值,则不对该合并队列中的数据进行处理,等待预设时间后再对该合并队列中包含的文件数量进行检测。
此处,基于预设阈值进行数据合并,相较于在线实时合并的方案,所得的合并数据大小可控,避免了合并数据本身所涵盖的文件数量较小,合并效果不明显、文件数量规模缩减较少导致的落盘膨胀未能消除的问题。
此外,还可以预先设置检测合并队列中包含文件数量的间隔时间为预设时间,每隔预设时间进行数据合并,相较于在线实时合并的方案,数据合并的执行次数有效减少,避免了频繁读写和合并导致的大量操作开销。
本发明实施例提供的方法,通过热缓存写入、冷存储合并写入的冷热分层机制,解决了写入性能瓶颈和文件直接落盘的膨胀率问题。在此基础上,基于预设阈值进行数据合并,从合并间隔和合并规模层面上减少了合并操作带来的操作开销,同时保证了合并数据的大小可控,有助于进一步消除落盘膨胀的问题。
基于上述任一实施例,图5为本发明另一实施例提供的文件存储方法的流程示意图,如图5所示,在将文件缓存入热缓存资源池之后,还包括将每一文件及其元数据进行预合并。
具体地,在将文件缓存入热缓存资源池之后,还可以对每一文件及其元数据进行一一对应的预合并操作,也就是将文件data及其元数据metadata优先进行合并,得到“metadata,data”形式的文件数据。随后,可以将每个文件“metadata,data”形式的文件数据置入对应的合并队列中,后续再对单个合并队列中的所有文件数据进行合并,得到包含合并队列中各个文件及其元数据的合并数据,再存入冷存储资源池。
基于上述任一实施例,图6为本发明实施例提供的数据合并方法的流程示意图,如图6所示,步骤420中,对合并队列中的文件进行合并,得到合并数据并存入冷存储资源池,具体包括:
步骤421,对合并队列中的文件进行合并,得到合并数据。
步骤422,若合并数据与热缓存资源池内对应缓存的文件一致,则将合并数据存入冷存储资源池。
具体地,在针对合并队列中的文件进行合并之后,可以将合并后得到的合并数据与先前缓存在热缓存资源池内的文件进行比较,从而判断合并前后的数据本身是否一致。如果合并数据与热缓存资源池内对应缓存的文件一致,则说明合并操作正常,直接将合并数据存入冷存储资源池。
此外,如果合并数据与热缓存资源池内对应缓存的文件不同,则说明合并操作过程中存在异常,合并数据不可用,自动触发回滚操作,恢复合并队列中在执行合并之前的文件,重新执行合并操作。
需要说明的是,回滚合并操作可以在判断合并前后的数据不一致时即刻执行,也可以在下次合并任务时执行,本发明实施例对此不作具体限定。
本发明实施例提供的方法,在将合并数据存入冷存储资源池之前对合并前后的数据一致性进行检测,从而确保合并数据的完整准确。
基于上述任一实施例,步骤420中,对合并队列中的文件进行合并,具体包括:基于零拷贝技术和/或多线程技术对合并队列中的文件进行合并。
具体地,图7为本发明实施例提供的零拷贝方法的流程示意图,如图7所示,在针对合并队列中的文件进行合并时,可以通过零拷贝技术,将缓存在合并队列中的多个文件数据组成一个逻辑缓存,并将逻辑缓存写入冷存储资源池。图7中,数据缓存零拷贝箭头左侧展示的是合并队列中缓存的多个文件数据,其中Pointer0至PointerN分别代表指针0至N,每个指针对应一个缓存的文件数据,即Buf0至BufN。通过数据缓存零拷贝的应用,将左侧合并队列中缓存的多个文件数据转换成为一个逻辑缓存,即数据缓存零拷贝箭头右侧展示的各个指针偏移后将对应缓存的文件数据合并,图中的加号表示合并操作。
图8为本发明实施例提供的多线程合并的流程示意图,如图8所示,在针对合并队列中的文件进行合并时,可以通过多线程技术,将需要进行合并的数据进行分区,得到多个分区Partition,再通过堵塞队列(Blocking Queue)将分区任务分发至多个线程thread中进行合并操作,随后写入冷存储资源池。进一步地,可以采用无锁+多线程轮询的机制进行合并操作。图8中,Partition1至PartitionN表示N个分区,thread1至thread4表示4个线程。
本发明实施例中,零拷贝技术和/或多线程技术的应用能够加快单个合并线程内的运行速度。
基于上述任一实施例,图9为本发明实施例提供的文件读取方法的流程示意图,如图9所示,基于分布式存储系统的文件读取方法包括:
步骤910,若检测到文件读取请求,则在热缓存资源池中查询文件读取请求指示的待读取文件;
步骤920,若未在热缓存资源池中查询得到待读取文件,则在冷存储资源池中查询待读取文件所属的合并数据并从中提取返回待读取文件。
具体地,基于分布式存储系统的冷热分层机制,可以将写入分布式存储系统的文件进行分层读取。文件读取请求即客户端发送的用于进行文件读取的请求,文件读取请求中可以包含用于标识待读取文件的信息,例如待读取文件的文件名称。分布式存储系统可以在检测到文件读取请求后,基于文件读取请求中包含的待读取文件的标识信息,先在热缓存资源池中查询是否缓存有待读取文件。
如果在热缓存资源池中查询到了待读取文件,即可直接将热缓存资源池中缓存的待读取文件返回到客户端,又或者将热缓存资源池中缓存的待读取文件及其元数据一并返回到客户端。具体返回待读取文件,或者待读取文件和元数据,可以根据文件读取请求中的指示确定,也可以根据分布式存储系统中预先配置相关信息确定,本发明实施例对此不作具体限定。
考虑到热缓存资源池中缓存的文件及其元数据会在达到TTL后被删除,因此热缓存资源池中可能查询不到待读取文件。此时需要进一步在冷存储资源池的合并数据中查询待读取文件,具体需要查询待读取文件所属的合并数据,并从合并数据中提取待读取文件,将提取得到的待读取文件返回到客户端,或者从合并数据中提取待读取文件及其元数据,将提取得到的待读取文件及其元数据返回到客户端。
本发明实施例提供的方法,基于冷热分层机制进行文件读取,优先在热缓存资源池中查询待读取文件,从而减少文件的读取时间,提高文件的读取效率。
基于上述任一实施例,图10为本发明实施例提供的基于元数据存储资源池的文件读取方法的流程示意图,如图10所示,步骤920中,在冷存储资源池中查询待读取文件所属的合并数据并从中提取返回待读取文件,具体包括:
步骤921,基于元数据存储资源池中的自定义映射信息,确定待读取文件所属合并数据在冷存储资源池中的位置;
步骤922,基于元数据存储资源池中的元数据的索引信息和合并后的元数据,确定待读取文件在所属合并数据中的位置。
具体地,自定义映射信息反映了桶与存储集群内各个存储资源池的映射信息,在确定待读取文件的文件名称后,即可确定待读取文件所属的桶,进而结合自定义映射信息确定待读取文件所属的合并数据在冷存储资源池中的位置,此处合并数据在冷存储资源池中的位置具体可以是合并数据在冷存储资源池的哪个冷存储集群下的哪个存储资源池中。此处,待读取文件所属的桶可以通过哈希取模的方式确定得到。
元数据的索引信息能够实现元数据的索引,在确定待读取文件的文件名称后,可以通过元数据的索引信息确定待读取文件的元数据所在的合并后的元数据,结合待读取文件的元数据在合并后的元数据中的位置,可以得到待读取文件在所属合并数据中的位置。
需要说明的是,本发明实施例不对步骤921和步骤922的执行顺序作具体限定,步骤921可以在步骤922之前或者之后执行,也可以与步骤922同步执行。
步骤923,基于待读取文件所属合并数据在冷存储资源池中的位置,以及待读取文件在所属合并数据中的位置,从冷存储资源池中提取返回待读取文件。
具体地,基于待读取文件所属合并数据在冷存储资源池中的位置即可定位到冷存储资源池中待读取文件所属的合并数据,在此基础上,基于待读取文件在所属合并数据中的位置,即可定位到合并数据中的待读取文件及其元数据,从而实现待读取文件,或者待读取文件及其元数据的提取和返回。
基于上述任一实施例,图11为本发明实施例提供的文件存储装置的结构示意图,如图11所示,文件存储装置包括热缓存单元1110和冷存储单元1120;
其中,热缓存单元1110用于若检测到存在文件写入,则将所述文件缓存入所述热缓存资源池,并将所述文件置于合并队列;
冷存储单元1120用于检测所述合并队列中的文件数量,若所述文件数量达到预设阈值,则对所述合并队列中的文件进行合并,得到合并数据并存入所述冷存储资源池。
本发明实施例提供的装置,通过小文件热缓存写入、冷存储合并写入的冷热分层机制,解决了写入性能瓶颈和文件直接落盘的膨胀率问题。在此基础上,基于预设阈值进行数据合并,从合并规模层面上减少了合并操作带来的操作开销,同时保证了合并数据的大小可控,有助于进一步消除落盘膨胀的问题。
基于上述任一实施例,所述冷存储单元1120包括合并存储子单眼,所述合并存储子单元具体用于:
对所述合并队列中的小文件及其元数据进行合并,得到合并数据;
若所述合并数据与所述热缓存资源池内对应缓存的小文件及其元数据一致,则将所述合并数据存入所述冷存储资源池。
基于上述任一实施例,图12为本发明实施例提供的文件读取装置的结构示意图,如图12所示,文件读取装置包括热缓存查询单元1210和判断返回单元1220;
其中,热缓存查询单元1210用于若检测到文件读取请求,则在所述热缓存资源池中查询所述文件读取请求指示的待读取文件;
判断返回单元1220用于若未在所述热缓存资源池中查询得到所述待读取文件,则在所述冷存储资源池中查询所述待读取文件所属的合并数据并从中提取返回所述待读取文件。
本发明实施例提供的装置,基于冷热分层机制进行文件读取,优先在热缓存资源池中查询待读取文件,从而减少文件的读取时间,提高文件的读取效率。
基于上述任一实施例,判断返回单元1220包括冷存储读取子单元,所述冷存储读取子单元具体用于:
基于元数据存储资源池中的自定义映射信息,确定所述待读取文件所属合并数据在所述冷存储资源池中的位置;
基于所述元数据存储资源池中的元数据的索引信息和合并后的元数据,确定所述待读取文件在所属合并数据中的位置;
基于所述待读取文件所属合并数据在所述冷存储资源池中的位置,以及所述待读取文件在所属合并数据中的位置,从所述冷存储资源池中提取返回所述待读取文件。
图13为本发明实施例提供的电子设备的结构示意图,如图13所示,该电子设备可以包括:处理器(processor)1310、通信接口(Communications Interface)1320、存储器(memory)1330和通信总线1340,其中,处理器1310,通信接口1320,存储器1330通过通信总线1340完成相互间的通信。处理器1310可以调用存储器1330中的逻辑命令,以执行如下方法:
若检测到存在文件写入,则将所述文件缓存入所述热缓存资源池,并将所述文件置于合并队列;
检测所述合并队列中的文件数量,若所述文件数量达到预设阈值,则对所述合并队列中的文件进行合并,得到合并数据并存入所述冷存储资源池。
此外,处理器1310还可以调用存储器1330中的逻辑命令,以执行如下方法:
若检测到文件读取请求,则在所述热缓存资源池中查询所述文件读取请求指示的待读取文件;
若未在所述热缓存资源池中查询得到所述待读取文件,则在所述冷存储资源池中查询所述待读取文件所属的合并数据并从中提取返回所述待读取文件。
此外,上述的存储器1330中的逻辑命令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干命令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的方法,例如包括:
若检测到存在文件写入,则将所述文件缓存入所述热缓存资源池,并将所述文件置于合并队列;
检测所述合并队列中的文件数量,若所述文件数量达到预设阈值,则对所述合并队列中的文件进行合并,得到合并数据并存入所述冷存储资源池。
本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的方法,例如包括:
若检测到文件读取请求,则在所述热缓存资源池中查询所述文件读取请求指示的待读取文件;
若未在所述热缓存资源池中查询得到所述待读取文件,则在所述冷存储资源池中查询所述待读取文件所属的合并数据并从中提取返回所述待读取文件。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干命令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (13)

1.一种分布式存储系统,其特征在于,包括:
热缓存资源池,用于缓存文件,并将所述文件置于合并队列;
冷存储资源池,用于存储合并数据,所述合并数据是所述合并队列中的文件数量达到预设阈值后合并而成;
元数据存储资源池,用于存储所述文件的元数据的索引信息、合并后的元数据以及自定义映射信息中的至少一种。
2.根据权利要求1所述的分布式存储系统,其特征在于,所述热缓存资源池、所述冷存储资源池和所述元数据存储资源池均包括若干个存储集群,每一存储集群包括多个存储资源池,每一存储资源池包括多个可用域。
3.根据权利要求1所述的分布式存储系统,其特征在于,所述元数据存储资源池包括:
第一资源池,用于存储所述自定义映射信息;
第二资源池,用于存储所述元数据的索引信息;
第三资源池,用于存储所述合并后的元数据。
4.根据权利要求1至3中任一项所述的分布式存储系统,其特征在于,对象存储网关与所述热缓存资源池和所述冷存储资源池均基于分布式文件架构的同一层结构设置。
5.根据权利要求1至3中任一项所述的分布式存储系统,其特征在于,所述文件置于的合并队列为所述文件所属桶对应的合并队列,所述文件所属桶是对所述文件的文件名称进行哈希取模得到的。
6.一种基于权利要求1至5任一项所述的分布式存储系统的文件存储方法,其特征在于,包括:
若检测到存在文件写入,则将所述文件缓存入所述热缓存资源池,并将所述文件置于合并队列;
检测所述合并队列中的文件数量,若所述文件数量达到预设阈值,则对所述合并队列中的文件进行合并,得到合并数据并存入所述冷存储资源池。
7.根据权利要求6所述的文件存储方法,其特征在于,所述对所述合并队列中的文件进行合并,得到合并数据并存入所述冷存储资源池,具体包括:
对所述合并队列中的文件进行合并,得到合并数据;
若所述合并数据与所述热缓存资源池内对应缓存的文件一致,则将所述合并数据存入所述冷存储资源池。
8.一种基于权利要求1至5任一项所述的分布式存储系统的文件读取方法,其特征在于,包括:
若检测到文件读取请求,则在所述热缓存资源池中查询所述文件读取请求指示的待读取文件;
若未在所述热缓存资源池中查询得到所述待读取文件,则在所述冷存储资源池中查询所述待读取文件所属的合并数据并从中提取返回所述待读取文件。
9.根据权利要求8所述的文件读取方法,其特征在于,所述在所述冷存储资源池中查询所述待读取文件所属的合并数据并从中提取返回所述待读取文件,具体包括:
基于元数据存储资源池中的自定义映射信息,确定所述待读取文件所属合并数据在所述冷存储资源池中的位置;
基于所述元数据存储资源池中的元数据的索引信息和合并后的元数据,确定所述待读取文件在所属合并数据中的位置;
基于所述待读取文件所属合并数据在所述冷存储资源池中的位置,以及所述待读取文件在所属合并数据中的位置,从所述冷存储资源池中提取返回所述待读取文件。
10.基于权利要求1至5任一项所述的分布式存储系统的文件存储装置,其特征在于,包括:
热缓存单元,用于若检测到存在文件写入,则将所述文件缓存入所述热缓存资源池,并将所述文件置于合并队列;
冷存储单元,用于检测所述合并队列中的文件数量,若所述文件数量达到预设阈值,则对所述合并队列中的文件进行合并,得到合并数据并存入所述冷存储资源池。
11.基于权利要求1至5任一项所述的分布式存储系统的文件读取装置,其特征在于,包括:
热缓存查询单元,用于若检测到文件读取请求,则在所述热缓存资源池中查询所述文件读取请求指示的待读取文件;
判断返回单元,用于若未在所述热缓存资源池中查询得到所述待读取文件,则在所述冷存储资源池中查询所述待读取文件所属的合并数据并从中提取返回所述待读取文件。
12.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求6或7所述的文件存储方法,或如权利要求8或9所述的文件读取方法的步骤。
13.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求6或7所述的文件存储方法,或如权利要求8或9所述的文件读取方法的步骤。
CN202010954902.4A 2020-09-11 2020-09-11 分布式存储系统、方法、装置、电子设备和存储介质 Pending CN112035428A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010954902.4A CN112035428A (zh) 2020-09-11 2020-09-11 分布式存储系统、方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010954902.4A CN112035428A (zh) 2020-09-11 2020-09-11 分布式存储系统、方法、装置、电子设备和存储介质

Publications (1)

Publication Number Publication Date
CN112035428A true CN112035428A (zh) 2020-12-04

Family

ID=73588906

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010954902.4A Pending CN112035428A (zh) 2020-09-11 2020-09-11 分布式存储系统、方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN112035428A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112632129A (zh) * 2020-12-31 2021-04-09 联想未来通信科技(重庆)有限公司 一种码流数据管理方法、装置及存储介质
CN113419673A (zh) * 2021-06-05 2021-09-21 济南浪潮数据技术有限公司 一种rbd访问存储集群的方法、系统、介质及设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104731886A (zh) * 2015-03-12 2015-06-24 深圳市连用科技有限公司 一种海量小文件的处理方法及系统
CN105630810A (zh) * 2014-10-30 2016-06-01 曙光信息产业股份有限公司 一种对于海量小文件在分布式存储系统中上载的方法
CN106933984A (zh) * 2017-02-20 2017-07-07 周长英 一种分布式文件系统的调度方法及系统
CN106951529A (zh) * 2017-03-21 2017-07-14 郑州云海信息技术有限公司 一种海量小文件的管理方法及系统
CN107391280A (zh) * 2017-07-31 2017-11-24 郑州云海信息技术有限公司 一种小文件的接收和存储方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105630810A (zh) * 2014-10-30 2016-06-01 曙光信息产业股份有限公司 一种对于海量小文件在分布式存储系统中上载的方法
CN104731886A (zh) * 2015-03-12 2015-06-24 深圳市连用科技有限公司 一种海量小文件的处理方法及系统
CN106933984A (zh) * 2017-02-20 2017-07-07 周长英 一种分布式文件系统的调度方法及系统
CN106951529A (zh) * 2017-03-21 2017-07-14 郑州云海信息技术有限公司 一种海量小文件的管理方法及系统
CN107391280A (zh) * 2017-07-31 2017-11-24 郑州云海信息技术有限公司 一种小文件的接收和存储方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112632129A (zh) * 2020-12-31 2021-04-09 联想未来通信科技(重庆)有限公司 一种码流数据管理方法、装置及存储介质
CN112632129B (zh) * 2020-12-31 2023-11-21 联想未来通信科技(重庆)有限公司 一种码流数据管理方法、装置及存储介质
CN113419673A (zh) * 2021-06-05 2021-09-21 济南浪潮数据技术有限公司 一种rbd访问存储集群的方法、系统、介质及设备
CN113419673B (zh) * 2021-06-05 2022-05-27 济南浪潮数据技术有限公司 一种rbd访问存储集群的方法、系统、介质及设备

Similar Documents

Publication Publication Date Title
EP3806424A1 (en) File system data access method and file system
CN107169083B (zh) 公安卡口海量车辆数据存储与检索方法及装置、电子设备
CN103020315B (zh) 一种基于主从分布式文件系统的海量小文件存储方法
Islam et al. High performance design for HDFS with byte-addressability of NVM and RDMA
US10289315B2 (en) Managing I/O operations of large data objects in a cache memory device by dividing into chunks
CN106776967B (zh) 基于时序聚合算法的海量小文件实时存储方法及装置
CN107038206B (zh) Lsm树的建立方法、lsm树的数据读取方法和服务器
CN110109873B (zh) 一种用于消息队列的文件管理方法
Sheoran et al. Optimized mapfile based storage of small files in hadoop
CN113377868A (zh) 一种基于分布式kv数据库的离线存储系统
CN106980665A (zh) 数据字典实现方法、装置及数据字典管理系统
CN107239319A (zh) 一种虚拟机的数据存储方法和装置
CN112035428A (zh) 分布式存储系统、方法、装置、电子设备和存储介质
US20230418811A1 (en) Transaction processing method and apparatus, computing device, and storage medium
CN112328702B (zh) 数据同步方法及系统
Tao et al. LHF: A new archive based approach to accelerate massive small files access performance in HDFS
Lu et al. TridentKV: A read-Optimized LSM-tree based KV store via adaptive indexing and space-efficient partitioning
US10789234B2 (en) Method and apparatus for storing data
CN101783814A (zh) 海量存储系统的元数据存储方法
Yan et al. Hmfs: efficient support of small files processing over HDFS
CN115470235A (zh) 一种数据处理方法、装置以及设备
CN109359100A (zh) Pb级历史数据和在线数据的实时计算的可视化建模方法
CN113868249A (zh) 一种数据存储方法、装置、计算机设备以及存储介质
CN112965939A (zh) 一种文件合并方法、装置和设备
CN114489770A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20201204