CN112328549A - 小文件的存储方法、电子设备及存储介质 - Google Patents

小文件的存储方法、电子设备及存储介质 Download PDF

Info

Publication number
CN112328549A
CN112328549A CN202011176254.0A CN202011176254A CN112328549A CN 112328549 A CN112328549 A CN 112328549A CN 202011176254 A CN202011176254 A CN 202011176254A CN 112328549 A CN112328549 A CN 112328549A
Authority
CN
China
Prior art keywords
file
data
target
target file
storage
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
CN202011176254.0A
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.)
Suzhou Yuanhen Cloud Technology Co ltd
Wuxi Advanced Technology Research Institute
Original Assignee
Suzhou Yuanhen Cloud Technology Co ltd
Wuxi Advanced Technology Research Institute
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 Suzhou Yuanhen Cloud Technology Co ltd, Wuxi Advanced Technology Research Institute filed Critical Suzhou Yuanhen Cloud Technology Co ltd
Priority to CN202011176254.0A priority Critical patent/CN112328549A/zh
Publication of CN112328549A publication Critical patent/CN112328549A/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/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/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/162Delete operations
    • 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

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)
  • Human Computer Interaction (AREA)
  • Library & Information Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种小文件的存储方法、电子设备及存储介质。其中,小文件的存储方法包括数据回收流程,所述数据回收流程包括:接收来自客户端的删除指令;根据所述删除指令删除第一目标文件,对所述第一目标文件的数据空间执行删除操作,以释放合并目标文件的存储空间;其中,所述第一目标文件写入时被合并到所述合并目标文件中。本发明能够将海量小文件对象数据合并为大文件进行存储,当对象数据删除后,能够有效地释放这部分数据空间,不会产生数据空洞,从而实现空间的回收利用,给用户提供空间经济性,提升存储系统的性能。

Description

小文件的存储方法、电子设备及存储介质
技术领域
本发明涉及数据存储技术领域,尤其是涉及一种小文件的存储方法、电子设备及存储介质。
背景技术
在分布式对象存储系统中,一般都存储着大量的非结构化数据,例如:图片、语音、视频、文本、文档等,数据从大到GB级,小到KB级。而在大量数据存储场景,比如人工智能,金融行业影像数据等场景,存储的超过大多数数据往往都是几十K的小文件,在海量小文件的应用场景下,一般在数据达到亿级就会出现性能缓慢等问题,所以底层能够支撑文件合并存储是支撑海量对象小文件存储的技术方案之一。
相关技术的小文件合并方案中,部分小文件被删除后,对于原先合并后的目标文件会产生大量的空洞,底层存储是采用Block的方式管理数据,最小存储单元是64K的数据单元,当数据被删除后,实际在存储底层是标记删除,其存储空间并没有得到释放,而数据释放会带来大量的文件索引变更和数据合并问题,导致存储系统的性能遭受到极大的影响。
发明内容
本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种小文件的存储方法,能够将海量小文件对象数据合并为大文件进行存储,当对象数据删除后,能够有效地释放这部分数据空间,不会产生数据空洞,从而实现空间的回收利用,提升存储系统的性能。
本发明还提出一种具有上述小文件的存储方法的电子设备。
根据本发明的第一方面实施例的小文件的存储方法,包括数据回收流程,所述数据回收流程包括:接收来自客户端的删除指令;根据所述删除指令删除第一目标文件,对所述第一目标文件的数据空间执行删除操作,以释放合并目标文件的存储空间;其中,所述第一目标文件写入时被合并到所述合并目标文件中。
根据本发明实施例的小文件的存储方法,至少具有如下有益效果:通过数据回收流程进行文件删除和空间回收,能够做到当对象数据删除后,能够有效地释放这部分数据空间,不会产生数据空洞,从而实现空间的回收利用,给用户提供空间经济性,提升存储系统的性能。
根据本发明的一些实施例,还包括数据写入流程,所述数据写入流程包括:接收来自客户端的所述第一目标文件;对所述第一目标文件的大小进行判定,若所述第一目标文件的大小小于第一阈值,判断所述第一目标文件为小文件;若所述第一目标文件为小文件,将所述第一目标文件合并到所述合并目标文件并存储。
根据本发明的一些实施例,所述将所述第一目标文件合并到所述合并目标文件并存储,包括:给所述第一目标文件生成目标ID,所述目标ID全局唯一;通过存储服务控制策略来完成向存储服务进行数据发送和事务处理控制;通过文件存储规则来确定所述第一目标文件的存储格式;控制所述第一目标文件按照文件存储格式事务写入。
根据本发明的一些实施例,所述通过存储服务控制策略来完成向存储服务进行数据发送和事务处理控制,包括:当写入所述第一目标文件,发送所述第一目标文件给到存储服务进行数据写入;当数据写入成功后,再将所述第一目标文件的元数据进行写入,更新所述第一目标文件所在桶的索引信息;所述索引信息包括所述目标ID。
根据本发明的一些实施例,所述第一目标文件存储格式包括头文件和目标数据文件,所述控制所述第一目标文件按照文件存储格式事务写入,包括:控制所述第一目标文件写入所述目标数据文件中;更新所述第一目标文件对应的所述头文件。
根据本发明的一些实施例,所述第一目标文件存储格式包括头文件和目标数据文件,所述数据回收流程还包括:删除所述第一目标文件后,更改所述第一目标文件的所述头文件。
根据本发明的一些实施例,所述数据回收流程还包括:设置第一扫描周期对所述合并目标文件执行周期性扫描。
根据本发明的一些实施例,当扫描到所述头文件中有部分文件要执行删除操作时,将目标数据文件锁住,进行只读操作;将需要删除的文件通过数据分配器找出,记录在Key Map中的对应的数据空间,对这些数据空间执行删除操作。
根据本发明的一些实施例,还包括数据读取流程,所述数据读取流程包括:查询桶中元数据;获得所述第一目标文件的目标ID;获取所述第一目标文件的头文件;索引到所述第一目标文件的数据区域;读取所述第一目标文件。
根据本发明的第二方面实施例的电子设备,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行所述指令时实现如本发明第一方面实施例任一项所述的小文件的存储方法。
根据本发明实施例的电子设备,至少具有如下有益效果:通过执行小文件的存储方法,能够将海量小文件对象数据合并为大文件进行存储,当数据删除后,能够有效地释放这部分数据空间,不会产生数据空洞,从而实现空间的回收利用,减轻存储系统的数据管理负担,给用户提供空间经济性,提升存储性能。
根据本发明的第三方面实施例的计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如本发明第一方面实施例任一项所述的小文件的存储方法。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
下面结合附图和实施例对本发明做进一步的说明,其中:
图1为本发明一些实施例提供的数据存储结构示意图;
图2为本发明一些实施例提供的对象存储数据结构示意图;
图3为本发明一些实施例提供的数据回收流程图;
图4为本发明一些实施例提供的数据写入流程图;
图5为本发明另一些实施例提供的数据写入流程图;
图6为本发明一些实施例提供的目标ID生产工厂流程图;
图7为本发明一些实施例提供的存储服务控制策略流程图;
图8为本发明一些实施例提供的数据存储写入控制流程图;
图9为本发明一些实施例提供的删除文件收回策略流程图;
图10为本发明一些实施例提供的删除操作流程图;
图11为本发明一些实施例提供的数据读取流程图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
在本发明的描述中,若干的含义是一个以上,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
本发明的描述中,除非另有明确的限定,设置、安装、连接等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本发明中的具体含义。
本发明的描述中,参考术语“一个实施例”、“一些实施例”、“示意性实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
下面为本发明中分布式对象存储系统的一些基础技术背景,具体为:
参照图1,图1为本发明一些实施例提供的数据存储结构示意图,在本发明的一些实施例中,分布式对象存储系统的数据存储结构100包括数据分配器101、裸块设备102和元数据管理103,数据存储结构100与目标数据文件104之间是逻辑映射关系,底层的数据存储是通过裸块设备102进行存储的,最小数据存储单元为64KB,裸块设备102上有多个64K空间105,元数据管理103包括Key Map106和WAL MAP107,在元数据管理103中通过Key Map106来进行数据空间和逻辑地址的管理,Key Map106只是一个逻辑概念,实际是有很多个KV数据结构组成,数据分配器101主要职责是将数据文件进行64KB数据空间拆分,然后基于KeyMap106中的空间标识,分配一些列的空间进行数据存储,底层数据保存不经过文件系统,所以目标数据文件104只是个逻辑单位,实际是以多个64KB的空间单位通过Block的方式存储在硬盘上。
参照图2,图2为本发明一些实施例提供的对象存储数据结构示意图,对象存储数据结构200采取扁平化的数据结构,分为租户201、桶202、对象文件203三层,租户201代表一个虚拟用户的管理空间,拥有用户登录的用户ID和秘钥,通过对象存储认证后,可以查看和管理本租户201的数据信息;桶202是一个数据管理单元的划分,其归属与某一个租户201,一个租户201下会有多个桶202,桶202会管理桶202中的对象数据信息;对象文件203是最终的对象数据,都归属某一个桶202中,桶202中有多个对象文件203,每个对象文件203一一对应一个真实要存储的文件。
下面结合本发明的一些实施例,对小文件的存储方法做具体描述:
本发明一些实施例提供了一种小文件的存储方法,应用于存储系统中,在一些实施例中,小文件的存储方法应用于分布式对象存储系统中,其中,分布式对象存储系统的数据存储结构在上述实施例中已经详细说明,在此不再赘述。参照图3所示,本发明一些实施例的数据回收流程包括但不限于步骤S310、步骤S320。
步骤S310,接收来自客户端的删除指令。
步骤S320,根据删除指令删除第一目标文件,对第一目标文件的数据空间执行删除操作,以释放合并目标文件的存储空间。
在本发明的一些实施例中,分布式对象存储系统接收来自客户端的删除指令,删除第一目标文件,第一目标文件为已经存储在分布式对象存储系统中的一个小文件,分布式对象存储系统对第一目标文件对应在合并目标文件中的数据空间执行删除操作,其中第一目标文件在写入时被合并到合并目标文件中进行存储。在存储系统中,当数据被删除后,实际在存储底层是标记删除,其存储空间并没有得到释放,存储系统通过数据回收流程进行文件删除和空间回收,当第一目标文件删除后,能够有效地释放这部分数据空间,不会产生数据空洞,从而实现空间的回收利用,给用户提供空间经济性,提升存储系统的性能。
参照图4所示,本发明一些实施例还提供了数据写入流程,数据写入流程包括但不限于步骤S410、步骤S420。
步骤S410,接收来自客户端的第一目标文件。
步骤S420,对第一目标文件的大小进行判定,当第一目标文件的大小小于第一阈值,判断第一目标文件为小文件。
在本发明的一些实施例中,分布式对象存储系统中存储着大量的非结构化数据,在大量数据存储场景下,存储的大部分数据都是几十K的小文件,少部分是大文件,面对海量的小文件,通过合并存储可以为分布式对象存储系统减轻存储负担,当分布式对象存储系统在接收到来自客户端的第一目标文件时,对第一目标文件进行合并策略判定,第一目标文件为客户端要求存储在分布式对象存储系统中的文件,通过合并策略判定,如果第一目标文件的大小小于第一阈值,判断第一目标文件为小文件,进行下一步操作;如果第一目标文件的大小大于或等于第一阈值,判断第一目标文件为大文件,对大文件直接进行存储,第一阈值为一个预设的文件大小值。
步骤S430,当第一目标文件为小文件,将第一目标文件合并到合并目标文件并存储。
在本发明的一些实施例中,通过合并策略判定,如果第一目标文件的大小小于第一阈值,判断第一目标文件为小文件,将第一目标文件合并到合并目标文件存储到分布式对象存储系统中,合并目标文件包括已经存储在分布式对象存储系统中的若干个小文件,第一目标文件与其合并后形成新的合并目标文件进行存储。
本发明的另一些实施例还提供了数据写入流程,如图5所示,图5是图4中步骤S410至步骤S430的细化流程的一个实施例的示意图,包括但不限于步骤S510至步骤S550。
步骤S510,合并策略判定,判定对象是否需要进行合并处理。
在本发明的一些实施例中,当分布式对象存储系统在接收到来自客户端的第一目标文件时,对第一目标文件进行合并策略判定,第一目标文件为客户端要求存储在分布式对象存储系统中的文件,通过合并策略判定,如果第一目标文件的大小小于第一阈值,判断第一目标文件为小文件,进行下一步操作;如果第一目标文件的大小大于或等于第一阈值,判断第一目标文件为大文件,直接进行存储,第一阈值为一个预设的文件大小值。
需要说明的是,在本发明的一些实施例中,第一阈值设置为1MB,如果第一目标文件的大小小于1MB,判断第一目标文件为小文件,进行下一步操作;如果第一目标文件的大小大于或等于1MB,判断第一目标文件为大文件,直接进行存储。
需要说明的是,在本发明的一些实施例中,在不脱离本发明构思的前提下,第一阈值可以根据实际应用情况而进行适当的选择,本实施例对此并不作具体限定。
步骤S520,通过目标ID生产工厂给第一目标文件生成目标ID。
在本发明的一些实施例中,在判断第一目标文件为小文件后,通过目标ID生产工厂来给第一目标文件获取一个合并后的目标ID,合并后的目标ID是一个通用唯一识别码,第一目标文件合并后的目标ID全局唯一,通过该目标ID能够唯一找到第一目标文件。
步骤S530,通过存储服务控制策略来完成向存储服务进行数据发送和事务处理控制。
在本发明的一些实施例中,在对象存储中,每写入一个对象数据,都先发送数据给到存储服务进行数据写入,数据写入成功后,再将这个对象的元数据进行写入,更新其所在桶的索引信息,主要更新内容包括桶内的对象列表中增加了写入的对象的名称,桶的对象数量增加,桶的总大小空间增加,桶的可用空间减少。通过存储服务控制策略保证当数据写入成功后,能够同步完成对象的元数据更新,保证数据信息匹配,使得第一目标文件的存储保证在一个事务要求中进行。
步骤S540,通过文件存储规则来确定第一目标文件存储格式。
在本发明的一些实施例中,第一目标文件最终被存储为合并目标文件,并通过文件存储规则来确定第一目标文件在合并目标文件中的存储格式,该存储格式包括头文件格式和目标数据文件格式,头文件和目标数据文件的对应关系为:一个头文件对应多个目标数据文件,头文件中存储着目标数据文件的索引信息及状态信息,该状态包括该目标数据文件是否删除,目标数据文件会按照顺序进行排列,头文件和目标数据文件都是逻辑概念,最终存储底层,是以64K的数据空间为最小存储单元,数据最终存储都是以裸设备的方式进行存储。
需要说明的是,在本发明的一些实施例中,头文件存储的信息包括目标数据文件ID、原文件ID、数据起始位置、数据长度、标记删除及是否回收信息,头文件通过KV(Key-value,键值)方式存储以上数据信息,形成一个本地文件KV数据库,目标数据文件ID即目标数据文件的索引信息,是所存储的文件的目标ID,标记删除及是否回收信息即目标数据文件的状态信息。
步骤S550,通过数据存储写入控制来控制第一目标文件按照文件存储格式事务写入。
在本发明的一些实施例中,在确定好第一目标文件的存储格式后,通过数据存储写入控制来控制第一目标文件按照文件存储格式事务写入,确保第一目标文件成功写入分布式对象存储系统中进行存储。
本发明的一些实施例还提供了目标ID生产工厂流程,如图6所示,图6是图5中步骤S520的细化流程的一个实施例的示意图,包括但不限于步骤S610至步骤S640。
步骤S610,ID生产。
步骤S620,ID池数据控制策略。
步骤S630,ID数据结构。
步骤S640,ID状态回写更新。
在本发明的一些实施例中,通过目标ID生产工厂获取第一目标文件的目标ID包括进行ID生产,通过ID池数据控制策略,得到ID数据结构,再通过ID状态回写更新,第一目标文件获取一个合并后的目标ID,合并后的目标ID是一个通用唯一识别码,第一目标文件合并后的目标ID全局唯一,通过该目标ID能够唯一找到第一目标文件。
本发明的一些实施例还提供了存储服务控制策略流程,如图7所示,图7是图5中步骤S530的细化流程的一个实施例的示意图,包括但不限于步骤S710至步骤S720。
步骤S710,向存储服务发送数据写入指令。
步骤S720,回写桶的元数据。
在本发明的一些实施例中,存储服务控制策略包括向存储服务发送数据写入指令后,回写桶的元数据,通过存储服务控制策略保证当数据写入成功后,能够同步完成对象数据的元数据更新,保证数据信息匹配,使得第一目标文件的存储保证在一个事务要求中进行。
本发明的一些实施例还提供了数据存储写入控制流程,如图8所示,图8是图5中步骤S550的细化流程的一个实施例的示意图,包括但不限于步骤S810至步骤S820。
步骤S710,数据写入目标数据文件。
步骤S720,更新头文件。
在本发明的一些实施例中,在确定好第一目标文件的存储格式后,通过数据存储写入控制来控制第一目标文件按照文件存储格式事务写入,并存储在合并目标文件中,首先先将数据写入目标数据文件中,再更新头文件,包括更新头文件的索引信息和状态信息,确保第一目标文件成功写入分布式对象存储系统中进行存储。
在本发明的一些实施例中,文件最终被存储在合并目标文件中,并存储为头文件和目标数据文件格式,头文件和目标数据文件的对应关系为:一个头文件对应多个目标数据文件,头文件中存储着目标数据文件的索引信息及状态信息,该状态包括该目标数据文件是否删除,目标数据文件会按照顺序进行排列,头文件和目标数据文件都是逻辑概念,最终存储底层,是以64K的数据空间为最小存储单元,数据最终存储都是以裸设备的方式进行存储。数据回收流程包括删除文件记录策略规则,当第一目标文件被删除后,更改第一目标文件的头文件状态信息,标记该状态信息为删除状态信息。
在本发明的一些实施例中,数据回收流程包括头文件异步扫描规则,分布式对象存储系统设置第一扫描周期对合并目标文件执行周期性扫描,第一扫描周期为一个预置的时间周期,在一些实施例中,第一扫描周期为3个月,分布式对象存储系统每3个月完成一次头文件全盘扫描,检测出头文件中是否存在删除状态信息,再执行相应操作。
需要说明的是,在本发明的一些实施例中,第一扫描周期也可以设置在每天的固定时间段内,分布式对象存储系统可以在每天固定时间段来执行扫描,检测出头文件中是否存在删除状态信息,再执行相应操作。
需要说明的是,在本发明的一些实施例中,在不脱离本发明构思的前提下,第一扫描周期可以根据实际应用情况而进行适当的选择,本实施例对此并不作具体限定。
本发明的一些实施例还提供了删除文件收回策略流程,如图9所示,图9是图3中步骤S320的细化流程的一个实施例的示意图,包括但不限于步骤S910至步骤S920。
步骤S910,当扫描到头文件中有部分文件要执行删除操作时,将目标数据文件锁住,进行只读操作。
步骤S920,将需要删除的文件通过数据分配器找出,记录在Key Map中的对应的数据空间,对这些数据空间执行删除操作。
在本发明的一些实施例中,分布式对象存储系统在对头文件执行完扫描后,检测到头文件中存在删除状态信息,即该头文件删除状态信息对应的目标数据文件执行删除操作,将目标数据文件锁住,进行只读操作,将需要删除的文件通过数据分配器找出,记录在Key Map中的对应的数据空间,对这些数据空间执行删除操作,执行完删除操作后,该数据空间得到释放,不会产生数据空洞,从而实现空间的回收利用,给用户提供空间经济性,提升存储系统的性能。
本发明的一些实施例还提供了删除操作流程,如图10所示,图10是图9中步骤S920的细化流程的一个实施例的示意图,包括但不限于步骤S1010至步骤S1020。
步骤S1010,此64K数据空间是连续的待删除空间没有存储其它数据,且此64K数据空间在没有用满状态下只有待删除数据没有存储其它数据。
步骤S1020,对该数据空间标记为空间释放。
在本发明的一些实施例中,对数据空间执行删除操作操作需判断此64K数据空间是否是连续的待删除空间而没有存储其它数据,且此64K数据空间在没有用满状态下,只有待删除数据没有存储其它数据,即该64K数据空间没有存满数据,也没有其它数据,满足以上条件,对该数据空间标记为空间释放,执行完删除操作后,该数据空间得到释放,不会产生数据空洞,从而实现空间的回收利用,给用户提供空间经济性,提升存储系统的性能。
参照图11所示,本发明一些实施例的数据读取流程包括但不限于步骤S1110至步骤S1150。
步骤S1110,查询桶中元数据。
步骤S1120,获得第一目标文件的目标ID。
步骤S1130,获取第一目标文件的头文件。
步骤S1140,索引到第一目标文件的数据区域。
步骤S1150,读取第一目标文件。
在本发明的一些实施例中,分布式对象存储系统接收来自客户端的数据读取指令,对桶中元数据查询,获取相应的对象数据,即第一目标文件,再获取第一目标文件的目标ID,该ID全局唯一,通过该ID找到目标文件头文件,从头文件中获取第一目标文件的索引信息,索引到相应的数据区域中的目标数据文件,最终读取到该文件。
此外,本发明的另一些实施例还提供了一种电子设备,该电子设备包括:至少一个处理器、与至少一个处理器通信连接的存储器及存储在存储器上并可在处理器上运行的计算机程序。
处理器和存储器可以通过总线或者其它方式连接。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其它非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
需要说明的是,本实施例中的电子设备,通过执行小文件的存储方法,能够将海量小文件对象数据合并为大文件进行存储,当对象数据删除后,能够有效地释放这部分数据空间,不会产生数据空洞,从而实现空间的回收利用,给用户提供空间经济性,提升存储系统的性能。
实现上述实施例的小文件的存储方法所需的非暂态软件程序以及指令存储在存储器中,当被处理器执行时,执行上述实施例的小文件的存储方法,例如,执行以上描述的图3中的方法步骤S310至S320、图4中的方法步骤S410至S430、图5中的方法步骤S510至S550、图6中的方法步骤S610至S640、图7中的方法步骤S710至S720、图8中的方法步骤S810至S820、图9中的方法步骤S910至S920、图10中的方法步骤S1010至S1020、图11中的方法步骤S1110至S1150。
以上所描述的终端实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
此外,本发明的另一个实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个处理器或控制器执行,例如,被上述装置实施例中的一个处理器执行,可使得上述处理器执行上述实施例中的小文件的存储方法,例如,执行以上描述的图3中的方法步骤S310至S320、图4中的方法步骤S410至S430、图5中的方法步骤S510至S550、图6中的方法步骤S610至S640、图7中的方法步骤S710至S720、图8中的方法步骤S810至S820、图9中的方法步骤S910至S920、图10中的方法步骤S1010至S1020、图11中的方法步骤S1110至S1150。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其它数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁盒、磁带、磁盘存储或其它磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其它的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其它传输机制之类的调制数据信号中的其它数据,并且可包括任何信息递送介质。
上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。此外,在不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。

Claims (11)

1.小文件的存储方法,其特征在于,包括数据回收流程,所述数据回收流程包括:
接收来自客户端的删除指令;
根据所述删除指令删除第一目标文件,对所述第一目标文件的数据空间执行删除操作,以释放合并目标文件的存储空间;
其中,所述第一目标文件写入时被合并到所述合并目标文件中。
2.根据权利要求1所述的小文件的存储方法,其特征在于,还包括数据写入流程,所述数据写入流程包括:
接收来自客户端的所述第一目标文件;
对所述第一目标文件的大小进行判定,若所述第一目标文件的大小小于第一阈值,判断所述第一目标文件为小文件;
若所述第一目标文件为小文件,将所述第一目标文件合并到所述合并目标文件并存储。
3.根据权利要求2所述的小文件的存储方法,其特征在于,所述将所述第一目标文件合并到所述合并目标文件并存储,包括:
给所述第一目标文件生成目标ID,所述目标ID全局唯一;
通过存储服务控制策略来完成向存储服务进行数据发送和事务处理控制;
通过文件存储规则来确定所述第一目标文件的存储格式;
控制所述第一目标文件按照文件存储格式事务写入。
4.根据权利要求3所述的小文件的存储方法,其特征在于,所述通过存储服务控制策略来完成向存储服务进行数据发送和事务处理控制,包括:
当写入所述第一目标文件,发送所述第一目标文件给到存储服务进行数据写入;
当数据写入成功后,再将所述第一目标文件的元数据进行写入,更新所述第一目标文件所在桶的索引信息;
所述索引信息包括所述目标ID。
5.根据权利要求3所述的小文件的存储方法,其特征在于,所述第一目标文件存储格式包括头文件和目标数据文件,所述控制所述第一目标文件按照文件存储格式事务写入,包括:
控制所述第一目标文件写入所述目标数据文件中;
更新所述第一目标文件对应的所述头文件。
6.根据权利要求1所述的小文件的存储方法,其特征在于,所述第一目标文件存储格式包括头文件和目标数据文件,所述数据回收流程还包括:
删除所述第一目标文件后,更改所述第一目标文件的所述头文件。
7.根据权利要求6所述的小文件的存储方法,其特征在于,所述数据回收流程还包括:
设置第一扫描周期对所述合并目标文件执行周期性扫描。
8.根据权利要求7所述的小文件的存储方法,其特征在于,包括:
当扫描到所述头文件中有部分文件要执行删除操作时,将目标数据文件锁住,进行只读操作;
将需要删除的文件通过数据分配器找出,记录在Key Map中的对应的数据空间,对这些数据空间执行删除操作。
9.根据权利要求5所述的小文件的存储方法,其特征在于,还包括数据读取流程,所述数据读取流程包括:
查询桶中元数据;
获得所述第一目标文件的目标ID;
获取所述第一目标文件的头文件;
索引到所述第一目标文件的数据区域;
读取所述第一目标文件。
10.电子设备,其特征在于,包括:
至少一个处理器,以及与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行所述指令时实现如权利要求1至9任一项所述的小文件的存储方法。
11.计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如权利要求1至9任一项所述的小文件的存储方法。
CN202011176254.0A 2020-10-29 2020-10-29 小文件的存储方法、电子设备及存储介质 Pending CN112328549A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011176254.0A CN112328549A (zh) 2020-10-29 2020-10-29 小文件的存储方法、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011176254.0A CN112328549A (zh) 2020-10-29 2020-10-29 小文件的存储方法、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN112328549A true CN112328549A (zh) 2021-02-05

Family

ID=74296229

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011176254.0A Pending CN112328549A (zh) 2020-10-29 2020-10-29 小文件的存储方法、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN112328549A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115269524A (zh) * 2022-09-26 2022-11-01 创云融达信息技术(天津)股份有限公司 一种端到端小文件归集传输和存储的一体化系统及方法
WO2024021492A1 (zh) * 2022-07-29 2024-02-01 天翼云科技有限公司 一种数据回收方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104965845A (zh) * 2014-12-30 2015-10-07 浙江大华技术股份有限公司 一种小文件的定位方法及系统
CN107168651A (zh) * 2017-05-19 2017-09-15 郑州云海信息技术有限公司 一种小文件聚合存储处理方法
CN107341267A (zh) * 2017-07-24 2017-11-10 郑州云海信息技术有限公司 一种分布式文件系统访问方法及平台
CN109086220A (zh) * 2018-06-21 2018-12-25 北京奇艺世纪科技有限公司 一种回收存储空间的方法和装置
CN109739933A (zh) * 2019-01-02 2019-05-10 郑州云海信息技术有限公司 存储空间释放方法、装置、终端及计算机可读存储介质
CN111723056A (zh) * 2020-06-09 2020-09-29 北京青云科技股份有限公司 小文件的处理方法、装置、设备和存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104965845A (zh) * 2014-12-30 2015-10-07 浙江大华技术股份有限公司 一种小文件的定位方法及系统
CN107168651A (zh) * 2017-05-19 2017-09-15 郑州云海信息技术有限公司 一种小文件聚合存储处理方法
CN107341267A (zh) * 2017-07-24 2017-11-10 郑州云海信息技术有限公司 一种分布式文件系统访问方法及平台
CN109086220A (zh) * 2018-06-21 2018-12-25 北京奇艺世纪科技有限公司 一种回收存储空间的方法和装置
CN109739933A (zh) * 2019-01-02 2019-05-10 郑州云海信息技术有限公司 存储空间释放方法、装置、终端及计算机可读存储介质
CN111723056A (zh) * 2020-06-09 2020-09-29 北京青云科技股份有限公司 小文件的处理方法、装置、设备和存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
许俊杰: "海量小文件存储系统的研究与实现", 《信息科技》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024021492A1 (zh) * 2022-07-29 2024-02-01 天翼云科技有限公司 一种数据回收方法、装置、电子设备及存储介质
CN115269524A (zh) * 2022-09-26 2022-11-01 创云融达信息技术(天津)股份有限公司 一种端到端小文件归集传输和存储的一体化系统及方法

