CN105279240A - 客户端起源信息关联感知的元数据预取方法及系统 - Google Patents
客户端起源信息关联感知的元数据预取方法及系统 Download PDFInfo
- Publication number
- CN105279240A CN105279240A CN201510632669.7A CN201510632669A CN105279240A CN 105279240 A CN105279240 A CN 105279240A CN 201510632669 A CN201510632669 A CN 201510632669A CN 105279240 A CN105279240 A CN 105279240A
- Authority
- CN
- China
- Prior art keywords
- metadata
- client
- origin
- origin information
- time
- 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/18—File system types
- G06F16/182—Distributed 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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种客户端起源信息关联感知的元数据预取方法及系统,所述方法包括:在客户端的内核空间实时收集起源信息日志记录,从内核空间传输到用户空间;在客户端选取一部分已收集的起源信息日志记录,作为元数据的关联性训练数据,计算元数据两两之间的关联分数,得到最初的强关联列表;当客户端发生文件访问请求,且文件的元数据不在客户端本地的元数据缓存中时,在客户端的强关联列表中,预取多个强关联的元数据,从元数据服务器下载相应的元数据,更新客户端本地的元数据缓存;根据新增的起源信息日志记录,定时更新元数据强关联列表。本发明提高了客户端的元数据缓存命中率,减少对元数据服务器的访问次数,从而提高元数据服务的性能。
Description
技术领域
本发明涉及一种元数据预取方法及系统,尤其是一种客户端起源信息关联感知的元数据预取方法及系统,属于起源信息收集与元数据关联性的挖掘技术以及元数据预取技术领域。
背景技术
随着数据的不断增长,高性能计算环境下的存储系统的数据量变得越来越庞大,数据存储量达到了TB级别乃至PB级别。例如,Facebook已经拥有了200M个数据对象,占据了21PB的存储空间。为了提高存储系统的I/O性能,现今大多数分布式文件系统通常将文件数据和元数据分离,即数据流与控制流分离,从而获得更高的系统扩展性和I/O并发性。元数据单独存储在一个或多个元数据服务器中,为客户端提供元数据服务。随着客户端的数量的增加,客户端对元数据服务器的访问将会越来越频繁,元数据服务器将会成为整个系统的性能瓶颈,导致系统响应时间变长,降低系统的吞吐量。
由于数据分布的时间局部性和空间局部性特性,在大型分布式文件系统中,利用预取技术和缓存机制,是提升元数据服务处理效率的有效方法。然而,现有的缓存和预取方法大多针对普通的文件数据,没有考虑元数据的特性,不适用于元数据的缓存与预取。由于普通文件数据的容量大,预取不命中将对I/O带来比较大的性能惩罚,所以针对普通数据的传统预取机制比较保守,只预取了一两个文件。相比于普通数据,元数据的一个非常重要的特性是容量比较小。对于块大小为4K时,65%的元数据小于128字节,接近98%的元数据小于4224字节。因此预取不命中的元数据并不会占据缓存(Cache)的太多空间,使得预取不命中的性能惩罚不明显。因此,传统的缓存与预测方法并不适用于元数据的缓存与预取。
目前针对大规模分布式文件系统的元数据预取方法的相关研究大多是通过分析文件数据请求的历史访问模式,采用数据挖掘的技术去挖掘文件之间的关联规则,从而预测未来的元数据访问请求。文献[ANovelWeighted-Graph-BasedGroupingAlgorithmforMetadataPrefetching]利用一个可移动的历史窗口对历史访问序列进行关联性统计,存储在图数据结构中,进行元数据预取,提高了元数据服务的I/O性能;但是,这种方法只是简单地文件I/O的历史访问模式进行分析,并没有应用元数据丰富的语义信息。此外,文献[FARMER:anovelapproachtofileaccesscorrelationminingandevaluationreferencemodelforoptimizingpeta-scalefilesystemperformance]计算文件语义距离,结合历史的访问序列,有效地提高了预取的准确率,但是这个方法只是对文件属性进行相似度计算,也没有考虑到文件被操作的历史进程行为信息,即客户端的起源信息。
发明内容
本发明的目的是为了解决上述现有技术的缺陷,提供了一种客户端起源信息关联感知的元数据预取方法,该方法通过在客户端收集与进程相关的起源信息,以加强历史访问序列的时间局部性,并且利用了一种随时间衰减的关联性计算技术来提高客户端元数据预取的准确度以及预取的客户端元数据缓存命中率,减少对元数据服务器的访问次数,从而提高元数据服务的性能。
本发明的另一目的在于提供一种客户端起源信息关联感知的元数据预取系统。
本发明的目的可以通过采取如下技术方案达到:
客户端起源信息关联感知的元数据预取方法,所述方法包括以下步骤:
S1、在客户端的内核空间实时收集起源信息日志记录,采用Netlink协议从内核空间传输到用户空间,并存储到起源信息数据库中;其中,所述起源信息包括进程开始与结束时间的进程起源信息和进程操作文件的I/O请求起源信息;其中,所述起源信息包括进程开始与结束时间的进程起源信息和进程操作文件的I/O请求起源信息;
S2、在客户端选取一部分已收集的起源信息日志记录,作为元数据的关联性训练数据,采用随时间衰减的关联度计算技术计算元数据两两之间的关联分数,对于每个元数据,选取关联分数较高的关联关系,得到最初的强关联列表;
S3、当客户端发生文件访问请求时,查询所述文件的元数据是否在客户端本地的元数据缓存中,若是,则执行步骤S5,若否,则执行步骤S4;
S4、在客户端的强关联列表中,预取多个与所述文件的元数据强关联的元数据,一并打包向元数据服务器发送请求,从元数据服务器下载相应的元数据,更新客户端本地的元数据缓存;
S5、从客户端本地的元数据缓存中读取相应的元数据信息;
S6、根据新增的起源信息日志记录,采用随时间衰减的关联度计算技术定时计算元数据两两之间的关联分数,对于每个元数据,按照关联分数排序,选取关联分数最高的几个关联元数据,更新元数据强关联列表,为以后的元数据预取提供选择。
作为一种优选方案,步骤S1中,所述在客户端的内核空间实时收集起源信息日志记录,具体为:
在客户端的内核空间,拦截exit、exit_group系统调用,收集进程开始与结束时间的进程起源信息日志记录;拦截open、read、write、stat、lstat、readdir系统调用,收集进程操作文件的I/O起源信息日志记录。
作为一种优选方案,所述进程起源信息日志记录规范为一个三元组,如下:
ProcProv(processID,start_time,end_time);其中,ProcProv表示进程号为processID的进程,其生命周期区间为[start_time,end_time];
所述I/O请求起源信息日志记录规范为一个五元组,如下:
IOProv(time,processID,userID,operationID,fid);其中,time表示记录发生的时间,processID表示进程的pid号,userID表示操作进程的用户的ID号,operationID表示系统调用的唯一识别号,fid表示每个文件路径分配该文件的的唯一识别号。
作为一种优选方案,步骤S1中,所述起源信息数据库为TokyoCabinet键值数据库;其中,存储ProcProv记录的数据为B+树形结构的键值数据,主键为<start_time,processID>;存储IOProv记录的数据为B+树形结构的键值数据,主键为<time,fid>。
作为一种优选方案,步骤S2和S6中,所述计算元数据两两之间的关联分数,具体包括:
1)根据ProcProv记录,提取起源信息窗口列表Plist;
2)对于起源信息窗口列表Plist的每个起源信息窗口,从IOProv记录中读取I/O请求的记录列表;
3)计算I/O请求的记录列表中两两fid的关联分数。
作为一种优选方案,步骤1)中所述根据ProcProv记录,提取起源信息窗口列表Plist,具体为:
根据ProcProv记录的进程开始与结束时间,每当两个进程的生命周期相交,则合并成一个更大的进程生命周期,直到没有相交的进程的生命周期,则这个进程生命周期为一个起源信息窗口,最后得到一个起源信息窗口列表Plist。
作为一种优选方案,步骤3)中所述计算I/O请求的记录列表中两两fid的关联分数,具体为:
在一个起源信息窗口中,对于一个IOProv与其若干个后驱IOProv的关联分数,给定一个初始关联分数S,经过与后驱IOProv的时间差衰减,得到新的关联分数S作为两个fid的关联分数,一直与后驱IOProv的时间衰减,直至S小于或等于0才停止。
作为一种优选方案,步骤S6中,所述更新元数据强关联列表,具体为:
采用离线定时更新的策略,在系统闲时计算关联分数,将更新后的强关联列表传输到内核空间,释放其他的弱关联关系,将其他的弱关联关系存储到关联分数数据库中;其中,所述关联分数数据库为Hash结构的键值数据库,主键为<fid_from,fid_to>,存储的值为相应的关联分数。
本发明的另一目的可以通过采取如下技术方案达到:
客户端起源信息关联感知的元数据预取系统,所述系统包括:
起源信息收集模块,用于在客户端的内核空间实时收集起源信息日志记录,采用Netlink协议从内核空间传输到用户空间,并存储到起源信息数据库中;
关联分数计算模块,用于在客户端选取一部分已收集的起源信息日志记录,作为元数据的关联性训练数据,采用随时间衰减的关联度计算技术计算元数据两两之间的关联分数,对于每个元数据,选取关联分数较高的关联关系,得到最初的强关联列表;以及用于根据新增的起源信息日志记录,采用随时间衰减的关联度计算技术定时计算元数据两两之间的关联分数,对于每个元数据,按照关联分数排序,选取关联分数最高的几个关联元数据,更新元数据强关联列表;
元数据预取模块,用于当客户端发生文件访问请求,且文件的元数据不在在客户端本地的元数据缓存中时,在客户端的强关联列表中,预取多个与所述文件的元数据强关联的元数据,一并打包向元数据服务器发送请求,从元数据服务器下载相应的元数据,更新客户端本地的元数据缓存。
本发明相对于现有技术具有如下的有益效果:
1、本发明通过在客户端收集与进程相关的起源信息(进程起源信息和I/O请求起源信息)日志记录,构造可以关联强化的相同起源窗口,并且采用了一种随时间衰减的关联性计算技术,计算元数据的关联性,当客户端的元数据请求发生本地的元数据缓存不命中的时候,预取关联的元数据到客户端本地的元数据缓存中,提高了客户端本地的元数据缓存命中率,减少对元数据服务器的请求次数,避免了元数据服务器频繁的磁盘I/O,有效地降低了元数据服务器的请求响应时间。
2、本发明通过拦截一些I/O系统调用,收集这些系统调用的相关信息,通过一个算法分析得到进程与文件的之间的历史起源信息,能够丰富元数据关联计算方法,提高元数据关联性计算的准确度。
3、本发明采用了起源信息窗口对不同任务进行隔离,减少不同任务间的I/O请求的错误关联计算,使得在统计关联分数时能够考虑更多正确的元数据对象,这在进行大规模预取时,保证了预取的准确率。
4、本发明将收集的起源信息存储在起源信息数据库(键值数据库)中,能够离线地计算元数据的关联分数,内存中只保留强关联列表,相比在线计算,较少的给客户端带来大的性能开销。
5、本发明利用起源信息窗口与随时间衰减函数相结合的关联度计算技术,在客户端本地的元数据缓存中进行元数据预取,能够提高预取的准确率,提高缓存命中率,减少元数据服务的网络传输和元数据访问开销,从而提高系统整体的吞吐量。
附图说明
图1为本发明实施例1的客户端起源信息关联感知的元数据预取系统结构框图。
图2为本发明实施例2的客户端起源信息关联感知的元数据预取方法流程图。
图3为本发明实施例2的计算元数据两两之间的关联分数工作流程图。
图4为本发明实施例2的起源关联窗口示意图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
实施例1:
如图1所示,本实施例的客户端起源信息关联感知的元数据预取系统包括起源信息收集模块、关联分数计算模块,其中:
所述起源信息收集模块,其根据客户端的服务架构设计,安装在客户端,用于在客户端的内核空间实时收集起源信息日志记录,采用Netlink协议从内核空间传输到用户空间,并存储到起源信息数据库中;其中,所述起源信息包括进程开始与结束时间的进程起源信息和进程操作文件的I/O(Input/Output,输入/输出)请求起源信息;
所述关联分数计算模块,用于在客户端选取一部分已收集的起源信息日志记录(2天时间的起源信息日志记录),作为元数据的关联性训练数据,采用随时间衰减的关联度计算技术计算元数据两两之间的关联分数,对于每个元数据,选取关联分数较高的关联关系,得到最初的强关联列表;以及用于根据新增的起源信息日志记录,采用随时间衰减的关联度计算技术定时(周期是24小时)计算元数据两两之间的关联分数,对于每个元数据,按照关联分数排序,选取关联分数最高的几个关联元数据(最多10个),更新元数据强关联列表;
所述元数据预取模块,用于当客户端发生文件访问请求时,查询所述文件的元数据是否在客户端本地的元数据缓存中,若是,则直接从本地缓存中读取相应元数据,若否,在客户端的强关联列表中,预取多个与所述文件的元数据强关联的元数据(最多10个),一并打包向元数据服务器发送请求,从元数据服务器下载相应的元数据,更新客户端本地的元数据缓存。
实施例2:
如图2所示,本实施例的客户端起源信息关联感知的元数据预取方法基于实施例1的系统实现,包括以下步骤:
S1、起源信息收集模块在客户端的内核空间实时收集起源信息日志记录,采用Netlink协议从内核空间传输到用户空间,并存储到起源信息数据库中;其中,所述起源信息包括进程开始与结束时间的进程起源信息和进程操作文件的I/O请求起源信息;
所述在客户端的内核空间实时收集起源信息日志记录,具体为:
在客户端的内核空间,拦截exit、exit_group系统调用,收集进程开始与结束时间的进程起源信息日志记录;拦截open、read、write、stat、lstat、readdir系统调用,收集进程操作文件的I/O起源信息日志记录;
所述进程起源信息日志记录规范为一个三元组,如下:
ProcProv(processID,start_time,end_time);其中,ProcProv表示进程号为processID的进程,其生命周期区间为[start_time,end_time],start_time表示进程开始时间,end_time表示进程结束时间;
所述I/O请求起源信息日志记录规范为一个五元组,如下:
IOProv(time,processID,userID,operationID,fid);各参数含义如下:
time:一个64位的双精度浮点型,代表自1970年1月1日以来的秒数,表示记录发生的时间;
processID:进程的pid号;
userID:操作进程的用户的ID号;
operationID:一个32位整型,表示系统调用的唯一识别号,
fid:一个64位长整型,为每个文件路径分配该文件的的唯一识别号;
所述起源信息数据库为TokyoCabinet键值数据库,数据库设计如下表1所示;其中,ProcProv数据库用于存储ProcProv记录,主要是存储进程的生命周期,按照start_time从小到大排序,存储ProcProv记录的数据为B+树形结构的键值数据,主键为<start_time,processID>;IOProv数据库用于存储IOProv记录,主要是存储客户端的I/O请求记录,即什么进程操作了什么文件,按请求的时间time从小到大排序,存储IOProv记录的数据为B+树形结构的键值数据,主键为<time,fid>;Fid2path是代表每一个fid号对应的文件路径名,Path2fid则相反,通过一个文件的路径名,得到一个唯一fid号。
表1存储起源信息日志记录的键值数据库表
S2、关联分数计算模块在客户端选取一部分已收集的起源信息日志记录,作为元数据的关联性训练数据,采用随时间衰减的关联度计算技术计算元数据两两之间的关联分数,对于每个元数据,选取关联分数较高的关联关系,得到最初的强关联列表;
S3、当客户端发生文件访问请求时,元数据预取模块查询所述文件的元数据是否在客户端本地的元数据缓存中,若是,则执行步骤S5,若否,则执行步骤S4;
S4、元数据预取模块在客户端的强关联列表中,预取多个与所述文件的元数据强关联的元数据,一并打包向元数据服务器发送请求,从元数据服务器下载相应的元数据,更新客户端本地的元数据缓存;
S5、元数据预取模块从客户端本地的元数据缓存中读取相应的元数据信息;
S6、关联分数计算模块根据新增的起源信息日志记录,采用随时间衰减的关联度计算技术定时计算元数据两两之间的关联分数,对于每个元数据,按照关联分数排序,选取关联分数最高的几个关联元数据,更新元数据强关联列表,为以后的元数据预取提供选择。
上述步骤S2和S6中,所述计算元数据两两之间的关联分数如图3所示,具体包括:
1)根据ProcProv记录,提取起源信息窗口列表Plist,具体为:
根据ProcProv记录的进程开始与结束时间,每当两个进程的生命周期相交,则合并成一个更大的进程生命周期,直到没有相交的进程的生命周期,则这个进程生命周期为一个起源信息窗口,最后得到一个起源信息窗口列表Plist,如图4所示,下面的数字代表时间点,最后得到两个起源关联窗口[1,2]和[3,8],写文档、看pdf和浏览器是关联的,处于一个起源关联窗口;
2)对于起源信息窗口列表Plist的每个区间(即每个起源信息窗口),从IOProv记录中读取I/O请求的记录列表;
3)计算I/O请求的记录列表中两两fid的关联分数,具体为:
在一个起源信息窗口中,对于一个IOProv与其若干个后驱IOProv的关联分数,给定一个初始关联分数S,经过与后驱IOProv的时间差衰减,得到新的关联分数S作为两个fid的关联分数,一直与后驱IOProv的时间衰减,直至S小于或等于0才停止;
在本实施例中,对于每一个IOProv的fi,给定一个初始关联分数S,随两个IOProv之间的时间差的不断衰减得到S=S-Δt,计算若干个后驱IOProv的fj的关联分数<fi,fj>为S,一直循环直至S小于或等于0才停止。
上述步骤S6中,所述更新元数据强关联列表,具体为:
采用离线定时更新的策略,在系统闲时计算关联分数,将更新后的强关联列表传输到内核空间,释放其他的弱关联关系,将其他的弱关联关系存储到关联分数数据库中;其中,所述关联分数数据库为Hash结构的键值数据库,主键为<fid_from,fid_to>,存储的值为相应的关联分数。
本领域普通技术人员可以理解实现上述各实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,相应的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘或光盘等。
综上所述,本发明通过在客户端收集与进程相关的起源信息(进程起源信息和I/O请求起源信息)日志记录,构造可以关联强化的相同起源窗口,并且采用了一种随时间衰减的关联性计算技术,计算元数据的关联性,当客户端的元数据请求发生本地的元数据缓存不命中的时候,预取关联的元数据到客户端本地的元数据缓存中,提高了客户端本地的元数据缓存命中率,减少对元数据服务器的请求次数,避免了元数据服务器频繁的磁盘I/O,有效地降低了元数据服务器的请求响应时间。
以上所述,仅为本发明专利较佳的实施例,但本发明专利的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明专利所公开的范围内,根据本发明专利的技术方案及其发明专利构思加以等同替换或改变,都属于本发明专利的保护范围。
Claims (9)
1.客户端起源信息关联感知的元数据预取方法,其特征在于:所述方法包括以下步骤:
S1、在客户端的内核空间实时收集起源信息日志记录,采用Netlink协议从内核空间传输到用户空间,并存储到起源信息数据库中;其中,所述起源信息包括进程开始与结束时间的进程起源信息和进程操作文件的I/O请求起源信息;
S2、在客户端选取一部分已收集的起源信息日志记录,作为元数据的关联性训练数据,采用随时间衰减的关联度计算技术计算元数据两两之间的关联分数,对于每个元数据,选取关联分数较高的关联关系,得到最初的强关联列表;
S3、当客户端发生文件访问请求时,查询所述文件的元数据是否在客户端本地的元数据缓存中,若是,则执行步骤S5,若否,则执行步骤S4;
S4、在客户端的强关联列表中,预取多个与所述文件的元数据强关联的元数据,一并打包向元数据服务器发送请求,从元数据服务器下载相应的元数据,更新客户端本地的元数据缓存;
S5、从客户端本地的元数据缓存中读取相应的元数据信息;
S6、根据新增的起源信息日志记录,采用随时间衰减的关联度计算技术定时计算元数据两两之间的关联分数,对于每个元数据,按照关联分数排序,选取关联分数最高的几个关联元数据,更新元数据强关联列表,为以后的元数据预取提供选择。
2.根据权利要求1所述的客户端起源信息关联感知的元数据预取方法,其特征在于:步骤S1中,所述在客户端的内核空间实时收集起源信息日志记录,具体为:
在客户端的内核空间,拦截exit、exit_group系统调用,收集进程开始与结束时间的进程起源信息日志记录;拦截open、read、write、stat、lstat、readdir系统调用,收集进程操作文件的I/O起源信息日志记录。
3.根据权利要求2所述的客户端起源信息关联感知的元数据预取方法,其特征在于:
所述进程起源信息日志记录规范为一个三元组,如下:
ProcProv(processID,start_time,end_time);其中,ProcProv表示进程号为processID的进程,其生命周期区间为[start_time,end_time];
所述I/O请求起源信息日志记录规范为一个五元组,如下:
IOProv(time,processID,userID,operationID,fid);其中,time表示记录发生的时间,processID表示进程的pid号,userID表示操作进程的用户的ID号,operationID表示系统调用的唯一识别号,fid表示每个文件路径分配该文件的的唯一识别号。
4.根据权利要求3所述的客户端起源信息关联感知的元数据预取方法,其特征在于:步骤S1中,所述起源信息数据库为TokyoCabinet键值数据库;其中,存储ProcProv记录的数据为B+树形结构的键值数据,主键为<start_time,processID>;存储IOProv记录的数据为B+树形结构的键值数据,主键为<time,fid>。
5.根据权利要求3所述的客户端起源信息关联感知的元数据预取方法,其特征在于:步骤S2和S6中,所述计算元数据两两之间的关联分数,具体包括:
1)根据ProcProv记录,提取起源信息窗口列表Plist;
2)对于起源信息窗口列表Plist的每个起源信息窗口,从IOProv记录中读取I/O请求的记录列表;
3)计算I/O请求的记录列表中两两fid的关联分数。
6.根据权利要求5所述的客户端起源信息关联感知的元数据预取方法,其特征在于:步骤1)中所述根据ProcProv记录,提取起源信息窗口列表Plist,具体为:
根据ProcProv记录的进程开始与结束时间,每当两个进程的生命周期相交,则合并成一个更大的进程生命周期,直到没有相交的进程的生命周期,则这个进程生命周期为一个起源信息窗口,最后得到一个起源信息窗口列表Plist。
7.根据权利要求5所述的客户端起源信息关联感知的元数据预取方法,其特征在于:步骤3)中所述计算I/O请求的记录列表中两两fid的关联分数,具体为:
在一个起源信息窗口中,对于一个IOProv与其若干个后驱IOProv的关联分数,给定一个初始关联分数S,经过与后驱IOProv的时间差衰减,得到新的关联分数S作为两个fid的关联分数,一直与后驱IOProv的时间衰减,直至S小于或等于0才停止。
8.根据权利要求1所述的客户端起源信息关联感知的元数据预取方法,其特征在于:步骤S6中,所述更新元数据强关联列表,具体为:
采用离线定时更新的策略,在系统闲时计算关联分数,将更新后的强关联列表传输到内核空间,释放其他的弱关联关系,将其他的弱关联关系存储到关联分数数据库中;其中,所述关联分数数据库为Hash结构的键值数据库,主键为<fid_from,fid_to>,存储的值为相应的关联分数。
9.客户端起源信息关联感知的元数据预取系统,其特征在于:所述系统包括:
起源信息收集模块,用于在客户端的内核空间实时收集起源信息日志记录,采用Netlink协议从内核空间传输到用户空间,并存储到起源信息数据库中;其中,所述起源信息包括进程开始与结束时间的进程起源信息和进程操作文件的I/O请求起源信息;
关联分数计算模块,用于在客户端选取一部分已收集的起源信息日志记录,作为元数据的关联性训练数据,采用随时间衰减的关联度计算技术计算元数据两两之间的关联分数,对于每个元数据,选取关联分数较高的关联关系,得到最初的强关联列表;以及用于根据新增的起源信息日志记录,采用随时间衰减的关联度计算技术定时计算元数据两两之间的关联分数,对于每个元数据,按照关联分数排序,选取关联分数最高的几个关联元数据,更新元数据强关联列表;
元数据预取模块,用于当客户端发生文件访问请求时,查询所述文件的元数据是否在客户端本地的元数据缓存中,若是,则直接从本地缓存中读取相应元数据,若否,在客户端的强关联列表中,预取多个与所述文件的元数据强关联的元数据,一并打包向元数据服务器发送请求,从元数据服务器下载相应的元数据,更新客户端本地的元数据缓存。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510632669.7A CN105279240B (zh) | 2015-09-28 | 2015-09-28 | 客户端起源信息关联感知的元数据预取方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510632669.7A CN105279240B (zh) | 2015-09-28 | 2015-09-28 | 客户端起源信息关联感知的元数据预取方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105279240A true CN105279240A (zh) | 2016-01-27 |
CN105279240B CN105279240B (zh) | 2018-07-13 |
Family
ID=55148254
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510632669.7A Active CN105279240B (zh) | 2015-09-28 | 2015-09-28 | 客户端起源信息关联感知的元数据预取方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105279240B (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106570108A (zh) * | 2016-11-01 | 2017-04-19 | 中国科学院计算机网络信息中心 | 一种云存储环境下海量数据自适应读取优化方法及系统 |
CN106682061A (zh) * | 2016-10-17 | 2017-05-17 | 暨南大学 | 一种分布式起源数据收集与存储系统 |
CN106844740A (zh) * | 2017-02-14 | 2017-06-13 | 华南师范大学 | 基于内存对象缓存系统的数据预读方法 |
CN108153825A (zh) * | 2017-12-07 | 2018-06-12 | 石化盈科信息技术有限责任公司 | 数据访问方法及装置 |
CN108920600A (zh) * | 2018-06-27 | 2018-11-30 | 中国科学技术大学 | 一种基于数据关联性的分布式文件系统元数据预取方法 |
CN109299144A (zh) * | 2018-08-22 | 2019-02-01 | 北京奇艺世纪科技有限公司 | 一种数据处理方法、装置、系统及应用服务器 |
CN110008202A (zh) * | 2019-04-15 | 2019-07-12 | 北京搜狐新媒体信息技术有限公司 | 一种减少内存占用的模型部署方法及系统 |
CN111191791A (zh) * | 2019-12-02 | 2020-05-22 | 腾讯云计算(北京)有限责任公司 | 机器学习模型的应用方法、训练方法、装置、设备及介质 |
CN111198852A (zh) * | 2019-12-30 | 2020-05-26 | 浪潮通用软件有限公司 | 微服务架构下知识图谱驱动的元数据关系推理方法 |
CN111209082A (zh) * | 2020-01-06 | 2020-05-29 | 暨南大学 | 一种基于关联度的Docker容器注册表预取方法 |
WO2020119636A1 (zh) * | 2018-12-13 | 2020-06-18 | 深圳先进技术研究院 | 数据访问请求响应方法、装置、终端和存储介质 |
CN111654540A (zh) * | 2020-06-01 | 2020-09-11 | 重庆高开清芯智联网络科技有限公司 | 一种物联网系统内节点数据的预取和推送方法及系统 |
CN113688113A (zh) * | 2021-07-28 | 2021-11-23 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 针对分布式文件系统的元数据预取系统及方法 |
CN115470008A (zh) * | 2022-11-14 | 2022-12-13 | 杭州拓数派科技发展有限公司 | 一种元数据访问方法、装置和存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102332027A (zh) * | 2011-10-15 | 2012-01-25 | 西安交通大学 | 一种基于Hadoop的海量非独立小文件关联存储方法 |
US20140149677A1 (en) * | 2012-11-26 | 2014-05-29 | Advanced Micro Devices, Inc. | Prefetch Kernels on Data-Parallel Processors |
-
2015
- 2015-09-28 CN CN201510632669.7A patent/CN105279240B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102332027A (zh) * | 2011-10-15 | 2012-01-25 | 西安交通大学 | 一种基于Hadoop的海量非独立小文件关联存储方法 |
US20140149677A1 (en) * | 2012-11-26 | 2014-05-29 | Advanced Micro Devices, Inc. | Prefetch Kernels on Data-Parallel Processors |
Non-Patent Citations (2)
Title |
---|
LIN LIN等: "AMP: An Affinity-based Metadata Prefetching Scheme in Large-Scale", 《EIGHTGH IEEE INTERNATIONAL SYMPOSIUM ON CLUSTER COMPUTING AND THE GRID》 * |
黄立锋等: "可时间局部性感知的块I/O关联挖掘算法", 《小型微型计算机系统》 * |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106682061A (zh) * | 2016-10-17 | 2017-05-17 | 暨南大学 | 一种分布式起源数据收集与存储系统 |
CN106682061B (zh) * | 2016-10-17 | 2019-09-17 | 暨南大学 | 一种分布式起源数据收集与存储系统 |
CN106570108A (zh) * | 2016-11-01 | 2017-04-19 | 中国科学院计算机网络信息中心 | 一种云存储环境下海量数据自适应读取优化方法及系统 |
CN106844740A (zh) * | 2017-02-14 | 2017-06-13 | 华南师范大学 | 基于内存对象缓存系统的数据预读方法 |
CN108153825A (zh) * | 2017-12-07 | 2018-06-12 | 石化盈科信息技术有限责任公司 | 数据访问方法及装置 |
CN108920600A (zh) * | 2018-06-27 | 2018-11-30 | 中国科学技术大学 | 一种基于数据关联性的分布式文件系统元数据预取方法 |
CN108920600B (zh) * | 2018-06-27 | 2021-07-06 | 中国科学技术大学 | 一种基于数据关联性的分布式文件系统元数据预取方法 |
CN109299144A (zh) * | 2018-08-22 | 2019-02-01 | 北京奇艺世纪科技有限公司 | 一种数据处理方法、装置、系统及应用服务器 |
WO2020119636A1 (zh) * | 2018-12-13 | 2020-06-18 | 深圳先进技术研究院 | 数据访问请求响应方法、装置、终端和存储介质 |
CN110008202A (zh) * | 2019-04-15 | 2019-07-12 | 北京搜狐新媒体信息技术有限公司 | 一种减少内存占用的模型部署方法及系统 |
CN111191791A (zh) * | 2019-12-02 | 2020-05-22 | 腾讯云计算(北京)有限责任公司 | 机器学习模型的应用方法、训练方法、装置、设备及介质 |
CN111191791B (zh) * | 2019-12-02 | 2023-09-29 | 腾讯云计算(北京)有限责任公司 | 基于机器学习模型的图片分类方法、装置及设备 |
CN111198852A (zh) * | 2019-12-30 | 2020-05-26 | 浪潮通用软件有限公司 | 微服务架构下知识图谱驱动的元数据关系推理方法 |
CN111209082A (zh) * | 2020-01-06 | 2020-05-29 | 暨南大学 | 一种基于关联度的Docker容器注册表预取方法 |
CN111209082B (zh) * | 2020-01-06 | 2023-04-07 | 暨南大学 | 一种基于关联度的Docker容器注册表预取方法 |
CN111654540A (zh) * | 2020-06-01 | 2020-09-11 | 重庆高开清芯智联网络科技有限公司 | 一种物联网系统内节点数据的预取和推送方法及系统 |
CN113688113A (zh) * | 2021-07-28 | 2021-11-23 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 针对分布式文件系统的元数据预取系统及方法 |
CN115470008A (zh) * | 2022-11-14 | 2022-12-13 | 杭州拓数派科技发展有限公司 | 一种元数据访问方法、装置和存储介质 |
CN115470008B (zh) * | 2022-11-14 | 2023-03-10 | 杭州拓数派科技发展有限公司 | 一种元数据访问方法、装置和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN105279240B (zh) | 2018-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105279240A (zh) | 客户端起源信息关联感知的元数据预取方法及系统 | |
Bakhshalipour et al. | Bingo spatial data prefetcher | |
Ding et al. | DiskSeen: Exploiting Disk Layout and Access History to Enhance I/O Prefetch. | |
US10372706B2 (en) | Tracking and maintaining expression statistics across database queries | |
US9639480B2 (en) | Dynamic cache allocation adjustment using multiple cache simulations for efficient cache utility curve construction | |
Fagni et al. | Boosting the performance of web search engines: Caching and prefetching query results by exploiting historical usage data | |
Wenisch et al. | Practical off-chip meta-data for temporal memory streaming | |
Yang et al. | Leaper: A learned prefetcher for cache invalidation in LSM-tree based storage engines | |
US20060161541A1 (en) | System and method for prefetching and caching query results | |
Liang et al. | STEP: Sequentiality and thrashing detection based prefetching to improve performance of networked storage servers | |
CN107040422A (zh) | 一种基于物化缓存的网络大数据可视化方法 | |
Vogel et al. | Mosaic: a budget-conscious storage engine for relational database systems | |
CN109981659A (zh) | 基于数据去重技术的网络资源预取方法以及系统 | |
Zhang et al. | {SIEVE} is Simpler than {LRU}: an Efficient {Turn-Key} Eviction Algorithm for Web Caches | |
Lin et al. | Amp: an affinity-based metadata prefetching scheme in large-scale distributed storage systems | |
Xiang et al. | Less reused filter: improving l2 cache performance via filtering less reused lines | |
Wong et al. | Baleen:{ML} Admission & Prefetching for Flash Caches | |
CN111209082B (zh) | 一种基于关联度的Docker容器注册表预取方法 | |
Makker et al. | Web server performance optimization using prediction prefetching engine | |
Hou et al. | Pacaca: mining object correlations and parallelism for enhancing user experience with cloud storage | |
Amer et al. | Aggregating caches: A mechanism for implicit file prefetching | |
Chang et al. | Coral: A cloud-backed frugal file system | |
Liu | Partial address directory for cache access | |
Wu et al. | Using provenance to boost the metadata prefetching in distributed storage systems | |
Zhang et al. | Parallel cache prefetching for LSM-tree based store: From algorithm to evaluation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |