[发明专利]一种数据处理方法及装置在审
| 申请号: | 202011438493.9 | 申请日: | 2020-12-07 |
| 公开(公告)号: | CN112579678A | 公开(公告)日: | 2021-03-30 |
| 发明(设计)人: | 张争光;陈刚;许盛;杨光平 | 申请(专利权)人: | 阳光电源股份有限公司 |
| 主分类号: | G06F16/25 | 分类号: | G06F16/25;G06F16/2455;G06F16/21 |
| 代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 林哲生 |
| 地址: | 230088 安徽*** | 国省代码: | 安徽;34 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 数据处理 方法 装置 | ||
本发明提供了一种数据处理方法及装置,在终端设备的内存与外部存储器中分别创建一个数据库且在初始状态下数据相同,在接收到数据库操作请求的情况下,通过调用SQLite引擎对内存中的数据库执行与数据库操作请求相对应的操作,提高对数据库的读写速度。同时,通过异步运行预设同步机制,使内存与外部存储器中的数据库的数据一致,即使由于掉电等原因导致内存中数据库中的数据丢失时,外部存储器中数据库的数据不会丢失且不受影响,保证对数据库操作的安全性和稳定性。
技术领域
本发明涉及计算机技术领域,更具体的,涉及一种数据处理方法及装置。
背景技术
SQLite引擎因其轻量、快速、高可靠性以及功能齐全的特点被广泛应用于终端设备中。
目前,一般通过在终端设备中的外部存储器中建立数据库文件,从而使用SQLite引擎对外部存储器中的数据库进行读写操作。但是,对外部存储器中的数据库进行读写操作会受外部存储器读写速度的限制,读写速度较慢,用户体验较差。
发明内容
有鉴于此,本发明提供了一种数据处理方法、装置及系统,在提高数据库读写速度的同时保证对数据库操作的安全性和稳定性。
为了实现上述发明目的,本发明提供的具体技术方案如下:
一种数据处理方法,应用于终端设备中的处理器,所述终端设备在初始状态下内存与外部存储器中的数据库的数据相同,所述方法包括:
在接收到数据库操作请求的情况下,调用SQLite引擎对内存中的数据库执行与所述数据库操作请求相对应的操作;
异步运行预设同步机制,使内存与外部存储器中的数据库的数据一致。
可选的,所述异步运行预设同步机制,包括:
判断所述数据库操作请求是否为查询类操作;
若是,不对外部存储器中的数据库执行与所述数据库操作请求相对应的操作;
若否,判断与所述数据库操作请求相对应的操作是否在内存中的数据库正确执行;
若正确执行,在所述数据库操作请求对应的事务已完成的情况下,将所述数据库操作请求添加到SQL队列中,异步调用所述SQLite引擎对外部存储器中的数据库执行与所述SQL队列中的所述数据库操作请求相对应的操作。
可选的,在与所述数据库操作请求相对应的操作在内存中的数据库执行错误的情况下,所述方法还包括:
检测内存或外部存储器中的数据库是否损坏;
若内存中的数据库损坏,根据外部存储器中数据库的数据恢复内存中的数据库;
若外部存储器中的数据库损坏,根据内存中数据库的数据恢复外部存储器中的数据库。
可选的,所述终端设备通过对外提供一组接口,以接收所述数据库操作请求,所述接口可以为API和/或服务。
可选的,所述根据外部存储器中数据库的数据恢复内存中的数据库,包括:
阻塞所述接口调用;
将导致内存中的数据库损坏的事务丢弃;
在所述SQL队列中的所述数据库操作请求全部执行完毕的情况下,将外部存储器中的数据库的数据加载到内存中的数据库;
释放所述接口调用。
可选的,所述根据内存中数据库的数据恢复外部存储器中的数据库,包括:
阻塞所述接口调用;
清空所述SQL队列;
在外部存储器中新建数据库;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阳光电源股份有限公司,未经阳光电源股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011438493.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:柱塞泵
- 下一篇:稀释射流二合一等速取样装置





