【技术实现步骤摘要】
使用虚拟文件句柄操作存档文件的方法、系统及存储介质
[0001]本专利技术属于实时数据库文件操作
,具体涉及一种使用虚拟文件句柄操作存档文件的方法、系统及存储介质。
技术介绍
[0002]实时数据库根据工业企业的生产需求,通常需要将生产过程中采集的数据以时间范围或者占据空间大小为限制存储在多个存档文件中,用户通过客户端或者其他可视化平台调用存档文件中的历史数据,可以很清晰地监控生产过程的数据,展现生产指标的趋势,还可以将大量的数据提取进行数据分析。随着时间的推进,实时数据库的存档规模也会不断增长,一般可以存储几年甚至十几年的存档文件,文件数量也会达到几千上万。
[0003]现在的操作系统规定单个进程所持有的最大句柄数量一般为1024或2048,实时数据库的存档服务也不例外,除去一些必要操作所需要占据的句柄,剩余最多有2000个左右可以用作文件句柄。在存档文件数量超过2000后,现有的句柄数就不足以支撑全部文件的操作,为了保证服务正常运行,需要有相应的措施。在现有技术中,大多要采用扩充句柄数的方法来满足更多数量的 ...
【技术保护点】
【技术特征摘要】
1.一种使用虚拟文件句柄操作存档文件的方法,其特征在于,包括以下步骤:访问存档文件,获取相应存档文件句柄值;根据存档文件的句柄值检测被访问的存档文件是否为打开状态,如果存档文件的句柄值不为无效值,则为已打开文件;若存档文件为打开状态则加锁提供使用,且已打开存档文件的数量加一,若存档文件为非打开状态则统计已经打开的存档文件的数量;检测已经打开的存档文件的数量是否超过文件句柄数,若否,打开该非打开状态的存档文件,设定句柄值并加锁提供使用;若是,则在一个列表中记录所有已经打开的文件句柄,将最少使用的文件句柄关闭并释放该文件句柄,打开新的文件句柄并加锁提供使用;使用文件句柄完毕,在不关闭文件句柄的条件下进行解锁处理。2.根据权利要求1所述使用虚拟文件句柄操作存档文件的方法,其特征在于,所述的存档文件句柄通过一个Hash表来获取,所述的Hash表管理文件句柄对象,虚拟所有文件名与文件句柄,通过文件句柄判断或改变打开状态,通过文件名对应存档文件进行访问。3.根据权利要求1所述使用虚拟文件句柄操作存档文件的方法,其特征在于,所述的加锁操作在访问文件对象时添加读锁,只有在添加、删除、复用文件时添加写锁。4.根据权利要求1所述使用虚拟文件句柄操作存档文件的方法,其特征在于,所述的列表采用LRU算法记录所有已经打开的文件句柄,具体的,将新的文件句柄添加在表头,表尾部记录的是最少使用的文件句柄,使被访问的文件句柄被调整到表头。5.根据权利要求4所述使用虚拟文件句柄操作存档文...
【专利技术属性】
技术研发人员:何清,王奕飞,王毅,谢贝贝,刘茜,何新,
申请(专利权)人:西安西热电站信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。