[发明专利]数据库缓存实现方法及其系统有效
申请号: | 201710182550.3 | 申请日: | 2017-03-24 |
公开(公告)号: | CN107038222B | 公开(公告)日: | 2020-02-28 |
发明(设计)人: | 刘德建;陈铭;陈红和;钟良德;郭玉湖 | 申请(专利权)人: | 福建天泉教育科技有限公司 |
主分类号: | G06F16/2455 | 分类号: | G06F16/2455;G06F16/242;G06F16/2453;G06F16/23 |
代理公司: | 福州市博深专利事务所(普通合伙) 35214 | 代理人: | 林志峥 |
地址: | 350212 福建省福州市长乐*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据库 缓存 实现 方法 及其 系统 | ||
1.一种数据库缓存实现方法,其特征在于,包括:
在传输层创建监听器;
监听器捕获SQL语句,并分析得到所述SQL语句对应的操作类型、表名和条件;
若所述SQL语句对应的操作类型为查询操作,则判断是否存在所述SQL语句对应的缓存;
若否,则根据所述SQL语句对应的表名和条件,生成所述SQL语句对应的缓存并返回数据库查询结果;
若是,则根据所述SQL语句对应的表名和条件,更新所述SQL语句对应的缓存并返回数据库查询结果,或根据所述SQL语句对应的缓存返回缓存结果;
所述“生成所述SQL语句对应的缓存”具体为:
创建键为所述表名的第一记录,并进行赋值;
创建键为所述表名和所述条件的第二记录,并进行赋值;
创建键为所述表名和Batch的第三记录,并进行赋值;
在数据库服务器中执行所述SQL语句,获取对应的结果;
将所述SQL语句作为键,将所述第一记录的值、第二记录的值、第三记录的值以及所述对应的结果作为值,创建所述SQL语句对应的缓存,所述缓存的值以JSON格式的对象的形式进行存储。
2.根据权利要求1所述的数据库缓存实现方法,其特征在于,所述“若所述SQL语句对应的操作类型为查询操作,则判断是否存在所述SQL语句对应的缓存”具体为:
若所述SQL语句对应的操作类型为查询操作,则根据所述SQL语句对应的表名和条件,判断所述SQL语句是否允许缓存;
若不允许缓存,则返回数据库查询结果;
若允许缓存,则判断是否已存在所述SQL语句对应的缓存。
3.根据权利要求2所述的数据库缓存实现方法,其特征在于,所述“根据所述SQL语句对应的表名和条件,判断所述SQL语句是否允许缓存”具体为:
根据所述SQL语句对应的表名和条件,判断所述SQL语句是否同时操作了多张表或所述表名是否在预设的黑名单中;
若是,则判定所述SQL语句不允许缓存;
若否,则判定所述SQL语句允许缓存。
4.根据权利要求1所述的数据库缓存实现方法,其特征在于,所述“若是,则根据所述SQL语句对应的表名和条件,更新所述SQL语句对应的缓存并返回数据库查询结果,或根据所述SQL语句对应的缓存返回缓存结果”具体为:
若存在所述SQL语句对应的缓存,则根据所述SQL语句对应的表名和条件,判断所述SQL语句对应的缓存是否有效;
若缓存无效,则更新所述SQL语句对应的缓存,并返回数据库查询结果;
若缓存有效,则根据所述SQL语句对应的缓存返回缓存结果。
5.根据权利要求4所述的数据库缓存实现方法,其特征在于,所述“判断所述SQL语句对应的缓存是否有效”具体为:
获取所述SQL语句对应的缓存的值,并将所述缓存的值存储到监听器中;
判断是否存在第一记录且第一记录的值等于缓存的值中第一记录的值;
若否,则判定所述SQL语句对应的缓存无效;
若是,则判断是否存在第二记录且第二记录的值等于缓存的值中第二记录的值;
若否,则判定所述SQL语句对应的缓存无效;
若是,则判断所述SQL语句对应的条件是否只涉及一条数据;
若只涉及一条数据,则判定所述SQL语句对应的缓存有效;
若不只涉及一条数据,则判断是否存在第三记录且第三记录的值等于缓存的值中第三记录的值;
若是,则判定所述SQL语句对应的缓存有效;
若否,则判定所述SQL语句对应的缓存无效。
6.根据权利要求4所述的数据库缓存实现方法,其特征在于,
若所述SQL语句对应的操作类型为更新操作,则判断所述SQL语句对应的条件是否只涉及一条数据;
若否,且存在键为所述表名的第一记录,则更新所述第一记录的值;
若是,且存在键为所述表名和所述条件的第二记录以及键为所述表名和Batch的第三记录,则更新所述第二记录的值和所述第三记录的值;
在数据库服务器中执行数据库更新操作,并返回更新结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福建天泉教育科技有限公司,未经福建天泉教育科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710182550.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种地铁施工安全吊物装置
- 下一篇:一种便于物料固定的起吊架