一种数据处理方法及装置制造方法及图纸

技术编号:15792134 阅读:281 留言:0更新日期:2017-07-09 23:28
本发明专利技术实施例公开了一种数据处理方法及装置,该方法包括:当对数据库中的数据进行变更操作时,依据所述变更操作对一级缓存中的数据和二级缓存中的数据执行相应的变更操作;根据所述一级缓存变更操作生成的操作文件对数据库中的数据执行相应的变更操作。通过本发明专利技术的技术方案,能够提高系统的响应速度。

【技术实现步骤摘要】
一种数据处理方法及装置
本专利技术实施例涉及计算机领域,尤其涉及一种数据处理方法及装置。
技术介绍
随着数据量越来越大,基于传统的数据库的数据操作已经不能满足性能的需求,人们对系统性能的追求也越来越高,传统的数据库(mysql、oracle等)存储数据比较安全,redis这样的分布式内存存储可以快速的读写数据。但是通常认为作为持久层去存储数据是不安全的,一旦redis服务宕机,整个系统就会瘫痪,而传统的数据库服务还是比较稳定的。所以将两者合为一个整体不仅可以提高海量数据的处理能力,提高系统的性能,还能保证数据的安全性。现有解决方案一:使用mysql数据库,redis只做缓存机制,缓存验证码、session信息等在分布式系统中需要共享的数据,并且是有时效的数据。对数据的处理都直接操作数据库。数据量一旦到达某个数量级,查询必然会拖累系统整体的性能。现有解决方案二:使用redis做一级缓存,所有对数据的操作都先操作redis缓存,再操作数据库,redis中数据跟数据库中数据是同步的,查询时为了保证数据的一致性,先查询redis,如果redis中数据不存在,就查询数据库,这样做可以部分提高系统的性能,如果数据库中数据与redis中数据是一致的,查询无疑是成倍的提高了系统性能,但是增删改的时候还是会直接对数据库进行操作,增删改的性能依然不是很理想。
技术实现思路
本专利技术提供一种数据处理方法及装置,以实现提高系统的响应速度。第一方面,本专利技术实施例提供了一种数据处理方法,包括:当对数据库中的数据进行变更操作时,依据所述变更操作对一级缓存中的数据和二级缓存中的数据执行相应的变更操作;根据所述一级缓存变更操作生成的操作文件对数据库中的数据执行相应的变更操作。进一步的,所述当对数据库中的数据进行变更操作时,依据所述变更操作对一级缓存中的数据和二级缓存中的数据执行相应的变更操作,包括:当对数据库中的数据进行变更操作时,删除所述二级缓存中的数据,其中,所述变更操作为增、删、改中的至少一种操作;根据所述变更操作对一级缓存中的数据执行相应的变更操作。进一步的,还包括:当从数据库读取数据时,先查询所述二级缓存中是否存在相应的数据,如果存在相应的数据,则直接从所述二级缓存读取所述数据。进一步的,还包括:当从数据库读取数据时,先查询所述二级缓存中是否存在相应的数据,如果不存在相应的数据,则从所述一级缓存中读取相应的数据。进一步的,所述根据所述一级缓存变更操作生成的操作文件对数据库中的数据执行相应的变更操作,包括:根据所述二级缓存的变更操作,生成操作文件;根据所述操作文件解析所述一级缓存的变更操作;根据解析出的所述一级缓存的变更操作对数据库中的数据进行变更。进一步的,所述二级缓存为ehcache,一级缓存为redis。第二方面,本专利技术实施例还提供了一种数据处理装置,该装置包括:第一执行模块,用于当对数据库中的数据进行变更操作时,依据所述变更操作对一级缓存中的数据和二级缓存中的数据执行相应的变更操作;第二执行模块,用于根据所述一级缓存变更操作生成的操作文件对数据库中的数据执行相应的变更操作。进一步的,所述第一执行模块,具体用于:当对数据库中的数据进行变更操作时,删除所述二级缓存中的数据,其中,所述变更操作为增、删、改中的至少一种操作;根据所述变更操作对一级缓存中的数据执行相应的变更操作。进一步的,还包括:第一查询模块,用于当从数据库读取数据时,先查询所述二级缓存中是否存在相应的数据,如果存在相应的数据,则直接从所述二级缓存读取所述数据。进一步的,还包括:第二查询模块,用于当从数据库读取数据时,先查询所述二级缓存中是否存在相应的数据,如果不存在相应的数据,则从所述一级缓存中读取相应的数据。进一步的,所述第二执行模块,具体用于:根据所述二级缓存的变更操作,生成操作文件;根据所述操作文件解析所述一级缓存的变更操作;根据解析出的所述一级缓存的变更操作对数据库中的数据进行变更。进一步的,所述二级缓存为ehcache,一级缓存为redis。本专利技术通过当对数据库中的数据进行变更操作时,依据所述变更操作对一级缓存中的数据和二级缓存中的数据执行相应的变更操作;根据所述一级缓存变更操作生成的操作文件对数据库中的数据执行相应的变更操作,解决了现有技术中由于直接操作数据库,从而导致降低响应速度的问题,达到了提高响应速度的效果。附图说明图1为本专利技术实施例一中的一种数据处理方法的流程图;图2是本专利技术实施例二中的一种数据处理方法的流程图;图3是本专利技术实施例三中的一种数据处理装置的结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。实施例一图1为本专利技术实施例一提供的一种数据处理方法的流程图,本实施例可适用于数据处理的情况,该方法可以由本专利技术实施例中的数据处理装置来执行,该装置可采用软件和/或硬件的方式实现,如图1所示,该方法具体包括如下步骤:S110,当对数据库中的数据进行变更操作时,依据所述变更操作对一级缓存中的数据和二级缓存中的数据执行相应的变更操作。具体的,当对数据库中的数据进行变更操作时,根据所述变更操作删除二级缓存中的数据,二级缓存中的数据删除完成后,对一级缓存中的数据执行相应的变更操作。例如可以是,当对数据库中的数据进行删除操作时,删除二级缓存中的数据,将二级缓存中的数据删除完成后,对一级缓存中的数据执行删除操作。例如可以是,当对数据库中的数据进行增操作时,删除二级缓存中的数据,将二级缓存中的数据删除完成后,对一级缓存中的数据执行增操作。可选的,所述当对数据库中的数据进行变更操作时,依据所述变更操作对一级缓存中的数据和二级缓存中的数据执行相应的变更操作,包括:当对数据库中的数据进行变更操作时,删除所述二级缓存中的数据,其中,所述变更操作为增、删、改中的至少一种操作;根据所述变更操作对一级缓存中的数据执行相应的变更操作。可选的,所述二级缓存为ehcache,一级缓存为redis。其中,所述ehcache是一种广泛使用的开源Java分布式缓存。主要面向通用缓存,JavaEE和轻量级容器。它具有内存和磁盘存储,缓存加载器,缓存扩展,缓存异常处理程序,一个gzip缓存servlet过滤器,支持REST和SOAPapi等特点。所述redis是一个key-value存储系统,redis支持各种不同方式的排序。为了保证效率,数据都是缓存在内存中。redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。redis的出现,很大程度补偿了memcached这类keyvalue存储的不足,在部分场合可以对关系数据库起到很好的补充作用。它提供了Python,Ruby,Erlang,PHP客户端,使用很方便。S120,根据所述一级缓存变更操作生成的操作文件对数据库中的数据执行相应的变更操作。可选的,所述根据所述一级缓存变更操作生成的操作文件对数据库中的数据执行相应的变更操作,包括:根据所述二级缓存的变更操作,生成操作文件;根据所述本文档来自技高网...
一种数据处理方法及装置

【技术保护点】
一种数据处理方法,其特征在于,包括:当对数据库中的数据进行变更操作时,依据所述变更操作对一级缓存中的数据和二级缓存中的数据执行相应的变更操作;根据所述一级缓存变更操作生成的操作文件对数据库中的数据执行相应的变更操作。

【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:当对数据库中的数据进行变更操作时,依据所述变更操作对一级缓存中的数据和二级缓存中的数据执行相应的变更操作;根据所述一级缓存变更操作生成的操作文件对数据库中的数据执行相应的变更操作。2.根据权利要求1所述的方法,其特征在于,所述当对数据库中的数据进行变更操作时,依据所述变更操作对一级缓存中的数据和二级缓存中的数据执行相应的变更操作,包括:当对数据库中的数据进行变更操作时,删除所述二级缓存中的数据,其中,所述变更操作为增、删、改中的至少一种操作;根据所述变更操作对一级缓存中的数据执行相应的变更操作。3.根据权利要求1所述的方法,其特征在于,还包括:当从数据库读取数据时,先查询所述二级缓存中是否存在相应的数据,如果存在相应的数据,则直接从所述二级缓存读取所述数据。4.根据权利要求1所述的方法,其特征在于,还包括:当从数据库读取数据时,先查询所述二级缓存中是否存在相应的数据,如果不存在相应的数据,则从所述一级缓存中读取相应的数据。5.根据权利要求1所述的方法,其特征在于,所述根据所述一级缓存变更操作生成的操作文件对数据库中的数据执行相应的变更操作,包括:根据所述二级缓存的变更操作,生成操作文件;根据所述操作文件解析所述一级缓存的变更操作;根据解析出的所述一级缓存的变更操作对数据库中的数据进行变更。6.根据权利要求1所述的方法,其特征在于,所述二级缓存为eh...

【专利技术属性】
技术研发人员:孙吉平张文彬
申请(专利权)人:北京深思数盾科技股份有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1