Similar Documents

Publication Publication Date Title
CN104346357B (zh) 一种嵌入式终端的文件存取方法及系统
CN103150394B (zh) 面向高性能计算的分布式文件系统元数据管理方法
CN108614837B (zh) 文件存储和检索的方法及装置
US10013312B2 (en) Method and system for a safe archiving of data
CN112740198A (zh) 用于在数据库中提早移除墓碑记录的系统和方法
CN112328549A (zh) 小文件的存储方法、电子设备及存储介质
CN107679420B (zh) 一种基于分布式文件系统的权限设置方法及系统
CN108920725B (zh) 一种对象存储的方法及对象存储网关
CN103546380A (zh) 一种基于策略路由的报文转发方法和装置
CN107562367A (zh) 基于软件化存储系统读写数据的方法以及装置
CN101771671A (zh) 一种内容标识管理服务器间的交互处理方法及装置
CN104965835A (zh) 一种分布式文件系统的文件读写方法及装置
CN113448946B (zh) 数据迁移方法及装置、电子设备
CN110737389B (zh) 存储数据的方法和装置
CN111274004B (zh) 进程实例管理方法、装置及计算机存储介质
CN111752941B (zh) 一种数据存储、访问方法、装置、服务器及存储介质
CN111796772A (zh) 缓存的管理方法、缓存节点及分布式存储系统
CN113704190A (zh) 一种数据写入方法以及装置
CN109213444A (zh) 文件存储方法及装置、存储介质、终端
CN108021647B (zh) 一种文件迁移方法、系统、介质及设备
CN109325023B (zh) 一种数据处理方法及装置
CN113821166A (zh) 一种聚合多版本小对象的方法、装置及设备
CN117539409B (zh) 基于数据缓存的查询加速方法、装置、介质及电子设备
CN117555482A (zh) 一种在线快速删除Ceph存储空间的方法及装置
CN112860643B (zh) 一种提高5g移动终端缓存清理速度的方法和存储设备

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