CN106844491A - 一种临时数据的写入、读取方法及写入、读取装置 - Google Patents
一种临时数据的写入、读取方法及写入、读取装置 Download PDFInfo
- Publication number
- CN106844491A CN106844491A CN201611214779.2A CN201611214779A CN106844491A CN 106844491 A CN106844491 A CN 106844491A CN 201611214779 A CN201611214779 A CN 201611214779A CN 106844491 A CN106844491 A CN 106844491A
- Authority
- CN
- China
- Prior art keywords
- file
- target
- storage medium
- storage
- data
- 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
Links
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/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/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/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1824—Distributed file systems implemented using Network-attached Storage [NAS] architecture
- G06F16/1827—Management specifically adapted to NAS
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种临时数据的写入、读取方法及写入、读取装置,其中,所述写入方法包括:接收针对预设存储***的数据写入指令;判断在所述预设存储***中是否存在所述数据写入指令中的逻辑路径对应的目标元数据文件;当所述预设存储***中存在所述目标元数据文件时,根据所述目标元数据文件,确定目标临时文件所处的原始存储介质;判断所述原始存储介质所属的原始存储层级是否与所述数据写入指令中的指定存储层级一致,并根据判断结果对所述目标临时文件进行处理;在处理后的目标临时文件中写入数据。本申请提供的一种临时数据的写入、读取方法及写入、读取装置,能够提高临时数据写入和读取的效率。
Description
技术领域
本申请涉及数据存储技术领域,特别涉及一种临时数据的写入、读取方法及写入、读取装置。
背景技术
在目前的高性能计算环境下,应用程序通常运行在几百台甚至上千台计算节点组成的集群上,这些计算节点之间一般通过以太网或者无限带宽(Infiniband)网络互联。集群一般配有一个或者多个利用SAN(Storage Area Network,存储区域网络)、NAS(NetworkAttached Storage,网络附属存储)技术连接起来的集中式存储设备,每个计算节点可能会配有一个或多个本地存储设备。随着数据存储技术的发展以及应用程序的一些需求,在这些存储设备中可能存在介质、特性各不相同的设备,例如固态硬盘、机械硬盘等。这样就够成了一个异构的多级的存储环境,应用程序就运行在这样的环境下。
在程序运行的过程中会产生一些临时数据。当临时数据需要在计算节点之间共享的时候,它们会被存放在集中存储上,否则,一般存放在本地存储上。随着应用程序对数据读写速度的要求越来越高,集中存储的峰值带宽已经无法满足某些应用程序对临时数据的读写要求。而且随着并发的读写请求数量的增加,集中存储的吞吐率会有明显降低,数据读写的压力进一步提高。然而很多应用程序的实现中对节点之间的网络资源使用并不多,节点之间的网络带宽利用率很低,从而导致临时数据写入和读取的效率也很低。
应该注意,上面对技术背景的介绍只是为了方便对本申请的技术方案进行清楚、完整的说明,并方便本领域技术人员的理解而阐述的。不能仅仅因为这些方案在本申请的背景技术部分进行了阐述而认为上述技术方案为本领域技术人员所公知。
发明内容
本申请实施方式的目的在于提供一种临时数据的写入、读取方法及写入、读取装置,能够提高临时数据写入和读取的效率。
为实现上述目的,本申请一方面提供一种临时数据的写入方法,所述方法包括:接收针对预设存储***的数据写入指令,所述数据写入指令中至少包括逻辑路径、指定存储层级以及待写入数据的指定生命周期信息;所述预设存储***中包括用于存储元数据文件和临时文件的存储介质,所述存储介质按照存储层级进行划分;判断在所述预设存储***中是否存在所述逻辑路径对应的目标元数据文件;当所述预设存储***中存在所述目标元数据文件时,根据所述目标元数据文件,确定目标临时文件所处的原始存储介质;判断所述原始存储介质所属的原始存储层级是否与所述指定存储层级一致,并根据判断结果对所述目标临时文件进行处理;在处理后的目标临时文件中写入数据。
进一步的,判断在所述预设存储***中是否存在所述逻辑路径对应的目标元数据文件包括:根据所述逻辑路径以及存放元数据文件的存储介质的物理路径,确定所述数据写入指令对应的目标路径;当所述目标路径下存在元数据文件时,将所述目标路径下存放的元数据文件作为所述目标元数据文件;当所述目标路径下不存在元数据文件时,判定在所述预设存储***中不存在所述逻辑路径对应的目标元数据文件。
进一步的,在判断在所述预设存储***中是否存在所述逻辑路径对应的目标元数据文件之后,所述方法还包括:当在所述预设存储***中存在所述目标元数据文件时,判断所述目标元数据文件对应的目标临时文件是否过期;相应地,根据所述目标元数据文件,确定目标临时文件所处的原始存储介质包括:当所述目标临时文件未过期时,将所述目标元数据文件中记录的存储介质标识作为所述目标临时文件所处的原始存储介质的标识。
进一步的,所述方法还包括:当所述目标临时文件过期时,删除所述目标临时文件,并在所述指定存储层级对应的存储介质中确定剩余容量最大的目标存储介质;生成包含所述目标存储介质的标识以及所述指定生命周期信息的新建元数据文件,并将所述新建元数据文件替换所述目标元数据文件;根据所述目标存储介质的物理路径以及所述逻辑路径,生成临时文件存储路径,并在所述临时文件存储路径下创建临时文件。
进一步的,所述预设存储***与配置文件相关联,所述配置文件中包括存储介质的标识、存储介质的物理路径、存储介质中数据的类型、存储数据所属的存储层级以及存储介质的容量中的至少一种;相应地,在判断所述原始存储介质所属的原始存储层级是否与所述指定存储层级一致之前,所述方法还包括:根据所述原始存储介质的标识,从所述配置文件中确定所述原始存储介质所属的原始存储层级。
进一步的,判断所述目标元数据文件对应的目标临时文件是否过期包括:获取所述目标临时文件最后一次被读取的第一时间以及最后一次被写入的第二时间,并将所述第一时间和所述第二时间中的较晚者作为所述目标临时文件最近一次的使用时间;计算所述最近一次的使用时间与***当前时间的时间差,当所述时间差大于所述目标临时文件的生命周期时,判定所述目标临时文件过期;当所述时间差小于或者等于所述目标临时文件的生命周期时,判定所述目标临时文件未过期。
进一步的,根据判断结果对所述目标临时文件进行处理包括:当所述原始存储层级与所述指定存储层级不一致时,在所述指定存储层级对应的存储介质中确定剩余容量最大的目标存储介质;生成包含所述目标存储介质的标识以及所述指定生命周期信息的元数据文件,并将生成的所述元数据文件替换所述目标元数据文件;根据所述目标存储介质的物理路径以及所述逻辑路径,生成目标转移路径;将所述目标临时文件从所述原始存储介质中转移至所述目标转移路径下。
进一步的,所述方法还包括:当所述预设存储***中不存在所述目标元数据文件时,在所述指定存储层级对应的存储介质中确定剩余容量最大的目标存储介质;生成包含所述目标存储介质的标识以及所述指定生命周期信息的新建元数据文件;根据所述逻辑路径以及存放元数据文件的存储介质的物理路径,生成元数据存储路径,并将所述新建元数据文件存放于所述元数据存储路径下;根据所述目标存储介质的物理路径以及所述逻辑路径,生成临时文件存储路径,并在所述临时文件存储路径下创建临时文件,并在创建的临时文件中写入数据。
进一步的,所述方法还包括:按照预设周期检测所述处理后的目标临时文件,当所述处理后的目标临时文件已过期并且当前没有进程在访问所述处理后的目标临时文件时,删除所述处理后的目标临时文件以及所述处理后的目标临时文件对应的元数据文件。
为实现上述目的,本申请另一方面还提供一种临时数据的写入装置,所述装置包括存储器、处理器以及存储在所述存储器上并可以在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:接收针对预设存储***的数据写入指令,所述数据写入指令中至少包括逻辑路径、指定存储层级以及待写入数据的指定生命周期信息;所述预设存储***中包括按照存储层级进行划分的存储介质,所述预设存储***中存储元数据文件和临时文件;判断在所述预设存储***中是否存在所述逻辑路径对应的目标元数据文件;当所述预设存储***中存在所述目标元数据文件时,根据所述目标元数据文件,确定目标临时文件所处的原始存储介质;判断所述原始存储介质所属的原始存储层级是否与所述指定存储层级一致,并根据判断结果对所述目标临时文件进行处理;在处理后的目标临时文件中写入数据。
为实现上述目的,本申请实施方式还提供一种临时数据的读取方法,所述方法包括:接收针对预设存储***的数据读取指令,所述数据读取指令中至少包括逻辑路径;所述预设存储***中包括用于存储元数据文件和临时文件的存储介质,所述存储介质按照存储层级进行划分;所述预设存储***与配置文件相关联,所述配置文件中至少包括存储介质的标识和存储介质的物理路径;根据所述逻辑路径和存放元数据文件的存储介质的物理路径,确定所述数据读取指令对应的目标路径,并从所述目标路径下读取目标元数据文件;根据所述目标元数据文件中记录的目标存储介质的标识,从所述配置文件中确定所述目标存储介质的标识对应的目标存储介质的物理路径;根据所述逻辑路径和所述目标存储介质的物理路径,确定目标临时文件的存储路径,并从所述存储路径处读取所述目标临时文件。
为实现上述目的,本申请另一方面还提供一种临时数据的读取装置,所述装置包括存储器、处理器以及存储在所述存储器上并可以在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:接收针对预设存储***的数据读取指令,所述数据读取指令中至少包括逻辑路径;所述预设存储***中包括用于存储元数据文件和临时文件的存储介质,所述存储介质按照存储层级进行划分;所述预设存储***与配置文件相关联,所述配置文件中至少包括存储介质的标识和存储介质的物理路径;根据所述逻辑路径和存放元数据文件的存储介质的物理路径,确定所述数据读取指令对应的目标路径,并从所述目标路径下读取目标元数据文件;根据所述目标元数据文件中记录的目标存储介质的标识,从所述配置文件中确定所述目标存储介质的标识对应的目标存储介质的物理路径;根据所述逻辑路径和所述目标存储介质的物理路径,确定目标临时文件的存储路径,并从所述存储路径处读取所述目标临时文件。
由以上本申请实施方式提供的技术方案可见,本申请中的预设存储***将存储介质按照存储层级进行划分,并且在不同存储层级的存储介质中可以存储元数据文件和临时文件。这样,在对临时文件进行写入时,可以根据元数据文件寻址到临时文件的具***置,然后可以根据临时文件的原始存储层级与用户提供的指定存储层级之间的关系,对临时文件进行处理,最终可以对处理后的临时文件进行写入。此外,在对临时文件进行读取时,同样可以根据元数据文件对临时文件进行定位,从而可以对临时文件进行读取。上述的临时数据的写入、读取方法及写入、读取装置,通过划分存储介质以及元数据文件定位的方式,能够提高临时数据写入和读取的效率。
参照后文的说明和附图,详细公开了本申请的特定实施方式,指明了本申请的原理可以被采用的方式。应该理解,本申请的实施方式在范围上并不因而受到限制。在所附权利要求的精神和条款的范围内,本申请的实施方式包括许多改变、修改和等同。
针对一种实施方式描述和/或示出的特征可以以相同或类似的方式在一个或更多个其它实施方式中使用,与其它实施方式中的特征相组合,或替代其它实施方式中的特征。
应该强调,术语“包括/包含”在本文使用时指特征、整件、步骤或组件的存在,但并不排除一个或更多个其它特征、整件、步骤或组件的存在或附加。
附图说明
所包括的附图用来提供对本申请实施方式的进一步的理解,其构成了说明书的一部分,用于例示本申请的实施方式,并与文字描述一起来阐释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本申请实施方式中临时数据的写入方法示意图;
图2为本申请实施方式中预设存储***的示意图;
图3为本申请实施方式中写入临时数据的流程示意图;
图4为本申请实施方式中临时数据的写入装置的功能模块图;
图5为本申请实施方式中临时数据的读取方法流程图;
图6为本申请实施方式中临时数据的读取装置功能模块图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施方式中的附图,对本申请实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本申请一部分实施方式,而不是全部的实施方式。基于本申请中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施方式,都应当属于本申请保护的范围。
本申请实施方式提供一种临时数据的写入方法,请参阅图1和图3,所述方法包括以下步骤。
S1:接收针对预设存储***的数据写入指令,所述数据写入指令中至少包括逻辑路径、指定存储层级以及待写入数据的指定生命周期信息;所述预设存储***中包括用于存储元数据文件和临时文件的存储介质,所述存储介质按照存储层级进行划分。
在本实施方式中,所述预设存储***的结构可以如图2所示,可以按照存储介质的不同将它们划分为多个存储层次,类似于Cache(高速缓存)的结构,每个层次可以有多个存储介质,每个存储介质可以对应存储介质标识。其中,同一个存储介质中可以划分不同的存储空间,每个存储空间可以对应一个存储介质标识,这样,同一个存储介质可能存在不同的存储介质标识。越上层的存储介质对应的速度越快,一般来说容量越小。例如,L1存储层级(Cache层)的可以是RAM(Random-Access Memory,随机存取存储器),L2存储层级可以是SSD(Solid State Drive,固态硬盘),L3存储层级可以是HDD(Hard Disk Drive,机械硬盘)。
在本实施方式中,所述预设存储***还可以与配置文件相关联,所述配置文件中可以包括存储介质的标识、存储介质的物理路径、存储介质中数据的类型、存储数据所属的存储层级以及存储介质的容量中的至少一种。配置文件的格式如表1所示。
表1配置文件的格式
从表1中可以看出,所述预设存储***中包括两个存储介质,分别为d0和d1,其中,d0中可以划分出一部分空间用于存放元数据文件,该空间对应的存储介质标识为c,另一部分则可以作为L1存储层级,用于存放临时文件。d1可以作为L2存储层级,全部用于存储临时文件。这样,在本实施方式中,元数据文件可以存储于d0中,其对应的标识为c,类型为meta。临时文件可以存储于d0和d1中,临时文件对应的标识分别为d和e,数据类型均为data。
在本实施方式中,存放元数据文件的存储介质通常只有一个,例如表1中/d0/data/meta物理路径指向的存储介质。
在本实施方式中,用户准备写入临时文件时,可以提供数据写入指令,所述数据写入指令中可以至少包括逻辑路径、指定存储层级以及待写入数据的指定生命周期信息。所述逻辑路径例如可以是/UserPath1/UserFile1,所述指定存储层级例如可以是L2,所述指定生命周期信息例如可以是30天。
S2:判断在所述预设存储***中是否存在与所述逻辑路径对应的目标元数据文件。
在本实施方式中,可以根据所述逻辑路径以及存放元数据文件的存储介质的物理路径,确定所述数据写入指令对应的目标路径。具体的,可以将所述逻辑路径以及存放元数据文件的存储介质的物理路径拼接起来,形成所述目标路径。例如,存放元数据文件的存储介质的物理路径为/d0/data/meta,用户提供的逻辑路径为/UserPath1/UserFile1,那么所述目标路径可以为/d0/data/meta/UserPath1/UserFile1。
在本实施方式中,当所述目标路径下存在元数据文件时,表明用户欲写入的临时文件在预设存储***中已经存在,此时可以将所述目标路径下存放的元数据文件作为所述逻辑路径对应的目标元数据文件。当所述目标路径下不存在元数据文件时,则可以判定在所述预设存储***中不存在所述逻辑路径对应的目标元数据文件。
S3:当所述预设存储***中存在所述目标元数据文件时,根据所述目标元数据文件,确定目标临时文件所处的原始存储介质。
在本实施方式中,所述目标元数据文件中可以记录目标临时文件所处的存储介质的标识、所述目标临时文件的生命周期等信息。这样,根据所述目标元数据文件,便可以确定目标临时文件所处的原始存储介质。
在本实施方式中,当在所述预设存储***中存在所述目标元数据文件时,可以判断所述目标元数据文件对应的目标临时文件是否过期;当所述目标临时文件未过期时,可以将所述目标元数据文件中记录的存储介质标识作为所述目标临时文件所处的原始存储介质的标识,从而可以确定出目标临时文件所处的原始存储介质。
在本实施方式中,当所述目标临时文件过期时,可以删除所述目标临时文件。此时则需要重新建立一个新的临时文件。具体的,可以在所述指定存储层级对应的存储介质中确定剩余容量最大的目标存储介质。然后可以生成包含所述目标存储介质的标识以及所述指定生命周期信息的新建元数据文件,并将所述新建元数据文件替换所述目标元数据文件。例如,在指定存储层级对应的存储介质中,剩余容量最大的目标存储介质的标识为d,所述指定生命周期信息为30天,这样,便可以将存储介质标识d和生命周期30天写入新建元数据文件中,并用新建元数据文件替换所述目标元数据文件。
在本实施方式中,根据所述配置文件,可以确定标识为d的目标存储介质对应的物理路径为/d0/data,这样,根据所述目标存储介质的物理路径以及所述逻辑路径,可以生成临时文件存储路径。例如,所述逻辑路径为/UserPath1/UserFile1,生成的临时文件存储路径便可以为/d0/data/UserPath1/UserFile1。这样,可以在所述临时文件存储路径/d0/data/UserPath1/UserFile1下创建临时文件。
在本实施方式中,在判断目标临时文件是否过期时,可以获取所述目标临时文件最后一次被读取的第一时间以及最后一次被写入的第二时间,并将所述第一时间和所述第二时间中的较晚者作为所述目标临时文件最近一次的使用时间。然后可以计算所述最近一次的使用时间与***当前时间的时间差,这样,当所述时间差大于所述目标临时文件的生命周期时,判定所述目标临时文件过期;当所述时间差小于或者等于所述目标临时文件的生命周期时,判定所述目标临时文件未过期。
在本实施方式中,当所述预设存储***中不存在所述目标元数据文件时,可以在所述指定存储层级对应的存储介质中确定剩余容量最大的目标存储介质。然后可以生成包含所述目标存储介质的标识以及所述指定生命周期信息的新建元数据文件。进一步的,可以根据所述逻辑路径以及存放元数据文件的存储介质的物理路径,生成元数据存储路径,并将所述新建元数据文件存放于所述元数据存储路径下。最终,可以根据所述目标存储介质的物理路径以及所述逻辑路径,生成临时文件存储路径,并在所述临时文件存储路径下创建临时文件,并在创建的临时文件中写入数据。
S4:判断所述原始存储介质所属的原始存储层级是否与所述指定存储层级一致,并根据判断结果对所述目标临时文件进行处理。
在本实施方式中,可以预先根据所述原始存储介质的标识,从所述配置文件中确定所述原始存储介质所属的原始存储层级。例如,所述原始存储介质的标识为d,根据所述配置文件,其对应的原始存储层级为L1,而用户提供的指定存储层级为L2,这样,所述原始存储层级与所述指定存储层级不一致。此时,可以在所述指定存储层级L2对应的存储介质中确定剩余容量最大的目标存储介质。假设剩余容量最大的目标存储介质的标识为d,然后可以生成包含所述目标存储介质的标识以及所述指定生命周期信息的元数据文件。具体的,生成的元数据文件中可以包括存储介质的标识d和所述指定生命周期信息30天。然后可以将生成的所述元数据文件替换所述目标元数据文件。
在本实施方式中,可以根据所述目标存储介质的物理路径以及所述逻辑路径,生成目标转移路径。具体的,所述目标存储介质的标识为d,根据所述配置文件,可以确定标识为d的目标存储介质对应的物理路径为/d0/data,这样,根据所述目标存储介质的物理路径以及所述逻辑路径,可以生成目标转移路径。例如,所述逻辑路径为/UserPath1/UserFile1,生成的目标转移路径便可以为/d0/data/UserPath1/UserFile1。这样,可以将所述目标临时文件从所述原始存储介质中转移至所述目标转移路径下。
在图3中,盘符号可以表示存储介质的标识,最终盘符号可以是所述目标转移路径对应的存储介质的标识。判断原来的临时文件是否需要移动到新的存储盘的依据就是原始存储层级与指定存储层级是否一致,一致时并且目标临时文件没有过期,则无需移动;不一致时或者目标临时文件过期时,则可能需要移动。
S5:在处理后的目标临时文件中写入数据。
在本实施方式中,在对目标临时文件进行上述的处理之后,便可以在处理后的目标临时文件中写入数据,以完成临时数据的写入过程。
在本实施方式中,为了能够及时清理不必要的临时数据,节省存储介质的空间,可以按照预设周期检测所述处理后的目标临时文件,当所述处理后的目标临时文件已过期并且当前没有进程在访问所述处理后的目标临时文件时,删除所述处理后的目标临时文件以及所述处理后的目标临时文件对应的元数据文件。
请参阅图4,本申请实施方式还提供一种临时数据的写入装置,所述装置包括存储器100、处理器200以及存储在所述存储器100上并可以在所述处理器上运行的计算机程序,所述处理器200执行所述计算机程序时实现以下步骤:接收针对预设存储***的数据写入指令,所述数据写入指令中至少包括逻辑路径、指定存储层级以及待写入数据的指定生命周期信息;所述预设存储***中包括按照存储层级进行划分的存储介质,所述预设存储***中存储元数据文件和临时文件;判断在所述预设存储***中是否存在所述逻辑路径对应的目标元数据文件;当所述预设存储***中存在所述目标元数据文件时,根据所述目标元数据文件,确定目标临时文件所处的原始存储介质;判断所述原始存储介质所属的原始存储层级是否与所述指定存储层级一致,并根据判断结果对所述目标临时文件进行处理;在处理后的目标临时文件中写入数据。
请参阅图5,本申请实施方式还提供一种临时数据的读取方法,所述方法包括以下步骤。
S11:接收针对预设存储***的数据读取指令,所述数据读取指令中至少包括逻辑路径;所述预设存储***中包括用于存储元数据文件和临时文件的存储介质,所述存储介质按照存储层级进行划分;所述预设存储***与配置文件相关联,所述配置文件中至少包括存储介质的标识和存储介质的物理路径;
S12:根据所述逻辑路径和存放元数据文件的存储介质的物理路径,确定所述数据读取指令对应的目标路径,并从所述目标路径下读取目标元数据文件;
S13:根据所述目标元数据文件中记录的目标存储介质的标识,从所述配置文件中确定所述目标存储介质的标识对应的目标存储介质的物理路径;
S14:根据所述逻辑路径和所述目标存储介质的物理路径,确定目标临时文件的存储路径,并从所述存储路径处读取所述目标临时文件。
请参阅图6,本申请实施方式还提供一种临时数据的读取装置,所述装置包括存储器110、处理器210以及存储在所述存储器110上并可以在所述处理器210上运行的计算机程序,所述处理器210执行所述计算机程序时实现以下步骤:接收针对预设存储***的数据读取指令,所述数据读取指令中至少包括逻辑路径;所述预设存储***中包括用于存储元数据文件和临时文件的存储介质,所述存储介质按照存储层级进行划分;所述预设存储***与配置文件相关联,所述配置文件中至少包括存储介质的标识和存储介质的物理路径;根据所述逻辑路径和存放元数据文件的存储介质的物理路径,确定所述数据读取指令对应的目标路径,并从所述目标路径下读取目标元数据文件;根据所述目标元数据文件中记录的目标存储介质的标识,从所述配置文件中确定所述目标存储介质的标识对应的目标存储介质的物理路径;根据所述逻辑路径和所述目标存储介质的物理路径,确定目标临时文件的存储路径,并从所述存储路径处读取所述目标临时文件。
在本实施方式中,所述预设存储***可以是所述临时数据的读取装置内部的***,也可以是外部的***,本申请对比并不做限定,只要所述预设存储***和所述临时数据的读取装置之间能够进行数据交互即可。
由以上本申请实施方式提供的技术方案可见,本申请中的预设存储***将存储介质按照存储层级进行划分,并且在不同存储层级的存储介质中可以存储元数据文件和临时文件。这样,在对临时文件进行写入时,可以根据元数据文件寻址到临时文件的具***置,然后可以根据临时文件的原始存储层级与用户提供的指定存储层级之间的关系,对临时文件进行处理,最终可以对处理后的临时文件进行写入。此外,在对临时文件进行读取时,同样可以根据元数据文件对临时文件进行定位,从而可以对临时文件进行读取。上述的临时数据的写入、读取方法及写入、读取装置,通过划分存储介质以及元数据文件定位的方式,能够提高临时数据写入和读取的效率。
上面对本申请的各种实施方式的描述以描述的目的提供给本领域技术人员。其不旨在是穷举的、或者不旨在将本发明限制于单个公开的实施方式。如上所述,本申请的各种替代和变化对于上述技术所属领域技术人员而言将是显而易见的。因此,虽然已经具体讨论了一些另选的实施方式,但是其它实施方式将是显而易见的,或者本领域技术人员相对容易得出。本申请旨在包括在此已经讨论过的本发明的所有替代、修改、和变化,以及落在上述申请的精神和范围内的其它实施方式。
本说明书中的各个实施方式均采用递进的方式描述,各个实施方式之间相同相似的部分互相参见即可,每个实施方式重点说明的都是与其他实施方式的不同之处。
虽然通过实施方式描绘了本申请,本领域普通技术人员知道,本申请有许多变形和变化而不脱离本申请的精神,希望所附的权利要求包括这些变形和变化而不脱离本申请的精神。
Claims (12)
1.一种临时数据的写入方法,其特征在于,所述方法包括:
接收针对预设存储***的数据写入指令,所述数据写入指令中至少包括逻辑路径、指定存储层级以及待写入数据的指定生命周期信息;所述预设存储***中包括用于存储元数据文件和临时文件的存储介质,所述存储介质按照存储层级进行划分;
判断在所述预设存储***中是否存在所述逻辑路径对应的目标元数据文件;
当所述预设存储***中存在所述目标元数据文件时,根据所述目标元数据文件,确定目标临时文件所处的原始存储介质;
判断所述原始存储介质所属的原始存储层级是否与所述指定存储层级一致,并根据判断结果对所述目标临时文件进行处理;
在处理后的目标临时文件中写入数据。
2.根据权利要求1所述的临时数据的写入方法,其特征在于,判断在所述预设存储***中是否存在所述逻辑路径对应的目标元数据文件包括:
根据所述逻辑路径以及存放元数据文件的存储介质的物理路径,确定所述数据写入指令对应的目标路径;
当所述目标路径下存在元数据文件时,将所述目标路径下存放的元数据文件作为所述目标元数据文件;
当所述目标路径下不存在元数据文件时,判定在所述预设存储***中不存在所述逻辑路径对应的目标元数据文件。
3.根据权利要求1或2所述的临时数据的写入方法,其特征在于,在判断在所述预设存储***中是否存在所述逻辑路径对应的目标元数据文件之后,所述方法还包括:
当在所述预设存储***中存在所述目标元数据文件时,判断所述目标元数据文件对应的目标临时文件是否过期;相应地,根据所述目标元数据文件,确定目标临时文件所处的原始存储介质包括:
当所述目标临时文件未过期时,将所述目标元数据文件中记录的存储介质标识作为所述目标临时文件所处的原始存储介质的标识。
4.根据权利要求3所述的临时数据的写入方法,其特征在于,所述方法还包括:
当所述目标临时文件过期时,删除所述目标临时文件,并在所述指定存储层级对应的存储介质中确定剩余容量最大的目标存储介质;
生成包含所述目标存储介质的标识以及所述指定生命周期信息的新建元数据文件,并将所述新建元数据文件替换所述目标元数据文件;
根据所述目标存储介质的物理路径以及所述逻辑路径,生成临时文件存储路径,并在所述临时文件存储路径下创建临时文件。
5.根据权利要求3所述的临时数据的写入方法,其特征在于,所述预设存储***与配置文件相关联,所述配置文件中包括存储介质的标识、存储介质的物理路径、存储介质中数据的类型、存储数据所属的存储层级以及存储介质的容量中的至少一种;
相应地,在判断所述原始存储介质所属的原始存储层级是否与所述指定存储层级一致之前,所述方法还包括:
根据所述原始存储介质的标识,从所述配置文件中确定所述原始存储介质所属的原始存储层级。
6.根据权利要求3所述的临时数据的写入方法,其特征在于,判断所述目标元数据文件对应的目标临时文件是否过期包括:
获取所述目标临时文件最后一次被读取的第一时间以及最后一次被写入的第二时间,并将所述第一时间和所述第二时间中的较晚者作为所述目标临时文件最近一次的使用时间;
计算所述最近一次的使用时间与***当前时间的时间差,当所述时间差大于所述目标临时文件的生命周期时,判定所述目标临时文件过期;
当所述时间差小于或者等于所述目标临时文件的生命周期时,判定所述目标临时文件未过期。
7.根据权利要求1所述的临时数据的写入方法,其特征在于,根据判断结果对所述目标临时文件进行处理包括:
当所述原始存储层级与所述指定存储层级不一致时,在所述指定存储层级对应的存储介质中确定剩余容量最大的目标存储介质;
生成包含所述目标存储介质的标识以及所述指定生命周期信息的元数据文件,并将生成的所述元数据文件替换所述目标元数据文件;
根据所述目标存储介质的物理路径以及所述逻辑路径,生成目标转移路径;
将所述目标临时文件从所述原始存储介质中转移至所述目标转移路径下。
8.根据权利要求1所述的临时数据的写入方法,其特征在于,所述方法还包括:
当所述预设存储***中不存在所述目标元数据文件时,在所述指定存储层级对应的存储介质中确定剩余容量最大的目标存储介质;
生成包含所述目标存储介质的标识以及所述指定生命周期信息的新建元数据文件;
根据所述逻辑路径以及存放元数据文件的存储介质的物理路径,生成元数据存储路径,并将所述新建元数据文件存放于所述元数据存储路径下;
根据所述目标存储介质的物理路径以及所述逻辑路径,生成临时文件存储路径,并在所述临时文件存储路径下创建临时文件,并在创建的临时文件中写入数据。
9.根据权利要求1所述的临时数据的写入方法,其特征在于,所述方法还包括:
按照预设周期检测所述处理后的目标临时文件,当所述处理后的目标临时文件已过期并且当前没有进程在访问所述处理后的目标临时文件时,删除所述处理后的目标临时文件以及所述处理后的目标临时文件对应的元数据文件。
10.一种临时数据的写入装置,所述装置包括存储器、处理器以及存储在所述存储器上并可以在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现以下步骤:
接收针对预设存储***的数据写入指令,所述数据写入指令中至少包括逻辑路径、指定存储层级以及待写入数据的指定生命周期信息;所述预设存储***中包括按照存储层级进行划分的存储介质,所述预设存储***中存储元数据文件和临时文件;
判断在所述预设存储***中是否存在所述逻辑路径对应的目标元数据文件;
当所述预设存储***中存在所述目标元数据文件时,根据所述目标元数据文件,确定目标临时文件所处的原始存储介质;
判断所述原始存储介质所属的原始存储层级是否与所述指定存储层级一致,并根据判断结果对所述目标临时文件进行处理;
在处理后的目标临时文件中写入数据。
11.一种临时数据的读取方法,其特征在于,所述方法包括:
接收针对预设存储***的数据读取指令,所述数据读取指令中至少包括逻辑路径;所述预设存储***中包括用于存储元数据文件和临时文件的存储介质,所述存储介质按照存储层级进行划分;所述预设存储***与配置文件相关联,所述配置文件中至少包括存储介质的标识和存储介质的物理路径;
根据所述逻辑路径和存放元数据文件的存储介质的物理路径,确定所述数据读取指令对应的目标路径,并从所述目标路径下读取目标元数据文件;
根据所述目标元数据文件中记录的目标存储介质的标识,从所述配置文件中确定所述目标存储介质的标识对应的目标存储介质的物理路径;
根据所述逻辑路径和所述目标存储介质的物理路径,确定目标临时文件的存储路径,并从所述存储路径处读取所述目标临时文件。
12.一种临时数据的读取装置,所述装置包括存储器、处理器以及存储在所述存储器上并可以在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现以下步骤:
接收针对预设存储***的数据读取指令,所述数据读取指令中至少包括逻辑路径;所述预设存储***中包括用于存储元数据文件和临时文件的存储介质,所述存储介质按照存储层级进行划分;所述预设存储***与配置文件相关联,所述配置文件中至少包括存储介质的标识和存储介质的物理路径;
根据所述逻辑路径和存放元数据文件的存储介质的物理路径,确定所述数据读取指令对应的目标路径,并从所述目标路径下读取目标元数据文件;
根据所述目标元数据文件中记录的目标存储介质的标识,从所述配置文件中确定所述目标存储介质的标识对应的目标存储介质的物理路径;
根据所述逻辑路径和所述目标存储介质的物理路径,确定目标临时文件的存储路径,并从所述存储路径处读取所述目标临时文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611214779.2A CN106844491B (zh) | 2016-12-26 | 2016-12-26 | 一种临时数据的写入、读取方法及写入、读取装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611214779.2A CN106844491B (zh) | 2016-12-26 | 2016-12-26 | 一种临时数据的写入、读取方法及写入、读取装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106844491A true CN106844491A (zh) | 2017-06-13 |
CN106844491B CN106844491B (zh) | 2020-07-10 |
Family
ID=59136549
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611214779.2A Active CN106844491B (zh) | 2016-12-26 | 2016-12-26 | 一种临时数据的写入、读取方法及写入、读取装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106844491B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109814926A (zh) * | 2018-12-28 | 2019-05-28 | 东软集团股份有限公司 | 一种提取数据的方法和装置 |
CN110659154A (zh) * | 2018-06-28 | 2020-01-07 | 北京京东尚科信息技术有限公司 | 一种数据处理方法和装置 |
CN111984604A (zh) * | 2020-08-13 | 2020-11-24 | 华中科技大学 | 一种减少日志结构文件***碎片的方法及闪存存储*** |
CN112579385A (zh) * | 2019-09-29 | 2021-03-30 | 中国石油天然气集团有限公司 | 一种服务器文件监控方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110302213A1 (en) * | 2009-02-27 | 2011-12-08 | Nec Corporation | Storage system |
CN103617097A (zh) * | 2013-11-19 | 2014-03-05 | 华为技术有限公司 | 文件恢复方法及装置 |
CN103930872A (zh) * | 2011-10-28 | 2014-07-16 | 国际商业机器公司 | 使用可扩展索引编制的虚拟***的被动监视 |
CN104618644A (zh) * | 2015-01-20 | 2015-05-13 | 广东欧珀移动通信有限公司 | 一种图像数据写入文件的方法及终端 |
CN105550978A (zh) * | 2015-12-11 | 2016-05-04 | 中国航空工业集团公司西安航空计算技术研究所 | 一种面向统一染色架构的gpu3d引擎片上存储层次结构 |
-
2016
- 2016-12-26 CN CN201611214779.2A patent/CN106844491B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110302213A1 (en) * | 2009-02-27 | 2011-12-08 | Nec Corporation | Storage system |
CN103930872A (zh) * | 2011-10-28 | 2014-07-16 | 国际商业机器公司 | 使用可扩展索引编制的虚拟***的被动监视 |
CN103617097A (zh) * | 2013-11-19 | 2014-03-05 | 华为技术有限公司 | 文件恢复方法及装置 |
CN104618644A (zh) * | 2015-01-20 | 2015-05-13 | 广东欧珀移动通信有限公司 | 一种图像数据写入文件的方法及终端 |
CN105550978A (zh) * | 2015-12-11 | 2016-05-04 | 中国航空工业集团公司西安航空计算技术研究所 | 一种面向统一染色架构的gpu3d引擎片上存储层次结构 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110659154A (zh) * | 2018-06-28 | 2020-01-07 | 北京京东尚科信息技术有限公司 | 一种数据处理方法和装置 |
CN109814926A (zh) * | 2018-12-28 | 2019-05-28 | 东软集团股份有限公司 | 一种提取数据的方法和装置 |
CN112579385A (zh) * | 2019-09-29 | 2021-03-30 | 中国石油天然气集团有限公司 | 一种服务器文件监控方法及装置 |
CN111984604A (zh) * | 2020-08-13 | 2020-11-24 | 华中科技大学 | 一种减少日志结构文件***碎片的方法及闪存存储*** |
CN111984604B (zh) * | 2020-08-13 | 2024-03-19 | 华中科技大学 | 一种减少日志结构文件***碎片的方法及闪存存储*** |
Also Published As
Publication number | Publication date |
---|---|
CN106844491B (zh) | 2020-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11086523B2 (en) | Automatic tiering of storage using dynamic grouping | |
CN103874980B (zh) | 存储***中的映射 | |
CN104978151B (zh) | 基于应用感知的重复数据删除存储***中的数据重构方法 | |
CN103064639B (zh) | 数据存储方法及装置 | |
CN104395904B (zh) | 高效的数据对象存储和检索 | |
CN103635900B (zh) | 基于时间的数据分割 | |
CN105786408B (zh) | 闪存阵列中的逻辑扇区映射 | |
CN106687911B (zh) | 不损害数据完整性的在线数据移动 | |
CN104462389B (zh) | 基于分级存储的分布式文件***实现方法 | |
CN104731896B (zh) | 一种数据处理方法及*** | |
CN106662981A (zh) | 存储设备、程序和信息处理方法 | |
CN106909317A (zh) | 在存储节点上存储数据 | |
CN107209714A (zh) | 分布式存储***及分布式存储***的控制方法 | |
CN106844491A (zh) | 一种临时数据的写入、读取方法及写入、读取装置 | |
US20110107045A1 (en) | Hybrid storage data migration by selective data removal | |
CN107704211A (zh) | 一种磁光电混合光盘库及其管理方法和管理*** | |
CN101976181A (zh) | 一种存储资源的管理方法及管理装置 | |
CN103577513A (zh) | 藉延迟节点实例化以缓存xml信息集的***和/或方法 | |
CN107239569A (zh) | 一种分布式文件***子树存储方法及装置 | |
CN104054071A (zh) | 访问存储设备的方法和存储设备 | |
CN110383251A (zh) | 存储***、计算机可读记录介质、***的控制方法 | |
CN107729536A (zh) | 一种数据存储方法和装置 | |
CN110007870A (zh) | 一种存储设备写请求处理方法及相关装置 | |
CN104536908B (zh) | 一种面向单机的海量小记录高效存储管理方法 | |
CN107665219A (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 |