[发明专利]一种实时数据库文件存储方法在审
申请号: | 201711398848.4 | 申请日: | 2017-12-22 |
公开(公告)号: | CN107967360A | 公开(公告)日: | 2018-04-27 |
发明(设计)人: | 曾保权;刘华生;杨琳芳;李知良 | 申请(专利权)人: | 广东雅达电子股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 广州粤高专利商标代理有限公司44102 | 代理人: | 罗晓林,李捷 |
地址: | 523000 *** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实时 数据库文件 存储 方法 | ||
技术领域
本发明涉及文件存储技术领域,尤其涉及一种实时数据库文件存储方法。
背景技术
数据库的理论与技术发展极其迅速,其应用日益广泛,在当今的信息社会无所不在,尤其是关系数据库在传统数据领域的应用。然而传统数据库必须将数据存入数据库后再进行查找和后续的分析及数据挖掘等对数据的操作,这种特性决定了传统数据库在现代工程和时间关键性的应用方面显得软弱无力。传统的数据库系统更适合处理稳定且具有长有效期的数据,强调数据的一致性和完整性,并不考虑数据及其处理的时间限制,所以传统数据库并不能完成满足实时应用的需要。
为了解决上述的问题,实时数据库孕育而生,并广泛应用于电力、石油、化工、钢铁、环保等行业。实时数据库推动信息化从传统领域向新的领域扩展,向更高层次发展。这些新的领域包括生产实时监视、电力调度、交通监视及控制、空中交通管制、武器制导、实时仿真、作战指挥自动化等。这些应用有着不传统应用不同的特征:一方面需要维护的共享数据和控制数据大量增加;另一方面其任务(或事务)时间性很强,要求在规定的时刻或一定的时间内完成其处理。
现有实时数据库技术中,如公告号为CN102184226A,发明名称为“一种实时数据库的构建方法和数据检索方法”的中国专利申请,其没有采用b+树索引结构,而是针对时间序列数据的特征设计特定的索引结构;又如,公告号为CN1564158A,发明名称为“实时数据库建模、存储和访问方法”的中国专利申请中采用了直接磁盘扇区读写方式,不需要建立索引。但是,该方法不能利用操作系统的文件系统特性,只能应用于嵌入式系统。
此外,现有技术中的现代数据库一般均使用锁或多版本技术来实现并发读写,但是,采用锁或多版本技术的读写并发程度并不是非常高。现有技术中,如公告号为CN103336828A,发明名称为“实时数据库读取及写入方法”的中国专利申请中提到了一种加锁方式,可有效提高读写性能,但是却不能支持多写并发操作。
由此可知,现有技术中的实时数据库的样本数据的存储方法中都或多或少地存在上述的一些问题,因此难以满足对实时数据库的样本数据的存储的需要。
发明内容
为克服现有技术的不足及存在的问题,本发明提供一种实时数据库文件存储方法,该方法不仅具有快速的样本数据读写速度,并可满足快速、高效地进行存储、检索和压缩的要求。
本发明是通过以下技术方案实现的:
一种实时数据库文件存储方法,所述方法包括:
所有变量数据、样本数据、账号数据以及SOE事件数据通过文件存储,分别保存在变量数据文件、样本数据文件、账号数据文件以及SOE事件SQLite数据库SOE事件表中;
对所述样本数据文件进行分块,每块保存相同变量样本数据,对块建立索引,并保存到SQLite数据库中的块索引表中,并对块索引表建立组合索引;
对SOE事件建立SOE事件表,保存SOE事件记录到SQLite数据库中的SOE事件表中,并对SOE事件表建立组合索引;
所述变量数据文件、样本数据文件以及账号数据文件均通过内存映射文件的方式读取和存储数据。
优选地,所述变量数据文件包括:变量数据文件头和变量数据向量;所述变量文件头的属性包括:版本号、文件类型以及变量个数;所述变量数据向量由多个变量项组成,所述变量项的属性包括变量ID、数据类型、变量类型、压缩类型、压缩精度、变量名称、描述、工程单位、小数位数、有效位数、是否存盘、下限、上限、样本偏差、最小样本偏差时间、最大样本偏差时间、最小压缩时间间隔以及最大压缩时间间隔中的任意一个属性或任意多个属性;所述样本数据文件包括:样本数据文件头、样本数据块向量以及样本数据文件尾;所述样本数据文件头的属性包括版本号、文件类型以及时间戳;所述样本数据向量由多个样本数据块组成,每个样本数据块包括变量ID、起始时间、结束时间、样本计数以及样本数据表;其中,以变量ID、起始时间、结束时间与样本数据块在文件的序号为字段建立索引表存储到SQLite数据库中,并对块索引表建立组合索引。
优选地,所述账号数据文件包括:账号文件头、角色项记录与用户项记录;所述账号文件头的属性包括版本号、文件类型、角色个数以及用户个数;所述角色项包括角色名称、描述与权限;所述用户项包括用户名、密码、角色名称、描述与活动状态。
优选地,所述SOE事件表包括以下字段:时间戳、自动主键、事件类型、事件格式、参数长度、事件级别、事件来源、事件描述、事件参数、事件处理标志与事件更新状态。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东雅达电子股份有限公司,未经广东雅达电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711398848.4/2.html,转载请声明来源钻瓜专利网。