[发明专利]一种元数据的缓存方法及装置无效
申请号: | 200910250741.4 | 申请日: | 2009-12-10 |
公开(公告)号: | CN101706756A | 公开(公告)日: | 2010-05-12 |
发明(设计)人: | 翁烈加;毛国雷;李家才 | 申请(专利权)人: | 金蝶软件(中国)有限公司 |
主分类号: | G06F12/08 | 分类号: | G06F12/08 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 彭愿洁;李文红 |
地址: | 518057 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 缓存 方法 装置 | ||
技术领域
本发明涉及数据结构技术领域,特别涉及一种元数据的缓存方法及装置。
背景技术
元数据是用来描述业务数据结构的一种模型。在软件开发中,模型比代码更容易被理解。因此,业务开发人员通过定义元数据来开发应用系统。
元数据装载器是用于访问元数据的程序模块,负责把元数据从物理存储格式载入到内存,转换为一定格式的内存实例,并维护这些内存实例的生命周期。
目前,常见的元数据装载器装载数据时是通过不使用缓存机制或使用缓存机制来实现的。
首先介绍不使用缓存机制的元数据装载器装载元数据的过程。
元数据装载器每次访问一个元数据时,均需要读取元数据的物理存储格式,载入内存,并进行组装,生成元数据的内存实例。这样,当调用者在多处访问同一个元数据时,由于各自获得的是不同的内存实例。因此,当有一个内存实例被误改后,不会影响其他调用者。
但是,这种不使用缓存机制的元数据装载器由于每次访问元数据时,均需要对元数据进行重新装载,当元数据被频繁使用时,就需要频繁地重复性劳动。
下面介绍使用缓存的元数据装载器装载元数据的过程。
在内存中设置缓存池,元数据装载器第一次装载元数据之后,均将装载后的内存实例放入缓存池中。以后,调用者使用元数据时,均可以从缓存池中获取,因此,不需要元数据装载器重新装载元数据。当同一个元数据被频繁使用时,可以避免重复地劳动。
但是,由于调用者每次访问元数据时,均是从缓冲池中获取,如果有调用者误改了某个内存实例,而没有保存,这样修改的中间结果将影响其他的调用者。
发明内容
本发明要解决的技术问题是提供一种元数据的缓存方法及装置,可以避免内存实例被误改后而影响其他调用者。
本发明实施例提供一种元数据的缓存方法,包括以下步骤:
判断缓存池中被调用的内存实例是否为脏的内存实例;
当判断被调用的内存实例为脏的内存实例时,将该内存实例从缓存池中删除,对该内存实例对应的元数据进行重新装载,将元数据重新装载后生成的内存实例放入缓存池中。
优选地,所述判断被调用的内存实例为脏的内存实例,具体为:
所述被调用的内存实例带有脏标志;
或,
所述被调用的内存实例的时间戳与该内存实例对应的元数据文件的时间戳不一致.
优选地,所述缓存池中的内存实例的时间戳是该内存实例被放入缓存池时内存实例对应的元数据文件的时间。
优选地,所述脏标志是该内存实例被调用者修改前进行设置的。
优选地,还包括,将所述缓存池中非脏的被访问的内存实例返回给调用者;所述非脏的被访问的内存实例是指该内存实例没有脏标志且时间戳与对应的元数据文件的时间戳一致。
本发明实施例还提供一种元数据的缓存装置,包括:判断单元、删除单元和装载单元;
所述判断单元,用于判断缓存池中被调用的内存实例是否为脏的内存实例;
所述删除单元,当所述判断单元的判断结果为所述被调用的内存实例为脏的内存实例时,用于将该脏的内存实例从缓存池中删除;
所述装载单元,当所述判断单元的判断结果为所述被调用的内存实例为脏的内存实例时,用于将该内存实例对应的元数据进行重新装载,将元数据重新装载后生成的内存实例放入缓存池中。
优选地,所述判断单元判断被调用的内存实例为脏的内存实例,具体为:
所述被调用的内存实例带有脏标志;
或,
所述被调用的内存实例的时间戳与该内存对应的元数据文件的时间戳不一致。
优选地,所述缓存池中的内存实例的时间戳是该内存实例被放入缓存池时内存实例对应的元数据文件的时间。
优选地,所述脏标志是该内存实例被调用者修改前进行设置的。
优选地,还包括返回单元,将所述缓存池中非脏的被访问的内存实例返回给调用者;所述非脏的被访问的内存实例是指该内存实例没有脏标志且时间戳与对应的元数据文件的时间戳一致。
与现有技术相比,本发明具有以下优点:
本发明提供的元数据的缓存方法及装置,当调用者调用缓存池中的内存实例时,首先会判断内存实例是否脏,如果该内存实例是脏的内存实例,则将该内存实例对应的元数据进行重新装载,确保被调用的内存实例均是非脏的。这样脏的内存实例就不会被调用者使用,因此避免了内存实例被误改后而影响其他调用者。
附图说明
图1是本发明方法实施例一流程图;
图2是本发明方法实施例二流程图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于金蝶软件(中国)有限公司,未经金蝶软件(中国)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910250741.4/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置