CN103853671B - 一种数据写入控制方法及装置 - Google Patents

一种数据写入控制方法及装置 Download PDF

Info

Publication number
CN103853671B
CN103853671B CN201210524769.4A CN201210524769A CN103853671B CN 103853671 B CN103853671 B CN 103853671B CN 201210524769 A CN201210524769 A CN 201210524769A CN 103853671 B CN103853671 B CN 103853671B
Authority
CN
China
Prior art keywords
write
data
caching
persistent storage
threshold
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210524769.4A
Other languages
English (en)
Other versions
CN103853671A (zh
Inventor
陈建森
李哲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201210524769.4A priority Critical patent/CN103853671B/zh
Publication of CN103853671A publication Critical patent/CN103853671A/zh
Application granted granted Critical
Publication of CN103853671B publication Critical patent/CN103853671B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明公开了一种数据写入控制方法及装置。一种数据写入控制方法包括:接收到对目标数据更新请求后,将更新结果写入缓存;监测所述目标数据上一次写入持久化存储介质后,在缓存中的写入次数;如果写入次数达到预设的第一阈值,则将缓存中的目标数据更新结果写入持久化存储介质。应用本发明实施例提供的技术方案,根据用户访问量的实际变化,相应调整持久化存储的频率,不会出现持久化操作过于频繁或者过于稀疏的情况。另外,应用本发明技术方案,能够在一定程度上对系统的风险进行控制,即便系统出现故障,也能够将丢失数据的数量估计在一个相对准确的范围内。

Description

一种数据写入控制方法及装置
技术领域
本发明涉及数据存储技术领域,特别是涉及一种数据写入控制方法及装置。
背景技术
随着互联网的发展,网络上的资源类型和数量也不断丰富,越来越多的的用户到网站获取自己感兴趣的信息。对于网站而言,需要记录用户浏览网站时的各种行为,而高频率的用户行为必然对系统的存储性能提出较高的要求。
以统计“页面访客数量”为例,对于网站的统计系统而言,用户的每一次浏览行为就代表着一次访问,需要对相应的“页面访客数量”数据进行更新,如果用户的浏览量较小,可以在每次数据更新时直接将更新数据写入数据库,但是,如果用户的浏览频率很高,那么需要频繁地向数据库写入数据,这种负荷是系统难以承受的。
为解决上述问题,现有技术采用的一种方案是:在每次数据更新时,将更新数据写入高速缓存,由于缓存采用的是易失性存储介质,一旦系统意外关机,缓存中未写入持久化存储介质的数据都会丢失,因此,还需要周期性地将缓存内的数据转存写入数据库。这种方式能够避免对数据库进行频繁的写入操作,而且可以有效利用高速缓存的速度优势,提高写入响应速度。但是在实际应用中,由于用户的访问量并不是维持不变的,因此对数据进行转存的周期设置难以把握,如果周期设置过短,对数据库压力的缓解程度有限;如果周期过长,则会增加丢失数据的风险,而且在此期间丢失的数据数量难以估算。
发明内容
为解决上述技术问题,本发明实施例提供一种数据写入控制方法及装置,技术方案如下:
本发明实施例提供一种数据写入控制方法,该方法包括:
接收到对目标数据更新请求后,将更新结果写入缓存;
监测所述目标数据上一次写入持久化存储介质后,在缓存中的写入次数;
如果写入次数达到预设的第一阈值,则将缓存中的目标数据更新结果写入持久化存储介质。
根据本发明的一种具体实施方式,该方法还包括:
在将更新结果写入缓存后,记录写入时刻;
监测所述目标数据上一次写入缓存后的经过时间;
如果经过时间达到预设的第二阈值,则将缓存中的目标数据更新结果写入持久化存储介质。
根据本发明的一种具体实施方式,该方法还包括:
在缓存中记录所述写入次数,并且在将缓存中的目标数据更新结果写入持久化存储介质后,将缓存中记录的写入次数初始化。
根据本发明的一种具体实施方式,所述监测所述目标数据上一次写入持久化存储介质后,在缓存中的写入次数,包括:
监测所述目标数据在缓存中的当前写入次数。
根据本发明的一种具体实施方式,所述第一阈值,根据系统对数据丢失量的允许范围设置:
第一阈值=最大允许丢失量+1。
根据本发明的一种具体实施方式,该方法还包括:
如果缓存中的数据丢失,根据所述第一阈值对丢失的数据量进行估计:
数据丢失量≤第一阈值-1。
本发明实施例还提供一种数据写入控制装置,该装置包括:
缓存单元,用于接收到对目标数据更新请求后,将更新结果写入缓存;
监测单元,用于监测所述目标数据上一次写入持久化存储介质后,在缓存中的写入次数;
持久化存储单元,用于在写入次数达到预设的第一阈值的情况下,将缓存中的目标数据更新结果写入持久化存储介质。
根据本发明的一种具体实施方式,
所述缓存单元,还用于在将更新结果写入缓存后,记录写入时刻;
所述监测单元,还用于监测所述目标数据上一次写入缓存后的经过时间;
持久化存储单元,还用于在经过时间达到预设的第二阈值的情况下,将缓存中的目标数据更新结果写入持久化存储介质。
根据本发明的一种具体实施方式,该装置还包括:
计数单元,用于在缓存中记录所述写入次数,并且在将缓存中的目标数据更新结果写入持久化存储介质后,将缓存中记录的写入次数初始化。
根据本发明的一种具体实施方式,所述监测单元,具体用于:
监测所述目标数据在缓存中的当前写入次数。
根据本发明的一种具体实施方式,所述第一阈值,根据系统对数据丢失量的允许范围设置:
第一阈值=最大允许丢失量+1。
根据本发明的一种具体实施方式,该装置还包括:
错误估计单元,用于在缓存中数据丢失的情况下,根据所述第一阈值对丢失的数据量进行估计:
数据丢失量≤第一阈值-1。
应用本发明实施例提供的技术方案,在目标数据更新时,将更新数据写入高速缓存,然后根据目标数据的实际更新情况,将缓存中的数据写入持久化存储介质。与现有技术相比,本发明并不是根据绝对的周期对数据进行持久化存储,而是根据目标数据的实际更新情况,动态地触发数据持久化存储操作,这样,根据数据更新频率的实际变化,持久化存储的频率也会相应自动调整,不会出现持久化存储操作过于频繁或者过于稀疏的情况。另一方面,应用本发明技术方案,能够在一定程度上对系统的风险进行控制,即便系统出现故障,也能够将丢失数据的数量估计在一个相对准确的范围内。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本发明实施例数据写入控制方法的一种流程图;
图2为本发明实施例数据写入控制方法的第二种流程图;
图3为本发明实施例数据写入控制装置的一种结构示意图;
图4为本发明实施例数据写入控制装置的第二种结构示意图;
图5为本发明实施例数据写入控制装置的第三种结构示意图。
具体实施方式
对于数据需要频繁更新的应用场景,为了减轻数据库负荷,可以在每次数据更新时,将更新数据写入高速缓存,从而避免对数据库进行频繁的写入操作,而且可以有效利用高速缓存的速度优势。另一方面,由于缓存中的数据在断电后就会消失,因此还需要定期将缓存中的数据转存到持久化的存储介质(例如硬盘)中。但是,如果系统意外断电,那么在最后一次持久化存储之后的数据仍然会丢失。可见,如果将转存周期设置过大,那么一旦出现意外,数据损失量也会比较大。设置较小的转存周期可以降低数据损失,但是也会降低高速缓存的使用效率。
另外,在实际应用中发现,对于网站而言,一些数据的更新频率并不一定总是维持在比较固定的范围,而且在很多情况下并无规律可循。以统计“页面访客数量”为例,根据用户的浏览习惯,该数据在每天不同的时段的更新频率不同,例如在深夜至凌晨时段,数据更新频率会比较低。如果出现某热门事件,那么该数据的更新频率可能突然上升。这就进一步增加了设置转存周期的难度。
针对上述问题,为了解决系统效率和安全性之间的矛盾,本发明提供一种写入控制方法,该方法包括:
接收到对目标数据更新请求后,将更新结果写入缓存;
监测所述目标数据上一次写入持久化存储介质后,在缓存中的写入次数;
如果写入次数达到预设的第一阈值,则将缓存中的目标数据更新结果写入持久化存储介质。
应用本发明实施例提供的技术方案,在目标数据更新时,仍然将更新数据写入高速缓存。与现有技术的区别在于,本发明并不是根据绝对的周期对数据进行持久化存储,而是根据目标数据的实际更新情况,动态地触发数据持久化存储操作,这样,根据用户访问量的实际变化,持久化存储的频率也会相应调整,不会出现持久化存储操作过于频繁或者过于稀疏的情况。
本发明所提供的技术方案,可以适用于一些不要求百分之百数据精确的情况,例如页面访客数量统计、网站流量统计、剩余商品数量计算、网络投票等等。对于这类应用,记录相应的数据是必要的,但是细微的误差又不会影响整体效果,应用本发明方案,假如第一阈值为N,那么如果意外断电,可以保证丢失的记录条数不超过N-1,这样,可以预先根据实际应用允许出现的误差范围设置N值,从而实现风险控制。
为了使本领域技术人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行详细地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本发明保护的范围。
图1所示,为本发明实施例一种写入控制方法的流程图,该方法可以包括以下步骤:
S101,接收到对目标数据更新请求后,将更新结果写入缓存;
S102,监测所述目标数据上一次写入持久化存储介质后,在缓存中的写入次数;
S103,如果写入次数达到预设的第一阈值,则将缓存中的目标数据更新结果写入持久化存储介质。
根据本实施例方案,在S101为了降低数据库的读写负荷,当目标数据更新时,并不将更新结果直接写入数据库,而是先将更新结果写入缓存。例如,对于网站统计“页面访客数量”的应用,首先在缓存中初始化该数据的存储位,之后,每监测到一次用户的浏览行为,就在缓存中将该存储位的数据加1。
另一方面,在S102中,对目标数据的写入次数进行实时监测,具体而言,是监测目标数据距离上一次写入持久化存储介质后在缓存中的写入次数。如果次数达到预设的第一阈值N,则在S103中将缓存中的目标数据更新结果写入持久化存储介质。
仍以网站统计“页面访客数量”的应用进行说明,假设预设的第一阈值N为10,并且该值的初始数据为0,那么,当监测到缓存中该值达到10时,将缓存中中的数据“10”进行持久化存储,即将数据库中的相应位置数据更新为“10”。后续,当监测到缓存中该数据值分别达到20、30、40……时,分别对数据库中的相应位置数据进行更新。与每次数据更新都写入数据库的方法相比,将数据库的写入压力降低为原先的1/N。在本发明的一种实施方式中,N值可以根据后台的持久化写性能和产品策略来考虑,譬如说统计一个blog系统的浏览量时,整个系统的写入频率约为10000次/秒,而后端数据库可承受的写入压力大概在200次/秒,这样就可以设置N=1,即约定更新量大于50才写数据库,这样就能很大程度避免数据库的写压力。
在本发明的一种具体实施方式中,可以在缓存中专门设置一个临时存储位,用于记录“目标数据上一次写入持久化存储介质后在缓存中的写入次数”,并且,当对缓存中的数据进行持久化存储之后,将该临时存储位做初始化处理,也就是说,正常情况下,该临时存储位的数值按照:
0、1、2、…N
0、1、2、…N
0、1、2、…N
......
的规律变化,每当监测到该值变为N,则对缓存中的数据进行持久化存储,然后将N值清零,重新计数,如此一直循环。
如果系统意外故障断电,缓存中还未进行持久化存储的数据会丢失,根据本发明方案,在最理想的情况下,出现故障时刚刚进行过持久化存储,此时数据丢失量为0,而在最糟糕的情况下,数据丢失量为N-1。这样,通过对第一阈值N进行设置,就可以保证将每次故障的数据丢失量控制在一定的范围(N-1)内。而且,在需要的时候,可以根据N值以及丢失数据的总量的进行估计,例如,网站发起某种投票活动,活动结束要对投票总数进行统计,假设设置N=10,并且在活动期间总共出现了3次故障(实际不会有这么频繁,这里仅用于示意性说明),那么可以估算出,漏统计的票数在0~27之间。
图2所示,为本发明实施例另一种写入控制方法的流程图,该方法可以包括以下步骤:
S201,接收到对目标数据更新请求后,将更新结果写入缓存、记录写入时刻;
S202,监测所述目标数据上一次写入持久化存储介质后,在缓存中的写入次数;
S203,如果写入次数达到预设的第一阈值,则将缓存中的目标数据更新结果写入持久化存储介质。
S204,监测所述目标数据上一次写入缓存后的经过时间;
S205,如果经过时间达到预设的第二阈值,则将缓存中的目标数据更新结果写入持久化存储介质。
与前一实施例相比,本实施例的步骤S201-S203与S101-S103基本一致。区别在于:在S201,将更新结果写入缓存后,记录该条记录写入缓存的时刻。
后续在S204中,对目标数据写入缓存后的经过时间进行实时监测,如果监测到该经过时间达到预设的第二阈值M,则在S205中将缓存中的目标数据更新结果写入持久化存储介质。
在前一实施例中,触发持久化存储的条件是缓存中的数据更新达到了一定的次数。在此基础上,本实施增加了另外一种基于时间的触发条件,这样,即便对于缓存中更新次数没有达到N的数据,在最后一次更新之后如果时间足够长,也会转存至数据库,避免这些数据意外丢失。
可以理解的是,在本实施例中,如果在缓存中专门设置了临时存储位,用于记录“目标数据上一次写入持久化存储介质后在缓存中的写入次数”,那么,如果是通过S205触发的持久化存储,那么该临时存储位的数值可能在任何情况下初始化,而并不需要达到N才进行初始化。换言之,应用本实施例方案,虽然在出现意外故障时,最糟糕的情况下,数据丢失量为仍然为N-1,但是由于进一步增加了基于时间持久化存储触发机制,因此使得数据的实际丢失量变为:min{(N-1),M时间段内的更新量},在在整体上进一步减小,一般都不会达到最糟糕的N-1。
下面结合一个具体的应用实例,对本发明的方案进行说明:
以空间的最近访客统计为例,整个系统的更新频率比较高,这里把N设为8,M设为1小时,即N=8,M=3600s,假设要记录用户空间A的最近访客信息,如果用户B访问了A的空间,此时会触发如下操作:
1)在缓存里面把B加入到A的最近访客列表中,由于是在缓存里面操作,这个过程很快;
2)系统判别A的最近访客里面的更新次数,如果大于8,则将该记录写到数据库,此时会将A的最近访客信息持久化存储;同时在缓存里面将A的最近访客更新次数重新标记为0;
3)如果步骤2不满足的话,系统判别A最近访客列表上次写数据库的时刻,假设该时刻为t1,而当前时刻为t2,则如果(t2-t1)>3600s,则将改记录写入数据库,同时更新记录的写数据库时刻为t2
可见,即便1小时内A的记录更新次数没有超过8次条件而写数据库,也必然会触发步骤3的条件(即距离上次写数据库的时间超过1小时),从而写数据库。这样整个系统如果突然崩溃,丢失的更新量也就是min{7,1小时内的更新量}。
相应于上面的方法实施例,本发明还提供一种数据写入控制装置,参见图3所示,该装置可以包括:
缓存单元110,用于接收到对目标数据更新请求后,将更新结果写入缓存;
监测单元120,用于监测所述目标数据上一次写入持久化存储介质后,在缓存中的写入次数;
持久化存储单元130,用于在写入次数达到预设的第一阈值的情况下,将缓存中的目标数据更新结果写入持久化存储介质。
根据本实施例方案,为了降低数据库的读写负荷,缓存单元110当目标数据更新时,并不将更新结果直接写入数据库,而是先将更新结果写入缓存。例如,对于网站统计“页面访客数量”的应用,首先在缓存中初始化该数据的存储位,之后,每监测到一次用户的浏览行为,就在缓存中将该存储位的数据加1。
另一方面,在监测单元120,对目标数据的写入次数进行实时监测,具体而言,是监测目标数据距离上一次写入持久化存储介质后在缓存中的写入次数。如果次数达到预设的第一阈值N,则在持久化存储单元130将缓存中的目标数据更新结果写入持久化存储介质。
仍以网站统计“页面访客数量”的应用进行说明,假设预设的第一阈值N为10,并且该值的初始数据为0,那么,当监测到缓存中该值达到10时,将缓存中中的数据“10”进行持久化存储,即将数据库中的相应位置数据更新为“10”。后续,当监测到缓存中该数据值分别达到20、30、40……时,分别对数据库中的相应位置数据进行更新。与每次数据更新都写入数据库的方法相比,将数据库的写入压力降低为原先的1/N。在本发明的一种实施方式中,N值可以根据后台的持久化写性能和产品策略来考虑,譬如说统计一个blog系统的浏览量时,整个系统的写入频率约为10000次/秒,而后端数据库可承受的写入压力大概在200次/秒,这样就可以设置N=1,即约定更新量大于50才写数据库,这样就能很大程度避免数据库的写压力。
参见图4所示,在本发明的一种具体实施方式中,所述数据写入控制装置还包括计数单元140,用于在缓存中记录所述写入次数,并且在将缓存中的目标数据更新结果写入持久化存储介质后,将缓存中记录的写入次数初始化。
计数单元140在缓存中专门设置一个临时存储位,用于记录“目标数据上一次写入持久化存储介质后在缓存中的写入次数”,并且,当对缓存中的数据进行持久化存储之后,将该临时存储位做初始化处理,也就是说,正常情况下,该临时存储位的数值按照:
0、1、2、…N
0、1、2、…N
0、1、2、…N
......
的规律变化,每当监测到该值变为N,则对缓存中的数据进行持久化存储,然后将N值清零,重新计数,如此一直循环。
如果系统意外故障断电,缓存中还未进行持久化存储的数据会丢失,根据本发明方案,在最理想的情况下,出现故障时刚刚进行过持久化存储,此时数据丢失量为0,而在最糟糕的情况下,数据丢失量为N-1。这样,通过对第一阈值N进行设置,就可以保证将每次故障的数据丢失量控制在一定的范围(N-1)内。而且,在需要的时候,可以根据N值以及丢失数据的总量的进行估计。
参见图5所示,在本发明的一种具体实施方式中,所述数据写入控制装置还包括错误估计单元150,用于在缓存中数据丢失的情况下,根据所述第一阈值对丢失的数据量进行估计,具体的估计方法为:数据丢失量≤第一阈值-1。
例如,网站发起某种投票活动,活动结束要对投票总数进行统计,假设设置N=10,并且在活动期间总共出现了3次故障(实际不会有这么频繁,这里仅用于示意性说明),那么可以估算出,漏统计的票数在0~27之间。
在本发明的另一种实施方式中:
所述缓存单元110,还用于在将更新结果写入缓存后,记录写入时刻;
所述监测单元120,还用于监测所述目标数据上一次写入缓存后的经过时间;
持久化存储单元130,还用于在经过时间达到预设的第二阈值的情况下,将缓存中的目标数据更新结果写入持久化存储介质。
与前一实施例相比,本实施例中的缓存单元110,在将更新结果写入缓存后,记录该条记录写入缓存的时刻。
监测单元120,对目标数据写入缓存后的经过时间进行实时监测,如果监测到该经过时间达到预设的第二阈值M,则在持久化存储单元130将缓存中的目标数据更新结果写入持久化存储介质。
在前一实施例中,触发持久化存储的条件是缓存中的数据更新达到了一定的次数。在此基础上,本实施增加了另外一种基于时间的触发条件,这样,即便对于缓存中更新次数没有达到N的数据,在最后一次更新之后如果时间足够长,也会转存至数据库,避免这些数据意外丢失。
可以理解的是,在本实施例中,如果在缓存中专门设置了临时存储位,用于记录“目标数据上一次写入持久化存储介质后在缓存中的写入次数”,那么,如果是通过“经过时间”触发的持久化存储,那么该临时存储位的数值可能在任何情况下初始化,而并不需要达到N才进行初始化。换言之,应用本实施例方案,虽然在出现意外故障时,最糟糕的情况下,数据丢失量为仍然为N-1,但是由于进一步增加了基于时间持久化存储触发机制,因此使得数据的实际丢失量变为:min{(N-1),M时间段内的更新量},在在整体上进一步减小,一般都不会达到最糟糕的N-1。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本发明的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种数据写入控制方法,其特征在于,该方法包括:
接收到对目标数据更新请求后,将更新结果写入缓存;
监测所述目标数据上一次写入持久化存储介质后,在缓存中的写入次数;
如果写入次数达到预设的第一阈值,则将缓存中的目标数据更新结果写入持久化存储介质。
2.根据权利要求1所述的方法,其特征在于,该方法还包括:
在将更新结果写入缓存后,记录写入时刻;
监测所述目标数据上一次写入缓存后的经过时间;
如果经过时间达到预设的第二阈值,则将缓存中的目标数据更新结果写入持久化存储介质。
3.根据权利要求1所述的方法,其特征在于,该方法还包括:
在缓存中记录所述写入次数,并且在将缓存中的目标数据更新结果写入持久化存储介质后,将缓存中记录的写入次数初始化。
4.根据权利要求1所述的方法,其特征在于,所述第一阈值,根据系统对数据丢失量的允许范围设置:
第一阈值=最大允许丢失量+1。
5.根据权利要求1所述的方法,其特征在于,该方法还包括:
如果缓存中的数据丢失,根据所述第一阈值对丢失的数据量进行估计:
数据丢失量≤第一阈值-1。
6.一种数据写入控制装置,其特征在于,该装置包括:
缓存单元,用于接收到对目标数据更新请求后,将更新结果写入缓存;
监测单元,用于监测所述目标数据上一次写入持久化存储介质后,在缓存中的写入次数;
持久化存储单元,用于在写入次数达到预设的第一阈值的情况下,将缓存中的目标数据更新结果写入持久化存储介质。
7.根据权利要求6所述的装置,其特征在于,
所述缓存单元,还用于在将更新结果写入缓存后,记录写入时刻;
所述监测单元,还用于监测所述目标数据上一次写入缓存后的经过时间;
持久化存储单元,还用于在经过时间达到预设的第二阈值的情况下,将缓存中的目标数据更新结果写入持久化存储介质。
8.根据权利要求6所述的装置,其特征在于,该装置还包括:
计数单元,用于在缓存中记录所述写入次数,并且在将缓存中的目标数据更新结果写入持久化存储介质后,将缓存中记录的写入次数初始化。
9.根据权利要求6所述的装置,其特征在于,所述第一阈值,根据系统对数据丢失量的允许范围设置:
第一阈值=最大允许丢失量+1。
10.根据权利要求6所述的装置,其特征在于,该装置还包括:
错误估计单元,用于在缓存中数据丢失的情况下,根据所述第一阈值对丢失的数据量进行估计:
数据丢失量≤第一阈值-1。
CN201210524769.4A 2012-12-07 2012-12-07 一种数据写入控制方法及装置 Active CN103853671B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210524769.4A CN103853671B (zh) 2012-12-07 2012-12-07 一种数据写入控制方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210524769.4A CN103853671B (zh) 2012-12-07 2012-12-07 一种数据写入控制方法及装置

Publications (2)

Publication Number Publication Date
CN103853671A CN103853671A (zh) 2014-06-11
CN103853671B true CN103853671B (zh) 2018-03-02

Family

ID=50861347

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210524769.4A Active CN103853671B (zh) 2012-12-07 2012-12-07 一种数据写入控制方法及装置

Country Status (1)

Country Link
CN (1) CN103853671B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104461935B (zh) * 2014-11-27 2018-03-13 华为技术有限公司 一种进行数据存储的方法、装置及系统
CN104484136B (zh) * 2014-12-25 2017-09-29 深圳联友科技有限公司 一种可支撑高并发内存数据的方法
CN105095423B (zh) * 2015-07-15 2018-10-09 北京奇虎科技有限公司 计数数据写入方法和装置
CN105512271A (zh) * 2015-12-03 2016-04-20 小米科技有限责任公司 实时分析系统中uv的统计方法、装置和服务器
CN105653944B (zh) * 2015-12-25 2018-06-12 北京奇虎科技有限公司 作弊行为检测方法及装置
CN107291756A (zh) * 2016-04-01 2017-10-24 阿里巴巴集团控股有限公司 数据缓存的方法及装置
CN108334505B (zh) * 2017-01-19 2022-01-07 阿里巴巴集团控股有限公司 一种数据处理方法、装置、服务器及库存系统
CN108694187A (zh) * 2017-04-07 2018-10-23 北京国双科技有限公司 实时流数据的存储方法及装置
CN107590023B (zh) * 2017-08-10 2020-10-02 深圳壹账通智能科技有限公司 数据处理方法、电子设备及计算机可读存储介质
CN108959407B (zh) * 2018-06-06 2020-08-11 深圳市远行科技股份有限公司 数据的强一致性写入方法及终端设备
CN110333883B (zh) * 2019-05-31 2023-05-16 厦门网宿有限公司 一种更新持久化数据的方法及装置
CN112988039B (zh) * 2019-12-18 2024-01-30 中国电信股份有限公司 数据上传方法和装置、云存储网关和系统以及存储介质
CN111752919A (zh) * 2020-06-16 2020-10-09 北京字节跳动网络技术有限公司 一种数据写入方法、数据读取方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101499073A (zh) * 2008-01-29 2009-08-05 国际商业机器公司 基于访问频率的连续存储数据的存储管理方法和系统
CN101923577A (zh) * 2010-09-02 2010-12-22 北京开心人信息技术有限公司 一种可扩展的计数方法与系统
CN102004783A (zh) * 2010-11-29 2011-04-06 中兴通讯股份有限公司 网管性能非粒度数据快速存储的方法及装置
CN102413197A (zh) * 2011-08-01 2012-04-11 中国科学院计算机网络信息中心 访问统计处理方法及装置
CN102737068A (zh) * 2011-04-15 2012-10-17 北京百度网讯科技有限公司 一种用于对检索数据进行缓存管理的方法与设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101499073A (zh) * 2008-01-29 2009-08-05 国际商业机器公司 基于访问频率的连续存储数据的存储管理方法和系统
CN101923577A (zh) * 2010-09-02 2010-12-22 北京开心人信息技术有限公司 一种可扩展的计数方法与系统
CN102004783A (zh) * 2010-11-29 2011-04-06 中兴通讯股份有限公司 网管性能非粒度数据快速存储的方法及装置
CN102737068A (zh) * 2011-04-15 2012-10-17 北京百度网讯科技有限公司 一种用于对检索数据进行缓存管理的方法与设备
CN102413197A (zh) * 2011-08-01 2012-04-11 中国科学院计算机网络信息中心 访问统计处理方法及装置

Also Published As

Publication number Publication date
CN103853671A (zh) 2014-06-11

Similar Documents

Publication Publication Date Title
CN103853671B (zh) 一种数据写入控制方法及装置
CN104272386B (zh) 通过分层存储系统内的数据迁移减少功耗
CN1327369C (zh) 前摄存储器管理的方法和机制
US20100274827A1 (en) Tier-based data management
US8812454B2 (en) Apparatus and method for managing storage of data blocks
US11256595B2 (en) Predictive storage management system
Amer et al. File access prediction with adjustable accuracy
CN106407190A (zh) 一种事件记录查询方法及装置
CN106557353A (zh) 一种容器承载业务应用的服务器性能指标评价方法
CN104317736B (zh) 一种分布式文件系统多级缓存实现方法
CA2947158A1 (en) Systems, devices and methods for generating locality-indicative data representations of data streams, and compressions thereof
CN103631538A (zh) 冷热数据识别门限值计算方法、装置和系统
CN103246616A (zh) 一种长短周期访问频度的全局共享缓存替换方法
US8990166B2 (en) Variable page sizing for improved physical clustering
CN103051701B (zh) 一种缓存准入方法及装置
US20110225288A1 (en) Method and system for efficient storage and retrieval of analytics data
US20150089285A1 (en) Checkpointing using fpga
CN105897859B (zh) 一种存储系统
CN106657356A (zh) 一种云存储系统的数据写入方法、装置及云存储系统
CN109992473A (zh) 应用系统的监控方法、装置、设备及存储介质
US7984313B2 (en) Method, apparatus and system for reducing power consumption involving data storage devices
JP4526337B2 (ja) データ管理システム及び方法
CN110502586A (zh) 一种数据库软硬件一体机
CN115237334A (zh) 一种硬盘管理方法、装置及电子设备
US11210237B2 (en) Integration of application indicated minimum and maximum time to cache for a two-tiered cache management mechanism

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20140611

Assignee: SHANGHAI YOUYANG NEW MEDIA INFORMATION TECHNOLOGY Co.,Ltd.

Assignor: BEIJING BAIDU NETCOM SCIENCE AND TECHNOLOGY Co.,Ltd.

Contract record no.: X2019110000007

Denomination of invention: Data writing control method and device

Granted publication date: 20180302

License type: Common License

Record date: 20191218