专利名称:一种数据访问的处理方法和系统的制作方法
一种数据访问的处理方法和系统
技术领域:
本发明涉及计算机技术,尤其涉及一种数据访问的处理方法和系统。
背景技术:
在互联网应用中,通常需要对数据进行大量的访问。例如即时通信工具、SNS社区网络、微博等应用中通常使用头像。对头像的访问具有广播的特性,即用户除了访问自己的头像外,还要访问其他用户的头像。而一些用户(例如明星用户)被关注的程度非常高,其头像被访问的频率也非常高。传统的数据访问的处理方法通常是直接从后台的数据服务器中拉取请求访问的数据。当对某一数据的访问量很大时,则会给后台的数据服务器造成巨大的压力。
发明内容基于此,有必要提供一种能更有效减少数据服务器的压力,从而能提高数据访问性能的数据访问的处理方法。一种数据访问的处理方法,包括以下步骤:统计数据被访问的次数;判断在预定时间内所述被访问次数是否超过预设的参考值,若是,则将所述数据标识为热点数据;从数据服务器获取热点数据,并进行缓存;
判断请求访问的数据是否为热点数据,若是,则从缓存中获取所述热点数据,否则,从所述数据服务器获取所述请求访问的数据。在优选的实施例中,所述方法还包括:设有一数据访问阈值,若在预定时间到达之前,所述数据被访问的次数已经超过了阈值,则直接将所述数据标识为热点数据,从数据服务器获取所述热点数据并进行缓存。在优选的实施例中,所述将所所述数据标识为热点数据的步骤为:记录所述热点数据的标识;所述判断请求访问的数据是否为热点数据的步骤为:判断是否存在所述请求访问的数据标识的记录,若是,则所述请求访问的数据为热点数据,否则所述请求访问的数据不为热点数据。在优选的实施例中,所述方法还包括步骤:计算所述预定时间内统计的热点数据总数占预设的热点数据个数的比率;根据所述比率调整所述参考值。在优选的实施例中,所述方法还包括步骤:当从数据服务器获取不到请求访问的数据时,则将所述请求访问的数据记为空记录。在优选的实施例中,所述方法还包括步骤:判断请求访问的数据是否为空记录,若是,则不从数据服务器查询请求访问的数据,否则从数据服务器查询请求访问的数据。
在优选的实施例中,所述方法还包括步骤:按照设定的时间间隔清空所述空记录。此外,还有必要提供一种能更有效减少数据服务器的压力,从而能提高数据访问性能的数据访问的处理系统。一种数据访问的处理系统,包括:热点统计模块,用于统计数据被访问的次数;热点标志位模块,用于判断在预定时间内所述被访问的次数是否超过预设的参考值,若是,则将所述数据标识为热点数据;热点缓存模块,用于从数据服务器获取热点数据,并缓存所述热点数据;所述热点统计模块还用于判断请求访问的数据是否为热点数据,若是,则从所述热点缓存模块中获取所述热点数据,否则,从数据服务器获取所述请求访问的数据。在优选的实施例中,所述热点标志位模块还用于设有一数据访问阈值,若在预定时间到达之前,所述数据被访问的次数已经超过了阈值,则直接将所述数据标识为热点数据;所述热点缓存模块还用于从数据服务器获取所述热点数据并进行缓存。在优选的实施例中,所述热点标志位模块用于记录所述热点数据的标识;所述热点统计模块进一步用于判断所述热点标志位模块中是否存在请求访问的数据的标识,若是,则判定所述请求访问的数据为热点数据,否则判定所述请求访问的数据不为热点数据。在优选的实施例中,所述系统还包括:参考值调整模块,用于计算所述预定时间内统计的热点数据总数占预设的热点数据个数的比率,根据所述比率调整所述参考值。在优选的实施例中,所述系统还包括:空记录模块,用于当从数据服务器获取不到请求访问的数据时,则将所述请求访问的数据记为空记录。在优选的实施例中,所述系统还包括:数据查询模块,用于判断请求访问的数据是否为空记录,若是,则不从数据服务器查询请求访问的数据,否则从数据服务器查询请求访问的数据。在优选的实施例中,所述系统还包括:空记录清空模块,用于按照设定的时间间隔清空记为空记录的数据的记录。上述数据访问的处理方法和系统,通过统计数据被访问的次数超过预设的参考值的热点数据,并从数据服务器获取热点数据,并进行缓存,当请求访问的数据为热点数据时,则可直接从缓存中获取热点数据,而不需要再从数据服务器获取该热点数据,从而能有效减少数据服务器的压力;在访问热点数据时避免了数据服务器的资源耗尽,从而能有效提高数据访问性能。
图1为一个实施例中数据访问的处理方法的流程示意2为一个实施例中构建 的哈希链表的示意图;图3为一个应用场景下的数据访问的处理方法与传统数据访问的处理方法的对比图4为一个实施例中数据访问的处理系统的结构示意图;图5为另一个实施例数据访问的处理系统的结构示意图;图6为另一个实施例中数据访问的处理系统的结构示意图。
具体实施方式本发明通过统计数据被访问的次数超过预设的参考值的热点数据,并从数据服务器获取热点数据,并进行缓存,判断请求访问的热点数据是否有缓存,如果有,则可直接从缓存中获取热点数据,而不需要再从数据服务器获取热点数据。由于访问热点数据不需要再从数据服务器获取,因此能有效减少数据服务器的压力,从而能有效提高数据访问性能。在一个实施例中,如图1所示,数据访问的处理方法包括以下步骤:步骤S102,统计数据被访问的次数。具体的,可在每次获取数据访问请求时,统计一次数据的被访问次数。步骤S104,判断在预定时间内被访问的次数是否超过预设的参考值,若是,则进入步骤S106,否则结束。
步骤S106,将所述被访问的次数超过预设的参考值的数据标识为热点数据。在一个实施例中,步骤S106中将数据标识为热点数据的步骤具体是:记录热点数据的标识。本实施例中,数据预先存储在数据服务器中,数据具有用于标示数据的标识,数据标识可以是数据的名称、哈希值、大小等。例如请求访问的数据为SNS社区网络中的用户头像,则数据标识可以为头像文件的文件名、文件的哈希值、文件大小等。在一个实施例中,可对应数据标识设置链表。优选的,该链表可为哈希链表。如图2所示,每个链表中包含了多个对应数据的节点,并设置附加链表将所有节点进行串联,该附加链表用于统计数据被访问的次数。当接收到数据访问请求时,可提取数据访问请求中的数据标识,根据数据标识查找对应的链表。进一步的,可对提取的数据标识进行哈希计算,得到与数据标识的哈希值对应的哈希链表,再根据提取的数据标识查找到哈希链表上的对应数据标识的节点。进一步的,可在每个节点上设置用来记录数据的被访问次数的计数器,当获取到数据访问请求时,则请求访问的数据对应的节点上的计数器将记录的被访问次数进行累力口。优选的,被访问次数累加I。具体的,在一个实施例中,预先设置一个参考值,当在预定时间内节点记录的数据的被访问次数超过该参考值,则将该节点加入到附加链表的头部。例如,每间隔I分钟统计一次数据被访问的次数,将被访问的次数超过该参考值的数据标识为热点数据。具体的,可取附件链表头部的数据标识,并记录该数据标识。由于可每间隔预定时间统计一次热点数据,在统计的时间间隔内,如果某一数据瞬间变热,也会给后台的数据服务器造成压力,从而对数据服务造成风险。因此,优选的,在一个实施例中,上述数据访问的处理方法还可包括:设有一数据访问阈值,若在预定时间到达之前,数据的被访问次数超过该阈值时,则直接将该数据标识为热点数据,从数据服务器获取该热点数据并进行缓存。步骤S108,从数据服务器获取热点数据,并进行缓存。进一步的,由于每间隔预定时间要统计一次热点数据,之前记录的热点数据则需要清空,从而将新统计出来的热点数据记录下来。优选的,由于热点数据需从数据服务器获取得到,并进行缓存,而缓存的空间比较小,因此可以预先设定需记录的热点数据的个数,即可从被访问的次数超过预设的参考值的数据中筛选出预定个数的数据,标识为热点数据。步骤S110,判断请求访问的数据是否为热点数据,若是,则进入步骤S112,否则进入步骤S114。具体的,在一个实施例中,判断是否存在请求访问的数据标识的记录,若是,则请求访问的数据为热点数据,否则请求访问的数据不为热点数据。如上所述,判断是否在设置的链表中存在请求访问的数据标识,若是,则请求访问的是热点数据,否则请求访问的不是热点数据。步骤S112,从缓存中获取请求访问的热点数据。当请求访问的热点数据有缓存时,则说明之前已经从数据服务器获取到了请求访问的热点数据并进行了缓存,则可直接从缓存中获取请求访问的热点数据,不需要再从数据服务器获取数据,从而减少了数据服务器的压力。步骤SI 14,从数据服务器获取请求访问的数据。当请求访问是热点数据且该热点数据没有缓存,则需要从数据服务器获取请求访问的热点数据。此外,当热点数据第一次被访问时,缓存中并没有请求的热点数据,则需从数据服务器获取请求访问的热点数据,并将从数据服务器获取到的热点数据进行缓存。而当请求访问的数据不是热点数据,可直接从数据服务器获取请求访问的数据,由于非热点数据的访问不会占用数据服务器太多资源,因此不会对数据服务器造成太大的压力。上述数据访问的处理方法可应用于网页服务器与数据服务器的交互。具体的,如图3所示,海量用户需通过多个网页服务器访问数据服务器中的数据,其中,数据服务器也可以是多个。如图3中的A图所示,传统的数据访问和处理方法中,热点数据都实际存储在数据服务器中,网页服务器每次需从数据服务器拉取用户请求的热点数据。而本发明中,如图3中的B图所示,网页服务器在收到用户的数据访问请求后,会统计数据被访问的次数,判断在预定时间内被访问的次数是否超过设定的参考值,如果超过,就将该数据标识为热点数据。在网页服务器上设有缓存,网页服务器从数据服务器获取热点数据,并将热点数据进行缓存。进一步参考图3中的B图所示,当网页服务器收到用户的数据访问请求时,判断请求访问的数据是否为热点数据,具体的,是查询是否存在热点数据的标识的记录,如果存在,则表明用户访问的是热点数据,可直接从缓存中获取热点数据,并将热点数据返回给用户;如果用户请求访问的不是热点数据,或缓存中没有用户请求访问的热点数据,则网页服务器再从数据服务器获取数据,并返回给用户。由于对于不同的数据,会有对应的网页服务器处理该数据的访问请求,因此网页服务器缓存的热点数据是该网页服务器所对应的数据,即数据服务器上实际存储的数据会分散到各个网页服务器中进行存储,而网页服务器上的热点数据是临时存储,数据实际仍存储在数据服务器中,这样,既能通过网页服务器中存储的热点数据来响应海量用户对热点数据的访问,从而减少数据服务器的压力,又能使得数据服务器的数据丢失的风险会大大减少。在一个优选的实施例中,在统计热点数据的过程中还可对参考值进行调整。具体的,可计算所述预定时间内统计的热点数据总数占预设的热点数据个数的比率,根据该比率调整参考值。由于相对于数据服务器的存储空间,缓存热点数据的缓存空间较小,因此需预先设置热点数据的个数,而统计出的热点数据的总数可能比预设的热点数据的个数大,也可能比预设的热点数据的个数小。为使得每次筛选出的热点数据的个数比较合理,需动态调整参考值。进一步的,在一个实施例中,计算统计的热点数据总数占预设的热点数据的数的比率,判断该比率是否位于设定的范围内,若是,则无需调整参考值,否则需调整参考值。具体的,当该比率大于等于0.8且小于等于I时,则参考值较合理,无需调整参考值,否则需调整参考值。进一步的,在一个实施例中,当该比率大于I时,则按照如下公式调整参考值:N =(l+rate*0.2)*n,其中,N为新的参考值,rate为计算得到的比率,η为前次使用的参考值。当该比率小于0.8时,则按照如下公式调整参考值:N = n/(l+rate*0.2),其中,N为新的参考值,rate为计算得到的比率,η为前次使用的参考值。调整后的参考值使得下次筛选出来的热点数据的个数更合理。在从数据服务器获取请求访问的数据时,通常会出现空查询的情形。所谓空查询,是指数据服务器没有相应的数据,然而在从数据服务器获取数据时并不知道数据服务器没有该数据,只有查询一次数据服务器才能得到是否有相应数据的查询结果,这样的一次操作则称为空查询。由于空查询等效于有数据的查询,因此空查询的次数过多必然会给数据服务器造成压力,也会造成数据服务器上的资源浪费。为解决空查询次数过多从而给数据服务器造成过大的压力及资源浪费的问题,在一个实施例中,上述数据访问的处理方法还包括步骤:当从数据服务器获取不到请求访问的数据时,则将请求访问的数据记为空记录。本实施例中,当数据服务器不存在请求访问的数据时,会返回数据不存在的错误码,当接收到该错误码即可判定数据服务器不存在请求访问的数据,则可提取请求访问的数据标识,并将该数据标识记录下来。具体的,也可设置包含多个节点的链表,其中每个节点记录了记为空记录的数据标识,在该链表中若能查找到请求访问的数据标识,则请求访问的数据为空记录,即数据服务器上没有该数据。进一步的,在一个实施例中,判断请求访问的数据是否为空记录,若是,则不从数据服务器查询请求访问的数据,否则从数据服务器查询请求访问的数据。如上所述,具体的,可从设置的链表中查找是否存在请求访问的数据标识,若存在,则对应该数据标识的数据为空记录,否则不为空记录。由于记为空记录的数据不会再次从数据服务器进行查询,因此能够减少该数据的空查询次数,从而减少了数据服务器的压力和资源浪费。由于在接收到数据服务器返回的错误码则认为请求访问的数据在数据服务器中不存在,然而在一些情形下,可能请求访问的数据存在但数据服务器由于内部bug等原因也会返回错误码,从而造成实际在数据服务器存在的数据也有可能被记为空记录。这样,当数据服务器恢复正常或修复好相应bug后,由于请求访问的数据已被记为空记录,而不会再向数据服务器查询,则在请求该数据是无法正常返回。
因此,在一个实施例中,还可按照设定的时间间隔清空空记录。例如,每间隔5分钟清空一次空记录。这样,则能够避免数据服务器存在的数据由于被记为空记录而无法访问的情形。此外,由于空记录的存储空间很小,只能记录一定数量的数据,记录的数据标识超过其存储能力时,按照设定的时间间隔清空记为空记录的数据标识,以使得新的记为空记录的数据标识可以存储。这样,可以使得比较频繁的空查询对应的数据会被记在空记录中,更有效的减少了空查询的次数。如图4所述,一种数据访问的处理系统,包括热点统计模块102、热点标志位模块104和热点缓存模块106,其中:热点统计模块102用于统计数据被访问的次数。具体的,可在每次获取数据访问请求时,记录一次数据的被访问次数。热点标志位模块104用于判断在预定时间内被访问的次数是否超过预设的参考值,若是,则将被访问的次数超过预设的参考值的数据标识为热点数据。在一个实施例中,热点标志位模块104用于记录热点数据的标识。具体的,数据预先存储在数据服务器中,数据具有用于标示数据的标识,数据标识可以是数据的名称、哈希值、大小等。例如请求访问的数据为SNS社区网络中的用户头像,则数据标识可以为头像文件的文件名、文件的哈希值、文件大小等。在一个实施例中,热点标志位模块104还可对应数据标识设置链表。优选的,该链表可为哈希链表。如图2所示,每个链表中包含了多个对应数据的节点,并设置附加链表将所有节点进行串联,该附加链表用于统计数据被访问的次数。热点标志位模块104可用于提取数据访问请求中的数据标识,根据数据标识查找对应的链表。进一步的,可对提取的数据标识进行哈希计算,得到与数据标识的哈希值对应的哈希链表,再根据提取的数据标识查找到哈希链表上的对应该数据标识的节点。进一步的,热点标志位模块104可在每个节点上设置用来记录数据的被访问次数的计数器,当获取到数据访问请求时,将记录请求访问的数据的被访问次数进行累加。优选的,被访问次数累加I。具体的,热点标志位模块104可用于预先设定一个参考值当在预定时间内数据的被访问次数超过该参考值,则将对应节点加入到附加链表的头部。例如,每间隔I分钟筛选一次热点数据。具体的,可取附件链表头部的数据标识,并记录该数据标识。由于可每间隔预定时间统计一次热点数据,在统计的时间间隔内,如果某一数据瞬间变热,也会给后台的数据服务器造成压力,从而对数据服务造成风险。因此,优选的,在一个实施例中,热点标志位模块104还可用于设定一数据访问阈值,若在预定时间到达之前,数据的被访问次数超过该阈值时,则直接将该数据标识为热点数据。热点缓存模块106用于从数据服务器获取热点数据,并进行缓存。进一步的,由于每间隔预定时间要统计一次热点数据,之前记录的热点数据则需要清空,从而将新统计出来的热点数据记录下来。优选的,由于热点数据需从数据服务器获取得到,并进行缓存,而缓存的空间比较小,因此热点标志位模块104可用于预先设定需记录的热点数据的个数,从被访问的次数超过预设的参考值的数据中筛选出预定个数的的数据,标识为热点数据。
本实施例中,热点统计模块102还用于判断请求访问的数据是否为热点数据,若是,则从热点缓存模块106中获取请求访问的热点数据,否则,从数据服务器获取请求访问的数据。具体的,在一个实施例中,热点统计模块102用于判断热点标志位模块104中是否存在请求访问的数据标识的记录,若是,则请求访问的数据为热点数据,否则请求访问的数据不为热点数据。如上所述,热点统计模块102判断是否在设置的链表中存在请求访问的数据标识,若是,则请求访问的是热点数据,否则请求访问的不是热点数据。本实施例中,当热点缓存模块106存在请求访问的热点数据时,则说明之前已经从数据服务器获取到了请求访问的热点数据并进行了缓存,则热点统计模块102可直接从热点缓存模块106中获取请求访问的热点数据,不需要再从数据服务器获取数据,从而减少了数据服务器的压力。本实施例中,当请求访问的热点数据在热点缓存模块106中不存在时,则热点统计模块102需要从数据服务器获取热点数据。当热点数据第一次被访问时,热点缓存模块106中并没有请求的热点数据,此时需从数据服务器获取请求访问的热点数据,并将从数据服务器获取到的热点数据缓存到热点缓存模块106中。在一个实施例中,当请求访问的数据不是热点数据,可直接从数据服务器获取请求访问的数据,由于非热点数据的访问不会占用数据服务器太多资源,因此不会对数据服务器造成太大的压力。在一个优选的实施例中,如图5所示,上述数据访问的处理系统还包括参考值调整模块108,其中:参考值调整模块108用于计算统计的热点数据总数占预设的热点数据个数的比率,根据该比率调整参考值。进一步的,在一个实施例中,参考值调整模块108用于计算统计的热点数据总数占预设的热点数据个数的比率,判断该比率是否位于设定的范围内,若是,则无需调整参考值,否则需调整参考值。具体的,当该比率大于等于0.8且小于等于I时,则参考值较合理,无需调整参考值,否则需调整参考值。进一步的,在一个实施例中,当该比率大于I时,参考值调整模块108则按照如下公式调整参考值:N = (l+rate*0.2)*n,其中,N为新的参考值,rate为计算得到的比率,η为前次使用的参考值。当该比率小于0.8时,则参考值调整模块108按照如下公式调整参考值:N = n/(l+rate*0.2),其中,N为新的参考值,rate为计算得到的比率,η为前次使用的参考值。参考值调整模块108调整后的参考值使得下次筛选出来的热点数据的个数更合理。为解决空查询次数过多从而给数据服务器造成过大的压力及资源浪费的问题,在一个实施例中,如图6所示,数据访问的处理系统还包括空记录模块110,其中:空记录模块110用于当从数据服务器获取不到请求访问的数据时,则将请求访问的数据记为空记录。本实施例中,当数据服务器不存在请求访问的数据时,会返回数据不存在的错误码,当空记录模块110接收到该错误码即可判定数据服务器不存在请求访问的数据,则可提取请求访问的数据标识,并将该数据标识记录下来。具体的,空记录模块110也可用于设置包含多个节点的链表,其中每个节点记录了记为空记录的数据的标识信息,在该链表中若能查找到请求访问的数据标识,则说明请求访问的数据为空记录,即数据服务器上没有该数据。进一步的,在一个实施例中,如图6所示,数据访问的处理系统还包括数据查询模块112,其中:数据查询模块112用于判断请求访问的数据是否为空记录,若是,则不从数据服务器查询请求访问的数据,否则从数据服务器查询请求访问的数据。如上所述,具体的,数据查询模块112可用于从设置的链表中查找是否存在请求访问的数据标识,若存在,则对应该数据标识的数据为空记录,否则不为空记录。由于记为空记录的数据不会再次从数据服务器进行查询,因此能够减少该数据的空查询次数,从而减少了数据服务器的压力和资源浪费。进一步的,在一个实施例中,如图6所示,数据访问的处理系统还包括空记录清空模块114,其中:空记录清空模块114用于按照设定的时间间隔清空空记录。例如,每间隔5分钟清空一次空记录。这样,则能够避免数据服务器存在的数据由于误被记为空记录而无法访问的情形。此外,由于空记录的存储空间很小,只能记录一定数量的数据,记录的数据标识超过其存储能力时,按照设定的时间间隔清空记为空记录的数据标识,以使得新的记为空记录的数据标识。这样,可以使得比较频繁的空查询对应的数据会被记在空记录中,更有效的减少了空查询的次数。应当说明的是,上述数据访问的处理系统可优选的应用在与数据服务器进行交互的多个网页服务器中,用于处理海量用户的网页数据请求。此外,还可以应用在与数据服务器进行交互的多个普通服务器上,用于处理用户的其他数据请求。以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
权利要求
1.一种数据访问的处理方法,包括以下步骤: 统计数据被访问的次数; 判断在预定时间内所述被访问的次数是否超过预设的参考值,若是,则将所述数据标识为热点数据; 从数据服务器获取热点数据,并进行缓存; 判断请求访问的数据是否为热点数据,若是,则从缓存中获取所述热点数据,否则,从所述数据服务器获取所述请求访问的数据。
2.根据权利要求1所述的数据访问的处理方法,其特征在于,所述方法还包括:设有一数据访问阈值,若在预定时间到达之前,所述数据被访问的次数已经超过了阈值,则直接将所述数据标识为热点数据,从数据服务器获取所述热点数据并进行缓存。
3.根据权利要求1所述的数据访问的处理方法,其特征在于,所述将所述数据标识为热点数据的步骤为:记录所述热点数据的标识; 所述判断请求访问的数据是否为热点数据的步骤为: 判断是否存在所述请求访问的数据标识的记录,若是,则所述请求访问的数据为热点数据,否则所述请求访问的数据不为热点数据。
4.根据权利要求1或2所述的数据访问的处理方法,其特征在于,所述方法还包括步骤: 计算所述预定时间内统计的热点 数据总数占预设的热点数据个数的比率; 根据所述比率调整所述参考值。
5.根据权利要求1所述的数据访问的处理方法,其特征在于,所述方法还包括步骤:当从数据服务器获取不到请求访问的数据时,则将所述请求访问的数据记为空记录。
6.根据权利要求5所述的数据访问的处理方法,其特征在于,所述方法还包括步骤:判断请求访问的数据是否为空记录,若是,则不从数据服务器查询请求访问的数据,否则从数据服务器查询请求访问的数据。
7.根据权利要求5或6所述的数据访问的处理方法,其特征在于,所述方法还包括步骤:按照设定的时间间隔清空所述空记录。
8.一种数据访问的处理系统,其特征在于,包括: 热点统计模块,用于统计数据被访问的次数; 热点标志位模块,用于判断在预定时间内所述被访问的次数是否超过预设的参考值,若是,则将所述数据标识为热点数据; 热点缓存模块,用于从数据服务器获取热点数据,并缓存所述热点数据; 所述热点统计模块还用于判断请求访问的数据是否为热点数据,若是,则从所述热点缓存模块中获取所述热点数据,否则,从数据服务器获取所述请求访问的数据。
9.根据权利要求8所述的数据访问的处理系统,其特征在于,所述热点标志位模块还用于设有一数据访问阈值,若在预定时间到达之前,所述数据被访问的次数已经超过了阈值,则直接将所述数据标识为热点数据; 所述热点缓存模块还用于从数据服务器获取所述热点数据并进行缓存。
10.根据权利要求9所述的数据访问的处理系统,其特征在于,所述热点标志位模块用于记录所述热点数据的标识;所述热点统计模块进一步用于判断所述热点标志位模块中是否存在请求访问的数据的标识,若是,则判定所述请求访问的数据为热点数据,否则判定所述请求访问的数据不为热点数据。
11.根据权利要求8或9所述的数据访问的处理系统,其特征在于,所述系统还包括: 参考值调整模块,用于计算所述预定时间内统计的热点数据总数占预设的热点数据个数的比率,根据所述比率调整所述参考值。
12.根据权利要求8所述的数据访问的处理系统,其特征在于,所述系统还包括:空记录模块,用于当从数据服务器获取不到请求访问的数据时,则将所述请求访问的数据记为空记录。
13.根据权利要求12所述的数据访问的处理系统,其特征在于,所述系统还包括:数据查询模块,用于判断请求访问的数据是否为空记录,若是,则不从数据服务器查询请求访问的数据,否则从数据服务器查询请求访问的数据。
14.根据权利要求12或13所述的数据访问的处理系统,其特征在于,所述系统还包括:空记录清空模块,用于按照设定的时间间隔清空记为空记录的数据的记录。
全文摘要
本发明提供了一种数据访问的处理方法和系统,所述方法包括以下步骤统计数据被访问的次数;判断在预定时间内所述被访问的次数是否超过预设的参考值,若是,则将所述数据标识为热点数据;从数据服务器获取热点数据,并进行缓存;判断请求访问的数据是否为热点数据,若是,则从缓存中获取所述热点数据,否则,从数据服务器获取请求访问的数据。本发明能够减少数据服务器的压力,从而能够提高数据访问的性能。
文档编号G06F17/30GK103177005SQ20111043323
公开日2013年6月26日 申请日期2011年12月21日 优先权日2011年12月21日
发明者谢立强 申请人:深圳市腾讯计算机系统有限公司