CN110955632A - 一种文件索引生成方法及装置 - Google Patents
一种文件索引生成方法及装置 Download PDFInfo
- Publication number
- CN110955632A CN110955632A CN201911129098.XA CN201911129098A CN110955632A CN 110955632 A CN110955632 A CN 110955632A CN 201911129098 A CN201911129098 A CN 201911129098A CN 110955632 A CN110955632 A CN 110955632A
- Authority
- CN
- China
- Prior art keywords
- file
- log
- files
- file system
- index
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
- G06F16/148—File search processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling 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)
- Library & Information Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例公开了一种文件索引生成方法及装置,该方法包括:获取文件系统的日志,所述日志包括所述文件系统中管理的一个或多个文件的存储路径信息;根据所述一个或多个文件的存储路径信息,确定所述一个或多个文件中每一个文件的存储路径;根据所述每一个文件的存储路径生成所述每一个文件的文件索引,所述文件索引包括对应所述文件的一级或者多级索引。采用本申请实施例,能够有效地生成文件索引,且本申请实施例适用范围广、可迁移性强。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种文件索引生成方法及装置。
背景技术
伴随计算机使用时间的增长,计算机会存储越来越多的文件;对于计算机而言,在查找某个存储在磁盘中的目标文件时,一般会根据文件对应的索引,在相应的磁盘目录中定位文件的存储位置,然后根据用户的指令对文件进行处理,例如,找到目标文件后,打开文件。那么,不同文件就会有各自的文件索引,并且,文件存储位置发生变动后,索引也会改变,所以计算机中不仅文件索引量巨大,而且频繁地产生索引。
目前,计算机会通过预设的固定程序接口,读取磁盘中目标文件的存储位置,然后生成该文件的文件索引,便于查找和定位该文件。这种索引生成方式依赖于固定接口,且可迁移性差,即这种方式只适用一定类型的程序接口,当迁移至不同的计算机中,可能因为接口不兼容,导致需要重新修改代码,以适应新的接口。
因此,如何有效地生成文件索引,并且扩大该方法的适用范围,提高该方法的可迁移性,是本申请亟待解决的问题。
发明内容
本申请实施例提供了一种文件索引生成方法及装置,旨在有效生成文件索引,且适用范围广、可迁移性强。
第一方面,本申请实施例提供了一种文件索引生成方法,该方法包括:
获取文件系统的日志,所述日志包括所述文件系统中管理的一个或多个文件的存储路径信息;根据所述一个或多个文件的存储路径信息,确定所述一个或多个文件中每一个文件的存储路径;根据所述每一个文件的存储路径生成所述每一个文件的文件索引,所述文件索引包括对应所述文件的一级或者多级索引。
本申请实施例中通过分析文件系统的日志,确定文件系统管理的文件存储位置,然后根据文件的存储位置生成该文件的文件索引。本方案针对文件系统的日志产生文件的索引,只要计算机上应用文件系统就能够产生文件的索引,不依赖于计算机的程序接口;而且,日志包含了文件从创建到修改全部过过程,准确记录文件的存储位置,因此,根据文件系统的日志能够有效地获得文件的文件索引。综上所述,本方案可迁移性强,不依赖固定接口,并且提高文件索引的生成效率。
在一种可能的实现方式中,所述获取文件系统的日志,包括:
将所述文件系统和所述日志加载至内存,在所述文件系统启动后,从所述内存中读取所述日志。本申请实施例中,将文件系统从文件系统对应的磁盘中加载至内存,以及将日志存储的磁盘中将日志加载至内存中,便于后续对日志的结构分析和数据获取。
在一种可能的实现方式中,将所述日志加载至所述内存,包括:
确定所述文件系统管理的一个或多个磁盘中每一个磁盘对应日志的存储位置;根据所述每一个磁盘对应日志的存储位置,获取所述每一个磁盘对应日志。本申请实施例中,根据日志的存储位置,能够高效准确地读取所需要的日志。
在一种可能的实现方式中,所述方法还包括:
确定所述文件系统管理的第一文件的第一文件索引;
从所述一个或多个文件的文件索引中,匹配父目录为所述第一文件索引的一个或多个第二文件,其中,所述第一文件内包含所述一个或者多个第二文件。本申请实施例,根据某文件确定该文件的文件索引为父目录,从生成的索引中查找对应父目录的索引,确定为该父目录的子目录,从而快速找到包含在该文件下的若干个文件。
在一种可能的实现方式中,所述获取文件系统的日志之后,还包括:将所述日志中第一预设字节范围的数据,确定为所述存储路径信息;获取所述存储路径信息。本申请实施例,通过分析日志结构,从日志包含的大量文件数据中,识别并获取文件的存储位置。
第二方面,本申请实施例提供了一种文件索引生成装置,该装置包括:
获取单元,用于获取文件系统的日志,所述日志包括所述文件系统中管理的一个或多个文件的存储路径信息;
路径确定单元,用于根据所述一个或多个文件的存储路径信息,确定所述一个或多个文件中每一个文件的存储路径;
生成单元,用于根据所述每一个文件的存储路径生成所述每一个文件的文件索引,所述文件索引包括对应所述文件的一级或者多级索引。
在一种可能的实现方式中,所述获取单元,包括加载单元,用于将所述文件系统和所述日志加载至内存,在所述文件系统启动后,从所述内存中读取所述日志。
在一种可能的实现方式中,所述加载单元,具体用于:
确定所述文件系统管理的一个或多个磁盘中每一个磁盘对应日志的存储位置;根据所述每一个磁盘对应日志的存储位置,获取所述每一个磁盘对应日志。
在一种可能的实现方式中,所述装置还包括匹配单元,用于:
确定所述文件系统管理的第一文件的第一文件索引;从所述一个或多个文件的文件索引中,匹配父目录为所述第一文件索引的一个或多个第二文件,其中,所述第一文件内包含所述一个或者多个第二文件。
在一种可能的实现方式中,所述装置还包括选择单元,用于在获取文件系统的日志之后,将所述日志中第一预设字节范围的数据,确定为所述存储路径信息;获取所述存储路径信息。
本申请实施例中通过分析文件系统的日志,确定文件系统管理的文件存储位置,然后根据文件的存储位置生成该文件的文件索引。本方案针对文件系统的日志产生文件的索引,只要计算机上应用文件系统就能够产生文件的索引,不依赖于计算机的程序接口;而且,日志包含了文件从创建到修改全部过过程,准确记录文件的存储位置,因此,根据文件系统的日志能够有效地获得文件的文件索引。综上所述,本方案可迁移性强,不依赖固定接口,并且提高文件索引的生成效率。
第三方面,本申请实施例提供了一种电子设备,包括处理器、通信设备、存储器、输入装置和输出装置,所述处理器、通信设备、存储器、输入装置和输出装置相互连接,其中,所述存储器用于存储应用程序代码,所述处理器被配置用于调用所述应用程序代码,执行上述第一方面任一项所述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述第一方面任一项所述的方法。
第五方面,本申请实施例提供了一种计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述第一方面任一项所述的方法。
附图说明
下面将对本申请实施例中所需要使用的附图作介绍。
图1是本申请实施例提供的一种文件索引生成的架构图的示意图;
图2是本申请实施例提供的一种文件索引生成流程示意图;
图3是本申请实施例提供的一种文件索引生成方法的示意图;
图4是本申请实施例提供的一种文件索引生成装置的结构示意图;
图5是本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为了使本领域技术人员更好地理解本发明方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
以下分别进行详细说明。
首先,对本申请中的部分用语进行解释说明,以便于本领域技术人员理解。
(1)文件系统,是操作系统用于明确存储设备或分区上的文件的方法和数据结构;即在存储设备上组织文件的方法。操作系统中负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。文件系统由三部分组成:文件系统的接口,对对象操纵和管理的软件集合,对象及属性。从系统角度来看,文件系统是对文件存储设备的空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统。具体地说,它负责为用户建立文件,存入、读出、修改、转储文件,控制文件的存取,当用户不再使用时撤销文件等。主流的文件系统包括Windows NT环境的文件系统(New Technology File System,NTFS)、第三代扩展文件系统(Third extended filesystem,Ext3)、第四代扩展文件系统(Fourthextended filesystem,Ext4)等。
接下来,对本申请提供的一种文件索引生成的架构图进行描述。参阅图1,图1是本申请实施例提供的一种文件索引生成的架构图的示意图。文件索引生成的架构应用于计算机10,计算机10可以包括处理器101、内存102和磁盘103;处理器101、内存102和磁盘103都是计算机的部件;可以理解的是,计算机的存储器包括内存102和磁盘103。其中,
所述磁盘103可以在计算机10启动后,将文件系统以及存储的文件系统的日志201加载至内存102中。
所述处理器101可以根据内存102中存储的日志201,生成对应文件的文件索引202。
所述内存102,用于在计算机上电过程中,存储相应的程序和数据,如文件系统和文件系统产生的日志,暂时存储在内存,然后存储至磁盘的对应位置,以及将磁盘中的日志加载到内存中,便于计算机快速读取和处理。
上面描述了一种文件索引生成架构,下面描述一种文件索引生成流程,该流程可以应用于上述架构。请参见图2,图2是本申请实施例提供的一种文件索引生成流程示意图。如图2所示,处理器101可以根据日志201生成文件的文件索引202。具体可以为:根据一个或者多个日志201(图中以N个日志为例,N可以为大于0的整数)的结构,分析日志中包含的多个文件存储路径信息,从多个文件的存储路径信息中找到目标文件(即图中所示文件A)的存储路径信息。然后根据文件A的存储路径信息生成文件A的文件索引;当有多个目标文件时,可以生成多个文件索引。可以理解的是,日志中包含的数据不限于文件的存储路径信息,还可以包括文件的修改信息和创建信息等;本发明实施例对此不作限定。
基于上述给出的文件索引生成架构和流程,下面提供一种文件索引生成方法,请参见图3,图3是本申请实施例提供的一种文件索引生成方法的示意图。如图3所示,该方法以处理器为执行主体进行描述,可以包括步骤S301-S305;可选的步骤包括步骤S302和步骤S303。
步骤S301:获取文件系统的日志。
具体地,在文件系统启动后,处理器获取已经加载在内存中的日志;所述日志包括所述文件系统中管理的一个或多个文件的存储路径信息。
在一种可能的实现方式中,所述获取文件系统的日志,包括:将所述文件系统和所述日志加载至内存,在所述文件系统启动后,从所述内存中读取所述日志。例如,在计算机启动后,内存上电,将磁盘中的日志加载到内存,然后处理器需要对日志进行处理时,从内存中读取日志。
在一种可能的实现方式中,将所述日志加载至所述内存,包括:
确定所述文件系统管理的一个或多个磁盘中每一个磁盘对应日志的存储位置;根据所述每一个磁盘对应日志的存储位置,获取所述每一个磁盘对应日志。可选地,文件系统管理的磁盘分区不包含计算机所有的磁盘分区。在计算机启动后,从存储文件系统的磁盘中加载文件系统到内存,从存储日志的磁盘中加载日志到内存。其中,文件系统可以通过文件系统日志故障恢复;主流的文件系统NTFS、Ext3、Ext4、HFS+以及APFS等都会产生日志,文件系统的日志会记录每一个文件的记录,包括文件的创建、修改以及存储等情况。文件系统是操作系统用于明确存储设备(常见的是磁盘,也有基于NAND Flash的固态硬盘)或分区上的文件的方法和数据结构,可以表现为具体的软件或者程序。
在一种可能的实现方式中,在计算机启动后,遍历每个磁盘分区并读取每个磁盘上存储的所有日志,便于后续解析出电脑上所有文件索引。其中,所有日志可以包括文件系统的历史日志。通过历史日志可以获取文件历史的存储位置。在文件系统发生故障的情况下,可以根据日志的历史存储位置重新生成故障前最新一次的索引,减少故障带来的影响。
步骤S302:将所述日志中第一预设字节范围的数据,确定为所述存储路径信息。
具体地,处理器通过二进制分析的方式,分析出日志的结构;根据日志的结构,确定日志中包含的文件的存储路径信息。其中,日志结构具体可以为在日志的数据结构中,从某字节起至某字节为止,是某文件的存储路径信息。例如,在1MB的日志中,第3字节到第15字节是文件A的存储路径信息。可以理解的是,日志还包括了文件的创建信息和修改信息等多种信息。文件系统通过日志记录所管理的文件的所有变动情况,不同预设字节范围内的数据信息,对应不同的信息。处理器可以分析日志结构并识别并判断该字节范围内的信息是否需要,是否能够进一步获取和处理。可以理解的是,二进制解析文件系统日志结构,可以进而实现跨平台的高效资源管理器。
步骤S303:获取所述存储路径信息。
具体地,在处理器确定了目标文件的存储路径后,处理器获取该目标文件的存储路径信息。其中,目标文件可以是一个文件或者多个文件。可选地,文件的具体形式可以包括文件夹、可执行文件(如后缀名为exe的文件)、word文件、excel文件等多种类型的文件。本申请实施例对文件的具体形式不作限定。
步骤S304:根据所述一个或多个文件的存储路径信息,确定所述一个或多个文件中每一个文件的存储路径。
具体地,处理器根据存储路径信息中具体的文件存储位置,获取文件完整的存储路径。例如,存储路径可以为C:\Windows\Boot\DVD\EFI\boot.sdi。其中,C:\Windows\Boot\DVD\EFI为boot.sdi存储的目录,boot.sdi为目标文件,目录以及目标文件构成完整的文件索引。
步骤S305:根据所述每一个文件的存储路径生成所述每一个文件的文件索引。
具体地,在处理器获得文件的存储路径后,按照该文件的存储路径(路径包含了根目录的信息(如:C盘、D盘、E盘等)以及文件本身信息(如:文件名,文件后缀名以及文件类型等)),可以生成一个或者多个该文件的文件索引。例如,该文件的存储路径为C:\Windows\Boot\DVD\EFI\boot.sdi;一级索引为C:\,用于定位至C盘中;二级索引为C:\Windows,用于定位至C盘下的Windows文件夹;六级索引可以为C:\Windows\Boot\DVD\EFI\boot.sdi,用于定位到目标文件的具体存储位置,展示了完整的存储路径。
在一种可能的实现方式中,确定所述文件系统管理的第一文件的第一文件索引;从所述一个或多个文件的文件索引中,匹配父目录为所述第一文件索引的一个或多个第二文件,其中,所述第一文件内包含所述一个或者多个第二文件。例如,根据文件夹的索引列出当前文件夹的文件列表。具体可以包括:记录当前文件夹索引,在生成的所有文件索引里查找出父目录为当前索引的文件,查找结果即为当前文件夹的文件列表。再例如,当用户点击了当前文件夹中的文件夹,点击的文件夹的索引变为当前文件夹的索引,进一步展示该用户点击的文件夹的文件列表,如此递归逻辑而完成整个资源管理器的操作逻辑。本申请实施例中的方案可以应用于文件快捷搜索。可选地,每一个文件都会有自己的索引,从根目录到最终的子目录路径,如C:\A\a\1.exe;当用户点击的是A,从所有索引结果中查找包含C:\A\的文件。按照查找到的索引,将文件归类于对应的索引下。可以理解的是,在同一个文件夹下的文件,有相同的父目录,如,C:\A\a\1.exe和C:\A\a\2.exe,相同的父目录为C:\A\a\,子目录分别为C:\A\a\1.exe和C:\A\a\2.exe。通过实施本申请实施例,可以有效地减少资源管理器的磁盘IO,仅需内存里面用索引查找文件夹的文件列表,每次打开文件夹都不需要进行磁盘IO,从而实现快速展示、快速目录切换、减少卡顿,提高用户工作效率。
可选地,本申请实施例还提供一种资源管理器,该资源管理器基于计算机中文件系统的日志,分析和生成文件系统管理下的所有文件的索引。当用户需要查找文件系统管理的一个或者多个目标文件时,向用户提供目标文件的文件索引。或者,在用户打开某个文件夹时,快速展示该文件夹包含的若干个文件。
在本申请实施例中,通过分析文件系统的日志,确定文件系统管理的文件存储位置,然后根据文件的存储位置生成该文件的文件索引。本方案针对文件系统的日志产生文件的索引,只要计算机上应用文件系统就能够产生文件的索引,不依赖于计算机的程序接口;而且,日志包含了文件从创建到修改全部过过程,准确记录文件的存储位置,因此,根据文件系统的日志能够有效地获得文件的文件索引。综上所述,本方案可迁移性强,不依赖固定接口,并且提高文件索引的生成效率。
为了便于更好地实施本申请的上述方案,本申请实施例还对应提供了一种文件索引生成装置,请参见图4,图4是本申请实施例提供的一种文件索引生成装置的结构示意图;下面结合附图4来进行详细说明:
如图4所示,文件索引生成装置40可以包括获取单元401、路径确定单元402、生成单元403、加载单元404、匹配单元405和选择单元406,可选的单元还可以包括加载单元404、匹配单元405和选择单元406,其中:
获取单元401,用于获取文件系统的日志,所述日志包括所述文件系统中管理的一个或多个文件的存储路径信息;
路径确定单元402,用于根据所述一个或多个文件的存储路径信息,确定所述一个或多个文件中每一个文件的存储路径;
生成单元403,用于根据所述每一个文件的存储路径生成所述每一个文件的文件索引,所述文件索引包括对应所述文件的一级或者多级索引。
本申请实施例中通过分析文件系统的日志,确定文件系统管理的文件存储位置,然后根据文件的存储位置生成该文件的文件索引。本方案针对文件系统的日志产生文件的索引,只要计算机上应用文件系统就能够产生文件的索引,不依赖于计算机的程序接口;而且,日志包含了文件从创建到修改全部过过程,准确记录文件的存储位置,因此,根据文件系统的日志能够有效地获得文件的文件索引。综上所述,本方案可迁移性强,不依赖固定接口,并且提高文件索引的生成效率。
在一种可能的实现方式中,所述获取单元401,包括加载单元404,用于将所述文件系统和所述日志加载至内存,在所述文件系统启动后,从所述内存中读取所述日志。
在一种可能的实现方式中,所述加载单元404,具体用于:
确定所述文件系统管理的一个或多个磁盘中每一个磁盘对应日志的存储位置;根据所述每一个磁盘对应日志的存储位置,获取所述每一个磁盘对应日志。
在一种可能的实现方式中,所述装置40还包括匹配单元405,用于:
确定所述文件系统管理的第一文件的第一文件索引;从所述一个或多个文件的文件索引中,匹配父目录为所述第一文件索引的一个或多个第二文件,其中,所述第一文件内包含所述一个或者多个第二文件。
在一种可能的实现方式中,所述装置40还包括选择单元406,用于在获取文件系统的日志之后,将所述日志中第一预设字节范围的数据,确定为所述存储路径信息;获取所述存储路径信息。
需要说明的是,图4所示的文件索引生成装置40中各个单元的具体实现及有益效果可以对应参照图3所示的方法实施例中的相应描述,此处不再赘述。
请参见图5,图5是本申请实施例提供的一种电子设备的结构示意图,该电子设备50包括处理器501、存储器502、通信接口503、输入装置505和输出装置506,所述处理器501、存储器502、通信接口503、输入装置505和输出装置506通过总线504相互连接。电子设备50可以是平板电脑、个人电脑等电子设备,输入装置505可以是键盘、鼠标、语音录入、触摸板等装置,输出装置可以是显示器等装置。
存储器502包括但不限于是随机存储记忆体(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasable programmableread only memory,EPROM)、或便携式只读存储器(compact disc read-only memory,CD-ROM),该存储器502用于相关指令及数据的存储。通信接口503用于接收和发送数据。
处理器501可以是一个或多个中央处理器(central processing unit,CPU),在处理器501是一个CPU的情况下,该CPU可以是单核CPU,也可以是多核CPU。
该电子设备50中的处理器501用于读取所述存储器502中存储的程序代码,执行以下操作:
处理器501获取文件系统的日志,所述日志包括所述文件系统中管理的一个或多个文件的存储路径信息;根据所述一个或多个文件的存储路径信息,确定所述一个或多个文件中每一个文件的存储路径;根据所述每一个文件的存储路径生成所述每一个文件的文件索引,所述文件索引包括对应所述文件的一级或者多级索引。
在一种可能的实现方式中,所述处理器501具体用于:
将所述文件系统和所述日志加载至内存,在所述文件系统启动后,从所述内存中读取所述日志。本申请实施例中,将文件系统从文件系统对应的磁盘中加载至内存,以及将日志存储的磁盘中将日志加载至内存中,便于后续对日志的结构分析和数据获取。
在一种可能的实现方式中,所述处理器501具体用于:
确定所述文件系统管理的一个或多个磁盘中每一个磁盘对应日志的存储位置;根据所述每一个磁盘对应日志的存储位置,获取所述每一个磁盘对应日志。本申请实施例中,根据日志的存储位置,能够高效准确地读取所需要的日志。
在一种可能的实现方式中,所述处理器501还用于:
确定所述文件系统管理的第一文件的第一文件索引;
从所述一个或多个文件的文件索引中,匹配父目录为所述第一文件索引的一个或多个第二文件,其中,所述第一文件内包含所述一个或者多个第二文件。本申请实施例,根据某文件确定该文件的文件索引为父目录,从生成的索引中查找对应父目录的索引,确定为该父目录的子目录,从而快速找到包含在该文件下的若干个文件。
在一种可能的实现方式中,所述处理器501具体用于:将所述日志中第一预设字节范围的数据,确定为所述存储路径信息;获取所述存储路径信息。本申请实施例,通过分析日志结构,从日志包含的大量文件数据中,识别并获取文件的存储位置。
本申请实施例中通过分析文件系统的日志,确定文件系统管理的文件存储位置,然后根据文件的存储位置生成该文件的文件索引。本方案针对文件系统的日志产生文件的索引,只要计算机上应用文件系统就能够产生文件的索引,不依赖于计算机的程序接口;而且,日志包含了文件从创建到修改全部过过程,准确记录文件的存储位置,因此,根据文件系统的日志能够有效地获得文件的文件索引。综上所述,本方案可迁移性强,不依赖固定接口,并且提高文件索引的生成效率。
需要说明的是,上述各个操作的实现及有益效果还可以对应参照图3所示的方法实施例的相应描述。
本申请实施例还提供了一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,当所述程序指令被处理器执行时,图3所示的方法流程得以实现。
本申请实施例还提供了一种计算机程序,所述计算机程序包括程序指令,当所述程序指令被处理器执行时,图3所示的方法流程得以实现。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置、设备和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种文件索引生成方法,其特征在于,包括:
获取文件系统的日志,所述日志包括所述文件系统中管理的一个或多个文件的存储路径信息;
根据所述一个或多个文件的存储路径信息,确定所述一个或多个文件中每一个文件的存储路径;
根据所述每一个文件的存储路径生成所述每一个文件的文件索引,所述文件索引包括对应所述文件的一级或者多级索引。
2.根据权利要求1所述的方法,其特征在于,所述获取文件系统的日志,包括:
将所述文件系统和所述日志加载至内存,在所述文件系统启动后,从所述内存中读取所述日志。
3.根据权利要求2所述的方法,其特征在于,将所述日志加载至所述内存,包括:
确定所述文件系统管理的一个或多个磁盘中每一个磁盘对应日志的存储位置;
根据所述每一个磁盘对应日志的存储位置,获取所述每一个磁盘对应日志。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定所述文件系统管理的第一文件的第一文件索引;
从所述一个或多个文件的文件索引中,匹配父目录为所述第一文件索引的一个或多个第二文件,其中,所述第一文件内包含所述一个或者多个第二文件。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述获取文件系统的日志之后,还包括:
将所述日志中第一预设字节范围的数据,确定为所述存储路径信息;
获取所述存储路径信息。
6.一种文件索引生成装置,其特征在于,包括:
获取单元,用于获取文件系统的日志,所述日志包括所述文件系统中管理的一个或多个文件的存储路径信息;
路径确定单元,用于根据所述一个或多个文件的存储路径信息,确定所述一个或多个文件中每一个文件的存储路径;
生成单元,用于根据所述每一个文件的存储路径生成所述每一个文件的文件索引,所述文件索引包括对应所述文件的一级或者多级索引。
7.根据权利要求6所述的装置,其特征在于,所述获取单元,包括加载单元,用于将所述文件系统和所述日志加载至内存,在所述文件系统启动后,从所述内存中读取所述日志。
8.根据权利要求6所述的装置,其特征在于,所述加载单元,具体用于:
确定所述文件系统管理的一个或多个磁盘中每一个磁盘对应日志的存储位置;根据所述每一个磁盘对应日志的存储位置,获取所述每一个磁盘对应日志。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器、输入装置和输出装置,所述处理器、通信接口、存储器、输入装置和输出装置相互连接,其中,所述存储器用于存储计算机程序,所述处理器被配置用于调用所述计算机程序执行如权利要求1-5任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现如权利要求1-5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911129098.XA CN110955632A (zh) | 2019-11-18 | 2019-11-18 | 一种文件索引生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911129098.XA CN110955632A (zh) | 2019-11-18 | 2019-11-18 | 一种文件索引生成方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110955632A true CN110955632A (zh) | 2020-04-03 |
Family
ID=69977617
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911129098.XA Pending CN110955632A (zh) | 2019-11-18 | 2019-11-18 | 一种文件索引生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110955632A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111858494A (zh) * | 2020-07-23 | 2020-10-30 | 珠海豹趣科技有限公司 | 文件获取方法、装置、存储介质及电子设备 |
CN111988298A (zh) * | 2020-08-13 | 2020-11-24 | 山东伏羲智库互联网研究院 | 数据处理方法、装置及设备 |
CN112860649A (zh) * | 2021-02-03 | 2021-05-28 | 深圳市木浪云数据有限公司 | 增量生成索引的方法、装置及系统 |
CN111858494B (zh) * | 2020-07-23 | 2024-05-17 | 珠海豹趣科技有限公司 | 文件获取方法、装置、存储介质及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105279213A (zh) * | 2015-03-13 | 2016-01-27 | 中国移动通信集团广东有限公司 | 一种日志数据库检索装置及检索方法 |
CN105279278A (zh) * | 2015-11-13 | 2016-01-27 | 珠海市君天电子科技有限公司 | 文件的搜索方法及装置 |
CN106156129A (zh) * | 2015-04-08 | 2016-11-23 | 联想(北京)有限公司 | 文件管理方法及装置 |
-
2019
- 2019-11-18 CN CN201911129098.XA patent/CN110955632A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105279213A (zh) * | 2015-03-13 | 2016-01-27 | 中国移动通信集团广东有限公司 | 一种日志数据库检索装置及检索方法 |
CN106156129A (zh) * | 2015-04-08 | 2016-11-23 | 联想(北京)有限公司 | 文件管理方法及装置 |
CN105279278A (zh) * | 2015-11-13 | 2016-01-27 | 珠海市君天电子科技有限公司 | 文件的搜索方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111858494A (zh) * | 2020-07-23 | 2020-10-30 | 珠海豹趣科技有限公司 | 文件获取方法、装置、存储介质及电子设备 |
CN111858494B (zh) * | 2020-07-23 | 2024-05-17 | 珠海豹趣科技有限公司 | 文件获取方法、装置、存储介质及电子设备 |
CN111988298A (zh) * | 2020-08-13 | 2020-11-24 | 山东伏羲智库互联网研究院 | 数据处理方法、装置及设备 |
CN112860649A (zh) * | 2021-02-03 | 2021-05-28 | 深圳市木浪云数据有限公司 | 增量生成索引的方法、装置及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8788471B2 (en) | Matching transactions in multi-level records | |
US9104673B2 (en) | Method for supporting multiple filesystem implementations | |
JP5662398B2 (ja) | 先読み技術を利用して行われる、システムのオペレーティングシステムのブート | |
US8799333B2 (en) | Delayed deletion of extended attributes | |
US8312390B2 (en) | Dynamic screentip language translation | |
US20090094609A1 (en) | Dynamically providing a localized user interface language resource | |
US9256454B2 (en) | Determining optimal methods for creating virtual machines | |
US11593342B2 (en) | Systems and methods for database orientation transformation | |
CN110955632A (zh) | 一种文件索引生成方法及装置 | |
EP2951680B1 (en) | Acquiring identification of an application lifecycle management entity associated with similar code | |
CN112416710A (zh) | 用户操作的记录方法、装置、电子设备及存储介质 | |
US10872027B2 (en) | Run-time or compile-time error solutions for locating missing program elements in a programming environment | |
KR101798705B1 (ko) | 유연성을 갖춘 메타데이터 구성 기법 | |
CN110069455B (zh) | 一种文件合并方法及装置 | |
US20170109331A1 (en) | Managing changes to a document in a revision control system | |
Lukken et al. | Past, present and future of computational storage: A survey | |
US5745749A (en) | Method and system of file version clustering of object blocks using a compiler and database and having a predetermined value | |
CN114691496A (zh) | 单元测试方法、装置、计算设备及介质 | |
CN113901025A (zh) | 数据库管理方法、装置、设备和存储介质 | |
US10282243B2 (en) | Performance enhancement for platform data dump collection | |
CN113590088B (zh) | 一种自动分析组件使用情况的方法、装置和电子设备 | |
US9038049B2 (en) | Automated discovery of resource definitions and relationships in a scripting environment | |
CN111273956A (zh) | 一种程序模块加载方法、装置、设备及存储介质 | |
CN114281760A (zh) | 数据项文件的注册方法、系统、电子设备及存储介质 | |
CN118034777A (zh) | 基于fttr的日志管理与版本控制方法、装置、设备及介质 |
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 |