CN117194349A - 一种文件存储与读取方法及装置 - Google Patents
一种文件存储与读取方法及装置 Download PDFInfo
- Publication number
- CN117194349A CN117194349A CN202210608420.2A CN202210608420A CN117194349A CN 117194349 A CN117194349 A CN 117194349A CN 202210608420 A CN202210608420 A CN 202210608420A CN 117194349 A CN117194349 A CN 117194349A
- Authority
- CN
- China
- Prior art keywords
- file
- storage
- storage units
- units
- depends
- 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
- 238000000034 method Methods 0.000 title claims abstract description 69
- 230000015654 memory Effects 0.000 claims description 33
- 230000001419 dependent effect Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 13
- 238000013461 design Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种文件存储与读取方法及装置。其中文件存储方法为:获取第一文件和第二文件,第一文件是第二文件所依赖的文件,第二文件的运行条件包括第一文件已运行,因此运行第二文件时需连第一文件和第二文件一起读取。将第一文件和第二文件存储至存储介质的N个存储单元,N为正整数,存储单元为存储介质中读取数据的最小单元,第一文件的大小与第二文件的大小之和大于N‑1个存储单元的容量大小、且小于或等于N个存储单元的容量大小,所以可以将第一文件和第二文件集中地存储至存储介质的N个存储单元,实现了对存储单元的充分利用,也使得从存储介质中读取的存储单元数量降低。
Description
技术领域
本申请涉及文件管理领域,尤其涉及一种文件存储与读取方法及装置。
背景技术
文件系统可以用于对文件进行存储管理,目前文件在存储介质中可以按照文件系统设定的排列规则存储。举例来说,一些文件系统所管理的文件在存储介质中可以按照文件名称的字典顺序存储。然而,目前一些文件运行时,可能需要依赖于其他文件,那么在文件运行时,便需要连所依赖的文件都读取到内存中。举例来说,A文件依赖于B文件指,A文件运行的前提条件是B文件已经运行。那么A文件读取时,A文件和B文件都要读取。
然而,存储介质都有其相应的存储单元,也就是存储及读取数据的最小单元。那么当一个A文件需要读取时,若A文件依赖于B文件,A文件以及所依赖的B文件都要读取。然而,目前文件存储到存储介质时,并没有考虑到文件之间的依赖关系,一个文件及其依赖文件分散在不同存储单元存储,这便不能充分运用存储单元的存储空间,且会造成读取一个文件及依赖文件时,从存储介质读取的存储单元数量大于实际所需的存储单元数量。举例来说,现有技术中,存储单元为一个4096字节(byte,B)的磁盘块,A文件和B文件大小为1024B,按文件名的字典顺序排列后,由于A文件和B文件之间还有其他文件,使得A文件和B文件分别存储在2个存储单元中,读取A文件和B文件时会读取2个存储单元。然而,A文件和B文件总大小才为2048B,实际只需要一个存储单元即可。但由于A文件和B文件分别存储在2个存储单元中,未充分运用存储单元的存储空间,导致多占据了一个存储单元,且读取时也多读了一个存储单元。因此,对于一个文件及依赖文件,如何降低占用的存储单元的数量、以及降低读取的存储单元的数量,亟需一种解决方案。
发明内容
本申请提供一种文件存储与读取的方法及装置,使得可以降低存储相互依赖的文件所占用的存储单元的数量、以及降低读取相互依赖的文件所需读取的存储单元的数量。
第一方面,本申请提供一种文件存储方法。该方法可以由本申请提供的文件存储装置执行,该文件存储装置可以为本申请提供的电子设备,该方法包括:
获取第一文件和第二文件,所述第一文件是所述第二文件所依赖的文件,所述第二文件的运行条件包括所述第一文件已运行;将所述第一文件和所述第二文件存储至存储介质的N个存储单元,所述N为正整数,所述存储单元为所述存储介质中读取数据的最小单元,所述第一文件的大小与所述第二文件的大小之和大于N-1个存储单元的容量大小、且小于或等于所述N个存储单元的容量大小。
上述方式下,所述第一文件是所述第二文件所依赖的文件,读取第二文件时需连第一文件和第二文件一起读取,由于所述第一文件的数据与所述第二文件的数据之和大于N-1个存储单元的容量大小,且所述第一文件的数据与所述第二文件的数据之和小于或等于所述N个存储单元的容量大小,说明第一文件与第二文件实际所需的存储单元数量就是N,那么将第一文件和第二文件集中地存储至存储介质的N个存储单元,便可以完成第一文件与第二文件的存储,实现了对存储单元的充分利用。相应的,那么当所述第一文件和所述第二文件需要读取时,从存储介质中读取的存储单元数量也会相应降低。相对于现有技术将相互依赖的文件分散存储在多个存储单元中,可以避免占用存储单元的数量较多,且需要读取的存储单元的数量也较多的问题。
在一种可能的设计中,所述第一文件的存储区域与所述第二文件的存储区域在所述N个存储单元中是连续的。
上述方式下,由于所述第一文件的存储区域与所述第二文件的存储区域在所述N个存储单元中是连续的,可以使得第一文件之间第二文件没有浪费额外的存储空间,进一步压缩了第一文件与第二文件的存储空间。
在一种可能的设计中,所述方法还包括:将第三文件存储至所述存储介质中,所述第一文件、所述第二文件和所述第三文件占据了M个存储单元,所述M为正整数,所述M个存储单元包括所述N个存储单元,所述第三文件的存储区域与所述第一文件的存储区域或者所述第二文件的存储区域是连续的;其中,所述第三文件为所述第一文件所依赖的文件,或者,所述第三文件为所述第二文件所依赖的文件,或者,所述第三文件为依赖所述第一文件的文件,或者,所述第三文件为依赖所述第二文件的文件。
上述方式下,由于第三文件和第一文件、第二文件是有依赖关系的,采用上述方式,可以使得第一文件、第二文件和第三文件集中存储,压缩了第一文件、第二文件和第三文件占用的存储单元的数量,那么对数量更多的相互依赖的文件采用上述方法,可以使得多个相互之间有依赖关系的文件都连续存储到一起,使得更多个相互之间有依赖关系的文件在读取时可以降低读取的存储单元的数量。
示例性的,所述N个存储单元的存储起始地址可以为所述第一文件的存储起始地址或者可以为所述第二文件的存储起始地址。
上述方式下,从N个存储单元的存储起始地址为存储第一文件的存储起始地址或者所述第二文件的存储起始地址,可以使得开始存储文件时不浪费额外的存储空间,减少存储单元的碎片率。
在一种可能的设计中,在所述第一文件和所述第二文件存储至所述N个存储单元之前,可以先按照现有技术一样将所述第一文件和所述第二文件存储在所述存储介质中,且所述第一文件和所述第二文件所占据的存储单元数量大于N。然后再按照上述本申请提出的方案对已存储的第一文件和第二文件进行移动存储位置,使得相互依赖的第一文件和第二文件可以集中占用N个存储单元进行存储。
上述方式下,在所述第一文件和所述第二文件存储至所述N个存储单元之前,所述第一文件和所述第二文件可以先存储在所述存储介质中,即便已存储也可以调整第一文件和第二文件的存储位置,从而可以通过调整第一文件和第二文件的存储位置,对第一文件和第二文件的存储空间进行压缩。
在一种可能的设计中,所述方法还包括:获取所述第二文件的文件类型,并执行所述第二文件的文件类型所对应的依赖关系解析命令,根据所述依赖关系解析命令的执行结果确定所述第一文件是所述第二文件所依赖的文件。
上述方式下,可以通过对第二文件的文件类型,执行依赖关系解析命令,自动化地确定出第一文件是所述第二文件所依赖的文件,从而可以自动化地将第一文件和第二文件集中存储到N个存储单元。
应理解,所述第一文件和所述第二文件均可以为小于所述存储单元的容量大小的文件。
上述方式下,对于小于存储单元的容量大小的文件,通过将第一文件和第二文件存储集中至存储介质的N个存储单元,可以使得集中存储的意义更大,节约的存储单元比例更大。
第二方面,本申请提供一种文件读取方法。该方法可以由本申请提供的文件读取装置执行,该文件存储装置可以为本申请提供的电子设备,该方法包括:
获取读取请求,所述读取请求用于读取N个存储单元,所述N为正整数,所述N个存储单元中存储了所述第一文件和所述第二文件,所述第一文件是所述第二文件所依赖的文件,所述第二文件的运行条件包括所述第一文件已运行,所述存储单元为存储介质中读取数据的最小单元,所述第一文件的数据与所述第二文件的数据之和大于N-1个存储单元的容量大小、且小于或等于所述N个存储单元的容量大小;读取所述N个存储单元,获得所述N个存储单元中的所述第一文件和所述第二文件。
上述方式下,所述第一文件是所述第二文件所依赖的文件,读取第二文件时需连第一文件和第二文件一起读取,由于所述第一文件的数据与所述第二文件的数据之和大于N-1个存储单元的容量大小,且所述第一文件的数据与所述第二文件的数据之和小于或等于所述N个存储单元的容量大小,说明第一文件与第二文件实际所需的存储单元数量就是N,那么将第一文件和第二文件集中地存储至存储介质的N个存储单元,便可以完成第一文件与第二文件的存储,实现了对存储单元的充分利用,那么当获取读取请求时,可以只需要读取N个存储单元,即可将第一文件和第二文件读取,因此从存储介质中读取的存储单元的数量也可以降低,从而可以提升读取文件的效率。
在一种可能的设计中,所述第一文件的存储区域与所述第二文件的存储区域在所述N个存储单元中是连续的。
在一种可能的设计中,所述N个存储单元的存储起始地址可以为所述第一文件的存储起始地址或者也可以为所述第二文件的存储起始地址。
应理解,所述第一文件和所述第二文件均可以为小于所述存储单元的容量大小的文件。
第三方面,本申请一种文件存储装置,包括:获取模块,用于获取第一文件和第二文件,所述第一文件是所述第二文件所依赖的文件,所述第二文件的运行条件包括所述第一文件已运行;存储模块,用于将所述第一文件和所述第二文件存储至存储介质的N个存储单元,所述N为正整数,所述存储单元为所述存储介质中读取数据的最小单元,所述第一文件的大小与所述第二文件的大小之和大于N-1个存储单元的容量大小、且小于或等于所述N个存储单元的容量大小。
示例性的,所述第一文件的存储区域与所述第二文件的存储区域在所述N个存储单元中是连续的。
在一种可能的设计中,所述存储模块还用于将第三文件存储至所述存储介质中,所述第一文件、所述第二文件和所述第三文件占据了M个存储单元,所述M为正整数,所述M个存储单元包括所述N个存储单元,所述第三文件的存储区域与所述第一文件的存储区域或者所述第二文件的存储区域是连续的;其中,所述第三文件为所述第一文件所依赖的文件,或者,所述第三文件为所述第二文件所依赖的文件,或者,所述第三文件为依赖所述第一文件的文件,或者,所述第三文件为依赖所述第二文件的文件。
其中,所述N个存储单元的存储起始地址可以为所述第一文件的存储起始地址或者也可以为所述第二文件的存储起始地址。
在一种可能的设计中,所述获取模块还用于获取所述第二文件的文件类型,并执行所述第二文件的文件类型所对应的依赖关系解析命令,根据所述依赖关系解析命令的执行结果确定所述第一文件是所述第二文件所依赖的文件。
应理解,所述第一文件和所述第二文件可以均为小于所述存储单元的容量大小的文件。
第四方面,本申请提供一种文件读取装置,包括:获取模块,用于获取读取请求,所述读取请求用于读取N个存储单元,所述N为正整数,所述N个存储单元中存储了所述第一文件和所述第二文件,所述第一文件是所述第二文件所依赖的文件,所述第二文件的运行条件包括所述第一文件已运行,所述存储单元为存储介质中读取数据的最小单元,所述第一文件的数据与所述第二文件的数据之和大于N-1个存储单元的容量大小、且小于或等于所述N个存储单元的容量大小;读取模块,用于读取所述N个存储单元,获得所述N个存储单元中的所述第一文件和所述第二文件。
在一种可能的设计中,所述第一文件的存储区域与所述第二文件的存储区域在所述N个存储单元中是连续的。
在一种可能的设计中,所述N个存储单元的存储起始地址为所述第一文件的存储起始地址或者所述第二文件的存储起始地址。
应理解,所述第一文件和所述第二文件可以均为小于所述存储单元的容量大小的文件。
第五方面,本申请提供一种电子设备,所述电子设备包括:一个或多个处理器;一个或多个存储器;其中,所述一个或多个存储器存储有一个或多个计算机指令,当所述一个或多个计算机指令被所述一个或多个处理器执行时,使得所述电子设备执行如上述第一方面或第二方面中任一项所述的方法。
第六方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质包括计算机指令,当计算机指令在计算机上运行时,使得所述计算机执行如上述第一方面或第二方面中任一项所述的方法。
以上第二方面到第六方面的有益效果,请参见第一方面的有益效果,不重复赘述。
附图说明
图1为本申请实施例提供的一种文件存储与读取方法可应用的架构示意图;
图2为本申请实施例提供的一种文件存储方法的流程示意图;
图3为本申请实施例提供的一种文件存储方法对应的文件系统优化的数据流示意图;
图4a~4e为本申请实施例提供的一种文件存储方法中不同存储情形的示意图;
图5为本申请实施例提供的一种文件存储方法对应的存储介质中的文件调整前后的示意图;
图6为本申请实施例提供的一种文件存储方法中文件之间依赖关系的示意图;
图7为本申请实施例提供的一种文件读取方法的流程示意图;
图8为本申请实施例提供的一种文件存储与读取方法对应的过程示意图;
图9为本申请实施例提供的一种文件存储装置的结构示意图;
图10为本申请实施例提供的一种文件读取装置的结构示意图;
图11为本申请实施例提供的一种电子设备结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本申请实施例中,“一个或多个”是指一个或两个以上(包含两个);“和/或”,描述关联对象的关联关系,表示可以存在三种关系;例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
本申请实施例中的术语多个”是指两个或两个以上,鉴于此,本申请实施例中也可以将“多个”理解为“至少两个”。“至少一个”,可理解为一个或多个,例如理解为一个、两个或更多个。例如,包括至少一个,是指包括一个、两个或更多个,而且不限制包括的是哪几个。例如,包括A、B和C中的至少一个,那么包括的可以是A、B、C,A和B,A和C,B和C,或A和B和C。同理,对于“至少一种”等描述的理解,也是类似的。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,字符“/”,如无特殊说明,一般表示前后关联对象是一种“或”的关系。
除非有相反的说明,本申请实施例提及“第一”、“第二”等序数词用于对多个对象进行区分,不用于限定多个对象的顺序、时序、优先级或者重要程度。
本申请实施例提供的一种文件存储与读取方法可以应用于各类型的文件系统。文件系统可以用于对文件进行存储管理。举例来说,squashfs是一套供Linux核心使用的GNU通用公共许可证(GPL)开源只读压缩文件系统,squashfs中的文件均是压缩后的压缩块,squashfs为一般的只读文件系统的使用而设计,它可应用于数据备份。squashfs的只读文件系统镜像可以通过mksquashfs制作。squashfs可以运行在虚拟文件系统(virtual filesystem,VFS)上,VFS是操作系统的文件系统虚拟层,VFS还可以称为虚拟文件切换系统。虚拟文件系统可以加载在内存中,使得上层的应用软件,能够用统一的方式,来跟底层不同的文件系统交互。虚拟文件系统位于操作系统与底层不同的文件系统之间,虚拟文件系统中提供了标准的操作接口,可以使得操作系统能够很快地支持新的文件系统。
文件系统中包括各个文件的信息。举例来说,以Linux操作系统的文件系统为例,可以包括以下多项用于描述文件的信息:元数据的索引节点(Inode)表、元数据目录(dir)表、元数据用户标识(user identification,UID)及组标识(group identification,GID)表、元数据拓展属性(xattr)表。其中,元数据的Inode表包括文件系统中每个文件的Inode信息;举例来说,文件的Inode信息可以包括文件的权限信息、UID及GID索引值、文件的属性修改时间戳。元数据dir表包括文件系统中每个文件的目录信息;举例来说,文件的目录信息可以包括文件的文件名、父目录等。元数据UID及GID表包括文件系统中每个文件的UID及GID信息。元数据xattr表记录了文件系统中每个文件的拓展属性。需要说明的是,上述文件系统中文件的信息仅作为示例,对于不同的文件系统,可能增加或减少不同的信息。举例来说,squashfs还可以包括超级块(super block),超级块可以记录squashfs中的详细数据,包括squashfs中文件的压缩算法、文件的版本号、压缩后的压缩块的大小等。
上述文件系统可以运行在任意电子设备上,文件系统对应的一种文件存储与读取方法也可以由文件系统所在的电子设备执行。该方法可应用的架构示意图可以如图1所示。图1示出的架构包括:应用层、内存、内核层和存储介质。应用层用于运行应用程序;内存用于缓存文件的数据,可以通过VFS缓存;内核层用于运行内核程序,内核程序可以用于文件的存储、读取,在文件为文件压缩块的情况下,内核程序还可以用于文件的解压;存储介质用于存储文件的数据,存储介质包括多个存储单元。在此不限定存储介质的类型,如磁性介质,(例如,软盘、硬盘、磁带、磁光盘(MO)等)、光介质(例如,CD、DVD、BD、HVD等)、或者半导体介质(例如ROM、EPROM、EEPROM、非易失性存储器(NAND FLASH)、固态硬盘(Solid StateDisk,SSD))等。应用程序运行需要一些文件的数据,这些文件存储在存储介质中,那么便可以由内核程序将这些文件读取至内存缓存,以供应用程序运行。
以squashfs文件系统为例,squashfs文件系统中的文件在存储介质中以压缩文件的形式存储,在内存中可以通过VFS缓存解压后的文件。读取文件的操作可以由内核程序执行,具体过程可以为:内核程序根据应用程序运行所需文件的文件名,从元数据dir表中获取到压缩文件的Inode信息。内核程序根据文件对应的Inode信息,获取压缩文件在文件系统中的逻辑地址,该逻辑地址与压缩文件在存储介质中实际存储的物理地址一一对应。内核程序根据物理地址,读取压缩文件并解压,再将解压后的文件传递给内存进行缓存,从而可以根据内存中缓存的文件运行应用程序。
在上述过程中,有一些文件需要运行时,可能需要依赖于其他文件。那么这类文件需要运行时,便需要连所依赖的文件都读取到内存中才能运行。而存储介质都有其相应的存储单元,也就是存储及读取数据的最小单元。如背景技术所述,如果没有考虑到文件之间的依赖关系,一个文件及其依赖文件分散在不同存储单元存储,这便不能充分运用存储单元的存储空间。那么会造成读取一个文件及依赖文件时,从存储介质读取的存储单元数量大于实际所需的存储单元数量。因此,有依赖关系的多个文件如何存储会影响文件运行时读取的存储单元数量。
为此,如图2所示,本申请实施例提供一种文件存储方法。该方法在电子设备中的实现方式不做限定,软件和硬件或者软硬件结合实现均可。举例来说,该方法可以由电子设备中的一个芯片实现,或者由一个应用软件实现。
步骤201:确定第一文件是第二文件所依赖的文件。
步骤201为可选的步骤,例如在一些实施例中,第一文件是第二文件所依赖的文件可以是已知的,这种依赖关系可以预先缓存在内存中。
步骤201具体可以为:获取所述第二文件的文件类型,并执行所述第二文件的文件类型所对应的依赖关系解析命令,根据所述依赖关系解析命令的执行结果。
举例来说,以Linux操作系统中的文件为例,第二文件的文件类型为可执行可链接格式(executable and linkable format,ELF)文件,ELF文件对应的依赖关系解析命令为UNIX类中定义的Readelf命令,执行结果中会指示第二文件所依赖的文件有哪些,如果确定第二文件所依赖的文件中包括第一文件,那么便可以确定第一文件是第二文件所依赖的文件。再如,第二文件的文件类型为lua文件,lua文件对应的依赖关系解析命令为require命令,执行结果也会指示第二文件所依赖的文件有哪些。
步骤202:获取第一文件和第二文件。
所述第一文件是所述第二文件所依赖的文件,所述第二文件的运行条件包括所述第一文件已运行。举例来说,第二文件中调用了一个函数,该函数的具体定义在第一文件中。
步骤203:将所述第一文件和所述第二文件存储至存储介质的N个存储单元。
其中,N为正整数,存储单元为所述存储介质中读取数据的最小单元,所述第一文件的大小与所述第二文件的大小之和大于N-1个存储单元的容量大小、且小于或等于所述N个存储单元的容量大小。
需要说明的是,步骤203执行之前,文件可以未存储在存储介质中,也可以已存储在存储介质中进行调整,在一种可能的情形中,所述第一文件和所述第二文件已存储在所述存储介质中,且所述第一文件和所述第二文件所占据的存储单元数量大于N,通过调整,使得所述第一文件和所述第二文件存储至存储介质的N个存储单元。举例来说,如图3所示,在目录中查找mksquashfs,通过mksquashfs生成squashfs文件系统。对于squashfs文件系统,由一个文件系统优化应用(APP)对squashfs文件系统对已存储的squashfs文件系统进行优化,得到优化后的squashfs文件系统,通过这种方式就可以实现对已存储的文件在存储介质中的位置进行调整。
显然,第一文件和第二文件至少需要占据N个存储单元,那么按照步骤203执行,读取第一文件和第二文件时只需要读取N个存储单元即可。若按照传统方式存储第一文件和第二文件,可能会造成读取第一文件和第二文件时读取大于N个存储单元。举例来说,存储介质为磁盘,存储单元为磁盘块,每个磁盘块为4KB,即4096字节(B)。若第一文件A1为5KB,第二文件B1为6KB,那么A1和B1至少需要占据3个存储单元(磁盘块)。举例来说,假设文件系统包括第一文件A1和第二文件B1,A1是B1所依赖的文件。假设文件系统还包括文件A2,A2和A1、B1没有依赖关系,且A2大小为5KB。
现有技术中,会按照文件名的字典序顺序依次存储文件A1、A2和B1,那么A1、A2和B1在磁盘中存储的情形便如图4a所示。A1大小为5KB,因此A1跨越存储在第1个磁盘块、第2个磁盘块这2个磁盘块。由于A1、A2和B1是依次存储的,且A2大小为5KB,那么A2会跨越存储在第2个磁盘块和第3个磁盘块上,B1便从第3个磁盘块开始存储。而B1为6KB,因此B1跨越存储在第3个磁盘块、第4个磁盘块这2个磁盘块。由此可见,A1和B1分布存储在4个磁盘块上,那么为了存储A1和B1,实际使用了4个磁盘块。因此,当读取A1和B1时,为了将A1和B1全部读取出来,那么就需要读取这4个磁盘块。
相应地,若按照本申请技术方案中的上述步骤203的实现方式,若发现A1和B1是相关联的文件,则确定A1大小与B1大小之和大于2个磁盘块的容量大小、且小于3个磁盘块的容量大小,可以确定N为3,即确定可以将A1和B1可以连续存储在3个连续的磁盘块中。那么可见使用3个磁盘块存储A1和B1足够,所以不再采用现有技术的按照文件名的字典序顺序依次存储文件,而是直接将A1和B1连续存储在3个磁盘块中。如图4a所示,A1仍然跨越存储在第1个磁盘块、第2个磁盘块这2个磁盘块中。图4a的示例中,A1和B1是连续存储的,且B1为6KB,那么B1跨越存储在第2个磁盘块、第3个磁盘块这2个磁盘块上。所以,A1和B1只分布存储在这3个磁盘块上。相应的,在读取A1和B1时,只要读取这3个磁盘块就能够把A1和B1全部读出来,没必要再读取额外的磁盘块。可见相对上述现有技术方式,本申请方案可以减少读取一个磁盘块,而每多读取一个磁盘块,就需要多解析一个磁盘块的地址信息,因此采用本申请的方案可以提高读取依赖文件的读取效率。
下面以一个具体场景为例,详细描述将第一文件和第二文件存储在N个存储单元的各种情形。该场景具体为以存储介质为磁盘,存储单元为4KB的磁盘块为例进行说明。
步骤203中,并不限定第一文件和第二文件的大小。一种可能的情形中,第一文件和第二文件均可以为大于存储单元(磁盘块)的容量大小的文件。举例来说,比如在前述例子中,第一文件A1为5KB,第二文件B1为6KB,均大于磁盘块的容量大小(4KB),可见,A1和B1只分布存储在这3个磁盘块上。相应的,在读取A1和B1时,只要读取这3个磁盘块就能够把A1和B1全部读出来,没必要再读取额外的磁盘块。
再一种可能的情形中,A1和B1其中一个文件大于4KB,另一个文件小于4KB;例如,以A1为5KB,B1为2KB为例进行说明。A1为5KB且B1为2KB的存储示例如图4b所示。现有技术中,按照文件名的字典序顺序依次存储文件A1、A2和B1,那么A1跨越存储在第1~2个磁盘块这2个磁盘块,接着存储A2,跨越存储在第2~3个磁盘块这2个磁盘块,B1存储在第3个磁盘块上。所以当存储以及读取A1和B1时,都需要3个磁盘块。相应地,若按照本申请技术方案中的上述步骤203的实现方式,使用2个磁盘块存储A1和B1足够,那么读取A1和B1时也只需读取2个磁盘块。
还有一种可能情形中,A1和B1均小于4KB;例如,以A1为1KB,B1为2KB为例进行说明。如图4c所示。现有技术中,按照文件名的字典序顺序依次存储文件A1、A2和B1。那么A1存储在第1个磁盘块上,接着存储A2,需要跨越存储在第1~2个磁盘块上存储,那么B1存储在第2个磁盘块。所以当存储以及读取A1和B1时,都需要2个磁盘块。相应地,若按照本申请技术方案中的上述步骤203的实现方式,使用1个磁盘块可以同时存储A1和B1,那么读取A1和B1时也只需读取1个磁盘块即可。
由此可见,无论第一文件和第二文件的大小关系如何,采用本申请技术方案的实现方式,均能够减少读取的存储单元数量,以及提高读取依赖文件的读取效率。
图4a~图4c例子中,仅以第一文件A1的存储区域与第二文件B1的存储区域连续为例说明。然而,本申请也不限定第一文件A1的存储区域与第二文件B1的存储区域是否连续,只要A1和B1存储在N个磁盘块中均可。例如,当A1为5KB且B1为2KB时,存储或者读取A1和B1时2个磁盘块足够。如图4d所示,示出了A1的存储区域与B1的存储区域在2个磁盘块中连续的情形,以及A1的存储区域与B1的存储区域在2个磁盘块中不连续的情形。所以,A1的存储区域与B1的存储区域在2个磁盘块是否连续均可,均能提高读取依赖文件的读取效率。不过在提高读取依赖文件的读取效率的基础上,A1的存储区域与B1的存储区域在N个存储单元中连续,可以有进一步的优化效果。
从上述例子可知,N个磁盘块中除去A1的存储区域与B1的存储区域,还可能存在剩余存储空间,剩余存储空间可以存储其它文件,以提高磁盘的利用率。如图4d所示,A1的存储区域与B1的存储区域连续存储时,2个磁盘块中的剩余存储空间为第2个磁盘块的最后1个KB,那么这第2个磁盘块的最后1个KB可以和之后第3个及之后的磁盘块联合在一起用于文件存储,能够存储更大、更多的文件。如图4d所示,A1的存储区域与B1的存储区域不连续时,2个磁盘块中的剩余存储空间为第2个磁盘块中的中间1个KB,只能用于存储1个KB以下的文件。因此,A1的存储区域与B1的存储区域连续更能够提升剩余存储空间的利用率。
步骤203中,也不限定第一文件A1的存储起始地址和\或第二文件B1的存储起始地址在N个存储单元中的位置,A1和B1只要存储在N个存储单元中即可。然而,当所述N个存储单元的存储起始地址为所述第一文件的存储起始地址或者所述第二文件的存储起始地址时,也能在提高读取依赖文件的读取效率的基础上,有进一步的优化效果。
下面结合图4e以一个具体例子详细描述。举例来说,第一文件A1为5KB,第二文件B1为5KB,那么无论A1的存储起始地址和\或B1的存储起始地址在N个存储单元中的位置如何,A1和B1只分布存储在这3个磁盘块上。例如,A1的存储起始地址以及B1的存储起始地址均不为3个磁盘块的存储起始地址时,在3个磁盘块中,第1个磁盘块的第2~4KB、第2个磁盘块的第1~2KB的存储空间用于存储A1,且第2个磁盘块的第3~4KB的存储空间、第3个磁盘块的第1~3KB的存储空间用于存储B1。此时,3个磁盘块中剩余的存储空间包括第1个磁盘块的前1KB、第3个磁盘块的后1KB。而A1的存储起始地址为3个磁盘块的存储起始地址时,在3个磁盘块中,第1~2个磁盘块的全部存储空间以及第3个磁盘块的第1~2KB用于存储A1和B1,显然3个磁盘块中的剩余空间只有第3个磁盘块的后两个KB,那么这第3个磁盘块的最后2个KB(第3~4KB)可以和之后第4个及之后的磁盘块联合在一起用于文件存储,能够存储更大、更多的文件,从而提升了剩余存储空间的利用率。
步骤204:将第三文件存储至所述存储介质中。
其中,步骤204为可选的步骤,所述第一文件、所述第二文件和所述第三文件占据了M个存储单元,所述M为正整数,所述M个存储单元包括所述N个存储单元,所述第三文件的存储区域与所述第一文件的存储区域或者所述第二文件的存储区域是连续的;所述第三文件为所述第一文件所依赖的文件,或者,所述第三文件为所述第二文件所依赖的文件,或者,所述第三文件为依赖所述第一文件的文件,或者,所述第三文件为依赖所述第二文件的文件。
也就是说,第一文件和第二文件中存在某个文件,是第三文件所依赖的文件,或者是依赖第三文件的文件。所以第一文件、第二文件、第三文件是相互之间有依赖关系的3个文件,从而对于更多数量的文件也可以使得读取这些文件时,读取的存储单元数量是存储这些文件实际所需的存储单元数量。需要说明的是,上述步骤201~步骤204仅以2~3个文件的角度描述,在一些实施例中,对于较多数量的文件,步骤203和\或步骤204可以执行多次,从而实现多个相互之间有依赖关系的文件在读取时,也只需要读取实际存储所需的存储单元数量。因此,避免了占用存储单元的数量较多,且需要读取的存储单元的数量也较多的问题。
另外,在一些情形中,文件可以先在存储介质中存储,如根据现有技术中文件名的字典序排列在存储介质中存储,之后再基于图2示出的文件存储方法对存储介质中的文件进行调整,使得多个相互之间有依赖关系的文件集中在一起存储,其调整前后的示意图可以如图5所示。图5中的存储介质为磁盘,磁盘中的存储单元为4KB大小的磁盘块。图5示出了A1、A2、A3、B1、C1和D1这6个文件。其中,A1大小为2KB,A2大小为1KB,A3大小为2KB,B1大小为1KB,C1大小为2KB,D1大小为2KB。如图6所示,B1、C1和D1是A1所依赖的文件,A2、A3与A1、B1、C1和D1不存在任何依赖关系。在调整前,磁盘中按照A1、A2、A3、B1、C1和D1的字典顺序进行连续存储,读取A1、B1、C1和D1时需要3个磁盘块;调整后,磁盘中按照A1、B1、C1、D1、A2和A3的字典顺序进行连续存储,读取A1、B1、C1和D1时,只需要读取2个磁盘块即可,可见读取的磁盘块数量可以降低。
基于图2示出的一种文件存储方法。相应地,如图7所示,本申请实施例提供一种文件读取方法。
步骤701:获取读取请求。
步骤702:读取所述N个存储单元,获得所述N个存储单元中的所述第一文件和所述第二文件。
由于第一文件和第二文件集中地存储至存储介质的N个存储单元,那么当获取读取请求时,可以只需要读取实际所需的N个存储单元,即可将第一文件和第二文件一同读取,因此可以降低读取的存储单元数量。
基于图2示出的一种文件存储方法以及图7示出的一种文件读取方法,可以保证有依赖关系的多个文件在读取时,可以降低存储单元的读取数量,提高读取相互依赖关系的文件的读取效率。采用了上述文件存储及读取方法后,其架构示意图可以如图8所示。图8示出的3个磁盘块中,A1、B1、C1、D1存储在前2个磁盘块中,那么内核程序可以读取A1、B1、C1、D1,并将A1、B1、C1、D1缓存在内存中,从而可以用于应用程序的运行。
基于与上述文件存储方法实施例同一技术构思,本申请实施例还提供了一种文件存储装置,该文件存储装置可以用于执行上述如图2所示的文件存储方法。如图9所示,文件存储装置包括获取模块901、存储模块902,前述模块可以为软件模块。具体地,在文件存储装置中,各模块之间可以通过通信通路建立连接。
获取模块901,用于获取第一文件和第二文件,所述第一文件是所述第二文件所依赖的文件,所述第二文件的运行条件包括所述第一文件已运行。
存储模块902,用于将所述第一文件和所述第二文件存储至存储介质的N个存储单元,所述N为正整数,所述存储单元为所述存储介质中读取数据的最小单元,所述第一文件的大小与所述第二文件的大小之和大于N-1个存储单元的容量大小、且小于或等于所述N个存储单元的容量大小。
在一种可能的实施方式中,所述获取模块901还用于获取所述第二文件的文件类型,并执行所述第二文件的文件类型所对应的依赖关系解析命令,根据所述依赖关系解析命令的执行结果确定所述第一文件是所述第二文件所依赖的文件。
在一种可能的实施方式中,所述存储模块902还用于将第三文件存储至所述存储介质中,所述第一文件、所述第二文件和所述第三文件占据了M个存储单元,所述M为正整数,所述M个存储单元包括所述N个存储单元,所述第三文件的存储区域与所述第一文件的存储区域或者所述第二文件的存储区域是连续的;其中,所述第三文件为所述第一文件所依赖的文件,或者,所述第三文件为所述第二文件所依赖的文件,或者,所述第三文件为依赖所述第一文件的文件,或者,所述第三文件为依赖所述第二文件的文件。
其中,所述第一文件和所述第二文件在存储介质的N个存储单元中存储的情形有多种。
在一种可能的实施方式中,所述第一文件的存储区域与所述第二文件的存储区域在所述N个存储单元中是连续的。
在一种可能的实施方式中,所述N个存储单元的存储起始地址为所述第一文件的存储起始地址或者所述第二文件的存储起始地址。
其中,所述第一文件和所述第二文件的大小关系的可能情形有多种。
在一种可能的实施方式中,所述第一文件和所述第二文件均为小于所述存储单元的容量大小的文件。
基于与文件读取方法实施例同一技术构思,本申请实施例还提供了一种文件读取装置,该文件读取装置可以用于执行上述如图7所示的文件读取方法。如图10所示,文件读取装置包括获取模块1001、读取模块1002,前述模块可以为软件模块。具体地,在文件读取装置中,各模块之间可以通过通信通路建立连接。
获取模块1001,用于获取读取请求,所述读取请求用于读取N个存储单元,所述N为正整数,所述N个存储单元中存储了所述第一文件和所述第二文件,所述第一文件是所述第二文件所依赖的文件,所述第二文件的运行条件包括所述第一文件已运行,所述存储单元为存储介质中读取数据的最小单元,所述第一文件的数据与所述第二文件的数据之和大于N-1个存储单元的容量大小、且小于或等于所述N个存储单元的容量大小。
读取模块1002,用于读取所述N个存储单元,获得所述N个存储单元中的所述第一文件和所述第二文件。
其中,所述第一文件和所述第二文件在存储介质的N个存储单元中存储的情形有多种。
在一种可能的实施方式中,所述第一文件的存储区域与所述第二文件的存储区域在所述N个存储单元中是连续的。
在一种可能的实施方式中,所述N个存储单元的存储起始地址为所述第一文件的存储起始地址或者所述第二文件的存储起始地址。
其中,所述第一文件和所述第二文件的大小关系的可能情形有多种。
在一种可能的实施方式中,所述第一文件和所述第二文件均为小于所述存储单元的容量大小的文件。
本申请实施例还提供一种电子设备,该电子设备可以具有如图11所示的结构,该电子设备可以是计算机设备,也可以是能够支持计算机设备实现上述方法的芯片或芯片系统。
如图11所示的电子设备可以包括至少一个处理器1101,所述至少一个处理器1101用于与存储器耦合,读取并执行所述存储器中的指令以实现本申请实施例提供的文件读取及读取方法的步骤。可选的,该电子设备还可以包括通信接口1102,用于支持该电子设备进行信令或者数据的接收或发送。电子设备中的通信接口1102,可用于实现与其他电子设备的进行交互。处理器1101可用于实现电子设备执行如图2或图7所示的方法中的步骤。可选的,该电子设备同时还可以包括存储器1103,其中存储有计算机指令,存储器1103可以与处理器1101和/或通信接口1102耦合,用于支持处理器1101调用存储器1103中的计算机指令以实现如图2或图7所示的方法中的步骤;另外,存储器1103还可以用于存储本申请方法实施例所涉及的数据,例如,用于存储支持通信接口1102实现交互所必须的数据、指令,和/或,用于存储电子设备执行本申请实施例所述方法所必须的配置信息。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机指令,这些计算机指令被计算机调用执行时,可以使得计算机完成上述方法实施例、方法实施例的任意一种可能的设计中所涉及的方法。本申请实施例中,对计算机可读存储介质不做限定,例如,可以是RAM(random-access memory,随机存取存储器)、ROM(read-only memory,只读存储器)等。
本申请还提供一种芯片,该芯片可以包括处理器以及接口电路,用于完成上述方法实施例、方法实施例的任意一种可能的实现方式中所涉及的方法,其中,“耦合”是指两个部件彼此直接或间接地结合,这种结合可以是固定的或可移动性的。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机指令的形式实现。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。
本申请实施例中所描述的方法或算法的步骤可以直接嵌入硬件、处理器执行的软件单元、或者这两者的结合。软件单元可以存储于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM或本领域中其它任意形式的存储媒介中。示例性地,存储媒介可以与处理器连接,以使得处理器可以从存储媒介中读取信息,并可以向存储媒介存写信息。可选地,存储媒介还可以集成到处理器中。处理器和存储媒介可以设置于ASIC中,ASIC可以设置于终端设备中。可选地,处理器和存储媒介也可以设置于终端设备中的不同的部件中。
这些计算机指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管结合具体特征及其实施例对本发明进行了描述,显而易见的,在不脱离本发明的范围的情况下,可对其进行各种修改和组合。相应地,本说明书和附图仅仅是所附权利要求所界定的本发明的示例性说明,且视为已覆盖本发明范围内的任意和所有修改、变化、组合或等同物。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (16)
1.一种文件存储方法,其特征在于,包括:
获取第一文件和第二文件,所述第一文件是所述第二文件所依赖的文件,所述第二文件的运行条件包括所述第一文件已运行;
将所述第一文件和所述第二文件存储至存储介质的N个存储单元,所述N为正整数,所述存储单元为所述存储介质中读取数据的最小单元,所述第一文件的大小与所述第二文件的大小之和大于N-1个存储单元的容量大小、且小于或等于所述N个存储单元的容量大小。
2.如权利要求1所述的方法,其特征在于,所述第一文件的存储区域与所述第二文件的存储区域在所述N个存储单元中是连续的。
3.如权利要求1或2所述的方法,其特征在于,所述方法还包括:
将第三文件存储至所述存储介质中,所述第一文件、所述第二文件和所述第三文件占据了M个存储单元,所述M为正整数,所述M个存储单元包括所述N个存储单元,所述第三文件的存储区域与所述第一文件的存储区域或者所述第二文件的存储区域是连续的;
其中,所述第三文件为所述第一文件所依赖的文件,或者,所述第三文件为所述第二文件所依赖的文件,或者,所述第三文件为依赖所述第一文件的文件,或者,所述第三文件为依赖所述第二文件的文件。
4.如权利要求1至3任一项所述的方法,其特征在于,所述N个存储单元的存储起始地址为所述第一文件的存储起始地址或者所述第二文件的存储起始地址。
5.如权利要求1至4任一项所述的方法,其特征在于,所述方法还包括:
获取所述第二文件的文件类型,并执行所述第二文件的文件类型所对应的依赖关系解析命令,根据所述依赖关系解析命令的执行结果确定所述第一文件是所述第二文件所依赖的文件。
6.如权利要求1至5任一项所述的方法,其特征在于,所述第一文件和所述第二文件均为小于所述存储单元的容量大小的文件。
7.一种文件读取方法,其特征在于,包括:
获取读取请求,所述读取请求用于读取N个存储单元,所述N为正整数,所述N个存储单元中存储了所述第一文件和所述第二文件,所述第一文件是所述第二文件所依赖的文件,所述第二文件的运行条件包括所述第一文件已运行,所述存储单元为存储介质中读取数据的最小单元,所述第一文件的数据与所述第二文件的数据之和大于N-1个存储单元的容量大小、且小于或等于所述N个存储单元的容量大小;
读取所述N个存储单元,获得所述N个存储单元中的所述第一文件和所述第二文件。
8.一种文件存储装置,其特征在于,包括:
获取模块,用于获取第一文件和第二文件,所述第一文件是所述第二文件所依赖的文件,所述第二文件的运行条件包括所述第一文件已运行;
存储模块,用于将所述第一文件和所述第二文件存储至存储介质的N个存储单元,所述N为正整数,所述存储单元为所述存储介质中读取数据的最小单元,所述第一文件的大小与所述第二文件的大小之和大于N-1个存储单元的容量大小、且小于或等于所述N个存储单元的容量大小。
9.如权利要求8所述的装置,其特征在于,所述第一文件的存储区域与所述第二文件的存储区域在所述N个存储单元中是连续的。
10.如权利要求8或9所述的装置,其特征在于,所述存储模块还用于:
将第三文件存储至所述存储介质中,所述第一文件、所述第二文件和所述第三文件占据了M个存储单元,所述M为正整数,所述M个存储单元包括所述N个存储单元,所述第三文件的存储区域与所述第一文件的存储区域或者所述第二文件的存储区域是连续的;
其中,所述第三文件为所述第一文件所依赖的文件,或者,所述第三文件为所述第二文件所依赖的文件,或者,所述第三文件为依赖所述第一文件的文件,或者,所述第三文件为依赖所述第二文件的文件。
11.如权利要求8至10任一项所述的装置,其特征在于,所述N个存储单元的存储起始地址为所述第一文件的存储起始地址或者所述第二文件的存储起始地址。
12.如权利要求8至11任一项所述的装置,其特征在于,所述获取模块还用于:
获取所述第二文件的文件类型,并执行所述第二文件的文件类型所对应的依赖关系解析命令,根据所述依赖关系解析命令的执行结果确定所述第一文件是所述第二文件所依赖的文件。
13.如权利要求8至12任一项所述的装置,其特征在于,所述第一文件和所述第二文件均为小于所述存储单元的容量大小的文件。
14.一种文件读取装置,其特征在于,包括:
获取模块,用于获取读取请求,所述读取请求用于读取N个存储单元,所述N为正整数,所述N个存储单元中存储了所述第一文件和所述第二文件,所述第一文件是所述第二文件所依赖的文件,所述第二文件的运行条件包括所述第一文件已运行,所述存储单元为存储介质中读取数据的最小单元,所述第一文件的数据与所述第二文件的数据之和大于N-1个存储单元的容量大小、且小于或等于所述N个存储单元的容量大小;
读取模块,用于读取所述N个存储单元,获得所述N个存储单元中的所述第一文件和所述第二文件。
15.一种电子设备,其特征在于,包括:一个或多个处理器;一个或多个存储器;其中,所述一个或多个存储器存储有一个或多个计算机指令,当所述一个或多个计算机指令被所述一个或多个处理器执行时,使得所述电子设备执行如权利要求1-6或7任一项所述的方法。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括计算机指令,当所述计算机指令在计算机上运行时,使得所述计算机执行如权利要求1-6或7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210608420.2A CN117194349A (zh) | 2022-05-31 | 2022-05-31 | 一种文件存储与读取方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210608420.2A CN117194349A (zh) | 2022-05-31 | 2022-05-31 | 一种文件存储与读取方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117194349A true CN117194349A (zh) | 2023-12-08 |
Family
ID=88996572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210608420.2A Pending CN117194349A (zh) | 2022-05-31 | 2022-05-31 | 一种文件存储与读取方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117194349A (zh) |
-
2022
- 2022-05-31 CN CN202210608420.2A patent/CN117194349A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10140113B2 (en) | Data processing method and device of preset application after upgrading | |
US11853779B2 (en) | System and method for distributed security forensics | |
CN110879800B (zh) | 数据写入、压缩和读取方法、数据处理方法及装置 | |
US11580162B2 (en) | Key value append | |
US20010044935A1 (en) | Information processing method and apparatus and recording medium | |
CN109885577B (zh) | 数据处理方法、装置、终端及存储介质 | |
CN112148678A (zh) | 一种文件访问方法、系统、设备以及介质 | |
US20140040207A1 (en) | Method for a cloning process to enable cloning a larger System drive to a smaller system | |
CN113032335A (zh) | 文件访问方法、装置、设备及存储介质 | |
CN108846129B (zh) | 存储数据访问方法、装置及存储介质 | |
CN114466083B (zh) | 支持协议互通的数据存储系统 | |
US9588884B2 (en) | Systems and methods for in-place reorganization of device storage | |
CN114398187A (zh) | 一种数据存储方法和装置 | |
WO2024098888A1 (zh) | 模型存储优化方法及电子设备 | |
US8489559B2 (en) | Methods and apparatus for conversion of content | |
CN117194349A (zh) | 一种文件存储与读取方法及装置 | |
US20200004522A1 (en) | Selective download of a portion of a firmware bundle | |
CN112748854B (zh) | 对快速存储设备的优化访问 | |
US11954328B2 (en) | Storage management device, storage management method, and program | |
US11526362B2 (en) | Automatic hydration of feature file batches | |
US10599617B2 (en) | Methods and apparatus to modify a binary file for scalable dependency loading on distributed computing systems | |
US20190179803A1 (en) | Apparatus and method for file sharing between applications | |
CN114518844B (zh) | 一种数据处理方法 | |
WO2022083267A1 (zh) | 数据处理方法、装置、计算节点以及计算机可读存储介质 | |
CN111858494A (zh) | 文件获取方法、装置、存储介质及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |