[发明专利]一种日志搜索方法和系统有效
| 申请号: | 201010285946.9 | 申请日: | 2010-09-14 |
| 公开(公告)号: | CN101944115A | 公开(公告)日: | 2011-01-12 |
| 发明(设计)人: | 栾焕志;徐新刚;赵先林;胡扬忠;邬伟琪 | 申请(专利权)人: | 杭州海康威视数字技术股份有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 逯长明;王宝筠 |
| 地址: | 310002*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 日志 搜索 方法 系统 | ||
技术领域
本发明涉及信息检索技术领域,尤其是涉及一种日志搜索方法和系统。
背景技术
目前NandFlash的主流文件系统是Yaffs2,该文件系统具有占用内存少和启动快等优点,基于NandFlash的操作大都基于Yaffs2文件系统。
通常,在Yaffs2文件系统中,日志是按时间顺序进行存放的,这样使用折半查找算法可以快速搜索到指定时间段内的日志。但是当系统时间往前调整时(即调整后的系统时间早于调整前的系统时间),就会导致日志的存储不按时间顺序进行排列,这样就无法使用折半查找算法,只能对所有日志文件进行遍历,导致搜索时间过长,进一步的,会在内存中缓存大量的日志数据,容易造成其他应用程序分配内存失败。
另外,现有Yaffs2文件系统在NandFlash内容改写或覆盖时会出现内容搬移,导致效率低下,而且搬移时容易出现错误导致日志遭到破坏;以及,现有Yaffs2文件系统需要通过目录和文件名来访问文件,一旦目录项遭到破坏,就无法访问相应文件。
发明内容
本发明的目的是提供一种日志搜索方法和系统,以提高日志搜索的效率,减少内存中缓存的日志数据,提高日志文件的安全性和可访问性。
本发明提供了一种日志搜索方法,NandFlash的每个已使用页对应的带外OOB包括一个时间段标记;每个时间段标记在整个NandFlash中是唯一的,每个时间段标记对应连续的至少一个页,且一个时间段标记对应的时间段内日志按时间先后顺序排列;系统内存中具有时间段索引,所述时间段索引包括时间段标记、以及与该时间段标记对应的时间段的开始时间和结束时间;
在接收到搜索信息后,所述方法包括:
利用当前时间段索引中时间段标记对应的时间段的开始时间和结束时间,判断当前时间段标记对应的日志中是否包含符合所述搜索信息中的起始时间和终止时间的日志;
若是,则对当前时间段标记对应的日志进行折半查找,确定当前时间段中符合所述起始时间和终止时间的日志,并将符合所述搜索信息的日志加入搜索结果;将相邻的下一条时间段索引作为当前索引,重复执行所述判断步骤;
若否,则将相邻的下一条时间段索引作为当前索引,重复执行所述判断步骤;
当符合搜索结束条件时,停止搜索,并将搜索结果中的日志返回。
本发明还提供了一种日志搜索系统,NandFlash的每个已使用页对应的带外OOB包括一个时间段标记;每个时间段标记在整个NandFlash中是唯一的,每个时间段标记对应连续的至少一个页,且一个时间段标记对应的时间段内日志按时间先后顺序排列;所述系统的内存中具有时间段索引,所述时间段索引包括时间段标记、以及与该时间段标记对应的时间段的开始时间和结束时间;
所述系统还包括:
接收模块,用于接收搜索信息;
判断模块,用于利用当前时间段索引中时间段标记对应的时间段的开始时间和结束时间,判断当前时间段标记对应的日志中是否包含符合所述搜索信息中的起始时间和终止时间的日志;
查找模块,用于当所述判断模块的判断结果为是时,对当前时间段标记对应的日志进行折半查找,确定当前时间段中符合所述起始时间和终止时间的日志,并将符合所述搜索信息的日志加入搜索结果;将相邻的下一条时间段索引作为当前索引,重复调用所述判断模块进行判断;当所述判断模块的判断结果为否时,将相邻的下一条时间段索引作为当前索引,重复调用所述判断模块进行判断;
返回模块,用于当符合搜索结束条件时,停止搜索,并将搜索结果中的日志返回。
本发明的日志搜索方法和系统,通过使用时间段标记将NandFlash中的日志按时间段进行划分,每个时间段中的日志都是按时间先后顺序进行排列,使得日志搜索时可以对每个时间段进行折半查找,大大提高日志搜索的效率,减少内存中缓存的日志数据;在日志数量不足一页且超过预设时间没有新日志生成时,通过强制将日志写入页中,能够避免断电造成的内存中缓存日志的丢失,并避免在NandFlash内容改写或覆盖时出现的内容搬移现象;本发明的日志搜索系统不采用文件系统以文件的方式访问日志,即使某个块出现损坏也只是失去了该块上的日志,其他块上的日志不受影响,更大程度的保护日志的可访问性。
附图说明
图1是NandFlash的典型结构示意图;
图2是本发明的OOB结构示意图;
图3是本发明的日志搜索方法第一实施例的流程示意图;
图4是本发明的日志搜索方法第二实施例的流程示意图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州海康威视数字技术股份有限公司,未经杭州海康威视数字技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010285946.9/2.html,转载请声明来源钻瓜专利网。





