【技术实现步骤摘要】
一种数据管理方法及装置
本专利技术涉及计算机
,特别涉及一种数据管理方法及装置。
技术介绍
数据缓存指在磁盘内部的高速存储器,在电脑中就像一块缓冲器一样将一些数据暂时性的保存起来以供读取和再读取。针对实时性要求较高的数据,目前业界一般采用并行向磁盘和缓存中更新数据,以使磁盘中的数据和缓存中的数据一致。但是,当写入服务出现异常情况时,会出现缓存中的数据更新成功,磁盘中的数据更新失败的情况,导致缓存中的数据与磁盘中的数据不一致。例如,更新后的缓存中的数据显示库房中X物品数量为0个,但磁盘中的数据实际上更新失败,仍显示库房中X物品为3个,此时用户读取缓存中的数据,则会出现读取到的数据与磁盘中的数据不一致的情况。
技术实现思路
本专利技术实施例提供了一种数据管理方法及装置,能够保证用户从缓存中读取到的数据与磁盘中的数据一致。第一方面,本专利技术实施例提供了一种数据管理方法,包括:获取来自用户的第一读取请求,其中,所述第一读取请求用于读取高实时性要求的第一执行数据;判断 ...
【技术保护点】
1.一种数据管理方法,其特征在于,包括:/n获取来自用户的第一读取请求,其中,所述第一读取请求用于读取高实时性要求的第一执行数据;/n判断缓存中是否存储有所述第一执行数据,其中,所述缓存中存储的所述第一执行数据从磁盘中存储的所述第一执行数据同步而来;/n如果所述缓存中存储有所述第一执行数据,则将所述缓存中存储的所述第一执行数据返回给所述用户;/n如果所述缓存中未存储所述第一执行数据,则进一步判断磁盘中是否存储有所述第一执行数据,其中,所述磁盘中存储的所述第一执行数据由数据存储端进行存储;/n如果所述磁盘中存储有所述第一执行数据,则将所述磁盘中存储的所述第一执行数据返回给所述 ...
【技术特征摘要】
1.一种数据管理方法,其特征在于,包括:
获取来自用户的第一读取请求,其中,所述第一读取请求用于读取高实时性要求的第一执行数据;
判断缓存中是否存储有所述第一执行数据,其中,所述缓存中存储的所述第一执行数据从磁盘中存储的所述第一执行数据同步而来;
如果所述缓存中存储有所述第一执行数据,则将所述缓存中存储的所述第一执行数据返回给所述用户;
如果所述缓存中未存储所述第一执行数据,则进一步判断磁盘中是否存储有所述第一执行数据,其中,所述磁盘中存储的所述第一执行数据由数据存储端进行存储;
如果所述磁盘中存储有所述第一执行数据,则将所述磁盘中存储的所述第一执行数据返回给所述用户;
如果所述磁盘中未存储所述第一执行数据,则向所述用户发送告警信息,其中,所述告警信息用于指示所述第一执行数据更新失败。
2.根据权利要求1所述的数据管理方法,其特征在于,进一步包括:
S1:获取来自所述数据存储端的写入请求,其中,所述写入请求用于指示将第二执行数据写入所述磁盘;
S2:判断所述第二执行数据是否具有高实时性要求;
S3:如果所述第二执行数据具有高实时性要求,则进一步判断所述缓存中是否存储有与所述第二执行数据相匹配的历史执行数据,如果是,执行S4,否则执行S5;
S4:将所述缓存中存储的所述历史执行数据删除,执行S5;
S5:将所述第二执行数据存储到所述磁盘中,并删除所述磁盘中存储的所述历史执行数据;
S6:将所述磁盘中存储的所述第二执行数据同步到所述缓存中。
3.根据权利要求2所述的数据管理方法,其特征在于,在S2之后,进一步包括:
如果所述第二执行数据无高实时性要求,则将所述第二执行数据存储到所述磁盘中,并删除所述磁盘中存储的所述历史执行数据;
将所述磁盘中存储的所述第二执行数据同步到所述缓存中,并删除缓存中存储的所述历史执行数据。
4.根据权利要求3所述的数据管理方法,其特征在于,进一步包括:
获取来自所述用户的第二读取请求,其中,所述第二读取请求用于读取无高实时性要求的所述第二执行数据;
判断所述缓存中是否存储有所述第二执行数据,其中,所述缓存中存储的所述第二执行数据从所述磁盘中存储的所述第二执行数据同步而来;
如果所述缓存中存储有所述第二执行数据,则将所述缓存中存储的所述第二执行数据返回给所述用户;
如果所述缓存中未存储所述第二执行数据,则将所述缓存中存储的所述历史执行数据返回给所述用户。
5.根据权利要求2至4中任一所述的数据管理方法,其特征在于,
在所述S1之前,进一步包括:
设置至少两个缓存队列;
在如果所述第二执行数据具有高实时性要求时,在所述判断所述缓存中是否存储有与所述第二执行数据相匹配的历史执行数据之前,进一步包括:
从所述至少两个缓存队列中,确定用于缓存第二执行数据的目标缓存队列;
将所述第二执行数据缓存到所述目标缓存队列中;
在S5之前,进一步包括:
当所述目标缓存队列中的所述第二执行数据处于可读取状态时,建立与所述目标缓存队列相关联的连接;
通过所述连接执行S5和S6。
6.根据权利要求5所述的数据管理方法,其特征在于,
在所述设置至少两个缓存队列之后,在所述获取来自所述数据存储端的写入请求之前,进一步包括:
分别设置每一个所述缓存队列的队列标识;
设置至少两个哈希值;
确定每一个所述队列标识与至少一个所述哈希值的关联关系;
在所述获取来自所述数据存储端的写入请求之后,在所述建立与所述目标缓存队列相关联的连接之前,进一步包括:
确定所述第二执行数据的唯一标识;
对所述唯一标识进行哈希计算,获得所述第二执行数据的哈希值;
所述从所述至少两个缓存队列中,确定用于保存所述第二执行数据的目标缓存队列,包括:
根据所述关联关系,确定与所述第二执行数据的哈希值相关联的目标队列标识;
将所述目标队列标识指示的缓存队列作为目标缓存队列。
7.根据权利要求1...
【专利技术属性】
技术研发人员:朱志强,
申请(专利权)人:北京东软望海科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。