CN103177005B - 一种数据访问的处理方法和*** - Google Patents
一种数据访问的处理方法和*** Download PDFInfo
- Publication number
- CN103177005B CN103177005B CN201110433236.0A CN201110433236A CN103177005B CN 103177005 B CN103177005 B CN 103177005B CN 201110433236 A CN201110433236 A CN 201110433236A CN 103177005 B CN103177005 B CN 103177005B
- Authority
- CN
- China
- Prior art keywords
- data
- hot spot
- accessed
- access
- request
- 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
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种数据访问的处理方法和***,所述方法包括以下步骤:统计数据被访问的次数;判断在预定时间内所述被访问的次数是否超过预设的参考值,若是,则将所述数据标识为热点数据;从数据服务器获取热点数据,并进行缓存;判断请求访问的数据是否为热点数据,若是,则从缓存中获取所述热点数据,否则,从数据服务器获取请求访问的数据。本发明能够减少数据服务器的压力,从而能够提高数据访问的性能。
Description
【技术领域】
本发明涉及计算机技术,尤其涉及一种数据访问的处理方法和***。
【背景技术】
在互联网应用中,通常需要对数据进行大量的访问。例如即时通信工具、SNS社区网络、微博等应用中通常使用头像。对头像的访问具有广播的特性,即用户除了访问自己的头像外,还要访问其他用户的头像。而一些用户(例如明星用户)被关注的程度非常高,其头像被访问的频率也非常高。传统的数据访问的处理方法通常是直接从后台的数据服务器中拉取请求访问的数据。当对某一数据的访问量很大时,则会给后台的数据服务器造成巨大的压力。
【发明内容】
基于此,有必要提供一种能更有效减少数据服务器的压力,从而能提高数据访问性能的数据访问的处理方法。
一种数据访问的处理方法,包括以下步骤:
统计数据被访问的次数;
判断在预定时间内所述被访问次数是否超过预设的参考值,若是,则将所述数据标识为热点数据;
从数据服务器获取热点数据,并进行缓存;
判断请求访问的数据是否为热点数据,若是,则从缓存中获取所述热点数据,否则,从所述数据服务器获取所述请求访问的数据。
在优选的实施例中,所述方法还包括:设有一数据访问阈值,若在预定时间到达之前,所述数据被访问的次数已经超过了阈值,则直接将所述数据标识为热点数据,从数据服务器获取所述热点数据并进行缓存。
在优选的实施例中,所述将所所述数据标识为热点数据的步骤为:记录所述热点数据的标识;
所述判断请求访问的数据是否为热点数据的步骤为:
判断是否存在所述请求访问的数据标识的记录,若是,则所述请求访问的数据为热点数据,否则所述请求访问的数据不为热点数据。
在优选的实施例中,所述方法还包括步骤:
计算所述预定时间内统计的热点数据总数占预设的热点数据个数的比率;
根据所述比率调整所述参考值。
在优选的实施例中,所述方法还包括步骤:当从数据服务器获取不到请求访问的数据时,则将所述请求访问的数据记为空记录。
在优选的实施例中,所述方法还包括步骤:判断请求访问的数据是否为空记录,若是,则不从数据服务器查询请求访问的数据,否则从数据服务器查询请求访问的数据。
在优选的实施例中,所述方法还包括步骤:按照设定的时间间隔清空所述空记录。
此外,还有必要提供一种能更有效减少数据服务器的压力,从而能提高数据访问性能的数据访问的处理***。
一种数据访问的处理***,包括:
热点统计模块,用于统计数据被访问的次数;
热点标志位模块,用于判断在预定时间内所述被访问的次数是否超过预设的参考值,若是,则将所述数据标识为热点数据;
热点缓存模块,用于从数据服务器获取热点数据,并缓存所述热点数据;
所述热点统计模块还用于判断请求访问的数据是否为热点数据,若是,则从所述热点缓存模块中获取所述热点数据,否则,从数据服务器获取所述请求访问的数据。
在优选的实施例中,所述热点标志位模块还用于设有一数据访问阈值,若在预定时间到达之前,所述数据被访问的次数已经超过了阈值,则直接将所述数据标识为热点数据;
所述热点缓存模块还用于从数据服务器获取所述热点数据并进行缓存。
在优选的实施例中,所述热点标志位模块用于记录所述热点数据的标识;
所述热点统计模块进一步用于判断所述热点标志位模块中是否存在请求访问的数据的标识,若是,则判定所述请求访问的数据为热点数据,否则判定所述请求访问的数据不为热点数据。
在优选的实施例中,所述***还包括:
参考值调整模块,用于计算所述预定时间内统计的热点数据总数占预设的热点数据个数的比率,根据所述比率调整所述参考值。
在优选的实施例中,所述***还包括:空记录模块,用于当从数据服务器获取不到请求访问的数据时,则将所述请求访问的数据记为空记录。
在优选的实施例中,所述***还包括:数据查询模块,用于判断请求访问的数据是否为空记录,若是,则不从数据服务器查询请求访问的数据,否则从数据服务器查询请求访问的数据。
在优选的实施例中,所述***还包括:空记录清空模块,用于按照设定的时间间隔清空记为空记录的数据的记录。
上述数据访问的处理方法和***,通过统计数据被访问的次数超过预设的参考值的热点数据,并从数据服务器获取热点数据,并进行缓存,当请求访问的数据为热点数据时,则可直接从缓存中获取热点数据,而不需要再从数据服务器获取该热点数据,从而能有效减少数据服务器的压力;在访问热点数据时避免了数据服务器的资源耗尽,从而能有效提高数据访问性能。
【附图说明】
图1为一个实施例中数据访问的处理方法的流程示意图
图2为一个实施例中构建的哈希链表的示意图;
图3为一个应用场景下的数据访问的处理方法与传统数据访问的处理方法的对比图;
图4为一个实施例中数据访问的处理***的结构示意图;
图5为另一个实施例数据访问的处理***的结构示意图;
图6为另一个实施例中数据访问的处理***的结构示意图。
【具体实施方式】
本发明通过统计数据被访问的次数超过预设的参考值的热点数据,并从数据服务器获取热点数据,并进行缓存,判断请求访问的热点数据是否有缓存,如果有,则可直接从缓存中获取热点数据,而不需要再从数据服务器获取热点数据。由于访问热点数据不需要再从数据服务器获取,因此能有效减少数据服务器的压力,从而能有效提高数据访问性能。
在一个实施例中,如图1所示,数据访问的处理方法包括以下步骤:
步骤S102,统计数据被访问的次数。
具体的,可在每次获取数据访问请求时,统计一次数据的被访问次数。
步骤S104,判断在预定时间内被访问的次数是否超过预设的参考值,若是,则进入步骤S106,否则结束。
步骤S106,将所述被访问的次数超过预设的参考值的数据标识为热点数据。
在一个实施例中,步骤S106中将数据标识为热点数据的步骤具体是:记录热点数据的标识。本实施例中,数据预先存储在数据服务器中,数据具有用于标示数据的标识,数据标识可以是数据的名称、哈希值、大小等。例如请求访问的数据为SNS社区网络中的用户头像,则数据标识可以为头像文件的文件名、文件的哈希值、文件大小等。
在一个实施例中,可对应数据标识设置链表。优选的,该链表可为哈希链表。如图2所示,每个链表中包含了多个对应数据的节点,并设置附加链表将所有节点进行串联,该附加链表用于统计数据被访问的次数。
当接收到数据访问请求时,可提取数据访问请求中的数据标识,根据数据标识查找对应的链表。进一步的,可对提取的数据标识进行哈希计算,得到与数据标识的哈希值对应的哈希链表,再根据提取的数据标识查找到哈希链表上的对应数据标识的节点。
进一步的,可在每个节点上设置用来记录数据的被访问次数的计数器,当获取到数据访问请求时,则请求访问的数据对应的节点上的计数器将记录的被访问次数进行累加。优选的,被访问次数累加1。
具体的,在一个实施例中,预先设置一个参考值,当在预定时间内节点记录的数据的被访问次数超过该参考值,则将该节点加入到附加链表的头部。例如,每间隔1分钟统计一次数据被访问的次数,将被访问的次数超过该参考值的数据标识为热点数据。具体的,可取附件链表头部的数据标识,并记录该数据标识。
由于可每间隔预定时间统计一次热点数据,在统计的时间间隔内,如果某一数据瞬间变热,也会给后台的数据服务器造成压力,从而对数据服务造成风险。因此,优选的,在一个实施例中,上述数据访问的处理方法还可包括:设有一数据访问阈值,若在预定时间到达之前,数据的被访问次数超过该阈值时,则直接将该数据标识为热点数据,从数据服务器获取该热点数据并进行缓存。
步骤S108,从数据服务器获取热点数据,并进行缓存。
进一步的,由于每间隔预定时间要统计一次热点数据,之前记录的热点数据则需要清空,从而将新统计出来的热点数据记录下来。优选的,由于热点数据需从数据服务器获取得到,并进行缓存,而缓存的空间比较小,因此可以预先设定需记录的热点数据的个数,即可从被访问的次数超过预设的参考值的数据中筛选出预定个数的数据,标识为热点数据。
步骤S110,判断请求访问的数据是否为热点数据,若是,则进入步骤S112,否则进入步骤S114。
具体的,在一个实施例中,判断是否存在请求访问的数据标识的记录,若是,则请求访问的数据为热点数据,否则请求访问的数据不为热点数据。如上所述,判断是否在设置的链表中存在请求访问的数据标识,若是,则请求访问的是热点数据,否则请求访问的不是热点数据。
步骤S112,从缓存中获取请求访问的热点数据。
当请求访问的热点数据有缓存时,则说明之前已经从数据服务器获取到了请求访问的热点数据并进行了缓存,则可直接从缓存中获取请求访问的热点数据,不需要再从数据服务器获取数据,从而减少了数据服务器的压力。
步骤S114,从数据服务器获取请求访问的数据。
当请求访问是热点数据且该热点数据没有缓存,则需要从数据服务器获取请求访问的热点数据。此外,当热点数据第一次被访问时,缓存中并没有请求的热点数据,则需从数据服务器获取请求访问的热点数据,并将从数据服务器获取到的热点数据进行缓存。
而当请求访问的数据不是热点数据,可直接从数据服务器获取请求访问的数据,由于非热点数据的访问不会占用数据服务器太多资源,因此不会对数据服务器造成太大的压力。
上述数据访问的处理方法可应用于网页服务器与数据服务器的交互。具体的,如图3所示,海量用户需通过多个网页服务器访问数据服务器中的数据,其中,数据服务器也可以是多个。如图3中的A图所示,传统的数据访问和处理方法中,热点数据都实际存储在数据服务器中,网页服务器每次需从数据服务器拉取用户请求的热点数据。而本发明中,如图3中的B图所示,网页服务器在收到用户的数据访问请求后,会统计数据被访问的次数,判断在预定时间内被访问的次数是否超过设定的参考值,如果超过,就将该数据标识为热点数据。在网页服务器上设有缓存,网页服务器从数据服务器获取热点数据,并将热点数据进行缓存。
进一步参考图3中的B图所示,当网页服务器收到用户的数据访问请求时,判断请求访问的数据是否为热点数据,具体的,是查询是否存在热点数据的标识的记录,如果存在,则表明用户访问的是热点数据,可直接从缓存中获取热点数据,并将热点数据返回给用户;如果用户请求访问的不是热点数据,或缓存中没有用户请求访问的热点数据,则网页服务器再从数据服务器获取数据,并返回给用户。
由于对于不同的数据,会有对应的网页服务器处理该数据的访问请求,因此网页服务器缓存的热点数据是该网页服务器所对应的数据,即数据服务器上实际存储的数据会分散到各个网页服务器中进行存储,而网页服务器上的热点数据是临时存储,数据实际仍存储在数据服务器中,这样,既能通过网页服务器中存储的热点数据来响应海量用户对热点数据的访问,从而减少数据服务器的压力,又能使得数据服务器的数据丢失的风险会大大减少。
在一个优选的实施例中,在统计热点数据的过程中还可对参考值进行调整。具体的,可计算所述预定时间内统计的热点数据总数占预设的热点数据个数的比率,根据该比率调整参考值。由于相对于数据服务器的存储空间,缓存热点数据的缓存空间较小,因此需预先设置热点数据的个数,而统计出的热点数据的总数可能比预设的热点数据的个数大,也可能比预设的热点数据的个数小。为使得每次筛选出的热点数据的个数比较合理,需动态调整参考值。
进一步的,在一个实施例中,计算统计的热点数据总数占预设的热点数据的数的比率,判断该比率是否位于设定的范围内,若是,则无需调整参考值,否则需调整参考值。具体的,当该比率大于等于0.8且小于等于1时,则参考值较合理,无需调整参考值,否则需调整参考值。
进一步的,在一个实施例中,当该比率大于1时,则按照如下公式调整参考值:N=(1+rate*0.2)*n,其中,N为新的参考值,rate为计算得到的比率,n为前次使用的参考值。当该比率小于0.8时,则按照如下公式调整参考值:N=n/(1+rate*0.2),其中,N为新的参考值,rate为计算得到的比率,n为前次使用的参考值。调整后的参考值使得下次筛选出来的热点数据的个数更合理。
在从数据服务器获取请求访问的数据时,通常会出现空查询的情形。所谓空查询,是指数据服务器没有相应的数据,然而在从数据服务器获取数据时并不知道数据服务器没有该数据,只有查询一次数据服务器才能得到是否有相应数据的查询结果,这样的一次操作则称为空查询。由于空查询等效于有数据的查询,因此空查询的次数过多必然会给数据服务器造成压力,也会造成数据服务器上的资源浪费。
为解决空查询次数过多从而给数据服务器造成过大的压力及资源浪费的问题,在一个实施例中,上述数据访问的处理方法还包括步骤:当从数据服务器获取不到请求访问的数据时,则将请求访问的数据记为空记录。本实施例中,当数据服务器不存在请求访问的数据时,会返回数据不存在的错误码,当接收到该错误码即可判定数据服务器不存在请求访问的数据,则可提取请求访问的数据标识,并将该数据标识记录下来。
具体的,也可设置包含多个节点的链表,其中每个节点记录了记为空记录的数据标识,在该链表中若能查找到请求访问的数据标识,则请求访问的数据为空记录,即数据服务器上没有该数据。
进一步的,在一个实施例中,判断请求访问的数据是否为空记录,若是,则不从数据服务器查询请求访问的数据,否则从数据服务器查询请求访问的数据。如上所述,具体的,可从设置的链表中查找是否存在请求访问的数据标识,若存在,则对应该数据标识的数据为空记录,否则不为空记录。由于记为空记录的数据不会再次从数据服务器进行查询,因此能够减少该数据的空查询次数,从而减少了数据服务器的压力和资源浪费。
由于在接收到数据服务器返回的错误码则认为请求访问的数据在数据服务器中不存在,然而在一些情形下,可能请求访问的数据存在但数据服务器由于内部bug等原因也会返回错误码,从而造成实际在数据服务器存在的数据也有可能被记为空记录。这样,当数据服务器恢复正常或修复好相应bug后,由于请求访问的数据已被记为空记录,而不会再向数据服务器查询,则在请求该数据是无法正常返回。
因此,在一个实施例中,还可按照设定的时间间隔清空空记录。例如,每间隔5分钟清空一次空记录。这样,则能够避免数据服务器存在的数据由于被记为空记录而无法访问的情形。
此外,由于空记录的存储空间很小,只能记录一定数量的数据,记录的数据标识超过其存储能力时,按照设定的时间间隔清空记为空记录的数据标识,以使得新的记为空记录的数据标识可以存储。这样,可以使得比较频繁的空查询对应的数据会被记在空记录中,更有效的减少了空查询的次数。
如图4所述,一种数据访问的处理***,包括热点统计模块102、热点标志位模块104和热点缓存模块106,其中:
热点统计模块102用于统计数据被访问的次数。具体的,可在每次获取数据访问请求时,记录一次数据的被访问次数。
热点标志位模块104用于判断在预定时间内被访问的次数是否超过预设的参考值,若是,则将被访问的次数超过预设的参考值的数据标识为热点数据。
在一个实施例中,热点标志位模块104用于记录热点数据的标识。具体的,数据预先存储在数据服务器中,数据具有用于标示数据的标识,数据标识可以是数据的名称、哈希值、大小等。例如请求访问的数据为SNS社区网络中的用户头像,则数据标识可以为头像文件的文件名、文件的哈希值、文件大小等。
在一个实施例中,热点标志位模块104还可对应数据标识设置链表。优选的,该链表可为哈希链表。如图2所示,每个链表中包含了多个对应数据的节点,并设置附加链表将所有节点进行串联,该附加链表用于统计数据被访问的次数。
热点标志位模块104可用于提取数据访问请求中的数据标识,根据数据标识查找对应的链表。进一步的,可对提取的数据标识进行哈希计算,得到与数据标识的哈希值对应的哈希链表,再根据提取的数据标识查找到哈希链表上的对应该数据标识的节点。
进一步的,热点标志位模块104可在每个节点上设置用来记录数据的被访问次数的计数器,当获取到数据访问请求时,将记录请求访问的数据的被访问次数进行累加。优选的,被访问次数累加1。
具体的,热点标志位模块104可用于预先设定一个参考值当在预定时间内数据的被访问次数超过该参考值,则将对应节点加入到附加链表的头部。例如,每间隔1分钟筛选一次热点数据。具体的,可取附件链表头部的数据标识,并记录该数据标识。
由于可每间隔预定时间统计一次热点数据,在统计的时间间隔内,如果某一数据瞬间变热,也会给后台的数据服务器造成压力,从而对数据服务造成风险。因此,优选的,在一个实施例中,热点标志位模块104还可用于设定一数据访问阈值,若在预定时间到达之前,数据的被访问次数超过该阈值时,则直接将该数据标识为热点数据。
热点缓存模块106用于从数据服务器获取热点数据,并进行缓存。
进一步的,由于每间隔预定时间要统计一次热点数据,之前记录的热点数据则需要清空,从而将新统计出来的热点数据记录下来。优选的,由于热点数据需从数据服务器获取得到,并进行缓存,而缓存的空间比较小,因此热点标志位模块104可用于预先设定需记录的热点数据的个数,从被访问的次数超过预设的参考值的数据中筛选出预定个数的的数据,标识为热点数据。
本实施例中,热点统计模块102还用于判断请求访问的数据是否为热点数据,若是,则从热点缓存模块106中获取请求访问的热点数据,否则,从数据服务器获取请求访问的数据。
具体的,在一个实施例中,热点统计模块102用于判断热点标志位模块104中是否存在请求访问的数据标识的记录,若是,则请求访问的数据为热点数据,否则请求访问的数据不为热点数据。如上所述,热点统计模块102判断是否在设置的链表中存在请求访问的数据标识,若是,则请求访问的是热点数据,否则请求访问的不是热点数据。
本实施例中,当热点缓存模块106存在请求访问的热点数据时,则说明之前已经从数据服务器获取到了请求访问的热点数据并进行了缓存,则热点统计模块102可直接从热点缓存模块106中获取请求访问的热点数据,不需要再从数据服务器获取数据,从而减少了数据服务器的压力。
本实施例中,当请求访问的热点数据在热点缓存模块106中不存在时,则热点统计模块102需要从数据服务器获取热点数据。当热点数据第一次被访问时,热点缓存模块106中并没有请求的热点数据,此时需从数据服务器获取请求访问的热点数据,并将从数据服务器获取到的热点数据缓存到热点缓存模块106中。
在一个实施例中,当请求访问的数据不是热点数据,可直接从数据服务器获取请求访问的数据,由于非热点数据的访问不会占用数据服务器太多资源,因此不会对数据服务器造成太大的压力。
在一个优选的实施例中,如图5所示,上述数据访问的处理***还包括参考值调整模块108,其中:参考值调整模块108用于计算统计的热点数据总数占预设的热点数据个数的比率,根据该比率调整参考值。
进一步的,在一个实施例中,参考值调整模块108用于计算统计的热点数据总数占预设的热点数据个数的比率,判断该比率是否位于设定的范围内,若是,则无需调整参考值,否则需调整参考值。具体的,当该比率大于等于0.8且小于等于1时,则参考值较合理,无需调整参考值,否则需调整参考值。
进一步的,在一个实施例中,当该比率大于1时,参考值调整模块108则按照如下公式调整参考值:N=(1+rate*0.2)*n,其中,N为新的参考值,rate为计算得到的比率,n为前次使用的参考值。当该比率小于0.8时,则参考值调整模块108按照如下公式调整参考值:N=n/(1+rate*0.2),其中,N为新的参考值,rate为计算得到的比率,n为前次使用的参考值。参考值调整模块108调整后的参考值使得下次筛选出来的热点数据的个数更合理。
为解决空查询次数过多从而给数据服务器造成过大的压力及资源浪费的问题,在一个实施例中,如图6所示,数据访问的处理***还包括空记录模块110,其中:空记录模块110用于当从数据服务器获取不到请求访问的数据时,则将请求访问的数据记为空记录。
本实施例中,当数据服务器不存在请求访问的数据时,会返回数据不存在的错误码,当空记录模块110接收到该错误码即可判定数据服务器不存在请求访问的数据,则可提取请求访问的数据标识,并将该数据标识记录下来。
具体的,空记录模块110也可用于设置包含多个节点的链表,其中每个节点记录了记为空记录的数据的标识信息,在该链表中若能查找到请求访问的数据标识,则说明请求访问的数据为空记录,即数据服务器上没有该数据。
进一步的,在一个实施例中,如图6所示,数据访问的处理***还包括数据查询模块112,其中:数据查询模块112用于判断请求访问的数据是否为空记录,若是,则不从数据服务器查询请求访问的数据,否则从数据服务器查询请求访问的数据。
如上所述,具体的,数据查询模块112可用于从设置的链表中查找是否存在请求访问的数据标识,若存在,则对应该数据标识的数据为空记录,否则不为空记录。由于记为空记录的数据不会再次从数据服务器进行查询,因此能够减少该数据的空查询次数,从而减少了数据服务器的压力和资源浪费。
进一步的,在一个实施例中,如图6所示,数据访问的处理***还包括空记录清空模块114,其中:空记录清空模块114用于按照设定的时间间隔清空空记录。例如,每间隔5分钟清空一次空记录。这样,则能够避免数据服务器存在的数据由于误被记为空记录而无法访问的情形。
此外,由于空记录的存储空间很小,只能记录一定数量的数据,记录的数据标识超过其存储能力时,按照设定的时间间隔清空记为空记录的数据标识,以使得新的记为空记录的数据标识。这样,可以使得比较频繁的空查询对应的数据会被记在空记录中,更有效的减少了空查询的次数。
应当说明的是,上述数据访问的处理***可优选的应用在与数据服务器进行交互的多个网页服务器中,用于处理海量用户的网页数据请求。此外,还可以应用在与数据服务器进行交互的多个普通服务器上,用于处理用户的其他数据请求。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (12)
1.一种数据访问的处理方法,包括以下步骤:
统计数据被访问的次数,具体包括,根据被访问数据的数据标识对应设置链表,并设置附加链表将所有链表中的数据标识对应的节点进行串联,所述附加链表用于统计数据被访问的次数;
判断在预定时间内所述被访问的次数是否超过预设的参考值,若是,则将所述数据标识为热点数据,具体包括,将所述数据标识对应的节点加入到所述附加链表的头部,获取所述附加链表头部的数据标识,并记录所述数据标识;
从数据服务器获取热点数据,并进行缓存;
判断请求访问的数据是否为热点数据,具体是,判断是否存在所述请求访问的数据标识的记录,若是,则所述请求访问的数据为热点数据,否则所述请求访问的数据不为热点数据;若所述请求访问的数据是热点数据,则从缓存中获取所述热点数据,否则,从所述数据服务器获取所述请求访问的数据。
2.根据权利要求1所述的数据访问的处理方法,其特征在于,所述方法还包括:设有一数据访问阈值,若在预定时间到达之前,所述数据被访问的次数已经超过了阈值,则直接将所述数据标识为热点数据,从数据服务器获取所述热点数据并进行缓存。
3.根据权利要求1或2所述的数据访问的处理方法,其特征在于,所述方法还包括步骤:
计算所述预定时间内统计的热点数据总数占预设的热点数据个数的比率;
根据所述比率调整所述参考值。
4.根据权利要求1所述的数据访问的处理方法,其特征在于,所述方法还包括步骤:当从数据服务器获取不到请求访问的数据时,则将所述请求访问的数据记为空记录。
5.根据权利要求4所述的数据访问的处理方法,其特征在于,所述方法还包括步骤:判断请求访问的数据是否为空记录,若是,则不从数据服务器查询请求访问的数据,否则从数据服务器查询请求访问的数据。
6.根据权利要求4或5所述的数据访问的处理方法,其特征在于,所述方法还包括步骤:按照设定的时间间隔清空所述空记录。
7.一种数据访问的处理***,其特征在于,包括:
热点统计模块,用于统计数据被访问的次数,具体包括,根据被访问数据的数据标识对应设置链表,并设置附加链表将所有链表中的数据标识对应的节点进行串联,所述附加链表用于统计数据被访问的次数;
热点标志位模块,用于判断在预定时间内所述被访问的次数是否超过预设的参考值,若是,则将所述数据标识为热点数据,具体包括,将所述数据标识对应的节点加入到所述附加链表的头部,获取所述附加链表头部的数据标识,并记录所述数据标识;
热点缓存模块,用于从数据服务器获取热点数据,并缓存所述热点数据;
所述热点统计模块还用于判断请求访问的数据是否为热点数据,具体是,判断所述热点标志位模块中是否存在请求访问的数据的标识,若是,则判定所述请求访问的数据为热点数据,否则判定所述请求访问的数据不为热点数据,若所述请求访问的数据是热点数据,则从所述热点缓存模块中获取所述热点数据,否则,从数据服务器获取所述请求访问的数据。
8.根据权利要求7所述的数据访问的处理***,其特征在于,所述热点标志位模块还用于设有一数据访问阈值,若在预定时间到达之前,所述数据被访问的次数已经超过了阈值,则直接将所述数据标识为热点数据;
所述热点缓存模块还用于从数据服务器获取所述热点数据并进行缓存。
9.根据权利要求7或8所述的数据访问的处理***,其特征在于,所述***还包括:
参考值调整模块,用于计算所述预定时间内统计的热点数据总数占预设的热点数据个数的比率,根据所述比率调整所述参考值。
10.根据权利要求7所述的数据访问的处理***,其特征在于,所述***还包括:空记录模块,用于当从数据服务器获取不到请求访问的数据时,则将所述请求访问的数据记为空记录。
11.根据权利要求10所述的数据访问的处理***,其特征在于,所述***还包括:数据查询模块,用于判断请求访问的数据是否为空记录,若是,则不从数据服务器查询请求访问的数据,否则从数据服务器查询请求访问的数据。
12.根据权利要求10或11所述的数据访问的处理***,其特征在于,所述***还包括:空记录清空模块,用于按照设定的时间间隔清空记为空记录的数据的记录。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110433236.0A CN103177005B (zh) | 2011-12-21 | 2011-12-21 | 一种数据访问的处理方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110433236.0A CN103177005B (zh) | 2011-12-21 | 2011-12-21 | 一种数据访问的处理方法和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103177005A CN103177005A (zh) | 2013-06-26 |
CN103177005B true CN103177005B (zh) | 2016-08-03 |
Family
ID=48636886
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110433236.0A Active CN103177005B (zh) | 2011-12-21 | 2011-12-21 | 一种数据访问的处理方法和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103177005B (zh) |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103455549A (zh) * | 2013-07-26 | 2013-12-18 | 苏州亿倍信息技术有限公司 | 一种数据处理的方法及*** |
CN103440257A (zh) * | 2013-07-26 | 2013-12-11 | 苏州亿倍信息技术有限公司 | 一种数据访问处理的实现方法及*** |
CN103457929A (zh) * | 2013-07-26 | 2013-12-18 | 苏州亿倍信息技术有限公司 | 一种数据访问处理方法及*** |
CN103530314A (zh) * | 2013-07-26 | 2014-01-22 | 苏州亿倍信息技术有限公司 | 一种实现数据处理的方法及*** |
CN103793485B (zh) * | 2014-01-20 | 2017-07-11 | 锐达互动科技股份有限公司 | 客户端基于缓存数据实现查询网络数据的方法 |
CN104123238A (zh) * | 2014-06-30 | 2014-10-29 | 海视云(北京)科技有限公司 | 数据存储方法及装置 |
CN104980417B (zh) * | 2014-08-06 | 2018-12-07 | 腾讯科技(深圳)有限公司 | 一种ugc文件分发方法和设备 |
CN105335426B (zh) * | 2014-08-07 | 2019-04-26 | 腾讯科技(深圳)有限公司 | 一种海量数据的热点数据的分析方法、***及相关设备 |
CN105354193A (zh) * | 2014-08-19 | 2016-02-24 | 阿里巴巴集团控股有限公司 | 数据库数据缓存方法、查询方法及缓存装置、查询装置 |
CN104394184A (zh) * | 2014-08-19 | 2015-03-04 | 广州华多网络科技有限公司 | 请求处理方法、装置及*** |
CN105389311B (zh) * | 2014-09-04 | 2019-04-09 | 阿里巴巴集团控股有限公司 | 一种用于确定查询结果的方法与设备 |
CN105426377A (zh) * | 2014-09-23 | 2016-03-23 | ***通信集团广西有限公司 | 一种数据管理方法及其装置、*** |
CN104268286A (zh) * | 2014-10-21 | 2015-01-07 | 北京国双科技有限公司 | 一种查询热数据的方法 |
CN104699422B (zh) * | 2015-03-11 | 2018-03-13 | 华为技术有限公司 | 缓存数据的确定方法及装置 |
CN106708833B (zh) * | 2015-08-03 | 2020-04-07 | 腾讯科技(深圳)有限公司 | 基于位置信息获取数据的方法和装置 |
CN105224473A (zh) * | 2015-09-15 | 2016-01-06 | 浪潮(北京)电子信息产业有限公司 | 一种固态硬盘缓存数据的更新方法及装置 |
CN105468707A (zh) * | 2015-11-19 | 2016-04-06 | 北京锐安科技有限公司 | 一种基于缓存的数据处理方法及装置 |
CN105335520B (zh) * | 2015-11-24 | 2018-11-16 | 交控科技股份有限公司 | 一种基于地铁综合自动化***的数据处理方法及处理器 |
CN105447171A (zh) * | 2015-12-07 | 2016-03-30 | 北京奇虎科技有限公司 | 数据缓存方法与装置 |
CN107291777A (zh) * | 2016-04-11 | 2017-10-24 | 阿里巴巴集团控股有限公司 | 一种热点数据识别和处理的方法和装置 |
CN107733949B (zh) * | 2016-08-11 | 2021-03-16 | 北京邮电大学 | 一种无线接入网缓存方法及*** |
CN106372156A (zh) * | 2016-08-30 | 2017-02-01 | 福建天晴数码有限公司 | 数据缓存方法及*** |
CN107798013A (zh) * | 2016-09-05 | 2018-03-13 | 广州市动景计算机科技有限公司 | 热点内容提供方法、设备、浏览器、电子设备及服务器 |
CN108090089B (zh) * | 2016-11-23 | 2021-01-22 | 北京国双科技有限公司 | 探测网站中热点数据的方法、装置和*** |
CN106612329B (zh) * | 2016-12-29 | 2020-03-20 | 北京奇艺世纪科技有限公司 | 一种缓存方法及装置 |
CN106815334A (zh) * | 2016-12-30 | 2017-06-09 | 晶赞广告(上海)有限公司 | 一种用于终端的数据查询方法及装置 |
CN108345495A (zh) * | 2017-01-22 | 2018-07-31 | 北京国双科技有限公司 | 一种多线程的加锁方法及服务器 |
CN108347459A (zh) * | 2017-01-25 | 2018-07-31 | 贵州白山云科技有限公司 | 一种云端数据快速存储方法及装置 |
CN107256235A (zh) * | 2017-05-19 | 2017-10-17 | 武汉璞华大数据技术有限公司 | 一种缓存***热点数据访问方法 |
CN107703921B (zh) * | 2017-10-27 | 2019-09-24 | 交控科技股份有限公司 | 列车自动监控***站场切换控制方法 |
CN107908695A (zh) * | 2017-10-31 | 2018-04-13 | 平安普惠企业管理有限公司 | 业务***运行方法、装置、***及可读存储介质 |
CN108683695A (zh) * | 2018-03-23 | 2018-10-19 | 阿里巴巴集团控股有限公司 | 热点访问处理方法、缓存访问代理设备及分布式缓存*** |
CN108762976A (zh) * | 2018-05-30 | 2018-11-06 | 郑州云海信息技术有限公司 | 一种读取纠删码数据的方法、装置和存储介质 |
CN109120709A (zh) * | 2018-09-03 | 2019-01-01 | 杭州云创共享网络科技有限公司 | 一种缓存方法、装置、设备及介质 |
CN109597915B (zh) * | 2018-09-18 | 2022-03-01 | 北京微播视界科技有限公司 | 访问请求处理方法和装置 |
CN111190655B (zh) * | 2019-12-30 | 2024-04-16 | 中国银行股份有限公司 | 一种应用缓存数据的处理方法、装置、设备及*** |
CN111857597A (zh) * | 2020-07-24 | 2020-10-30 | 浪潮电子信息产业股份有限公司 | 一种热点数据缓存方法、***及相关装置 |
CN111881356A (zh) * | 2020-07-30 | 2020-11-03 | 北京奇艺世纪科技有限公司 | 内容推荐方法、装置、电子设备及存储介质 |
CN112905113A (zh) * | 2021-02-08 | 2021-06-04 | 中国工商银行股份有限公司 | 数据访问处理方法和装置 |
CN113314229A (zh) * | 2021-05-26 | 2021-08-27 | 北京京东拓先科技有限公司 | 一种数据处理方法、装置、电子设备和存储介质 |
CN113254422B (zh) * | 2021-06-07 | 2021-11-12 | 云上(南昌)大数据运营有限公司 | 一种基于云计算应用于城市大脑的政务资源管理*** |
CN113761321B (zh) * | 2021-08-06 | 2024-07-05 | 广州华多网络科技有限公司 | 数据访问控制、数据缓存控制方法及其装置、设备与介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101236569A (zh) * | 2008-02-01 | 2008-08-06 | 浙江大学 | 一种基于ContextFS上下文文件***的高效动态路径解析方法 |
CN101510219A (zh) * | 2009-03-31 | 2009-08-19 | 成都市华为赛门铁克科技有限公司 | 文件数据访问方法、装置以及*** |
CN101576918A (zh) * | 2009-06-19 | 2009-11-11 | 用友软件股份有限公司 | 具备负载均衡功能的数据缓存*** |
CN101860476A (zh) * | 2010-04-23 | 2010-10-13 | 哈尔滨工程大学 | 基于高速缓存机制的p2p路由方法 |
-
2011
- 2011-12-21 CN CN201110433236.0A patent/CN103177005B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101236569A (zh) * | 2008-02-01 | 2008-08-06 | 浙江大学 | 一种基于ContextFS上下文文件***的高效动态路径解析方法 |
CN101510219A (zh) * | 2009-03-31 | 2009-08-19 | 成都市华为赛门铁克科技有限公司 | 文件数据访问方法、装置以及*** |
CN101576918A (zh) * | 2009-06-19 | 2009-11-11 | 用友软件股份有限公司 | 具备负载均衡功能的数据缓存*** |
CN101860476A (zh) * | 2010-04-23 | 2010-10-13 | 哈尔滨工程大学 | 基于高速缓存机制的p2p路由方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103177005A (zh) | 2013-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103177005B (zh) | 一种数据访问的处理方法和*** | |
US7805416B1 (en) | File system query and method of use | |
CN107247778B (zh) | 用于实施可扩展数据存储服务的***和方法 | |
CN102117309B (zh) | 一种数据缓存***和数据查询方法 | |
CN106202581B (zh) | 一种数据搜索方法及装置 | |
CN109117275B (zh) | 基于数据分片的对账方法、装置、计算机设备及存储介质 | |
CN103957282B (zh) | 一种域内终端用户域名解析加速***及其方法 | |
US20030018688A1 (en) | Method and apparatus to facilitate accessing data in network management protocol tables | |
CN101795272A (zh) | 非法网站过滤方法及装置 | |
CN101369267B (zh) | 一种基于内存库的模糊查询方法 | |
EP2227016A1 (en) | A content buffering, querying method and point-to-point media transmitting system | |
WO2022016861A1 (zh) | 一种热点数据缓存方法、***及相关装置 | |
CN110399348A (zh) | 文件重删方法、装置、***及计算机可读存储介质 | |
CN102012931A (zh) | 过滤式缓存方法及其装置、缓存*** | |
CN106649150B (zh) | 一种缓存管理方法及装置 | |
CN107370809A (zh) | 数据同步方法及数据搜索*** | |
CN1777190A (zh) | 基于服务质量的Web服务注册与发现***及其方法 | |
WO2017000592A1 (zh) | 数据处理方法、装置及*** | |
CN105635278A (zh) | 一种管理存储***的元数据的方法以及元数据服务器 | |
CN101778131A (zh) | 数据同步*** | |
CN101470733A (zh) | 数据块副本数量调整方法及分布式文件*** | |
CN107181773A (zh) | 分布式存储***的数据存储及数据管理方法、设备 | |
US9117005B2 (en) | Statistics collection using path-value pairs for relational databases | |
CN116756096B (zh) | 元数据处理方法、装置、电子设备及存储介质 | |
US8032570B2 (en) | Efficient stacked file system and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |