CN105224560B - 缓存数据的查找方法和装置 - Google Patents
缓存数据的查找方法和装置 Download PDFInfo
- Publication number
- CN105224560B CN105224560B CN201410281533.1A CN201410281533A CN105224560B CN 105224560 B CN105224560 B CN 105224560B CN 201410281533 A CN201410281533 A CN 201410281533A CN 105224560 B CN105224560 B CN 105224560B
- Authority
- CN
- China
- Prior art keywords
- data
- cache
- field
- service
- searched
- 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
- 238000000034 method Methods 0.000 title claims abstract description 47
- 230000014509 gene expression Effects 0.000 claims description 36
- 230000008030 elimination Effects 0.000 claims description 14
- 238000003379 elimination reaction Methods 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 10
- 238000007726 management method Methods 0.000 description 11
- 238000013507 mapping Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 230000000694 effects Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000002349 favourable effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005034 decoration Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种缓存数据的查找方法和装置。其中,该方法包括:获取用于对缓存中的数据元素进行查找的查询条件,其中,缓存中的每个数据元素包括一个或多个字段,每个字段包括字段类型和字段值,查询条件用于指示待查找的字段类型和待查找的字段值;在缓存中查找具有满足查询条件的字段的数据元素;若查找到具有满足查询条件的字段的数据元素,则从缓存中读出查找到的数据元素。本发明解决了在现有的缓存数据的查找方式下业务访问缓存数据时需要执行较为复杂的逻辑从而导致的业务执行效率较低的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种缓存数据的查找方法和装置。
背景技术
缓存可以表示对数据的一种存储方式,其中,相比于在磁盘存储器等落地式存储设备中存储的数据来说,缓存的数据可以被相对快速地写入或读出。根据数据局部性原理,由于访问过的数据通常会被再次访问,因此可以将访问频率较高的部分数据缓存起来,进而具体业务的执行单元如处理器或服务器等可以优先访问缓存中提取数据,这样就加快了数据访问速度。
由此可见,缓存数据的目的是为了业务对其所需的缓存中的具体某个数据进行查找,为达到这一目的,为发明人所知的常用的缓存数据的查找方式之一是利用物理地址直接在缓存中读写数据。一般来说,利用物理地址读写数据通常可以实现较高的读写速度,然而由于缓存数据的物理地址对于业务来说通常是不透明的,或者说业务无法识别在哪个物理地址上存放的数据是业务所需的具有特定意义的数据。因此,作为一种改进的方式,用于管理缓存读写的设备可以维护有一张映射表,该映射表中记录有为业务所知的标识项与缓存数据的物理地址之间的映射关系,从而业务可以通过预先定义的标识项对缓存中的数据进行读写。
然而,上述查找方式及其对应的缓存数据的管理方式并不利于体现出多个数据之间的关联,例如,若业务需要查找某一用户的相关信息,并且该相关信息包括多个方面的信息,则业务通常需要先解析出该相关信息所包含的多个数据项以及多个数据项各自对应的标识项,进而通知缓存管理相对独立地查找出各标识项所标识的数据。显然,这对业务自身的功能提出了更高的要求,并且在大规模的数据读取的背景下,会显著地影响到业务的执行效率。针对这一问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种缓存数据的查找方法和装置,以至少解决在现有的缓存数据的查找方式下业务访问缓存数据时需要执行较为复杂的逻辑从而导致的业务执行效率较低的技术问题。
根据本发明实施例的一个方面,提供了一种缓存数据查找方法,包括:获取用于对缓存中的数据元素进行查找的查询条件,其中,上述缓存中的每个上述数据元素包括一个或多个字段,每个上述字段包括字段类型和字段值,上述查询条件用于指示待查找的字段类型和待查找的字段值;在上述缓存中查找具有满足上述查询条件的字段的数据元素;若查找到上述具有满足上述查询条件的字段的数据元素,则从上述缓存中读出查找到的上述数据元素。
根据本发明实施例的另一方面,还提供了一种缓存数据查找装置,包括:获取单元,用于获取用于对缓存中的数据元素进行查找的查询条件,其中,上述缓存中的每个上述数据元素包括一个或多个字段,每个上述字段包括字段类型和字段值,上述查询条件用于指示待查找的字段类型和待查找的字段值;查找单元,用于在上述缓存中查找具有满足上述查询条件的字段的数据元素;输出单元,用于在查找到上述具有满足上述查询条件的字段的数据元素时,从上述缓存中读出查找到的上述数据元素。
在本发明实施例中,可以结合对缓存数据的结构的进一步定义,以提供基于查询条件对缓存中的一个或多个数据进行查找的功能。具体地,在本发明实施例中,采用了数据元素的形式实现对相互关联的数据的存储,其中,每个数据元素可以包括多个字段,每个字段可以包括字段类型和字段值,相互关联的业务数据可以作为不同的字段值存入缓存中的每个数据元素中,进而业务需要获取该相互关联的业务数据时,则可以基于特定的查询条件查找到包括特定的业务数据的数据元素,并且,由于业务预先向缓存中存入数据或者说字段值时,可以提前配置对应的字段类型,因此缓存中的业务数据对于业务来说是透明的。通过上述方式,便可以简化业务侧的查询操作,比如业务服务器可以仅向缓存管理发送查询条件,便可以获取到所需的业务数据,从而提高了业务的执行效率,进而解决了在现有的缓存数据的查找方式下业务访问缓存数据时需要执行较为复杂的逻辑从而导致的业务执行效率较低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的缓存数据查找方法的示意图;
图2是根据本发明实施例的一种可选的缓存数据查找方法或装置的实施环境的示意图;
图3是根据本发明实施例的一种可选的缓存数据查找装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本发明实施例,提供了一种缓存数据查找方法,如图1所示,该方法包括:
S102:获取用于对缓存中的数据元素进行查找的查询条件,其中,缓存中的每个数据元素包括一个或多个字段,每个字段包括字段类型和字段值,查询条件用于指示待查找的字段类型和待查找的字段值;
S104:在缓存中查找具有满足查询条件的字段的数据元素;
S106:若查找到具有满足查询条件的字段的数据元素,则从缓存中读出查找到的数据元素。
应当明确的是,本发明实施例所要解决的问题之一是提供一种方法,以便于实现对缓存的数据进行有效查找。
具体地,在本发明实施例中,缓存可以表示对数据的一种存储方式,其中,相比于在磁盘存储器等落地式存储设备中存储的数据来说,缓存的数据可以被相对快速地写入或读出。根据数据局部性原理,由于访问过的数据通常会被再次访问,因此可以将访问频率较高的部分数据缓存起来,进而具体业务的执行单元如处理器或服务器等可以优先访问缓存中提取数据,这样就加快了数据访问速度。
由此可见,缓存数据的目的是为了业务对其所需的缓存中的具体某个数据进行查找,为达到这一目的,为发明人所知的常用的缓存数据的查找方式之一是利用物理地址直接在缓存中读写数据。一般来说,利用物理地址读写数据通常可以实现较高的读写速度,然而由于缓存数据的物理地址对于业务来说通常是不透明的,或者说业务无法识别在哪个物理地址上存放的数据是业务所需的具有特定意义的数据。因此,作为一种改进的方式,用于管理缓存读写的设备可以维护有一张映射表,该映射表中记录有为业务所知的标识项与缓存数据的物理地址之间的映射关系,从而业务可以通过预先定义的标识项对缓存中的数据进行读写。
然而,上述查找方式及其对应的缓存数据的管理方式并不利于体现出多个数据之间的关联,例如,若业务需要查找某一用户的相关信息,并且该相关信息包括多个方面的信息,则业务通常需要先解析出该相关信息所包含的多个数据项以及多个数据项各自对应的标识项,进而通知缓存管理相对独立地查找出各标识项所标识的数据。显然,这对业务自身的功能提出了更高的要求,并且在大规模的数据读取的背景下,会显著地影响到业务的执行效率。
为解决这一问题,在本发明实施例中,可以结合对缓存数据的结构的进一步定义,以提供基于查询条件对缓存中的一个或多个数据进行查找的功能。具体地,在本发明实施例中,采用了数据元素的形式实现对相互关联的数据的存储,其中,每个数据元素可以包括多个字段,每个字段可以包括字段类型和字段值,相互关联的业务数据可以作为不同的字段值存入缓存中的每个数据元素中,进而业务需要获取该相互关联的业务数据时,则可以基于特定的查询条件查找到包括特定的业务数据的数据元素,并且,由于业务预先向缓存中存入数据或者说字段值时,可以提前配置对应的字段类型,因此缓存中的业务数据对于业务来说是透明的。通过上述方式,便可以简化业务侧的查询操作,比如业务服务器可以仅向缓存管理发送查询条件,便可以获取到所需的业务数据,从而提高了业务的执行效率,进而解决了在现有的缓存数据的查找方式下业务访问缓存数据时需要执行较为复杂的逻辑从而导致的业务执行效率较低的技术问题。
下面将结合附图和具体的实施例对本发明技术方案及其工作原理进行更为详细的描述。首先结合图2对本发明的技术方案的实施环境进行示例性地描述。
图2示出了根据本发明实施例提供的查找方法的一种可行的实施环境。如图2所示,在本发明实施例中,业务服务器202与缓存服务器204之间存在数据连接,以便于业务服务器202在需要在设置于缓存服务器204的缓存中读写数据时,通过向缓存服务器204发送的读写指令指示缓存服务器204执行对应的处理操作。进一步可选地,在本发明实施例中,还可以设置有落地式存储服务器206,与缓存服务器204之间存在数据连接,以便于在缓存空间不足时淘汰掉部分访问频率较低的数据,并将淘汰掉的数据转存到相对于缓存读写速度较慢、成本较低的落地式存储服务器206上,当缓存服务器204未缓存有业务服务器202所访问的数据时,则可以访问落地式存储服务器206,并将查找到的数据返回给业务服务器202。
具体地,在本发明实施例中,业务服务器可以具体用于执行某些类型的业务,比如查询业务、缴费业务、游戏业务等,或者是对这些业务的进一步细分,如游戏业务中的聊天业务、数据业务等。然而本发明对此不作任何限定,上述各实施方式并不影响本发明技术方案的实施及其技术效果的实现,类似的实施方式均应视为在本发明的保护范围之内。值得注意的是,在本发明实施例中,业务服务器既可以表示执行具体业务的服务器应用,也可以表示能够实现这一功能的计算机或计算机***,本发明对此不作限定。
类似地,在本发明实施例中,缓存服务器可以表示用于对缓存及缓存数据进行管理的服务器应用,也可以表示能够实现这一功能的计算机或计算机***。一般地,缓存区可以与缓存服务器设置在同一设备或***上,然而本发明对此不作限定,例如,在一些实施例中,缓存区也可以设置在其他存储设备上,且该存储设备与缓存服务器之间存在数据连接。
在上述环境下,根据本发明实施例提供的缓存数据查找方法,通过步骤S102,缓存服务器可以先获取用于对缓存中的数据元素进行查找的查询条件。一般地,上述查询条件通常可以携带在业务服务器向缓存服务器发送的用于请求访问缓存中的数据元素的消息中,然而本发明对此不作限定。例如,在一些实施例中,查询条件也可以缓存起来,也即上述查询条件也可以从缓存区获取,在上述场景下。业务服务器通过与缓存服务器预先约定的某些指令便可以指示缓存服务器按预先缓存的查询条件对数据元素进行查询,从而进一步地简化业务服务器侧的执行逻辑。
在另一方面,在本发明实施例中,缓存的业务数据可以以数据元素的形式来存储,一般地,业务数据具体可以是数据元素的字段中的字段值。具体地,在本发明实施例中,每个数据元素可以包括多个字段,每个字段可以包括字段类型和字段值,
以表1所示的一个数据元素为例,其中,该数据元素可以表示与业务所面向的某一用户相关的信息。具体地,该数据元素可以包括表1中的数据项:101、10086、102、2014-1-31、103、1,这些数据项分别属于三个字段a、b和c,其中,字段a可以包括字段类型101和字段值10086,字段b可以包括字段类型102和字段值2014-1-31,字段c可以包括字段类型103和字段值1。更具体地,字段类型101可以代表用户ID,也即用户信息中的用户ID为10086,字段类型102可以代表用户的注册时间,也即用户信息中的注册时间为2014-1-31,字段类型103可以代表用户状态,也即用户信息中的用户状态为1,其中,用户状态为1可以表示用户处于活跃状态,用户状态为0可以表示非活跃状态。
表1
通过上述方式,便可以将相互关联的多个业务数据,例如用户ID“10086”、注册时间“2014-1-31”和用户状态“1”存入缓存区,其中,除这些业务数据外,缓存中还存有与这些字段值对应的字段类型,并且包括字段值和字段类型的字段a、b和c均包含在一个数据元素中,从而在标识出这些业务数据之间的关联的前提下,还可以对数据元素中的通过字段类型来标识的具有不同意义的字段值也即业务数据进行跟踪,进而为后续处理所涉及的基于字段类型和字段值的筛选提供了支持。
在又一方面,在本发明实施例中,查询条件可以用于指示待查找的字段类型和待查找的字段值,换句话说,查询条件可以围绕字段类型和字段值来设置。例如,该查询条件可以针对数据元素中的一个字段进行限定,比如限定数据元素中的具有某一特定字段类型的字段的字段值所需满足某一数值条件,或者,该查询条件也可以对一个数据元素中的多个字段的字段类型及其字段值所需满足的条件进行限定等,本发明对此不作限定。此外,该查询条件通常可以具体表现为一个或一组关系式,然而这并非本发明唯一的实现方式,例如该查询条件也可以表现为某一具体的取值区间或取值范围等,本发明对此不作限定。
在此基础上,根据本发明实施例提供的查找方法,通过步骤S104,缓存服务器可以在缓存中查找具有满足查询条件的字段的数据元素,进而通过步骤S106,从缓存中读出查找到的数据元素,并可以在后续处理中将读出的数据元素返回给业务服务器。
在上述场景下,业务服务器需要获取相互关联的业务数据时,则可以基于特定的查询条件查找到包括特定的业务数据的数据元素,并且,由于业务预先向缓存中存入业务数据到说字段值时,可以提前配置对应的字段类型,因此缓存中的业务数据对于业务来说是透明的。通过上述方式,便可以简化业务侧的查询操作,比如业务服务器可以仅向缓存管理发送查询条件,便可以获取到所需的业务数据,从而提高了业务的执行效率,进而解决了在现有的缓存数据的查找方式下业务访问缓存数据时需要执行较为复杂的逻辑从而导致的业务执行效率较低的技术问题。
具体来说,在本发明实施例中,步骤S104中所描述的查找操作可以根据查询条件来设置,并择优从目前或未来的为本领域技术人员所知的多种可行的查询方式中选取。其中,对于查询条件为逻辑表达式的情形,作为一种可选的操作方式,在本发明实施例中,上述步骤S104可以包括:
S2:查找具有待查找的字段且待查找的字段的字段值满足逻辑关系的数据元素作为具有满足查询条件的字段的数据元素,其中,查询条件为包括字段类型标识和逻辑关系的逻辑表达式,待查找的字段具有由字段类型标识所指示的字段类型。
在本发明实施例中,查询条件可以以逻辑表达式的形式出现,从而进一步地简化业务服务器的接入。例如,对于表1所示的数据元素来说,若业务服务器需要访问该数据元素,则可以向缓存服务器发送逻辑表达式:
“User_ID==10086”,
其中,User_ID可以是用于标识字段类型101的字段类型标识,逻辑运算符“==”表示等于,则该逻辑表达式所指示的待查找的字段是字段类型为101的字段,所指示的字段值是“等于10086”,所包含的逻辑关系是字段类型101对应的字段值应当满足“等于10086”这一条件。在上述场景下,根据步骤S2,由于字段a具有由字段类型标识User_ID所指示的字段类型101,因此步骤S2中所描述的待查找的字段可以是字段a,此外,由于待查找的字段也即字段a的字段值10086满足逻辑关系“等于10086”,因此通过步骤S2可以查找出如表1所示的数据元素。
当然,这只是一种示例,并非是对本发明的限定。例如,在本发明实施例中,逻辑表达式还可以具有更为复杂的结构,例如,在一个实施例中,作为查询条件的逻辑表达式也可以是:
“Reg_Time>2013-1-1&&User_Status==1”
其中,Reg_Time可以是用于标识字段类型102也即注册时间的字段类型标识,User_Status可以是用于标识字段类型103也即用户状态的字段类型标识,逻辑运算符“>”表示大于,“&&”表示逻辑与,“==”表示等于,由此可知,该逻辑表达式所体现出的逻辑关系是字段类型102对应的字段值大于2013-1-1,且字段类型103对应的字段值等于1,从而通过该逻辑表达式所查找到的数据元素对应于注册时间在2013年1月1日之后、并且用户状态为活跃状态的用户的信息。
换而言之,作为一种可选的方式,在本发明实施例中,上述步骤S2可以包括:
S4:判断缓存中的数据元素是否具有全部的待查找的字段;
S6:若缓存中的数据元素具有全部的待查找的字段,则将判断出的数据元素中的每个待查找的字段的字段值代入到逻辑表达式中的与每个待查找的字段对应的字段类型标识中,并判断代入后的表达式是否满足逻辑关系;
S8:若代入后的表达式满足逻辑关系,则将判断出的数据元素作为具有满足查询条件的字段的数据元素。
通过上述实施例,对本发明实施例提供的缓存数据查找方法进行了示例性地描述。应当理解的是,上述实施例仅用于对本发明的理解,而并不会对本发明构成任何不必要的限定。例如,前述实施例以用户信息记录为例描述了一种可行的缓存数据存储结构以及对记录有用户相关信息的数据元素的查找方式,然而本发明并不会限定缓存的数据元素所具体对应的业务,以及该业务所定义的数据元素中各字段的字段值的具体含义以及字段类型的具体形式。
在以上描述的基础上,可选地,在本发明实施例中,在步骤S104之前,上述查找方法还可以包括:
S10:接收业务服务器发送的请求查询数据元素的消息,消息携带有业务标识和/或数据标识,其中,业务标识用于标识业务服务器所执行的业务,数据标识用于标识多个数据元素之间的关联特性;其中,
步骤S104可以包括:
S12:在缓存中的与业务标识和/或数据标识对应的数据记录中查找满足查询条件的数据元素。
在本发明实施例中,由于某一特定业务所需访问的数据通常是与该业务相关的数据,因此在预先向缓存中存放数据时,便可以将缓存的数据标记为与该业务对应。在上述场景下,则可以通过业务标识缩小数据元素的初始查找范围,从而加快查找速度并提高查找操作的效率。
除此之外,还可以利用数据标识缩小数据元素的查找范围。例如,在本发明的一些实施例中,多个数据元素之间也可以具有某种关联,在这一情形下,可以利用同一键值来标记相互关联的多个数据元素,从而形成了具有链特性的一条数据记录。在上述场景下,若业务服务器所需访问的数据从属于某一条数据记录,则可以将该数据记录的键值作为数据标识,从而显著地缩小了缓存服务器所执行的查找操作的查找范围。
例如,对于表1所示的数据元素来说,该数据元素可以如前述实施例中所描述的,用来记录与某一用户相关的信息,在另一实施例中,该表1所示的数据元素也可以用来记录与业务所面向的某一用户相关的多个其他用户的用户信息,比如对于一款社交应用来说,其所生产的业务数据既可以包括该应用的每个用户的信息,也可以包括每个用户所设置的社交好友的信息,从而表1所示的数据元素可以用来记录某一好友的用户信息,如该好友的用户ID、注册时间和活动状态等,并且该好友的这些信息可以在缓存中标记为与该用户对应。在上述场景下,若业务服务器所需提取的数据是某一用户的满足特定条件的好友的信息,则业务服务器可以向缓存服务器发送该用户的用户ID作为数据标识,从而使得缓存服务器在该数据标识对应的范围内查找,这将显著地提升查找速度,并且为业务服务器提供了更为便捷的访问配置接口。
当然,上述实施例仅提供了可行的实施方式之一,并非本发明全部的实施方式。例如,在本发明的一些实施例中,业务服务器发送的请求查询数据元素的消息中也可以不携带有业务标识,而是预先通过业务服务器向缓存服务器的接入来判断出具体是哪个业务需要访问缓存数据,进而也可以将数据元素的查找范围缩小到与接入的该业务对应的数据记录。
进一步可选地,在本发明实施例中,在步骤S104之前,上述查找方法还可以包括:
S14:判断缓存中的数据元素是否满足淘汰条件;
S16:若缓存中的数据元素满足淘汰条件,则将满足判断条件的数据元素从缓存中清除、并转存到读取速度慢于缓存的存储器中。
类似于为本领域技术人员所知的缓存数据的淘汰处理方式,在本发明实施例中,也可以对缓存的数据元素采用多种可行的算法进行淘汰,以便于将访问频率下降的数据元素淘汰出局,达到提高缓存的使用效率的目的。例如,作为可行的实施方式之一,在本发明实施例中,上述步骤S14可以包括:
S18:判断缓存中的数据元素的前次访问时间与当前时间之间的时间间隔是否大于等于第一阈值,和/或,判断缓存中的数据元素在当前时间之前的预设时长内的访问次数是否小于等于第二阈值;
S20:若时间间隔大于等于第一阈值和/或访问次数小于等于第二阈值,则判断出满足淘汰条件。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
根据本发明实施例,还提供了一种用于实施上述缓存数据查找方法的缓存数据查找装置,如图3所示,该装置包括:
1)获取单元302,用于获取用于对缓存中的数据元素进行查找的查询条件,其中,缓存中的每个数据元素包括一个或多个字段,每个字段包括字段类型和字段值,查询条件用于指示待查找的字段类型和待查找的字段值;
2)查找单元304,用于在缓存中查找具有满足查询条件的字段的数据元素;
3)输出单元306,用于在查找到具有满足查询条件的字段的数据元素时,从缓存中读出查找到的数据元素。
应当明确的是,本发明实施例所要解决的问题之一是提供一种装置,以便于实现对缓存的数据进行有效查找。
具体地,在本发明实施例中,缓存可以表示对数据的一种存储方式,其中,相比于在磁盘存储器等落地式存储设备中存储的数据来说,缓存的数据可以被相对快速地写入或读出。根据数据局部性原理,由于访问过的数据通常会被再次访问,因此可以将访问频率较高的部分数据缓存起来,进而具体业务的执行单元如处理器或服务器等可以优先访问缓存中提取数据,这样就加快了数据访问速度。
由此可见,缓存数据的目的是为了业务对其所需的缓存中的具体某个数据进行查找,为达到这一目的,为发明人所知的常用的缓存数据的查找方式之一是利用物理地址直接在缓存中读写数据。一般来说,利用物理地址读写数据通常可以实现较高的读写速度,然而由于缓存数据的物理地址对于业务来说通常是不透明的,或者说业务无法识别在哪个物理地址上存放的数据是业务所需的具有特定意义的数据。因此,作为一种改进的方式,用于管理缓存读写的设备可以维护有一张映射表,该映射表中记录有为业务所知的标识项与缓存数据的物理地址之间的映射关系,从而业务可以通过预先定义的标识项对缓存中的数据进行读写。
然而,上述查找方式及其对应的缓存数据的管理方式并不利于体现出多个数据之间的关联,例如,若业务需要查找某一用户的相关信息,并且该相关信息包括多个方面的信息,则业务通常需要先解析出该相关信息所包含的多个数据项以及多个数据项各自对应的标识项,进而通知缓存管理相对独立地查找出各标识项所标识的数据。显然,这对业务自身的功能提出了更高的要求,并且在大规模的数据读取的背景下,会显著地影响到业务的执行效率。
为解决这一问题,在本发明实施例中,可以结合对缓存数据的结构的进一步定义,以提供基于查询条件对缓存中的一个或多个数据进行查找的功能。具体地,在本发明实施例中,采用了数据元素的形式实现对相互关联的数据的存储,其中,每个数据元素可以包括多个字段,每个字段可以包括字段类型和字段值,相互关联的业务数据可以作为不同的字段值存入缓存中的每个数据元素中,进而业务需要获取该相互关联的业务数据时,则可以基于特定的查询条件查找到包括特定的业务数据的数据元素,并且,由于业务预先向缓存中存入数据或者说字段值时,可以提前配置对应的字段类型,因此缓存中的业务数据对于业务来说是透明的。通过上述方式,便可以简化业务侧的查询操作,比如业务服务器可以仅向缓存管理发送查询条件,便可以获取到所需的业务数据,从而提高了业务的执行效率,进而解决了在现有的缓存数据的查找方式下业务访问缓存数据时需要执行较为复杂的逻辑从而导致的业务执行效率较低的技术问题。
下面将结合附图和具体的实施例对本发明技术方案及其工作原理进行更为详细的描述。首先结合图2对本发明的技术方案的实施环境进行示例性地描述。
图2示出了根据本发明实施例提供的查找装置的一种可行的实施环境。如图2所示,在本发明实施例中,业务服务器202与缓存服务器204之间存在数据连接,以便于业务服务器202在需要在设置于缓存服务器204的缓存中读写数据时,通过向缓存服务器204发送的读写指令指示缓存服务器204执行对应的处理操作,其中,上述查找装置可以设置在缓存服务器202上。进一步可选地,在本发明实施例中,还可以设置有落地式存储服务器206,与缓存服务器204之间存在数据连接,以便于在缓存空间不足时淘汰掉部分访问频率较低的数据,并将淘汰掉的数据转存到相对于缓存读写速度较慢、成本较低的落地式存储服务器206上,当缓存服务器204未缓存有业务服务器202所访问的数据时,则可以访问落地式存储服务器206,并将查找到的数据返回给业务服务器202。
具体地,在本发明实施例中,业务服务器可以具体用于执行某些类型的业务,比如查询业务、缴费业务、游戏业务等,或者是对这些业务的进一步细分,如游戏业务中的聊天业务、数据业务等。然而本发明对此不作任何限定,上述各实施方式并不影响本发明技术方案的实施及其技术效果的实现,类似的实施方式均应视为在本发明的保护范围之内。值得注意的是,在本发明实施例中,业务服务器既可以表示执行具体业务的服务器应用,也可以表示能够实现这一功能的计算机或计算机***,本发明对此不作限定。
类似地,在本发明实施例中,缓存服务器可以表示用于对缓存及缓存数据进行管理的服务器应用,也可以表示能够实现这一功能的计算机或计算机***。一般地,缓存区可以与缓存服务器设置在同一设备或***上,然而本发明对此不作限定,例如,在一些实施例中,缓存区也可以设置在其他存储设备上,且该存储设备与缓存服务器之间存在数据连接。
在上述环境下根据本发明实施例提供的缓存数据查找装置通过获取单元302,缓存服务器可以先获取用于对缓存中的数据元素进行查找的查询条件。一般地,上述查询条件通常可以携带在业务服务器向缓存服务器发送的用于请求访问缓存中的数据元素的消息中,然而本发明对此不作限定。例如,在一些实施例中,查询条件也可以缓存起来,也即上述查询条件也可以从缓存区获取,在上述场景下。业务服务器通过与缓存服务器预先约定的某些指令便可以指示缓存服务器按预先缓存的查询条件对数据元素进行查询,从而进一步地简化业务服务器侧的执行逻辑。
在另一方面,在本发明实施例中,缓存的业务数据可以以数据元素的形式来存储,一般地,业务数据具体可以是数据元素的字段中的字段值。具体地,在本发明实施例中,每个数据元素可以包括多个字段,每个字段可以包括字段类型和字段值,
以实施例1中的表1所示的一个数据元素为例,其中,该数据元素可以表示与业务所面向的某一用户相关的信息。具体地,该数据元素可以包括表1中的数据项:101、10086、102、2014-1-31、103、1,这些数据项分别属于三个字段a、b和c,其中,字段a可以包括字段类型101和字段值10086,字段b可以包括字段类型102和字段值2014-1-31,字段c可以包括字段类型103和字段值1。更具体地,字段类型101可以代表用户ID,也即用户信息中的用户ID为10086,字段类型102可以代表用户的注册时间,也即用户信息中的注册时间为2014-1-31,字段类型103可以代表用户状态,也即用户信息中的用户状态为1,其中,用户状态为1可以表示用户处于活跃状态,用户状态为0可以表示非活跃状态。
通过上述方式,便可以将相互关联的多个业务数据,例如用户ID“10086”、注册时间“2014-1-31”和用户状态“1”存入缓存区,其中,除这些业务数据外,缓存中还存有与这些字段值对应的字段类型,并且包括字段值和字段类型的字段a、b和c均包含在一个数据元素中,从而在标识出这些业务数据之间的关联的前提下,还可以对数据元素中的通过字段类型来标识的具有不同意义的字段值也即业务数据进行跟踪,进而为后续处理所涉及的基于字段类型和字段值的筛选提供了支持。
在又一方面,在本发明实施例中,查询条件可以用于指示待查找的字段类型和待查找的字段值,换句话说,查询条件可以围绕字段类型和字段值来设置。例如,该查询条件可以针对数据元素中的一个字段进行限定,比如限定数据元素中的具有某一特定字段类型的字段的字段值所需满足某一数值条件,或者,该查询条件也可以对一个数据元素中的多个字段的字段类型及其字段值所需满足的条件进行限定等,本发明对此不作限定。此外,该查询条件通常可以具体表现为一个或一组关系式,然而这并非本发明唯一的实现方式,例如该查询条件也可以表现为某一具体的取值区间或取值范围等,本发明对此不作限定。
在此基础上,根据本发明实施例提供的查找装置,通过查找单元304,缓存服务器可以在缓存中查找具有满足查询条件的字段的数据元素,进而通过输出单元306,从缓存中读出查找到的数据元素,并可以在后续处理中将读出的数据元素返回给业务服务器。
在上述场景下,业务服务器需要获取相互关联的业务数据时,则可以基于特定的查询条件查找到包括特定的业务数据的数据元素,并且,由于业务预先向缓存中存入业务数据到说字段值时,可以提前配置对应的字段类型,因此缓存中的业务数据对于业务来说是透明的。通过上述方式,便可以简化业务侧的查询操作,比如业务服务器可以仅向缓存管理发送查询条件,便可以获取到所需的业务数据,从而提高了业务的执行效率,进而解决了在现有的缓存数据的查找方式下业务访问缓存数据时需要执行较为复杂的逻辑从而导致的业务执行效率较低的技术问题。
具体来说,在本发明实施例中,查找单元304中所描述的查找操作可以根据查询条件来设置,并择优从目前或未来的为本领域技术人员所知的多种可行的查询方式中选取。其中,对于查询条件为逻辑表达式的情形,作为一种可选的操作方式,在本发明实施例中,上述查找单元304可以包括:
1)第一查找模块,用于查找具有待查找的字段且待查找的字段的字段值满足逻辑关系的数据元素作为具有满足查询条件的字段的数据元素,其中,查询条件为包括字段类型标识和逻辑关系的逻辑表达式,待查找的字段具有由字段类型标识所指示的字段类型。
在本发明实施例中,查询条件可以以逻辑表达式的形式出现,从而进一步地简化业务服务器的接入。例如,对于表1所示的数据元素来说,若业务服务器需要访问该数据元素,则可以向缓存服务器发送逻辑表达式:
“User_ID==10086”,
其中,User_ID可以是用于标识字段类型101的字段类型标识,逻辑运算符“==”表示等于,则该逻辑表达式所指示的待查找的字段是字段类型为101的字段,所指示的字段值是“等于10086”,所包含的逻辑关系是字段类型101对应的字段值应当满足“等于10086”这一条件。在上述场景下,根据步骤S2,由于字段a具有由字段类型标识User_ID所指示的字段类型101,因此步骤S2中所描述的待查找的字段可以是字段a,此外,由于待查找的字段也即字段a的字段值10086满足逻辑关系“等于10086”,因此通过步骤S2可以查找出如表1所示的数据元素。
当然,这只是一种示例,并非是对本发明的限定。例如,在本发明实施例中,逻辑表达式还可以具有更为复杂的结构,例如,在一个实施例中,作为查询条件的逻辑表达式也可以是:
“Reg_Time>2013-1-1&&User_Status==1”
其中,Reg_Time可以是用于标识字段类型102也即注册时间的字段类型标识,User_Status可以是用于标识字段类型103也即用户状态的字段类型标识,逻辑运算符“>”表示大于,“&&”表示逻辑与,“==”表示等于,由此可知,该逻辑表达式所体现出的逻辑关系是字段类型102对应的字段值大于2013-1-1,且字段类型103对应的字段值等于1,从而通过该逻辑表达式所查找到的数据元素对应于注册时间在2013年1月1日之后、并且用户状态为活跃状态的用户的信息。
换而言之,作为一种可选的方式,在本发明实施例中,上述第一查找模块可以包括:
1)第一判断子模块,用于判断缓存中的数据元素是否具有全部的待查找的字段;
2)第二判断子模块,用于在缓存中的数据元素具有全部的待查找的字段时,将判断出的数据元素中的每个待查找的字段的字段值代入到逻辑表达式中的与每个待查找的字段对应的字段类型标识中,并判断代入后的表达式是否满足逻辑关系;
3)处理子模块,用于在代入后的表达式满足逻辑关系时,将判断出的数据元素作为具有满足查询条件的字段的数据元素。
通过上述实施例,对本发明实施例提供的缓存数据查找装置进行了示例性地描述。应当理解的是,上述实施例仅用于对本发明的理解,而并不会对本发明构成任何不必要的限定。例如,前述实施例以用户信息记录为例描述了一种可行的缓存数据存储结构以及对记录有用户相关信息的数据元素的查找方式,然而本发明并不会限定缓存的数据元素所具体对应的业务,以及该业务所定义的数据元素中各字段的字段值的具体含义以及字段类型的具体形式。
在以上描述的基础上,可选地,在本发明实施例中,与查找单元304耦合地,上述查找装置还可以包括:
1)接收单元,用于接收业务服务器发送的请求查询数据元素的消息,消息携带有业务标识和/或数据标识,其中,业务标识用于标识业务服务器所执行的业务,数据标识用于标识多个数据元素之间的关联特性;其中,
查找单元304可以包括:
1)第二查找模块,用于在缓存中的与业务标识和/或数据标识对应的数据记录中查找满足查询条件的数据元素。
在本发明实施例中,由于某一特定业务所需访问的数据通常是与该业务相关的数据,因此在预先向缓存中存放数据时,便可以将缓存的数据标记为与该业务对应。在上述场景下,则可以通过业务标识缩小数据元素的初始查找范围,从而加快查找速度并提高查找操作的效率。
除此之外,还可以利用数据标识缩小数据元素的查找范围。例如,在本发明的一些实施例中,多个数据元素之间也可以具有某种关联,在这一情形下,可以利用同一键值来标记相互关联的多个数据元素,从而形成了具有链特性的一条数据记录。在上述场景下,若业务服务器所需访问的数据从属于某一条数据记录,则可以将该数据记录的键值作为数据标识,从而显著地缩小了缓存服务器所执行的查找操作的查找范围。
例如,对于表1所示的数据元素来说,该数据元素可以如前述实施例中所描述的,用来记录与某一用户相关的信息,在另一实施例中,该表1所示的数据元素也可以用来记录与业务所面向的某一用户相关的多个其他用户的用户信息,比如对于一款社交应用来说,其所生产的业务数据既可以包括该应用的每个用户的信息,也可以包括每个用户所设置的社交好友的信息,从而表1所示的数据元素可以用来记录某一好友的用户信息,如该好友的用户ID、注册时间和活动状态等,并且该好友的这些信息可以在缓存中标记为与该用户对应。在上述场景下,若业务服务器所需提取的数据是某一用户的满足特定条件的好友的信息,则业务服务器可以向缓存服务器发送该用户的用户ID作为数据标识,从而使得缓存服务器在该数据标识对应的范围内查找,这将显著地提升查找速度,并且为业务服务器提供了更为便捷的访问配置接口。
当然,上述实施例仅提供了可行的实施方式之一,并非本发明全部的实施方式。例如,在本发明的一些实施例中,业务服务器发送的请求查询数据元素的消息中也可以不携带有业务标识,而是预先通过业务服务器向缓存服务器的接入来判断出具体是哪个业务需要访问缓存数据,进而也可以将数据元素的查找范围缩小到与接入的该业务对应的数据记录。
进一步可选地,在本发明实施例中,上述查找装置还可以包括:
1)判断单元,用于判断缓存中的数据元素是否满足淘汰条件;
2)转存单元,用于在缓存中的数据元素满足淘汰条件时,将满足判断条件的数据元素从缓存中清除、并转存到读取速度慢于缓存的存储器中。
类似于为本领域技术人员所知的缓存数据的淘汰处理方式,在本发明实施例中,也可以对缓存的数据元素采用多种可行的算法进行淘汰,以便于将访问频率下降的数据元素淘汰出局,达到提高缓存的使用效率的目的。例如,作为可行的实施方式之一,在本发明实施例中,上述步骤S14可以包括:
S18:判断缓存中的数据元素的前次访问时间与当前时间之间的时间间隔是否大于等于第一阈值,和/或,判断缓存中的数据元素在当前时间之前的预设时长内的访问次数是否小于等于第二阈值;
S20:若时间间隔大于等于第一阈值和/或访问次数小于等于第二阈值,则判断出满足淘汰条件。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的服务器,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (8)
1.一种缓存数据查找方法,其特征在于,包括:
获取用于对缓存中的数据元素进行查找的查询条件,其中,所述缓存中的每个所述数据元素包括一个或多个字段,每个所述字段包括字段类型和字段值,所述查询条件用于指示待查找的字段类型和待查找的字段值,相互关联的业务数据作为不同的字段值存入每个所述数据元素中;
在所述缓存中查找具有满足所述查询条件的字段的数据元素,其中,所述查询条件为包括字段类型标识和逻辑关系的逻辑表达式,待查找的字段具有由所述字段类型标识所指示的字段类型,所述逻辑表达式用于指示所述待查找的字段值之间的所述逻辑关系;
若查找到所述具有满足所述查询条件的字段的数据元素,则从所述缓存中读出查找到的所述数据元素;
其中,所述在所述缓存中查找具有满足所述查询条件的字段的数据元素包括:判断所述缓存中的数据元素是否具有全部的所述待查找的字段;
若所述缓存中的数据元素具有全部的所述待查找的字段,则将判断出的所述数据元素中的每个所述待查找的字段的字段值代入到所述逻辑表达式中的与每个所述待查找的字段对应的字段类型标识中,并判断代入后的表达式是否满足所述逻辑关系;
若所述代入后的表达式满足所述逻辑关系,则将判断出的所述数据元素作为所述具有满足所述查询条件的字段的数据元素。
2.根据权利要求1所述的方法,其特征在于,
在所述在所述缓存中查找具有满足所述查询条件的字段的数据元素之前,所述方法还包括:接收业务服务器发送的请求查询数据元素的消息,所述消息携带有业务标识和/或数据标识,其中,所述业务标识用于标识所述业务服务器所执行的业务,所述数据标识用于标识多个所述数据元素之间的关联特性;
所述在所述缓存中查找具有满足所述查询条件的字段的数据元素包括:在所述缓存中的与所述业务标识和/或数据标识对应的数据记录中查找满足所述查询条件的数据元素。
3.根据权利要求1所述的方法,其特征在于,在所述在所述缓存中查找具有满足所述查询条件的字段的数据元素之前,所述方法还包括:
判断所述缓存中的数据元素是否满足淘汰条件;
若所述缓存中的数据元素满足所述淘汰条件,则将满足所述判断条件的所述数据元素从所述缓存中清除、并转存到读取速度慢于所述缓存的存储器中。
4.根据权利要求3所述的方法,其特征在于,所述判断所述缓存中的数据元素是否满足淘汰条件包括:
判断所述缓存中的数据元素的前次访问时间与当前时间之间的时间间隔是否大于等于第一阈值,和/或,判断所述缓存中的数据元素在当前时间之前的预设时长内的访问次数是否小于等于第二阈值;
若所述时间间隔大于等于所述第一阈值和/或所述访问次数小于等于所述第二阈值,则判断出满足所述淘汰条件。
5.一种缓存数据查找装置,其特征在于,包括:
获取单元,用于获取用于对缓存中的数据元素进行查找的查询条件,其中,所述缓存中的每个所述数据元素包括一个或多个字段,每个所述字段包括字段类型和字段值,所述查询条件用于指示待查找的字段类型和待查找的字段值,相互关联的业务数据作为不同的字段值存入每个所述数据元素中;
查找单元,用于在所述缓存中查找具有满足所述查询条件的字段的数据元素,其中,所述查询条件为包括字段类型标识和逻辑关系的逻辑表达式,待查找的字段具有由所述字段类型标识所指示的字段类型,所述逻辑表达式用于指示所述待查找的字段值之间的所述逻辑关系;
输出单元,用于在查找到所述具有满足所述查询条件的字段的数据元素时,从所述缓存中读出查找到的所述数据元素,;
其中,所述查找单元包括:
第一判断子模块,用于判断所述缓存中的数据元素是否具有全部的所述待查找的字段;
第二判断子模块,用于在所述缓存中的数据元素具有全部的所述待查找的字段时,将判断出的所述数据元素中的每个所述待查找的字段的字段值代入到所述逻辑表达式中的与每个所述待查找的字段对应的字段类型标识中,并判断代入后的表达式是否满足所述逻辑关系;
处理子模块,用于在所述代入后的表达式满足所述逻辑关系时,将判断出的所述数据元素作为所述具有满足所述查询条件的字段的数据元素。
6.根据权利要求5所述的装置,其特征在于,
所述装置还包括:接收单元,用于接收业务服务器发送的请求查询数据元素的消息,所述消息携带有业务标识和/或数据标识,其中,所述业务标识用于标识所述业务服务器所执行的业务,所述数据标识用于标识多个所述数据元素之间的关联特性;
所述查找单元包括:第二查找模块,用于在所述缓存中的与所述业务标识和/或数据标识对应的数据记录中查找满足所述查询条件的数据元素。
7.根据权利要求5所述的装置,其特征在于,还包括:
判断单元,用于判断所述缓存中的数据元素是否满足淘汰条件;
转存单元,用于在所述缓存中的数据元素满足所述淘汰条件时,将满足所述判断条件的所述数据元素从所述缓存中清除、并转存到读取速度慢于所述缓存的存储器中。
8.根据权利要求7所述的装置,其特征在于,所述判断单元包括:
判断模块,用于判断所述缓存中的数据元素的前次访问时间与当前时间之间的时间间隔是否大于等于第一阈值,和/或,判断所述缓存中的数据元素在当前时间之前的预设时长内的访问次数是否小于等于第二阈值;
处理模块,用于在所述时间间隔大于等于所述第一阈值和/或所述访问次数小于等于所述第二阈值时,判断出满足所述淘汰条件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410281533.1A CN105224560B (zh) | 2014-06-20 | 2014-06-20 | 缓存数据的查找方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410281533.1A CN105224560B (zh) | 2014-06-20 | 2014-06-20 | 缓存数据的查找方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105224560A CN105224560A (zh) | 2016-01-06 |
CN105224560B true CN105224560B (zh) | 2019-12-06 |
Family
ID=54993531
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410281533.1A Active CN105224560B (zh) | 2014-06-20 | 2014-06-20 | 缓存数据的查找方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105224560B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106897280B (zh) * | 2015-12-17 | 2020-07-14 | 菜鸟智能物流控股有限公司 | 数据查询方法及装置 |
CN106326389A (zh) * | 2016-08-17 | 2017-01-11 | 深圳市金证科技股份有限公司 | 一种基于数据缓存的业务请求处理方法及*** |
CN107104954B (zh) * | 2017-04-06 | 2020-04-07 | 北京首都机场节能技术服务有限公司 | 一种通信方法、控制终端及通信*** |
CN107943542A (zh) * | 2017-11-28 | 2018-04-20 | 山东浪潮通软信息科技有限公司 | 一种配置信息管理方法、装置、可读介质及存储控制器 |
CN109325056A (zh) * | 2018-08-21 | 2019-02-12 | 中国平安财产保险股份有限公司 | 一种大数据处理方法及装置、通信设备 |
CN110019277A (zh) * | 2019-01-17 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 一种数据累积的方法、数据查询的方法、装置及设备 |
CN110737680A (zh) * | 2019-09-23 | 2020-01-31 | 贝壳技术有限公司 | 缓存数据管理方法、装置、存储介质及电子设备 |
CN114741630A (zh) * | 2021-01-07 | 2022-07-12 | 华为云计算技术有限公司 | 一种淘汰数据的方法、装置、缓存节点以及缓存*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521416A (zh) * | 2011-12-28 | 2012-06-27 | 用友软件股份有限公司 | 数据关联查询方法和数据关联查询装置 |
CN103544191A (zh) * | 2012-07-17 | 2014-01-29 | 人人游戏网络科技发展(上海)有限公司 | 一种用于读取缓存数据的方法和设备 |
CN103678638A (zh) * | 2013-12-20 | 2014-03-26 | 厦门雅迅网络股份有限公司 | 一种基于磁盘的对象缓存方法 |
CN103729471A (zh) * | 2014-01-21 | 2014-04-16 | 华为软件技术有限公司 | 数据库查询方法和装置 |
CN103853727A (zh) * | 2012-11-29 | 2014-06-11 | 深圳中兴力维技术有限公司 | 提高大数据量查询性能的方法及*** |
-
2014
- 2014-06-20 CN CN201410281533.1A patent/CN105224560B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521416A (zh) * | 2011-12-28 | 2012-06-27 | 用友软件股份有限公司 | 数据关联查询方法和数据关联查询装置 |
CN103544191A (zh) * | 2012-07-17 | 2014-01-29 | 人人游戏网络科技发展(上海)有限公司 | 一种用于读取缓存数据的方法和设备 |
CN103853727A (zh) * | 2012-11-29 | 2014-06-11 | 深圳中兴力维技术有限公司 | 提高大数据量查询性能的方法及*** |
CN103678638A (zh) * | 2013-12-20 | 2014-03-26 | 厦门雅迅网络股份有限公司 | 一种基于磁盘的对象缓存方法 |
CN103729471A (zh) * | 2014-01-21 | 2014-04-16 | 华为软件技术有限公司 | 数据库查询方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105224560A (zh) | 2016-01-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105224560B (zh) | 缓存数据的查找方法和装置 | |
WO2017080398A1 (zh) | 一种用户群体的划分方法和装置 | |
TW201937429A (zh) | 一種判定行銷方案的方法、裝置及電子設備 | |
CN111046237B (zh) | 用户行为数据处理方法、装置、电子设备及可读介质 | |
CN110020086B (zh) | 一种用户画像查询方法及装置 | |
CN109582470B (zh) | 一种数据处理方法及数据处理装置 | |
JP2012526320A (ja) | 検索エンジンインデクシング及びインデックスを使用する検索のための方法とシステム | |
CN109857760A (zh) | 快速响应检索方法及装置、计算机装置及存储介质 | |
CN107103011B (zh) | 终端数据搜索的实现方法和装置 | |
CN103617267A (zh) | 社交化扩展搜索方法及装置、*** | |
CN112559809A (zh) | 消费者多渠道数据整合方法、***、设备及存储介质 | |
US8577965B2 (en) | Knowledge base broadcasting | |
CN106933903B (zh) | 应用于分布式存储的存储方法及装置 | |
CN110545233B (zh) | 一种信息推送方法、装置、电子设备及存储介质 | |
AU2020203282B2 (en) | Method and system for matching multi-dimensional data units in electronic information system | |
CN106503198A (zh) | 一种基于hadoop元数据的冷数据识别方法及*** | |
CN106326295B (zh) | 语义数据的存储方法及装置 | |
CN109815351B (zh) | 信息查询方法及相关产品 | |
CN106446080B (zh) | 数据查询的方法、查询服务设备、客户端设备和数据*** | |
CN105095283A (zh) | 网络社交***中准好友的推荐方法和*** | |
CN110598072B (zh) | 一种特征数据聚合方法及装置 | |
CN114297236A (zh) | 一种数据血缘分析方法、终端设备及存储介质 | |
CN111046249A (zh) | 一种数据存储、定位、应用方法及相关装置 | |
US10037155B2 (en) | Preventing write amplification during frequent data updates | |
US10019248B2 (en) | System and method for service matching of instant message software |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |