CN114942908A - 索引系统、数据处理方法、电子设备及介质 - Google Patents

索引系统、数据处理方法、电子设备及介质 Download PDF

Info

Publication number
CN114942908A
CN114942908A CN202210848137.7A CN202210848137A CN114942908A CN 114942908 A CN114942908 A CN 114942908A CN 202210848137 A CN202210848137 A CN 202210848137A CN 114942908 A CN114942908 A CN 114942908A
Authority
CN
China
Prior art keywords
index
file
historical
garbage collection
index information
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.)
Granted
Application number
CN202210848137.7A
Other languages
English (en)
Other versions
CN114942908B (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.)
Alibaba China Co Ltd
Original Assignee
Alibaba China 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 Alibaba China Co Ltd filed Critical Alibaba China Co Ltd
Priority to CN202210848137.7A priority Critical patent/CN114942908B/zh
Publication of CN114942908A publication Critical patent/CN114942908A/zh
Application granted granted Critical
Publication of CN114942908B publication Critical patent/CN114942908B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/13File access structures, e.g. distributed indices
    • 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
    • G06F16/1824Distributed file systems implemented using Network-attached Storage [NAS] architecture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device

Landscapes

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

Abstract

本申请实施例提供一种索引系统、数据处理方法、电子设备及介质。在本申请实施例中,索引系统包括第一索引层和第二索引层等两个索引层,第一索引层维护和管理增量索引文件,第二索引层维护和管理历史索引文件。每个索引层都可以独立执行垃圾回收操作(也即单层级GC),进一步地,第一索引层和第二索引层之间还可以进行执行垃圾回收操作(也即层间级GC)。在索引系统应用到文件系统时,特别是支持Append‑Only接口的NAS文件系统,能够有效地降低文件系统的读放大和写放大,提供更好的针对索引信息的GC性能。

Description

索引系统、数据处理方法、电子设备及介质
技术领域
本申请涉及计算机技术领域,尤其涉及一种索引系统、数据处理方法、电子设备及介质。
背景技术
目前,分布式文件存储系统普遍采用基于LSM架构的kvDB管理和维护存储在分布式文件存储系统的文件数据的索引信息。其中,kvDB是一种以键值对(key-value)方式进行数据存储的数据库。实际应用中,基于LSM架构的kvDB大多使用多层的SStable(sortedstring table,排序字符串表),读放大和写放大都非常严重;而且,在key(键)的长度、key的访问模式、RangeQuery(查询范围)、value(值)的特点等多方面和文件数据的索引信息有较大的区别,导致针对索引信息的垃圾回收(Garbage Collection,GC)性能较差。
发明内容
本申请实施例提供一种索引系统,包括:第一索引层和第二索引层,第一索引层包括第一索引单元和至少一个增量索引文件,第二索引层包括第二索引单元和至少一个历史索引文件;第一索引单元,用于向至少一个增量索引文件中写入增量索引信息;响应于针对第一索引层的单层级垃圾回收指令,对至少一个增量索引文件执行垃圾回收操作;第二索引单元,用于向至少一个历史索引文件中写入历史索引信息;响应于针对第二索引层的单层级垃圾回收指令,对至少一个历史索引文件执行垃圾回收操作。
本申请实施例还提供一种数据处理方法,应用于索引系统,索引系统包括:第一索引层和第二索引层,第一索引层包括至少一个增量索引文件,第二索引层包括至少一个历史索引文件;该方法包括:在至少一个增量索引文件中包括增量索引信息的情况下,响应于针对第一索引层的单层级垃圾回收指令,对至少一个增量索引文件执行垃圾回收操作;在至少一个历史索引文件中包括历史索引信息的的情况下,响应于针对第二索引层的单层级垃圾回收指令,对至少一个历史索引文件执行垃圾回收操作。
本申请实施例还提供一种分布式文件存储系统,包括:上述索引系统。
本申请实施例还提供一种电子设备,包括:存储器和处理器;存储器,用于存储计算机程序;处理器耦合至存储器,用于执行计算机程序以用于执行数据处理方法中的步骤。
本申请实施例还提供一种存储有计算机程序的计算机存储介质,当计算机程序被处理器执行时,致使处理器能够实现数据处理方法中的步骤。
在本申请实施例中,索引系统包括第一索引层和第二索引层等两个索引层,第一索引层维护和管理增量索引文件,第二索引层维护和管理历史索引文件。每个索引层都可以独立执行垃圾回收操作(也即单层级GC),进一步地,第一索引层和第二索引层之间还可以进行执行垃圾回收操作(也即层间级GC)。在索引系统应用到文件系统时,特别是支持Append-Only接口的NAS文件系统,能够有效地降低文件系统的读放大和写放大,提供更好的针对索引信息的GC性能。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种索引系统的结构示意图;
图2为本申请实施例提供的一种分布式文件存储系统的结构示意图;
图3为本申请实施例提供的一种数据处理方法的流程图;
图4为本申请实施例提供的一种数据处理装置的结构示意图;
图5为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
实际应用中,基于LSM架构的kvDB大多使用多层的SStable(sorted stringtable,排序字符串表),读放大和写放大都非常严重;而且,在key(键)的长度、key的访问模式、RangeQuery(查询范围)、value(值)的特点等多方面和文件数据的索引信息有较大的区别,导致针对索引信息的垃圾回收(Garbage Collection,GC)性能较差。为此,本申请实施例提供一种索引系统、数据处理方法、电子设备及介质。在本申请实施例中,索引系统包括第一索引层和第二索引层等两个索引层,第一索引层维护和管理增量索引文件,第二索引层维护和管理历史索引文件。每个索引层都可以独立执行垃圾回收操作(也即单层级GC),进一步地,第一索引层和第二索引层之间还可以进行执行垃圾回收操作(也即层间级GC)。在索引系统应用到文件系统时,特别是支持Append-Only接口的NAS文件系统,能够有效地降低文件系统的读放大和写放大,提供更好的针对索引信息的GC性能。
以下结合附图,详细说明本申请各实施例提供的技术方案。
首先,对本申请实施例涉及的名词进行解释;
Append-Only:是数据存储的一种方式,新数据可以追加到文件系统中,已有的数据无法被修改。
文件系统(file system):是命名文件及放置文件的逻辑存储和恢复的系统。
NAS(Network Attached Storage,网络附属存储):是标准的文件级存储方法,基于标准网络协议实现数据传输,能够支持多种通信协议(如NFS、SMB、HTTP等),为网络中的各种不同操作系统的计算机提供跨平台的文件共享和数据备份。其中,通信协议例如包括但不限于:SMB(Server Message Block)通信协议、NFS(Network File System,网络文件系统)协议、HTTP(Hyper Text Transfer Protocol,超文本传输协议)等等。
分布式文件存储系统:也叫分布式文件系统(Distributed File System,DFS),是指一种允许文件透过网络在多台主机上共享的文件系统,可让多机器上的多用户共享文件和存储空间。
索引系统:是指管理和维护文件系统中存储的文件数据的索引信息的系统。
垃圾回收(Garbage Collection,GC)是指一种自动的存储器管理机制,当某部分数据不被使用时,会根据垃圾回收算法回收这部分数据。
索引信息:表征文件数据在文件系统的布局(Layout)信息,布局信息可以理解为文件数据在文件系统的存储位置信息,基于索引信息可以在文件系统中搜索到文件数据。
增量索引信息:是指文件系统中最近增加的索引信息。例如包括但不限于:最近写入文件系统中的文件数据的索引信息,或者因文件系统中已有的文件数据发生数据迁移产生的新的索引信息、或者因文件系统中已有的文件数据执行垃圾回收操作产生的新的索引信息等等。
历史索引信息:是指写入文件系统中距离当前时刻有一段时间长度的文件内容的索引信息,可以理解为历史文件内容的索引信息。随着时间推移,增量索引信息可转变为历史索引信息。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图1为本申请实施例提供的一种索引系统的结构示意图。图2为本申请实施例提供的一种分布式文件存储系统的结构示意图。图1所示的索引系统可以应用到各种文件系统中,各种文件系统例如包括但不限于:本地文件系统、网络文件系统和分布式文件存储系统。为了便于理解,以索引系统应用在分布式文件存储系统中为例进行说明。图2中的L0层即为第一索引层,L1层即为第二索引层。
在本实施例中,考虑到索引信息具有增量修改的属性,难以简单快速地将增量索引信息合并到历史索引信息中;另外,还考虑到增量索引信息和历史索引信息的属性不同,导致两者的GC操作的策略存在很大不同。具体而言,增量索引信息是最近写入索引系统的活跃数据,存在较多的覆盖、删除等情况,特别是将NAS作为临时存储的场景,于是,尽量在增量索引信息积攒到一定数据量的情况下对增量索引信息执行GC操作。而历史索引信息相对于增量索引信息而言,一般不会有太多变化,基本不存在覆盖、删除的情况,通常无需限制历史索引信息积攒到一定数据量的情况下对历史索引信息执行GC操作。
基于此,本实施例提出一种两层的索引系统,参见图1和图2,索引系统包括第一索引层和第二索引层等两个索引层,第一索引层维护和管理增量索引文件,第二索引层维护和管理历史索引文件。每个索引层都可以独立执行垃圾回收操作(也即单层级GC),进一步地,第一索引层和第二索引层之间还可以进行执行垃圾回收操作(也即层间级GC)。在索引系统应用到文件系统时,特别是支持Append-Only接口的NAS文件系统,能够有效地降低文件系统的读放大和写放大,提供更好的针对索引信息的GC性能。
首先,结合图2,对索引系统应用在分布式文件存储系统中的应用场景进行介绍。具体而言,分布式文件存储系统至少包括数据系统和索引系统。其中,数据系统包括m个数据文件,m为正整数,数据文件指的是存储文件内容的文件。索引系统包括多个增量索引文件和多个历史索引文件,增量索引文件存储的是最近写入数据系统中的文件内容的索引信息,历史索引文件存储的是历史写入数据系统中的文件内容的索引信息。
实际应用中,用户通过客户端访问分布式文件存储系统。例如,客户端响应用户在某个文件中追加写入操作,向分布式文件存储系统发送写请求,分布式文件存储系统响应写请求将用户在文件中追加写入的文件内容(也即文件数据)写入至数据系统中的一个或多个数据文件。另外,分布式文件存储系统还将文件内容的索引信息写入索引系统的一个或多个增量索引文件中。索引信息例如包括但不限于:文件内容在哪个数据文件中、文件内容在数据文件中的写入位置、文件内容所在的数据文件存储在哪个服务器的磁盘中等等。
又例如,客户端响应用户针对已存储的文件内容的读操作,向分布式文件存储系统发送读请求,分布式文件存储系统响应读请求,从索引系统获取待读取文件内容的索引信息,基于索引信息查询数据系统获取待读取文件内容,并向客户端返回待读取文件内容,完成向用户推送待读取文件内容的任务。
在本实施例中,文件系统长期运行后内部存在垃圾文件数据或碎片文件数据,对文件系统中包括文件内容的数据文件执行GC操作的过程,称作为数据GC。图2中的数据GC也即对数据系统中的数据文件执行GC操作。同样地,文件内容经过数据GC后,文件内容在文件系统中的存储位置可能会发生改变,也即文件内容的索引信息随着发生改变,这种发生改变的索引信息需要反馈给索引系统,也即文件内容更新后的索引信息写入索引系统,这个反馈过程可以称作为索引写回。
在本实施例中,针对两层的索引系统,其中的第一索引层关联的增量索引文件保存增量索引信息,增量索引文件之间可能存在数据交叠的情况,也即数据覆盖的情况。例如,图1和图2中,示出了增量索引文件x1和增量索引文件x2之间存在重叠部分,也即说明增量索引文件x1和增量索引文件x2存在相同的索引信息。其中的第二索引层关联的历史索引文件保存历史索引信息,历史索引文件之间通常不存在数据交叠的情况。实际应用中,可以按照分桶策略管理历史索引文件,将多个历史索引文件分别划分到不同的桶中。
在本实施例中,针对全新架构的索引系统,可以独立地对各个索引层分别执行GC操作。具体而言,索引系统包括:第一索引层和第二索引层,第一索引层包括第一索引单元和至少一个增量索引文件,第二索引层包括第二索引单元和至少一个历史索引文件;第一索引单元,用于向至少一个增量索引文件中写入增量索引信息;响应于针对第一索引层的单层级垃圾回收指令,对至少一个增量索引文件执行垃圾回收操作;第二索引单元,用于向至少一个历史索引文件中写入历史索引信息;响应于针对第二索引层的单层级垃圾回收指令,对至少一个历史索引文件执行垃圾回收操作。
值得注意的是,第一索引单元或第二索引单元可以由软件和/或硬件的方式实现,用于维护和管理索引信息。增量索引文件和历史索引文件可以保存至同一服务器或服务器集群中,或者不同的服务器或服务器集群中,对此不做限制。
在本实施例中,为了便于理解,将在第一索引层内部执行垃圾回收的指令称作为针对第一索引层的单层级垃圾回收指令。将在第二索引层内部执行垃圾回收的指令称作为针对第二索引层的单层级垃圾回收指令。
在本实施例中,第一索引单元将文件系统中最新产生的增量索引信息写入至增量索引文件中,并检测单层级垃圾回收指令是否触发。在确定单层级垃圾回收指令触发后,对第一索引层关联的增量索引文件执行垃圾回收操作。例如,在同一个文件内容对应多个不同产生时间的增量索引信息下,删除产生时间早的增量索引信息,保留最新产生的增量索引信息。又例如,针对已经从文件系统删除的文件内容,删除其增量索引信息。又例如,多个增量索引文件之间存在数据交叠,删除重复的索引信息。又例如,将多个增量索引文件合并成至少一个增量索引文件,以减少增量索引文件的文件数量,当然,合并后的至少一个增量索引文件保留当前在文件系统中保存的全部新增的文件内容的增量索引信息。当然,垃圾回收操作并不限于上述举例操作,垃圾回收操作涉及的更多操作可以参见相关技术。
在本实施例中,第一索引单元可以周期性地触发单层级垃圾回收指令,也可以定期触发单层级垃圾回收指令,对此不做限制。进一步可选的,为了减少垃频繁触发垃圾回收操作带来的计算资源消耗,第一索引单元还可以用于:判断增量索引文件的文件数量是否大于预设的文件数量阈值;判断最新写入的增量索引信息是否与索引写回事件关联;若任一判断操作的结果为是,则针对第一索引层的单层级垃圾回收指令被触发。
具体而言,预设的文件数量阈值根据实际应用需求灵活设置,增量索引文件的文件数量大于预设的文件数量阈值,说明第一索引层关联的增量索引文件的文件数量较多,存在垃圾增量索引信息的概率较大;增量索引文件的文件数量小于或等于预设的文件数量阈值,说明第一索引层关联的增量索引文件的文件数量较少,存在垃圾增量索引信息的概率较小。于是,为了更加精细化维护和管理增量索引信息,节约存储资源,在检测出增量索引文件的文件数量的较多的情况下,触发针对第一索引层的单层级垃圾回收指令,以对第一索引层关联的增量索引文件执行垃圾回收操作。
在本实施例中,除了增量索引文件的文件数量的较多时可以触发针对第一索引层的单层级垃圾回收指令,还可以在出现索引写回事件时可以触发针对第一索引层的单层级垃圾回收指令。例如,在对保存文件数据的若干个数据文件执行GC操作时,可能会更新数据文件所保存的文件数据的索引信息,将数据文件所保存的文件数据更新后的索引信息作为最新的增量索引信息写入至增量索引文件,此时确认出现索引写回事件。又例如,在对保存文件数据的若干个数据文件执行碎片化文件整理操作时,可能会更新数据文件所保存的文件数据的索引信息,将数据文件所保存的文件数据更新后的索引信息作为最新的增量索引信息写入至增量索引文件,此时确认出现索引写回事件。又例如,发生直写数据文件转储时,确认出现索引写回事件。直写数据文件转储可以理解为对数据文件执行数据迁移操作,数据迁移后,数据文件中的文件数据的索引信息发生改变。于是,在一些实施例中,第一索引单元判断最新写入的增量索引信息是否与索引写回事件关联时,具体用于:若最新写入的增量索引信息是数据文件执行数据迁移而产生的,则确定最新写入的增量索引信息与索引写回事件关联。
进一步可选的,第一索引单元对至少一个增量索引文件执行垃圾回收操作的过程中,还可以对至少一个增量索引文件关联的数据文件顺带执行数据GC操作。具体而言,第一索引单元在对至少一个增量索引文件执行GC操作过程中,若关联的数据文件中的数据量较小时,迁移数据文件中的文件内容的成本较低,可以直接在执行GC操作过程,对关联的数据文件执行GC操作,例如,对数据文件进行碎片化整理和数据量小的数据文件进行合并等,进而提高文件系统的GC操作效率。当然,若关联的数据文件中的数据量较大时,可以不用对数据文件顺带执行数据GC操作。其中,可以按需灵活设置数据量阈值,若关联的数据文件的数据量大于数据量阈值,确定关联的数据文件中的数据量较大。若关联的数据文件的数据量小于或等于数据量阈值,确定关联的数据文件中的数据量较小。
在本实施例中,第二索引单元将文件系统中最新产生的历史索引信息写入至历史索引文件中,并检测单层级垃圾回收指令是否触发。第二索引单元可以周期性地触发单层级垃圾回收指令,也可以定期触发单层级垃圾回收指令,对此不做限制。进一步可选的,为了减少垃频繁触发垃圾回收操作带来的计算资源消耗,第二索引单元还用于:判断至少一个历史索引文件的配置参数是否发生改变;判断最新写入的历史索引信息是否与索引写回事件关联;若任一判断操作的结果为是,则针对第二索引层的单层级垃圾回收指令被触发。
在本实施例中,例如在运维场景,可能会改变历史索引文件的诸如存储格式、存储地址或者存储容量等配置参数,此时可以触发针对第二索引层的单层级垃圾回收指令。另外,在出现已有的文件内容更新后的历史索引信息写入历史索引文件时,可以触发针对第二索引层的单层级垃圾回收指令。在一些实施例中,第二索引单元判断最新写入的历史索引信息是否与索引写回事件关联时,具体用于:判断最新写入的历史索引信息是否是数据文件执行垃圾回收操作而产生的;判断最新写入的历史索引信息是否是数据文件执行碎片化文件整理操作而产生的;若任一判断操作的结果为是,则确定最新写入的历史索引信息与索引写回事件关联。
值得注意的是,在对文件内容写入文件系统的时长较长的数据文件(也可以理解为保存历史文件内容的数据文件)执行GC操作或碎片化文件整理操作时,可能会改变一些历史文件内容的索引信息,这样,由于已经在索引系统中保存了这些历史文件内容的旧的索引信息,再将历史文件内容的更新后的索引信息作为最新的历史索引信息写入索引系统时,会造成索引系统保存同一历史文件内容的多条历史索引信息。于是,出于更加精细化维护和管理增量索引信息,节约存储资源,在最新写入的历史索引信息是数据文件执行碎片化文件整理操作或者执行垃圾回收操作时,需要对第二索引层关联的历史索引信息执行垃圾回收操作。
随着时间推移,增量索引信息指向的文件内容转变为在文件系统中存储时间较长的历史文件内容,相应的,增量索引信息转变为历史索引信息,此时,需要将增量索引信息从增量索引文件中迁移至历史索引文件中。于是,在一些实施例中,索引系统还可以支持层间级垃圾回收操作,也即第一索引层与第二索引层之间的垃圾回收操作。层间级垃圾回收操作主要是将第一索引层的增量索引信息转变为历史索引信息并写入至第二索引层的历史索引文件中。基于此,第一索引单元,还用于向第二索引单元发送层间级垃圾回收指令;第二索引单元,用于响应于层间级垃圾回收指令,对至少一个增量索引文件中至少部分增量索引文件执行垃圾回收操作,以得到新的历史索引信息,并将新的历史索引信息写入至少一个历史索引文件中。
实际应用中,第二索引单元可以直接将新的历史索引信息写入至少一个历史索引文件中。进一步可选的,第二索引单元将新的历史索引信息写入至少一个历史索引文件中时,具体用于:在新的历史索引信息为多个的情况下,分批次将多个新的历史索引信息写入至少一个历史索引文件中。
值得注意的是,考虑到第一索引层的增量索引文件和第二索引层的历史索引文件可能会存在数据重复情况,此时,层间极GC操作可以支持第一索引层的部分增量索引信息和第一索引层的历史索引信息合并的能力。基于此,分批次将由增量索引信息转变而来的新的历史索引信息分批次写入历史索引文件中,实现将较大的GC操作切分为多个较小的GC操作,甚至能够简化GC操作对Failover场景的处理。其中,Failover是指故障转移,切分较小的GC操作后,Failover后处理操作也可以更加简化。
在本实施例中,第一索引单元可以周期性地触发层间级垃圾回收指令,也可以定期触发层间级垃圾回收指令,对此不做限制。进一步可选的,为了减少垃频繁触发垃圾回收操作带来的计算资源消耗,第一索引单元向第二索引单元发送层间级垃圾回收指令时,具体用于:根据至少一个增量索引文件中的增量索引信息的数据量,确定与至少一个增量索引文件关联的数据卷的垃圾占比;若垃圾占比大于预设垃圾占比,则向第二索引单元发送层间级垃圾回收指令。
在本实施例中,数据卷(Data Volumes)可以指组织和管理索引文件的容器,一个数据卷中可以包括多个索引文件,一个索引文件只能关联一个数据卷。根据至少一个增量索引文件中的增量索引信息的数据量,以及增量索引信息的数据量和垃圾占比的映射关系,可以估算与至少一个增量索引文件关联的数据卷的垃圾占比。若垃圾占比大于预设垃圾占比,说明增量索引信息比较多,可以执行层间级垃圾回收操作。若垃圾占比小于预设垃圾占比,说明增量索引信息较少,可以暂缓执行层间级垃圾回收操作,直至积攒到移一定数据的增量索引信息再执行层间级垃圾回收操作。
图3为本申请实施例提供的一种数据处理方法的流程图。该方法应用于索引系统,索引系统包括:第一索引层和第二索引层,第一索引层包括至少一个增量索引文件,第二索引层包括至少一个历史索引文件;该方法包括:
301、在至少一个增量索引文件中包括增量索引信息的情况下,响应于针对第一索引层的单层级垃圾回收指令,对至少一个增量索引文件执行垃圾回收操作。
302、在至少一个历史索引文件中包括历史索引信息的的情况下,响应于针对第二索引层的单层级垃圾回收指令,对至少一个历史索引文件执行垃圾回收操作。
进一步可选的,上述方法还包括:响应于层间级垃圾回收指令,对至少一个增量索引文件中至少部分增量索引文件执行垃圾回收操作,以得到新的历史索引信息;将新的历史索引信息写入至少一个历史索引文件中。
进一步可选的,上述方法还包括:根据至少一个增量索引文件中的增量索引信息的数据量,确定与至少一个增量索引文件关联的数据卷的垃圾占比;
若垃圾占比大于预设垃圾占比,确定层间级垃圾回收指令被触发。
进一步可选的,将新的历史索引信息写入至少一个历史索引文件中,包括:
在新的历史索引信息为多个的情况下,分批次将多个新的历史索引信息写入至少一个历史索引文件中。
进一步可选的,上述方法还包括:判断增量索引文件的文件数量是否大于预设的文件数量阈值;判断最新写入的增量索引信息是否与索引写回事件关联;若任一判断操作的结果为是,则针对第一索引层的单层级垃圾回收指令被触发。
进一步可选的,判断最新写入的增量索引信息是否与索引写回事件关联,包括:若最新写入的增量索引信息是数据文件执行数据迁移而产生的,则确定最新写入的增量索引信息与索引写回事件关联。
进一步可选的,上述方法还包括:对至少一个增量索引文件执行垃圾回收操作的过程中,对至少一个增量索引文件关联的数据文件顺带执行垃圾回收操作。
进一步可选的,上述方法还包括:判断至少一个历史索引文件的配置参数是否发生改变;判断最新写入的历史索引信息是否与索引写回事件关联;若任一判断操作的结果为是,则针对第二索引层的单层级垃圾回收指令被触发。
进一步可选的,判断最新写入的历史索引信息是否与索引写回事件关联,包括:判断最新写入的历史索引信息是否是数据文件执行垃圾回收操作而产生的;判断最新写入的历史索引信息是否是数据文件执行碎片化文件整理操作而产生的;若任一判断操作的结果为是,则确定最新写入的历史索引信息与索引写回事件关联。
关于该方法实施例执行各步骤的详细实施过程可参见系统实施例中的相关描述,在此不再赘述。
本申请实施例提供的技术方案,索引系统包括第一索引层和第二索引层等两个索引层,第一索引层维护和管理增量索引文件,第二索引层维护和管理历史索引文件。每个索引层都可以独立执行垃圾回收操作(也即单层级GC),进一步地,第一索引层和第二索引层之间还可以进行执行垃圾回收操作(也即层间级GC)。在索引系统应用到文件系统时,特别是支持Append-Only接口的NAS文件系统,能够有效地降低文件系统的读放大和写放大,提供更好的针对索引信息的GC性能。
图4为本申请实施例提供的一种数据处理装置的结构示意图。该方法可由数据处理装置执行,该装置可以由软件和/或硬件的方式实现。该装置可以配置到索引系统中,索引系统包括:第一索引层和第二索引层,第一索引层包括至少一个增量索引文件,第二索引层包括至少一个历史索引文件。参见图4,该装置可以包括:
第一垃圾回收模块41,用于在至少一个增量索引文件中包括增量索引信息的情况下,响应于针对第一索引层的单层级垃圾回收指令,对至少一个增量索引文件执行垃圾回收操作;
第二垃圾回收模块42,用于在至少一个历史索引文件中包括历史索引信息的的情况下,响应于针对第二索引层的单层级垃圾回收指令,对至少一个历史索引文件执行垃圾回收操作。
进一步可选的,上述装置还包括:第三垃圾回收模块43,用于响应于层间级垃圾回收指令,对至少一个增量索引文件中至少部分增量索引文件执行垃圾回收操作,以得到新的历史索引信息;将新的历史索引信息写入至少一个历史索引文件中。
进一步可选的,第三垃圾回收模块43,还用于根据至少一个增量索引文件中的增量索引信息的数据量,确定与至少一个增量索引文件关联的数据卷的垃圾占比;若垃圾占比大于预设垃圾占比,确定层间级垃圾回收指令被触发。
进一步可选的,第三垃圾回收模块43将新的历史索引信息写入至少一个历史索引文件中时,具体用于:在新的历史索引信息为多个的情况下,分批次将多个新的历史索引信息写入至少一个历史索引文件中。
进一步可选的,第一垃圾回收模块41,还用于判断增量索引文件的文件数量是否大于预设的文件数量阈值;判断最新写入的增量索引信息是否与索引写回事件关联;若任一判断操作的结果为是,则针对第一索引层的单层级垃圾回收指令被触发。
进一步可选的,第一垃圾回收模块41判断最新写入的增量索引信息是否与索引写回事件关联时,具体用于:若最新写入的增量索引信息是数据文件执行数据迁移而产生的,则确定最新写入的增量索引信息与索引写回事件关联。
进一步可选的,第一垃圾回收模块41还用于:对至少一个增量索引文件执行垃圾回收操作的过程中,对至少一个增量索引文件关联的数据文件顺带执行垃圾回收操作。
进一步可选的,第二垃圾回收模块42还用于:判断至少一个历史索引文件的配置参数是否发生改变;判断最新写入的历史索引信息是否与索引写回事件关联;若任一判断操作的结果为是,则针对第二索引层的单层级垃圾回收指令被触发。
进一步可选的,第二垃圾回收模块42判断最新写入的历史索引信息是否与索引写回事件关联时,具体用于:判断最新写入的历史索引信息是否是数据文件执行垃圾回收操作而产生的;判断最新写入的历史索引信息是否是数据文件执行碎片化文件整理操作而产生的;若任一判断操作的结果为是,则确定最新写入的历史索引信息与索引写回事件关联。
关于该方法实施例执行各步骤的详细实施过程可参见系统实施例中的相关描述,在此不再赘述。
图4所示的数据处理装置可以执行上述方法实施例的数据处理方法,其实现原理和技术效果不再赘述。对于上述实施例中的数据处理装置其中各个模块、单元执行操作的具体方式已经在有关系统实施例中进行了详细描述,此处将不做详细阐述说明。
本申请实施例提供的技术方案,索引系统包括第一索引层和第二索引层等两个索引层,第一索引层维护和管理增量索引文件,第二索引层维护和管理历史索引文件。每个索引层都可以独立执行垃圾回收操作(也即单层级GC),进一步地,第一索引层和第二索引层之间还可以进行执行垃圾回收操作(也即层间级GC)。在索引系统应用到文件系统时,能够有效地降低文件系统的读放大和写放大,提供更好的针对索引信息的GC性能,特别是支持Append-Only接口的NAS文件系统。
需要说明的是,上述实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤301至步骤302的执行主体可以为设备A;又比如,步骤301的执行主体可以为设备A,步骤302的执行主体可以为设备B;等等。
另外,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如301、302等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
图5为本申请实施例提供的一种电子设备的结构示意图。如图5所示,该电子设备包括:存储器51和处理器52;
存储器51,用于存储计算机程序,并可被配置为存储其它各种数据以支持在计算平台上的操作。这些数据的示例包括用于在计算平台上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
存储器51可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器52,与存储器51耦合,用于执行存储器51中的计算机程序,以用于:在至少一个增量索引文件中包括增量索引信息的情况下,响应于针对第一索引层的单层级垃圾回收指令,对至少一个增量索引文件执行垃圾回收操作;在至少一个历史索引文件中包括历史索引信息的的情况下,响应于针对第二索引层的单层级垃圾回收指令,对至少一个历史索引文件执行垃圾回收操作。
进一步可选的,处理器52还用于:响应于层间级垃圾回收指令,对至少一个增量索引文件中至少部分增量索引文件执行垃圾回收操作,以得到新的历史索引信息;将新的历史索引信息写入至少一个历史索引文件中。
进一步可选的,处理器52还用于:根据至少一个增量索引文件中的增量索引信息的数据量,确定与至少一个增量索引文件关联的数据卷的垃圾占比;若垃圾占比大于预设垃圾占比,确定层间级垃圾回收指令被触发。
进一步可选的,处理器52将新的历史索引信息写入至少一个历史索引文件中时,具体用于:在新的历史索引信息为多个的情况下,分批次将多个新的历史索引信息写入至少一个历史索引文件中。
进一步可选的,处理器52还用于判断增量索引文件的文件数量是否大于预设的文件数量阈值;判断最新写入的增量索引信息是否与索引写回事件关联;若任一判断操作的结果为是,则针对第一索引层的单层级垃圾回收指令被触发。
进一步可选的,处理器52判断最新写入的增量索引信息是否与索引写回事件关联时,具体用于:若最新写入的增量索引信息是数据文件执行数据迁移而产生的,则确定最新写入的增量索引信息与索引写回事件关联。
进一步可选的,处理器52还用于:对至少一个增量索引文件执行垃圾回收操作的过程中,对至少一个增量索引文件关联的数据文件顺带执行垃圾回收操作。
进一步可选的,处理器52还用于:判断至少一个历史索引文件的配置参数是否发生改变;判断最新写入的历史索引信息是否与索引写回事件关联;若任一判断操作的结果为是,则针对第二索引层的单层级垃圾回收指令被触发。
进一步可选的,处理器52判断最新写入的历史索引信息是否与索引写回事件关联时,具体用于:判断最新写入的历史索引信息是否是数据文件执行垃圾回收操作而产生的;判断最新写入的历史索引信息是否是数据文件执行碎片化文件整理操作而产生的;若任一判断操作的结果为是,则确定最新写入的历史索引信息与索引写回事件关联。
关于处理器执行各动作的详细实施过程可参见前述系统实施例中的相关描述,在此不再赘述。
进一步,如图5所示,该电子设备还包括:通信组件53、显示器54、电源组件55、音频组件56等其它组件。图5中仅示意性给出部分组件,并不意味着电子设备只包括图5所示组件。另外,图5中虚线框内的组件为可选组件,而非必选组件,具体可视电子设备的产品形态而定。本实施例的电子设备可以实现为台式电脑、笔记本电脑、智能手机或IOT设备等终端设备,也可以是常规服务器、云服务器或服务器阵列等服务端设备。若本实施例的电子设备实现为台式电脑、笔记本电脑、智能手机等终端设备,可以包含图5中虚线框内的组件;若本实施例的电子设备实现为常规服务器、云服务器或服务器阵列等服务端设备,则可以不包含图5中虚线框内的组件。
关于处理器执行各动作的详细实施过程可参见前述方法实施例或设备实施例中的相关描述,在此不再赘述。
相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被执行时能够实现上述方法实施例中可由电子设备执行的各步骤。
相应地,本申请实施例还提供一种计算机程序产品,包括计算机程序/指令,当计算机程序/指令被处理器执行时,致使处理器能够实现上述方法实施例中可由电子设备执行的各步骤。
上述通信组件被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。通信组件所在设备可以接入基于通信标准的无线网络,如WiFi,2G、3G、4G/LTE、5G等移动通信网络,或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
上述显示器包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。
上述电源组件,为电源组件所在设备的各种组件提供电力。电源组件可以包括电源管理系统,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
上述音频组件,可被配置为输出和/或输入音频信号。例如,音频组件包括一个麦克风(MIC),当音频组件所在设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器或经由通信组件发送。在一些实施例中,音频组件还包括一个扬声器,用于输出音频信号。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器 (CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器 (RAM) 和/或非易失性内存等形式,如只读存储器 (ROM) 或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存 (PRAM)、静态随机存取存储器 (SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器 (RAM)、只读存储器 (ROM)、电可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘 (DVD) 或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体 (transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (14)

1.一种索引系统,包括:第一索引层和第二索引层,所述第一索引层包括第一索引单元和至少一个增量索引文件,所述第二索引层包括第二索引单元和至少一个历史索引文件;
所述第一索引单元,用于向所述至少一个增量索引文件中写入增量索引信息;响应于针对所述第一索引层的单层级垃圾回收指令,对所述至少一个增量索引文件执行垃圾回收操作;
所述第二索引单元,用于向所述至少一个历史索引文件中写入历史索引信息;响应于针对所述第二索引层的单层级垃圾回收指令,对所述至少一个历史索引文件执行垃圾回收操作。
2.根据权利要求1所述的系统,
所述第一索引单元,还用于向所述第二索引单元发送层间级垃圾回收指令;
所述第二索引单元,用于响应于所述层间级垃圾回收指令,对所述至少一个增量索引文件中至少部分增量索引文件执行垃圾回收操作,以得到新的历史索引信息,并将所述新的历史索引信息写入所述至少一个历史索引文件中。
3.根据权利要求2所述的系统,所述第一索引单元向所述第二索引单元发送层间级垃圾回收指令时,具体用于:
根据所述至少一个增量索引文件中的增量索引信息的数据量,确定与至少一个增量索引文件关联的数据卷的垃圾占比;
若所述垃圾占比大于预设垃圾占比,则向所述第二索引单元发送层间级垃圾回收指令。
4.根据权利要求2所述的系统,所述第二索引单元将所述新的历史索引信息写入所述至少一个历史索引文件中时,具体用于:
在所述新的历史索引信息为多个的情况下,分批次将多个所述新的历史索引信息写入所述至少一个历史索引文件中。
5.根据权利要求1所述的系统,所述第一索引单元还用于:
判断增量索引文件的文件数量是否大于预设的文件数量阈值;
判断最新写入的增量索引信息是否与索引写回事件关联;
若任一判断操作的结果为是,则针对所述第一索引层的单层级垃圾回收指令被触发。
6.根据权利要求5所述的系统,所述第一索引单元判断最新写入的增量索引信息是否与索引写回事件关联时,具体用于:
若所述最新写入的增量索引信息是数据文件执行数据迁移而产生的,则确定所述最新写入的增量索引信息与索引写回事件关联。
7.根据权利要求1所述的系统,所述第一索引单元还用于:
对所述至少一个增量索引文件执行垃圾回收操作的过程中,对至少一个增量索引文件关联的数据文件顺带执行垃圾回收操作。
8.根据权利要求1所述的系统,所述第二索引单元还用于:
判断所述至少一个历史索引文件的配置参数是否发生改变;
判断最新写入的历史索引信息是否与索引写回事件关联;
若任一判断操作的结果为是,则针对所述第二索引层的单层级垃圾回收指令被触发。
9.根据权利要求8所述的系统,所述第二索引单元判断最新写入的历史索引信息是否与索引写回事件关联时,具体用于:
判断所述最新写入的历史索引信息是否是数据文件执行垃圾回收操作而产生的;
判断所述最新写入的历史索引信息是否是数据文件执行碎片化文件整理操作而产生的;
若任一判断操作的结果为是,则确定所述最新写入的历史索引信息与索引写回事件关联。
10.一种数据处理方法,应用于索引系统,所述索引系统包括:第一索引层和第二索引层,所述第一索引层包括至少一个增量索引文件,所述第二索引层包括至少一个历史索引文件;所述方法包括:
在所述至少一个增量索引文件中包括增量索引信息的情况下,响应于针对所述第一索引层的单层级垃圾回收指令,对所述至少一个增量索引文件执行垃圾回收操作;
在所述至少一个历史索引文件中包括历史索引信息的的情况下,响应于针对所述第二索引层的单层级垃圾回收指令,对所述至少一个历史索引文件执行垃圾回收操作。
11.根据权利要求10所述的方法,还包括:
响应于层间级垃圾回收指令,对所述至少一个增量索引文件中至少部分增量索引文件执行垃圾回收操作,以得到新的历史索引信息;
将所述新的历史索引信息写入所述至少一个历史索引文件中。
12.根据权利要求11所述的方法,将所述新的历史索引信息写入所述至少一个历史索引文件中,包括:
在所述新的历史索引信息为多个的情况下,分批次将多个所述新的历史索引信息写入所述至少一个历史索引文件中。
13.一种电子设备,包括:存储器和处理器;所述存储器,用于存储计算机程序;所述处理器耦合至所述存储器,用于执行所述计算机程序以用于执行权利要求10至12任一项所述方法中的步骤。
14.一种存储有计算机程序的计算机存储介质,当所述计算机程序被处理器执行时,致使所述处理器能够实现权利要求10至12任一项所述方法中的步骤。
CN202210848137.7A 2022-07-19 2022-07-19 索引系统、数据处理方法、电子设备及介质 Active CN114942908B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210848137.7A CN114942908B (zh) 2022-07-19 2022-07-19 索引系统、数据处理方法、电子设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210848137.7A CN114942908B (zh) 2022-07-19 2022-07-19 索引系统、数据处理方法、电子设备及介质

Publications (2)

Publication Number Publication Date
CN114942908A true CN114942908A (zh) 2022-08-26
CN114942908B CN114942908B (zh) 2023-01-17

Family

ID=82911470

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210848137.7A Active CN114942908B (zh) 2022-07-19 2022-07-19 索引系统、数据处理方法、电子设备及介质

Country Status (1)

Country Link
CN (1) CN114942908B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115586871A (zh) * 2022-10-28 2023-01-10 北京百度网讯科技有限公司 面向云计算场景的数据追加写方法、装置、设备以及介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1877583A (zh) * 2006-07-12 2006-12-13 百度在线网络技术(北京)有限公司 访问标识索引系统及访问标识索引库生成方法
US20150142735A1 (en) * 2012-06-06 2015-05-21 Tencent Technology (Shenzhen) Company Limited Memory searching system and method, real-time searching system and method, and computer storage medium
CN107391774A (zh) * 2017-09-15 2017-11-24 厦门大学 基于重复数据删除的日志文件系统的垃圾回收方法
CN109086001A (zh) * 2018-06-26 2018-12-25 郑州云海信息技术有限公司 一种NAND Flash垃圾回收方法及系统
CN110825748A (zh) * 2019-11-05 2020-02-21 北京平凯星辰科技发展有限公司 利用差异化索引机制的高性能和易扩展的键值存储方法
US20210081373A1 (en) * 2019-09-12 2021-03-18 Advanced New Technologies Co., Ltd. Log-structured storage systems
CN114721972A (zh) * 2022-06-09 2022-07-08 深圳佰维存储科技股份有限公司 垃圾回收方法、装置、可读存储介质及电子设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1877583A (zh) * 2006-07-12 2006-12-13 百度在线网络技术(北京)有限公司 访问标识索引系统及访问标识索引库生成方法
US20150142735A1 (en) * 2012-06-06 2015-05-21 Tencent Technology (Shenzhen) Company Limited Memory searching system and method, real-time searching system and method, and computer storage medium
CN107391774A (zh) * 2017-09-15 2017-11-24 厦门大学 基于重复数据删除的日志文件系统的垃圾回收方法
CN109086001A (zh) * 2018-06-26 2018-12-25 郑州云海信息技术有限公司 一种NAND Flash垃圾回收方法及系统
US20210081373A1 (en) * 2019-09-12 2021-03-18 Advanced New Technologies Co., Ltd. Log-structured storage systems
CN110825748A (zh) * 2019-11-05 2020-02-21 北京平凯星辰科技发展有限公司 利用差异化索引机制的高性能和易扩展的键值存储方法
CN114721972A (zh) * 2022-06-09 2022-07-08 深圳佰维存储科技股份有限公司 垃圾回收方法、装置、可读存储介质及电子设备

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
PARK, SANG OH ET AL.: "An Efficient Multimedia File System for NAND Flash Memory Storage", 《IEEE TRANSACTIONS ON CONSUMER ELECTRONICS》 *
裘宗燕: "Garbage Collection――问题和技术", 《程序员》 *
隆飞等: "基于LSM Tree的分布式索引实现", 《华东师范大学学报(自然科学版)》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115586871A (zh) * 2022-10-28 2023-01-10 北京百度网讯科技有限公司 面向云计算场景的数据追加写方法、装置、设备以及介质
CN115586871B (zh) * 2022-10-28 2023-10-27 北京百度网讯科技有限公司 面向云计算场景的数据追加写方法、装置、设备以及介质

Also Published As

Publication number Publication date
CN114942908B (zh) 2023-01-17

Similar Documents

Publication Publication Date Title
US20210056074A1 (en) File System Data Access Method and File System
US9983825B2 (en) Efficient data volume replication for block-based storage
US10296494B2 (en) Managing a global namespace for a distributed filesystem
US20200257450A1 (en) Data hierarchical storage and hierarchical query method and apparatus
US9804928B2 (en) Restoring an archived file in a distributed filesystem
CN109947668B (zh) 存储数据的方法和装置
US9811662B2 (en) Performing anti-virus checks for a distributed filesystem
US8805968B2 (en) Accessing cached data from a peer cloud controller in a distributed filesystem
US8799414B2 (en) Archiving data for a distributed filesystem
US8805967B2 (en) Providing disaster recovery for a distributed filesystem
US20120254116A1 (en) Distributed File System
US11048591B1 (en) Efficient name space organization in a global name space cluster
CN103034684A (zh) 一种基于内容寻址存储的虚拟机镜像存储优化方法
CN113672175A (zh) 分布式对象存储方法、装置和设备及计算机存储介质
CN103037004A (zh) 云存储系统操作的实现方法和装置
CN107818111B (zh) 一种缓存文件数据的方法、服务器及终端
CN113806300B (zh) 数据存储方法、系统、装置、设备及存储介质
CN114942908B (zh) 索引系统、数据处理方法、电子设备及介质
CN112256676A (zh) 一种数据库迁移的方法、装置、设备和介质
US20200145490A1 (en) Systems and methods for content origin administration
CN110618790B (zh) 基于重复数据删除的雾存储数据去冗余方法
US11151093B2 (en) Distributed system control for on-demand data access in complex, heterogenous data storage
WO2023241528A1 (zh) 数据处理方法以及装置
CN115934002B (zh) 固态硬盘的访问方法、固态硬盘、存储系统及云服务器
CN110888847B (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
GR01 Patent grant
GR01 Patent grant