CN106934066B - 一种元数据处理方法、装置和存储设备 - Google Patents

一种元数据处理方法、装置和存储设备 Download PDF

Info

Publication number
CN106934066B
CN106934066B CN201710210495.4A CN201710210495A CN106934066B CN 106934066 B CN106934066 B CN 106934066B CN 201710210495 A CN201710210495 A CN 201710210495A CN 106934066 B CN106934066 B CN 106934066B
Authority
CN
China
Prior art keywords
metadata
data
target data
file
compressible
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
Application number
CN201710210495.4A
Other languages
English (en)
Other versions
CN106934066A (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.)
Lenovo Beijing Ltd
Original Assignee
Lenovo Beijing 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 Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CN201710210495.4A priority Critical patent/CN106934066B/zh
Publication of CN106934066A publication Critical patent/CN106934066A/zh
Application granted granted Critical
Publication of CN106934066B publication Critical patent/CN106934066B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files
    • 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/164File meta data generation

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供了一种元数据处理方法、装置和存储设备,该方法包括:接收到待存储文件时,获取该待存储文件的元数据;基于预置的至少一种可压缩数据类型,从该元数据中确定出属于该可压缩数据类型的至少一个第一目标数据;将该元数据中的该第一目标数据转换为第二目标数据,得到经过压缩的元数据,其中,该第二目标数据的数据量小于该第一目标数据的数据量;存储该经过压缩的元数据。本申请的方案可以有利于减少元数据所占用的存储空间,从而提高存储设备的数据处理性能。

Description

一种元数据处理方法、装置和存储设备
技术领域
本发明涉及数据处理技术领域,更具体的说是涉及一种元数据的处理方法、装置和存储设备。
背景技术
元数据用于描述文件的数据属性,通过对元数据的存储能够提高数据处理性能。
在存储设备处理文件数据的过程中,为了提高数据处理性能,经常需要将文件数据的元数据缓存在内存中。然而,存储设备的内存容量有限,如果元数据的数量过大,则可能无法将所需的所有元数据都缓存在内存中,这样必然会影响到数据处理性能。
发明内容
有鉴于此,本发明提供一种元数据的处理方法、装置和存储设备,以提高数据处理性能。
为实现上述目的,本发明提供如下技术方案:
一种元数据处理方法,所述方法包括:
接收到待存储文件时,获取所述待存储文件的元数据;
基于预置的至少一种可压缩数据类型,从所述元数据中确定出属于所述可压缩数据类型的至少一个第一目标数据;
将所述元数据中的所述第一目标数据转换为第二目标数据,得到经过压缩的元数据,其中,所述第二目标数据的数据量小于所述第一目标数据的数据量;
存储所述经过压缩的元数据。
优选的,所述将所述元数据中的所述第一目标数据转换为第二目标数据,包括:
依据所述第一目标数据的可压缩数据类型对应的转换方式,将所述元数据中的所述第一目标数据转换为第二目标数据,其中,不同可压缩数据类型对应的转换方式不同。
优选的,在所述将所述元数据中的所述第一目标数据转换为第二目标数据之后,还包括:
在所述第二目标数据之后添加区分标识,所述区分标识用于区分所述经过压缩的元数据中转换出的所述第二目标数据以及未经转换的数据。
优选的,所述存储所述经过压缩的元数据之前,还包括:
根据所述元数据中所述第一目标数据的可压缩数据类型,生成一个转换指示标识,所述转换指示标识用于表征所述元数据中具有的可压缩数据类型;
将所述转换指示标识添加到所述经过压缩的元数据中。
优选的,在所述存储所述经过压缩的元数据之后,还包括:
当接收到文件访问请求时,确定所述文件访问请求所请求访问的文件的文件名;
判断所述文件名中具有属于所述预置的至少一种可压缩数据类型的第一目标数据;
如果所述文件名中具有所述第一目标数据,则将所述文件名中的所述第一目标数据转换为所述第二目标数据,得到压缩后的文件名;
从存储的经过压缩的元数据中,查找与所述压缩后的文件名对应的目标元数据。
优选的,在所述存储所述经过压缩的元数据之后,还包括:
当检测到数据读取请求时,获取所述数据读取请求所请求读取的数据存储目录;
从所述数据存储目录对应的存储区域中读取出待处理的元数据;
如果所述待处理的元数据为经过压缩的元数据,则检测所述待处理元数据中,属于由所述至少一种可压缩数据类型的第一目标数据转换出的第二目标数据;
将所述待处理的元数据中的所述第二目标数据转换为所述第一目标数据,得到待处理的元数据对应的常规元数据;
依据所述常规元数据进行文件读取。
另一方面,本申请实施例还提供了一种存储设备,包括:
存储器,用于存储预置的至少一种可压缩数据类型;
通信接口,用于接收到待存储文件;
处理器,用于获取所述待存储文件的元数据;基于预置的至少一种可压缩数据类型,从所述元数据中确定出属于所述可压缩数据类型的至少一个第一目标数据;将所述元数据中的所述第一目标数据转换为第二目标数据,得到经过压缩的元数据,其中,所述第二目标数据的数据量小于所述第一目标数据的数据量;
所述存储器,还用于存储所述经过压缩的元数据。
优选的,所述处理器在将所述元数据中的所述第一目标数据转换为第二目标数据时,具体用于,依据所述第一目标数据的可压缩数据类型对应的转换方式,将所述元数据中的所述第一目标数据转换为第二目标数据,其中,不同可压缩数据类型对应的转换方式不同。
优选的,所述处理器还用于,在所述将所述元数据中的所述第一目标数据转换为第二目标数据之后,在所述第二目标数据之后添加区分标识,所述区分标识用于区分所述经过压缩的元数据中转换出的所述第二目标数据以及未经转换的数据。
优选的,在所述处理器在将所述经过压缩的元数据存储到所述存储器之前,还用于,根据所述元数据中所述第一目标数据的可压缩数据类型,生成一个转换指示标识,所述转换指示标识用于表征所述元数据中具有的可压缩数据类型;将所述转换指示标识添加到所述经过压缩的元数据中。
优选的,所述通信接口还用于,接收到文件访问请求;
所述处理器还用于,确定所述文件访问请求所请求访问的文件的文件名;判断所述文件名中具有属于所述预置的至少一种可压缩数据类型的第一目标数据;如果所述文件名中具有所述第一目标数据,则将所述文件名中的所述第一目标数据转换为所述第二目标数据,得到压缩后的文件名;从所述存储器存储的经过压缩的元数据中,查找与所述压缩后的文件名对应的目标元数据。
优选的,所述处理器还用于,当检测到数据读取请求时,获取所述数据读取请求所请求读取的数据存储目录;从所述数据存储目录对应的存储区域中读取出待处理的元数据;如果所述待处理的元数据为经过压缩的元数据,则检测所述待处理元数据中,属于由所述至少一种可压缩数据类型的第一目标数据转换出的第二目标数据;将所述待处理的元数据中的所述第二目标数据转换为所述第一目标数据,得到待处理的元数据对应的常规元数据;依据所述常规元数据进行文件读取。
另一方面,本申请实施例还提供了一种元数据处理装置,所述装置包括:
文件处理单元,用于接收到待存储文件时,获取所述待存储文件的元数据;
目标确定单元,用于基于预置的至少一种可压缩数据类型,从所述元数据中确定出属于所述可压缩数据类型的至少一个第一目标数据;
数据压缩单元,用于将所述元数据中的所述第一目标数据转换为第二目标数据,得到经过压缩的元数据,其中,所述第二目标数据的数据量小于所述第一目标数据的数据量;
数据存储单元,用于存储所述经过压缩的元数据。
经由上述的技术方案可知,在获取到待存储文件的元数据之后,根据预置的可压缩数据类型,从该元数据中确定出属于可压缩数据类型的至少一个第一目标数据,通过将该元数据中的第一目标数据转换为数据量较小的第二目标数据,使得得到的经过压缩的元数据的数据量变小,这样,存储该经过压缩的元数据可以占据较小的存储空间;同时,在存储设备管理文件数据的过程中,由于存储的经过压缩的元数据所占据的存储空间变少,使得内存中可以加载更多的元数据,从而减少了由于内存空间有限而无法完全加载所需处理的元数据,而导致数据处理性能降低的情况,进而有利于提高数据处理性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请一种元数据处理方法一个实施例的流程示意图;
图2为本申请一种元数据处理方法又一个实施例的流程示意图;
图3为本申请一种元数据处理方法又一个实施例的流程示意图;
图4为本申请一种元数据处理方法又一个实施例的流程示意图;
图5为本申请一种数据存储设备一个实施例的组成结构示意图;
图6为本申请一种元数据处理装置一个实施例的组成结构示意图。
具体实施方式
本申请实施例公开了一种元数据处理方法,该方法适用于任意存储设备中元数据的处理,如,该存储设备可以为独立的计算机设备,也可以为分布式存储***中的服务器节点等等。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1,其示出了本申请一种元数据处理方法一个实施例的流程示意图,本实施例的方法可以应用进行元数据存储以及处理的存储设备,本实施例的方法可以包括:
101,接收到待存储文件时,获取该待存储文件的元数据。
其中,元数据是指关于数据的数据,是对数据定义和描述,是一种特殊的数据。如,元数据可以对待存储的文件的文件名、存储时间、存储位置等等的描述。相对于文件中的数据(元数据之外的数据),元数据的数据量较小。
其中,获取该待存储文件的元数据的方式可以采用现有任意生成元数据的方式,如,可以根据该待存储文件自身的文件的名称以及所需存储的位置等等信息,生成元数据。
102,基于预置的至少一种可压缩数据类型,从该元数据中确定出属于该可压缩数据类型的至少一个第一目标数据。
为了减少元数据所占据的存储空间,本申请实施例的存储设备中预置了可以被压缩处理的可压缩数据类型。其中,该可压缩数据类型可以认为是可压缩数据所具有的数据属性或者所归属的字段类型等等,一般可以根据需要将元数据中包含重复内容较多的字段所对应的数据属性或者字符串等等设置为可压缩数据类型。如,该可压缩数据类型可以包括:指定的文件名、扩展属性以及预设的特定字符串等等。
可以理解的是,预置的可压缩数据类型的种类可以根据需要设定,为了减少元数据的存储量,该可压缩数据类型的种类一般会有多种。
如果元数据中包含属于该可压缩数据类型的数据,则将该数据作为需要被处理的目标数据。为了便于区分,在本申请实施例中,将元数据中属于某种可压缩数据类型的数据称为第一目标数据。
可以理解的是,由于预置的可压缩数据类型有可能不止一种,而元数据中也可能存在分别属于不同种可压缩数据类型的目标数据,因此,该第一目标数据可以有多个。此处所说的第一目标数据的个数是指将元数据中,属于一类可压缩数据类型的连续字符串称为一个第一目标数据,例如,假设可压缩数据类型包括第一文件名file,则元数据中包含的属于该第一文件名file的数据就为一个第一目标数据,假如该元数据中包含多个属于该第一文件名的数据,则第一目标数据有多个。
103,将该元数据中的第一目标数据转换为第二目标数据,得到经过压缩的元数据。
其中,该第二目标数据的数据量小于该第一目标数据的数据量。
对于元数据中的每个第一目标数据,均需要将该第一目标数据转换为数据量更小的第二目标数据,从而实现有效减少元数据的数据量的目的。
其中,对于不同的第一目标数据而言,转换出的第二目标数据也会有所不同,以实现区分不同的第一目标数据所对应的第二目标数据。
在本申请实施例中,将第一目标数据转换为第二目标数据的具体方式可以有多种,只要是能够保证该第二目标数据的数据量小于该第一目标数据的数据量,使得转换后的元数据的数据量减少即可。如,第一目标数据为包含多个连续字符的文件名,则可以将该元数据中的第一目标数据转换为一个特殊字符,从而减少了元数据所占据的存储量。
可选的,在本申请实施例中可以预置不同可压缩数据类型所对应的转换方式,因此,在从元数据中确定出第一目标数据之后,可以获取该第一目标数据的可压缩数据类型所对应的转换方式,然后按照该转换方式,将元数据中的该第一目标数据转换为第二目标数据,从而得到经过压缩的元数据。
其中,可压缩数据类型的对应转换方式,可以认为该种可压缩数据类型的第一目标数据与所需转换至的第二目标数据之间的对应关系。如,举例说明如下:
对于可压缩数据类型为包含file的文件名,该种类型的转换方式为将file转换为字符a;对于可压缩数据类型为扩展名包含“name”的扩展属性,转换方式为将种扩展属性中的数据name转换为字符b,那么如果第一目标数据为file或者包含file的文件名,则可以将该第一目标数据中的file转换为b,得到第二目标数据。
相应的,对于元数据中某条元数据字段为:Filename:file1,则其中可以确定file属于第一目标数据,那么经过将该元数据字段中的第一目标数据转换为第二目标数据,则得到的元数据字段为:Filename:a1。与此类似,对于元数据中一条元数据字段:Xattr:name1-xxxxx,则经过转换之后得到的元数据字段为:Xattr:b1-xxxxx。
当然,以上仅仅是举例说明,在实际应用中,属于可压缩数据类型的第一目标数据一般都为具有较多字符的连续字符串,其占据的数据量较多,而通过转换则可以减少数据占用量。如,传统文件管理中会将文件名全部进行存储,若按照文件名最大255计算,一个4k的数据块可以存储的文件的元数据信息将不足16个,从而加大文件元数据访问的耗时,而通过本申请的方案将元数据中文件名相同的部分转换数据量较小的特定数据(即第二目标数据),则可以最大程度降低文件元数据的空间使用。
104,存储该经过压缩的元数据。
为了便于区分,本申请实施例将元数据中第一目标数据转换为第二目标数据之后所得到的元数据称为经过压缩的元数据。当然,此处的压缩并非是指对元数据进行整体压缩,而是指通过将元数据中的第一目标数据转换为数据量更小的第二目标数据,使得元数据的自身的数据量变小。
由于该经过压缩的元数据相比于处理前的元数据的数据量更小,所需占据的存储空间减少,从而减少了存储元数据所需占用的存储空间,而且,在需要从内存中加载元数据时,也有利于可以加载更多的元数据,从而有利于保证存储设备管理文件数据的性能。
可见,在本申请实施例中,在获取到待存储文件的元数据之后,根据预置的可压缩数据类型,从该元数据中确定出属于可压缩数据类型的至少一个第一目标数据,通过将该元数据中的第一目标数据转换为数据量较小的第二目标数据,使得得到的经过压缩的元数据的数据量变小,这样,存储该经过压缩的元数据可以占据较小的存储空间;同时,在存储设备管理文件数据的过程中,由于存储的经过压缩的元数据所占据的存储空间变少,使得内存中可以加载更多的元数据,从而减少了由于内存空间有限而无法完全加载所需处理的元数据,而导致数据处理性能降低的情况,进而有利于提高数据处理性能。
可以理解的是,可压缩数据类型可以预置在配置文件中,从而通过配置该配置文件中可压缩数据类型,来管理元数据中所需转换的数据。
如,配置文件中配置的可压缩数据类型的模板如下:
【Meta1】
Key=filename
Context=“file,message”;
【Meta2】
Key=xattr-key
Context=“name,info
其中,【Meta1】以及【Meta2】分别表示两种可压缩数据类型。其中,Key表示可压缩数据类型所对应的元数据字段的名称,该Context部分则描述了该字段可能出现的冗余内容,冗余内容可以是多个,例如,【Meta1】中表示,名称为filename的元数据字段中,file中存在冗余数据,其为一种可压缩数据类型。
当然,以上仅仅是举例说明,如果文件***还有其他的元数据字段也符合可以压缩的要求,也可以在该配置文件中进行配置。
可以理解的是,在本申请以上实施例中,在存储了经过压缩的元数据之后,后续还可以存储设备还可以接收文件访问请求,而由于元数据与现有的存储元数据有所不同,因此,在依据该文件访问请求获取所需访问的文件的文件名进行转换,以与存储的经过加密的元数据相匹配,以定位出所需访问的文件的元数据。
如,参见图2,其示出了本申请一种元数据处理方法又一个实施例的流程示意图,本实施例的方法可以应用于存储设备,该方法可以包括:
201,接收到待存储文件时,获取该待存储文件的元数据。
202,基于预置的配置文件中包含的至少一种可压缩数据类型,从该元数据中确定出属于该配置文件中包含的可压缩数据类型的至少一个第一目标数据。
203,对于每一个第一目标数据,依据该第一目标数据的可压缩数据类型所对应的转换方式,将元数据中的该第一目标数据转换为第二目标数据,得到经过压缩的元数据。
其中,该第二目标数据的数据量小于该第一目标数据的数据量。
其中,不同可压缩数据类型对应的转换方式不同。
204,存储该经过压缩的元数据。
以上步骤201至204可以参见前面实施例的相关介绍,在此不再赘述。
205,当接收到文件访问请求时,确定该文件访问请求所请求访问的文件的文件名。
其中,该文件访问请求可以请求访问某个文件,如打开或者读取该文件中的文件等等。
该文件访问请求可以是有其他设备发送给该存储设备的;也可以是用户通过特定操作输入的访问请求;还可以是存储设备在处理数据过程中,根据所需的处理的文件的文件名,生成的文件访问请求。当然,还可以其他获取到文件访问请求的可能,在此不加以限制。
206,判断该文件名中是否具有属于配置文件中配置的可压缩数据类型的第一目标数据。
如,判断该文件名是否属于配置文件中配置的可压缩数据类型,如果该文件名属于可压缩数据类型,则说明该文件名本身为第一目标数据。
又如,判断该文件名中是否包含属于该可压缩数据类型的数据,为了与前面存储的经过压缩的元数据相对应,在本申请实施例,将元数据以及元数据相关的文件名等数据中,属于可压缩数据类型的数据均称为第一目标数据。
207,如果该文件名中具有第一目标数据,则将该文件名中的该第一目标数据转换为第二目标数据,得到压缩后的文件名。
如果该文件名属于可压缩数据类型,或者文件名中包含属于可压缩数据类型的第一目标数据,则说明存储该文件名关联的元数据时,对元数据中的文件名进行了转换,如果直接依据该文件名来查询元数据,则可能无法定位到包含该文件名的元数据。因此,为了能够定位出该文件名对应的元数据,需要按照存储的经过压缩的元数据中该文件名的转换方式,将该文件名进行转换。
相应的,将该文件名中的第一目标数据转换为数据量较小的第二目标数据,其中,将该文件名中的第一目标数据转换为第二目标数据的过程可以与前面提到的相关过程相似,在此不再赘述。
208,从存储的经过压缩的元数据中,查找与该压缩后的文件名对应的目标元数据。
如果经过元数据的元数据中存在该经过压缩的文件名,则说明该经过压缩的元数据为所需查找的目标元数据。
可以理解的是,在查找该目标元数据之前,可以先将经过压缩的元数据加载到内存中,然后存储设备可以从内存中查找该目标元数据,以提高数据查找效率。
可以理解的是,在查找到该目标元数据之后,存储设备可以依据该目标元数据定位该文件名所对应的文件的存储地址等信息,从而实现对该文件名对应的文件的访问。
可以理解的是,由于并非每个元数据中都存在属于可压缩数据类型的数据,因此,有些元数据在存储之前可能并不涉及到数据转换的操作。为了能够更为便捷的区分出,经过转换后的元数据以及未经转换的元数据,在将元数据中的第一目标数据转换为第二目标数据之后,还可以根据元数据中该第一目标数据的可压缩数据类型,生成一个转换指示标识,该转换指示标识用于表征该元数据中具有的可压缩数据类型。
具体的,参见图3,其示出了本申请一种元数据处理方法又一个实施例的流程示意图,本实施例的方法可以应用于存储设备,该方法可以包括:
301,接收到待存储文件时,获取该待存储文件的元数据。
302,基于预置的配置文件中包含的至少一种可压缩数据类型,从该元数据中确定出属于该配置文件中包含的可压缩数据类型的至少一个第一目标数据。
303,对于每一个第一目标数据,依据该第一目标数据的可压缩数据类型所对应的转换方式,将元数据中的该第一目标数据转换为第二目标数据,得到经过压缩的元数据。
其中,该第二目标数据的数据量小于该第一目标数据的数据量。
其中,不同可压缩数据类型对应的转换方式不同。
以上步骤301至303可以参见前面实施例的相关介绍,在此不再赘述。
304,在该经过压缩的元数据中第二目标数据之后添加区分标识。
其中,该区分标识用于区分该元数据中转换出的第二目标数据以及未经转换的数据。其中,区分标识之前的数据表示被转换出的第二目标数据,而该区分标识之后的数据表示该元数据中未经转换出的数据。
通过添加区分标识,有利于后续读取出该经过压缩的元数据时,可以准确确定出该经过压缩的元数据中经过转换后的第二目标数据,从而可以将第二目标数据转换回第一目标数据。
可以理解的是,元数据中包括一条或多条元数据字段,在从元数据中确定出第一目标数据之后,可以确定该第一目标数据所属的目标元数据字段。相应的,在将该第一目标数据转换为第二目标数据之后,可以在该目标元数据字段中,该第二目标数据之后添加该区分标识,其中,该目标元数据字段中位于该区分标识之前的数据为经过转换后得到的第二目标数据,而将区分标识之后的数据为未经转换的数据。
举例说明,假如元数据中包括元数据字段名分别为Filename和Xattr两条元数据字段,分别为如下:
Filename:file1;
Xattr:name1-xxxxx;
其中,按照file转换为a,而name转换为b的转换规则,将如上两条元数据字段可以转换为:
Filename:a1;
Xattr:b1-xxxxx。
则为了区分出元数据中哪些数据是经过转换的数据,则可以在转换出的第二目标数据之后添加一个区分标识,假设区分标识可以表示为@,则,如上两条元数据字段可以表示如下:
Filename:a@1;
Xattr:b@1-xxxxx。
可见,依据该区分标识@可知,在元数据字段Filename中“a”为转换出的第二目标数据;相应的,“b”也为转换出的第二目标数据。
当然,在元数据中添加该区分标识仅仅是一种可选的方式,在实际应用中,根据预置的转换方式,也可以确定出元数据中哪些数据是经过转换后得到的,从而后续可以直接依据该转换方式的逆过程,将第二目标数据转换为第一目标数据。
305,根据该元数据中第一目标数据的可压缩数据类型,生成一个转换指示标识。
306,将该转换指示标识添加到该经过压缩的元数据中。
其中,该转换指示标识用于表征原始的元数据中具有的可压缩数据类型。且,如果元数据中包括该转换指示标识,则表明该元数据为经过压缩的元数据。可见,通过该转换指示标识可以明确出那些元数据为经过以上转换处理后的元数据。
可选的,为了能够迅速确定元数据中都有哪些元数据字段中包含经过转换后的数据,新增一个字段来表示该转换指示标识,该新增字段大小可以根据最大支持优化的字段数目确定。如,假如最大支持优化(即,进行如上减少数据量的转换)8个字段,则只需要一个字节来标识即可,其中,每个bit标识一种元数据字段。例如,假设以步骤304中的例子进行说明,该转换指示标识中第0个bit表示文件名字段,,第1个bit表示xattr字段,如果元数据字段中包括属于预置的可压缩数据类型的数据,则将字段对应的比特的取值设置为1,相应的,则新增给转换指示标识的字段的二进制表示为00000011,其中,第0个比特为1表示文件名字段为存在转换的字段。
307,存储该经过压缩的元数据。
在以上任意一个实施例的基础上,本申请的存储设备还可以接收数据读取请求,数据读取请求用于请求依据元数据读取文件数据。如,参见图4,其示出了本申请一种元数据处理方法又一个实施例的流程示意图,本实施例的方法可以包括:
401,当检测到数据读取请求时,获取该数据读取请求所请求读取的数据存储目录。
其中,该数据存储目录可以理解为元数据对应的目录地址。
402,从该数据存储目录对应的存储区域中读取出待处理的元数据。
在本申请实施例中,将数据存储目录所指向的元数据称为待处理的元数据。
403,如果该待处理的元数据为经过压缩的元数据,则检测该待处理元数据中,属于由该至少一种可压缩数据类型的第一目标数据转换出的第二目标数据。
确定该待处理的元数据是否为经过压缩的元数据的方式可以有多种,如,在将第一目标数据转换为第二目标数据之后,可以存储第一目标数据与第二目标数据的对应关系,或者是,存储该第二目标数据。这样,在确定出该待处理的元数据之后,可以查询存储的经过转换出的第二目标数据,如果该待处理的元数据中包括第二目标数据,则说明该待处理的元数据为经过压缩的元数据。
可选的,在经过压缩的元数据中包括转换指示标识的情况下,可以检测该待处理的元数据中是否包括该转换指示标识,如果包括该转换指示标识,则确定该待处理的元数据为经过压缩的元数据。
同时,根据该转换指示标识各个比特位可以确定出该待处理的元数据中哪些元数据字段为经过转换的元数据字段,从而确定该元数据中哪些元数据字段中存在经过转换后的第二目标数据。
进一步的,在确定出该待处理的元数据为经过压缩的元数据,还可以检测元数据中是否存在区分标识,以根据该区分标识,确定出该待处理的元数据中属于第二目标数据的部分。
404,将该待处理的元数据中的第二目标数据转换为该第一目标数据,得到待处理的元数据对应的常规元数据。
为了便于区分,本申请实施例中,将待处理的元数据中的第二目标数据转换为第一目标数据所得到的元数据称为常规元数据,该常规元数据是指不存在第一目标数据被转换为较少数据量的第二目标数据的元数据。
其中,将待处理的元数据中的第二目标数据转换为第一目标数据的过程可以看成是将第一目标数据转换为第二目标数据的逆过程。如,可以根据预置的第一目标数据与第二目标数据的对应关系,查询该第二目标数据所对应的第一目标数据,并对该待处理的元数据进行转换处理。
405,依据该常规元数据进行文件读取。
转换得到该常规元数据之后,就可以按照现有的文件读取方式,实现文件的读取。
为了实现本申请实施例的以上元数据处理方法,本申请实施例还提供了一种存储设备,该存储设备可以为独立的存储服务器,或者存储终端,也可以为分布式集群***或者集中存储***中的服务器节点。
如,参见图5,其示出了本申请一种存储设备一个实施例的组成结构示意图,本实施例的存储设备500可以包括:
存储器501,用于存储预置的至少一种可压缩数据类型;
通信接口502,用于接收到待存储文件;
处理器503,用于获取所述待存储文件的元数据;基于预置的至少一种可压缩数据类型,从所述元数据中确定出属于所述可压缩数据类型的至少一个第一目标数据;将所述元数据中的所述第一目标数据转换为第二目标数据,得到经过压缩的元数据,其中,所述第二目标数据的数据量小于所述第二目标数据的数据量;
所述存储器501,还用于存储所述经过压缩的元数据。
可以理解的是,该存储设备还可以包括连接该存储器501、通信接口502以及处理器503的通信总线504,当然,该存储设备还可以包括其他部件,在此不加以限制。
可选的,所述处理器在将所述元数据中的所述第一目标数据转换为第二目标数据时,具体用于,依据所述第一目标数据的可压缩数据类型对应的转换方式,将所述元数据中的所述第一目标数据转换为第二目标数据,其中,不同可压缩数据类型对应的转换方式不同。
可选的,所述处理器还用于,在所述将所述元数据中的所述第一目标数据转换为第二目标数据之后,在所述第二目标数据之后添加区分标识,所述区分标识用于区分所述元数据中转换出的所述第二目标数据以及未经转换的数据。
可选的,在所述处理器在将所述经过压缩的元数据存储到所述存储器之前,还用于,根据所述元数据中所述第一目标数据的可压缩数据类型,生成一个转换指示标识,所述转换指示标识用于表征所述元数据中具有的可压缩数据类型;将所述转换指示标识添加到所述元数据中。
可选的,所述通信接口还用于,接收到文件访问请求;
所述处理器还用于,确定所述文件访问请求所请求读取的文件的文件名;判断所述文件名中具有属于所述预置的至少一种可压缩数据类型的第一目标数据;如果所述文件名中具有所述第一目标数据,则将所述文件名中的所述第一目标数据转换为所述第二目标数据,得到压缩后的文件名;从所述存储器存储的经过压缩的元数据中,查找与所述压缩后的文件名对应的目标元数据。
可选的,所述处理器还用于,当检测到数据读取请求时,获取所述数据读取请求所请求读取的数据存储目录;从所述数据存储目录对应的存储区域中读取出待处理的元数据;如果所述待处理的元数据为经过压缩的元数据,则检测所述待处理元数据中,属于由所述至少一种可压缩数据类型的第一目标数据转换出的第二目标数据;将所述待处理的元数据中的所述第二目标数据转换为所述第一目标数据,得到待处理的元数据对应的常规元数据;依据所述常规元数据进行文件读取。
另一方面,对应本申请的一种元数据处理方法,本申请实施例还提供了一种元数据处理装置。
如,参见图6,其示出了本申请一种元数据处理装置一个实施例的组成结构示意图,本实施例的装置可以包括:
文件处理单元601,用于接收到待存储文件时,获取所述待存储文件的元数据;
目标确定单元602,用于基于预置的至少一种可压缩数据类型,从所述元数据中确定出属于所述可压缩数据类型的至少一个第一目标数据;
数据压缩单元603,用于将所述元数据中的所述第一目标数据转换为第二目标数据,得到经过压缩的元数据,其中,所述第二目标数据的数据量小于所述第二目标数据的数据量;
数据存储单元604,用于存储所述经过压缩的元数据。
可选的,所述数据压缩单元在将所述元数据中的所述第一目标数据转换为第二目标数据时,具体用于,依据所述第一目标数据的可压缩数据类型对应的转换方式,将所述元数据中的所述第一目标数据转换为第二目标数据,其中,不同可压缩数据类型对应的转换方式不同。
所述装置还包括:
第一标识添加单元,用于在所述数据压缩单元将所述元数据中的所述第一目标数据转换为第二目标数据之后,在所述第二目标数据之后添加区分标识,所述区分标识用于区分所述元数据中转换出的所述第二目标数据以及未经转换的数据。
第二标识添加单元,用于在所述数据压缩单元将所述元数据中的所述第一目标数据转换为第二目标数据之后,根据所述元数据中所述第一目标数据的可压缩数据类型,生成一个转换指示标识,所述转换指示标识用于表征所述元数据中具有的可压缩数据类型;
将所述转换指示标识添加到所述元数据中。
可选的,所述装置还包括:
访问接收单元,用于当接收到文件访问请求时,确定所述文件访问请求所请求读取的文件的文件名;
文件名识别单元,用于判断所述文件名中具有属于所述预置的至少一种可压缩数据类型的第一目标数据;
逆转换单元,用于如果所述文件名中具有所述第一目标数据,则将所述文件名中的所述第一目标数据转换为所述第二目标数据,得到压缩后的文件名;
元数据查找单元,用于从存储的经过压缩的元数据中,查找与所述压缩后的文件名对应的目标元数据。
可选的,所述装置还包括:
读取请求接收单元,用于当检测到数据读取请求时,获取所述数据读取请求所请求读取的数据存储目录;
元数据读取单元,用于从所述数据存储目录对应的存储区域中读取出待处理的元数据;
元数据转换单元,用于如果所述待处理的元数据为经过压缩的元数据,则检测所述待处理元数据中,属于由所述至少一种可压缩数据类型的第一目标数据转换出的第二目标数据;
数据逆转换单元,用于将所述待处理的元数据中的所述第二目标数据转换为所述第一目标数据,得到待处理的元数据对应的常规元数据;
文件读取单元,用于依据所述常规元数据进行文件读取。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (11)

1.一种元数据处理方法,其特征在于,所述方法包括:
接收到待存储文件时,获取所述待存储文件的元数据;所述元数据至少是对所述待存储文件的文件名、存储时间、存储位置的描述;
基于预置在配置文件中的至少一种可压缩数据类型,从所述元数据中确定出属于所述可压缩数据类型的至少一个第一目标数据;所述可压缩数据类型为可压缩数据所具有的数据属性或所归属的字段类型;将所述元数据中的所述第一目标数据转换为第二目标数据,得到经过压缩的元数据,其中,所述第二目标数据的数据量小于所述第一目标数据的数据量;
存储所述经过压缩的元数据;
其中,在所述将所述元数据中的所述第一目标数据转换为第二目标数据之后,还包括:
在所述第二目标数据之后添加区分标识,所述区分标识用于区分所述经过压缩的元数据中转换出的所述第二目标数据以及未经转换的数据。
2.根据权利要求1所述的元数据处理方法,其特征在于,所述将所述元数据中的所述第一目标数据转换为第二目标数据,包括:
依据所述第一目标数据的可压缩数据类型对应的转换方式,将所述元数据中的所述第一目标数据转换为第二目标数据,其中,不同可压缩数据类型对应的转换方式不同。
3.根据权利要求1所述的元数据处理方法,其特征在于,所述存储所述经过压缩的元数据之前,还包括:
根据所述元数据中所述第一目标数据的可压缩数据类型,生成一个转换指示标识,所述转换指示标识用于表征所述元数据中具有的可压缩数据类型;
将所述转换指示标识添加到所述经过压缩的元数据中。
4.根据权利要求1至3任一项所述的元数据处理方法,其特征在于,在所述存储所述经过压缩的元数据之后,还包括:
当接收到文件访问请求时,确定所述文件访问请求所请求访问的文件的文件名;
判断所述文件名中具有属于所述预置的至少一种可压缩数据类型的第一目标数据;
如果所述文件名中具有所述第一目标数据,则将所述文件名中的所述第一目标数据转换为所述第二目标数据,得到压缩后的文件名;
从存储的经过压缩的元数据中,查找与所述压缩后的文件名对应的目标元数据。
5.根据权利要求1至3任一项所述的元数据处理方法,其特征在于,在所述存储所述经过压缩的元数据之后,还包括:
当检测到数据读取请求时,获取所述数据读取请求所请求读取的数据存储目录;
从所述数据存储目录对应的存储区域中读取出待处理的元数据;
如果所述待处理的元数据为经过压缩的元数据,则检测所述待处理元数据中,属于由所述至少一种可压缩数据类型的第一目标数据转换出的第二目标数据;
将所述待处理的元数据中的所述第二目标数据转换为所述第一目标数据,得到待处理的元数据对应的常规元数据;
依据所述常规元数据进行文件读取。
6.一种存储设备,其特征在于,包括:
存储器,用于存储预置的至少一种可压缩数据类型;
通信接口,用于接收到待存储文件;
处理器,用于获取所述待存储文件的元数据;所述元数据至少是对所述待存储文件的文件名、存储时间、存储位置的描述;基于预置在配置文件中的至少一种可压缩数据类型,从所述元数据中确定出属于所述可压缩数据类型的至少一个第一目标数据;所述可压缩数据类型为可压缩数据所具有的数据属性或所归属的字段类型;将所述元数据中的所述第一目标数据转换为第二目标数据,得到经过压缩的元数据,其中,所述第二目标数据的数据量小于所述第一目标数据的数据量;
所述存储器,还用于存储所述经过压缩的元数据;
所述处理器还用于,在所述将所述元数据中的所述第一目标数据转换为第二目标数据之后,在所述第二目标数据之后添加区分标识,所述区分标识用于区分所述经过压缩的元数据中转换出的所述第二目标数据以及未经转换的数据。
7.根据权利要求6所述的存储设备,其特征在于,所述处理器在将所述元数据中的所述第一目标数据转换为第二目标数据时,具体用于,依据所述第一目标数据的可压缩数据类型对应的转换方式,将所述元数据中的所述第一目标数据转换为第二目标数据,其中,不同可压缩数据类型对应的转换方式不同。
8.根据权利要求6所述的存储设备,其特征在于,在所述处理器在将所述经过压缩的元数据存储到所述存储器之前,还用于,根据所述元数据中所述第一目标数据的可压缩数据类型,生成一个转换指示标识,所述转换指示标识用于表征所述元数据中具有的可压缩数据类型;将所述转换指示标识添加到所述经过压缩的元数据中。
9.根据权利要求6至8任一项所述的存储设备,其特征在于,所述通信接口还用于,接收到文件访问请求;
所述处理器还用于,确定所述文件访问请求所请求访问的文件的文件名;判断所述文件名中具有属于所述预置的至少一种可压缩数据类型的第一目标数据;如果所述文件名中具有所述第一目标数据,则将所述文件名中的所述第一目标数据转换为所述第二目标数据,得到压缩后的文件名;从所述存储器存储的经过压缩的元数据中,查找与所述压缩后的文件名对应的目标元数据。
10.根据权利要求6至8任一项所述的存储设备,其特征在于,所述处理器还用于,当检测到数据读取请求时,获取所述数据读取请求所请求读取的数据存储目录;从所述数据存储目录对应的存储区域中读取出待处理的元数据;如果所述待处理的元数据为经过压缩的元数据,则检测所述待处理元数据中,属于由所述至少一种可压缩数据类型的第一目标数据转换出的第二目标数据;将所述待处理的元数据中的所述第二目标数据转换为所述第一目标数据,得到待处理的元数据对应的常规元数据;依据所述常规元数据进行文件读取。
11.一种元数据处理装置,其特征在于,所述装置包括:
文件处理单元,用于接收到待存储文件时,获取所述待存储文件的元数据;所述元数据至少是对所述待存储文件的文件名、存储时间、存储位置的描述;
目标确定单元,用于基于预置在配置文件中的至少一种可压缩数据类型,从所述元数据中确定出属于所述可压缩数据类型的至少一个第一目标数据;所述可压缩数据类型为可压缩数据所具有的数据属性或所归属的字段类型;
数据压缩单元,用于将所述元数据中的所述第一目标数据转换为第二目标数据,得到经过压缩的元数据,其中,所述第二目标数据的数据量小于所述第一目标数据的数据量;
数据存储单元,用于存储所述经过压缩的元数据;
其中,在所述数据压缩单元将所述元数据中的所述第一目标数据转换为第二目标数据之后,还用于:在所述第二目标数据之后添加区分标识,所述区分标识用于区分所述经过压缩的元数据中转换出的所述第二目标数据以及未经转换的数据。
CN201710210495.4A 2017-03-31 2017-03-31 一种元数据处理方法、装置和存储设备 Active CN106934066B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710210495.4A CN106934066B (zh) 2017-03-31 2017-03-31 一种元数据处理方法、装置和存储设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710210495.4A CN106934066B (zh) 2017-03-31 2017-03-31 一种元数据处理方法、装置和存储设备

Publications (2)

Publication Number Publication Date
CN106934066A CN106934066A (zh) 2017-07-07
CN106934066B true CN106934066B (zh) 2024-06-18

Family

ID=59425037

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710210495.4A Active CN106934066B (zh) 2017-03-31 2017-03-31 一种元数据处理方法、装置和存储设备

Country Status (1)

Country Link
CN (1) CN106934066B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109684293A (zh) * 2018-12-14 2019-04-26 中国人民银行清算总中心 混合文件存储方法及装置
CN110888862A (zh) * 2019-11-26 2020-03-17 深圳市随手金服信息科技有限公司 数据存储、查询方法、装置、服务器和存储介质
CN117115380B (zh) * 2023-10-24 2024-01-30 深圳市易图资讯股份有限公司 多源空间数据处理方法和***

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101770368A (zh) * 2009-12-30 2010-07-07 北京飞天诚信科技有限公司 .net文件中命名空间的压缩方法和装置
CN101770367A (zh) * 2009-12-30 2010-07-07 北京飞天诚信科技有限公司 .net文件压缩方法和装置
CN101794221A (zh) * 2009-12-30 2010-08-04 北京飞天诚信科技有限公司 .net文件中引用类型的压缩方法和装置
CN101794220A (zh) * 2009-12-30 2010-08-04 北京飞天诚信科技有限公司 .net文件中定义类型的压缩方法和装置
CN101794219A (zh) * 2009-12-30 2010-08-04 北京飞天诚信科技有限公司 .net文件的压缩方法和装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6959300B1 (en) * 1998-12-10 2005-10-25 At&T Corp. Data compression method and apparatus
JP4261299B2 (ja) * 2003-09-19 2009-04-30 株式会社エヌ・ティ・ティ・ドコモ データ圧縮装置、データ復元装置およびデータ管理装置
US20100265525A1 (en) * 2009-04-20 2010-10-21 Kabushiki Kaisha Toshiba Image processing apparatus, image forming apparatus, and image processing method
US8655085B2 (en) * 2010-10-28 2014-02-18 Microsoft Corporation Burst mode image compression and decompression

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101770368A (zh) * 2009-12-30 2010-07-07 北京飞天诚信科技有限公司 .net文件中命名空间的压缩方法和装置
CN101770367A (zh) * 2009-12-30 2010-07-07 北京飞天诚信科技有限公司 .net文件压缩方法和装置
CN101794221A (zh) * 2009-12-30 2010-08-04 北京飞天诚信科技有限公司 .net文件中引用类型的压缩方法和装置
CN101794220A (zh) * 2009-12-30 2010-08-04 北京飞天诚信科技有限公司 .net文件中定义类型的压缩方法和装置
CN101794219A (zh) * 2009-12-30 2010-08-04 北京飞天诚信科技有限公司 .net文件的压缩方法和装置

Also Published As

Publication number Publication date
CN106934066A (zh) 2017-07-07

Similar Documents

Publication Publication Date Title
US11003625B2 (en) Method and apparatus for operating on file
US11347787B2 (en) Image retrieval method and apparatus, system, server, and storage medium
US10152501B2 (en) Rollover strategies in a n-bit dictionary compressed column store
US6754799B2 (en) System and method for indexing and retrieving cached objects
WO2017167171A1 (zh) 一种数据操作方法,服务器及存储***
US8069224B2 (en) Method, equipment and system for resource acquisition
US7664829B2 (en) Document managing system, document managing apparatus and document managing method
CN106294190B (zh) 一种存储空间管理方法及装置
CN110046133B (zh) 一种存储文件***的元数据管理方法、装置及***
CN109657174B (zh) 用于更新数据的方法和装置
CN105468642A (zh) 数据的存储方法及装置
RU2005124131A (ru) Устройство обработки информации, способ управления содержанием, способ управления информацией содержания и компьютерная программа
CN109800336B (zh) 基于键值对存储***的表格实现方法、装置、设备和介质
CN106934066B (zh) 一种元数据处理方法、装置和存储设备
US9973564B2 (en) Determining variable chunk size for transfer of a file
CN108021333B (zh) 随机读写数据的***、装置及方法
CN111680489B (zh) 目标文本的匹配方法和装置、存储介质及电子设备
CN109460406B (zh) 一种数据处理方法及装置
CN110134738A (zh) 分布式存储***资源预估方法、装置
CN110222046B (zh) 列表数据的处理方法、装置、服务器和存储介质
WO2014190700A1 (zh) 一种内存访问的方法、缓冲调度器和内存模块
KR20190123819A (ko) 데이터 저장장치의 주소 맵핑 테이블 운용 방법
CN115964002B (zh) 一种电能表终端档案管理方法、装置、设备及介质
US20160292173A1 (en) Removable storage data hash
US10114864B1 (en) List element query support and processing

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