CN103268343A - 将关系数据库和缓存透明结合的系统和方法 - Google Patents
将关系数据库和缓存透明结合的系统和方法 Download PDFInfo
- Publication number
- CN103268343A CN103268343A CN2013101971893A CN201310197189A CN103268343A CN 103268343 A CN103268343 A CN 103268343A CN 2013101971893 A CN2013101971893 A CN 2013101971893A CN 201310197189 A CN201310197189 A CN 201310197189A CN 103268343 A CN103268343 A CN 103268343A
- Authority
- CN
- China
- Prior art keywords
- result set
- sql
- key assignments
- buffer memory
- application system
- 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.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种将关系数据库和缓存透明结合的系统和方法。所述包括:应用系统,当需要读取关系数据库时,所述应用系统发送SQL查询;控制中心,用于确定所述SQL查询是否已被缓存,并将结果集返回给所述应用系统;数据库读单元,用于在所述SQL查询未被缓存时,直接查询所述关系数据库,并且从所述关系数据库获得结果;结果集生成单元,用于从所获得的结果构建结果集;结果集反序列化单元,用于将所构建的结果集序列化;缓存写单元,用于将序列化的结果集作为所述键值的值写入缓存中;缓存读单元,用于在所述SQL查询已被缓存时,从所述缓存中读取结果集的值;以及结果集序列化单元,用于对结果集的值执行反序列化,并返回反序列化的结果集。
Description
技术领域
本发明涉及数据缓存,更具体地,本发明涉及将关系数据库和缓存透明结合的系统和方法。
背景技术
关系数据库经过几十年的发展,已经日益成熟。其中一项重要的技术是对缓存的使用。在关系数据库中,用户可能多次执行相同的查询语句。为了提高查询效率,可以将用户的查询的结果放入缓存中。当用户下一次再执行相同查询时,就可以直接从缓存中获取数据,而不用到硬盘中的数据文件中去读取数据,也可以省去相关解析的工作。因为内存的运行速度要比硬盘快的多。为此通过缓存机制,可以提高查询的效率。
图1示出了现有技术中关系数据库和缓存的实现模式。
在图1所示的实现模式中,当第一次只读访问时,应用系统根据SQL等键值,发现查询结果未缓存;应用系统使用JDBC等驱动直接访问关系数据库,通过SQL查询得出结果集;应用系统将结果集序列化之后,存储到缓存中。当之后进行只读访问时,应用系统根据查询SQL等键值,发现查询结果已经缓存;应用系统直接访问缓存,读取结果集;进行反序列化;应用系统得到结果集。此外,应用系统设置在缓存中的结果集,经历某个时间周期之后失效。
因此,应用系统自己来控制缓存管理。应用系统不仅要完成自身的业务,还需要控制缓存的生命周期。缓存管理与应用系统捆绑在一起,导致自身逻辑的复杂性。
从以上可以看出,在现有的实现模式中,存在以下缺点:应用系统内嵌缓存管理,导致数据存取逻辑的复杂化,并且与业务绑定在一起,导致代码实现复杂;为简单起见,只缓存只读的结果;采用周期性失效,而不论该结果集中的数据在关系数据库中是否已经改变,从而产生重读等浪费。
因而,期望提供一种改进的缓存实现的系统和方法。
发明内容
为了解决现有技术中的上述缺点和问题中的至少一个而提出本发明。
根据一个方面,本发明提出了一种将关系数据库和缓存透明结合的系统,包括:应用系统,当需要读取关系数据库时,所述应用系统发送SQL查询;控制中心,用于从所述应用系统发送的所述SQL查询提取关键字,生成与所述SQL查询相关的键值,根据所述键值确定所述SQL查询是否已被缓存,并将与所述SQL查询相关的结果集返回给所述应用系统;关系数据库,用于存储并管理数据;缓存,用于缓存先前查询的结果集;数据库读单元,用于在所述SQL查询未被缓存时,直接查询所述关系数据库,并且从所述关系数据库获得结果;结果集生成单元,用于从所述数据库读单元获得的结果构建结果集,并返回所构建的结果集;结果集反序列化单元,用于将所构建的结果集序列化;缓存写单元,用于将序列化的结果集作为所述键值的值写入缓存中;缓存读单元,用于在所述SQL查询已被缓存时,从所述缓存中读取结果集的值;以及结果集序列化单元,用于对所述缓存读单元读取的结果集的值执行反序列化,并返回反序列化的结果集。
可选地,所述系统进一步包括数据库写单元,其中,当需要写关系数据库时,所述应用系统发送写SQL;并且所述控制中心通过穿透写模式或缓冲写模式而将所述写SQL所涉及的数据写入所述关系数据库。
可选地,在所述穿透写模式中,所述控制中心从所述应用系统发送的写SQL提取关键字,生成与所述写SQL相关的键值,将缓存的相应键值对设置为无效,然后所述数据库写单元将所述写SQL所涉及的数据写入关系数据库。
可选地,在所述缓冲写模式中,所述控制中心从所述应用系统发送的写SQL提取关键字,生成与所述写SQL相关的键值,利用所述结果集序列化单元序列化的数据更新缓存的相应键值的值,然后所述数据库写单元在所述控制中心的控制下定期地将更新的数据写入关系数据库。
可选地,所述键值等于数据库连接+用户名+数据库库名+数据表名+字段映射。
可选地,根据所述键值确定SQL查询是否已被缓存包括将所生成的键值与缓存的键值进行匹配,如果匹配,则确定所述SQL查询已被缓存。
根据本发明的另一个方面,提出了一种应用系统读的方法,包括:由应用系统发送SQL查询;通过控制中心确定所述SQL查询是否已被缓存;如果确定所述SQL查询未被缓存,则:直接查询关系数据库,并且从所述关系数据库获得结果;从所获得的结果构建结果集,并将所构建的结果集返回所述控制中心;将所构建的结果集序列化;将序列化的结果集作为键值的值写入缓存中,如果确定SQL查询已被缓存,则:从缓存中读取结果集的值;对从所述缓存中读取的结果集的值执行反序列化,并将反序列化的结果集返回所述控制中心;通过所述控制中心将结果集返回给所述应用系统。
可选地,确定所述SQL查询是否已被缓存包括:从所述应用系统发送的SQL查询提取关键字,生成与所述SQL查询相关的键值,根据所述键值确定所述SQL查询是否已被缓存。
可选地,根据所述键值确定所述SQL查询是否已被缓存包括:将所生成的键值与缓存的键值进行匹配,如果匹配,则确定所述SQL查询已被缓存。
可选地,所述键值等于数据库连接+用户名+数据库库名+数据表名+字段映射。
根据本发明的另一方面,提出了一种应用系统写的方法,包括:由应用系统发送写SQL;通过控制中心确定采用穿透写模式还是缓冲写模式;当确定采用所述穿透写模式时,通过所述控制中心从所述应用系统发送的写SQL提取关键字,生成与所述写SQL相关的键值;将缓存的相应键值对设置为无效;将所述写SQL所涉及的数据写入关系数据库,当确定采用所述缓冲写模式时,通过所述控制中心从所述应用系统发送的写SQL提取关键字,生成与所述写SQL相关的键值;更新缓存的相应键值的值;在所述控制中心的控制下定期地将更新的数据写入关系数据库。
附图说明
通过下面结合附图进行的描述,本发明一些示范性实施例的上述和其他方面、特征和优点对于本领域技术人员来说将变得显而易见,其中:
图1示出了现有技术中关系数据库和缓存的实现模式;
图2是示出根据本发明的实施例的将关系数据库和缓存透明结合的系统的框图;
图3是示出根据本发明的实施例的应用系统读的流程图;以及
图4是示出根据本发明的实施例的应用系统写的流程图。
具体实施方式
提供参考附图的下面描述以帮助全面理解本发明的示范性实施例。其包括各种细节以助于理解,而应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,省略了对公知功能和结构的描述。
根据本发明的将关系数据库和缓存透明结合的系统和方法,通过将缓存管理与应用系统分离,降低了应用系统的逻辑的复杂性,提高了缓存功能的重用性并便利了缓存的管理。
下面将参考附图详细描述本发明。
图2是示出根据本发明的实施例的将关系数据库和缓存透明结合的系统的框图。
如图2中所示,根据本发明的实施例的将关系数据库和缓存透明结合的系统可以包括应用系统210、控制中心220、关系数据库240、缓存250、数据库读单元262、缓存读单元264、结果集生成单元266、结果集反序列化单元268、缓存写单元274和结果集序列化单元276。
应用系统210是为了实现某个功能而开发的应用。在本文中,应用系统210包括涉及数据库操作的各种应用,例如用户管理应用、产品展示应用、产品推荐应用等。当需要读取关系数据库时,应用系统发送SQL查询。
控制中心220用于从应用系统发送的SQL查询提取关键字,生成与SQL查询相关的键值,根据键值确定SQL查询是否已被缓存,并将与SQL查询相关的结果集返回给应用系统210。
在图2所示的实施例中,提取关键字是由单独的关键字提取单元230执行的,然而也可以根据需要将关键字提取单元230合并在控制中心220中。关键字例如包括数据库库名、数据表名、以及相应的字段名。
在一个示例中,键值可以等于数据库连接+用户名+数据库库名+数据表名+字段映射。
在一个实施例中,根据键值确定SQL查询是否已被缓存包括将所生成的键值与缓存的键值进行匹配,如果匹配,则确定SQL查询已被缓存。对于键值的匹配,不关心字段在查询结果中的顺序,而只关心字段名。根据本发明的实施例,在字段名是已有查询的子集(即所生成的键值中的字段名是缓存的键值的子集)的情况下,那么同样命中缓存,即确定SQL查询已被缓存。
关系数据库240用于存储并管理数据。
缓存250用于缓存先前查询的结果集。
数据库读单元262用于在SQL查询未被缓存时,直接查询关系数据库,并且从关系数据库获得结果。
结果集生成单元266用于从数据库读单元262获得的结果构建结果集,并返回所构建的结果集。
结果集序列化单元276用于将所构建的结果集序列化。
缓存写单元274用于将序列化的结果集作为键值的值写入缓存中。
缓存读单元264用于在SQL查询已被缓存时,从缓存中读取结果集的值。
结果集反序列化单元268用于对缓存读单元264读取的结果集的值执行反序列化,并返回反序列化的结果集。
根据本发明的实施例的将关系数据库和缓存透明结合的系统可以进一步包括用于完成数据库写的数据库写单元272。当需要写关系数据库时,应用系统发送写SQL。控制中心220通过穿透写模式或缓冲写模式而将SQL所涉及的数据写入关系数据库。
在穿透写模式中,控制中心220从应用系统发送的写SQL提取关键字,生成与写SQL相关的键值,将缓存的相应键值对设置为无效,然后数据库写单元272将SQL所涉及的数据写入关系数据库。
在缓冲写模式中,控制中心220从应用系统发送的写SQL提取关键字,生成与写SQL相关的键值,利用结果集序列化单元276序列化的数据更新缓存的相应键值的值,然后数据库写单元272在控制中心的控制下定期地将更新的数据写入关系数据库。
图3是示出根据本发明的实施例的应用系统读的流程图。
如图3中所示,根据本发明的实施例的应用系统读的方法开始于步骤310。在步骤310中,由应用系统发送SQL查询。
在步骤320中,通过控制中心确定SQL查询是否已被缓存。确定SQL查询是否已被缓存例如可以包括从应用系统发送的SQL查询提取关键字,生成与SQL查询相关的键值,根据键值确定SQL查询是否已被缓存。在一个示例中,关键字例如包括数据库库名、数据表名、以及相应的字段名;键值可以等于数据库连接+用户名+数据库库名+数据表名+字段映射。
在一个实施例中,根据键值确定SQL查询是否已被缓存包括将所生成的键值与缓存的键值进行匹配,如果匹配,则确定SQL查询已被缓存。对于键值的匹配,不关心字段在查询结果中的顺序,而只关心字段名。根据本发明的实施例,在字段名是已有查询的子集(即所生成的键值中的字段名是缓存的键值的子集)的情况下,那么同样命中缓存,即确定SQL查询已被缓存。
如果在步骤320中确定SQL查询未被缓存,则在步骤330中直接查询关系数据库,并且从关系数据库获得结果。
在步骤340中从获得的结果构建结果集,并将所构建的结果集返回控制中心。
在步骤350中,将所构建的结果集序列化。
在步骤360中,将序列化的结果集作为键值的值写入缓存中。
如果在步骤320中确定SQL查询已被缓存,则在步骤370中从缓存中读取结果集的值。
在步骤380中对从缓存中读取的结果集的值执行反序列化,并将反序列化的结果集返回控制中心。
在步骤390中,通过控制中心将结果集返回给应用系统。
图4是示出根据本发明的实施例的应用系统写的流程图。
如图4中所示,根据本发明的实施例的应用系统写的方法开始于步骤410。在步骤410中,应用系统发送写SQL。
在步骤420中,确定采用穿透写模式还是缓冲写模式。可以根据用户指定,来确定是采用穿透写模式还是缓冲写模式。
当在步骤420中确定采用穿透写模式时,在步骤430中,通过控制中心从应用系统发送的写SQL提取关键字,生成与写SQL相关的键值。
在步骤440中,将缓存的相应键值对设置为无效。
在步骤450中,将SQL所涉及的数据写入关系数据库。
当在步骤420中确定采用缓冲写模式时,在步骤460中,通过控制中心从应用系统发送的写SQL提取关键字,生成与写SQL相关的键值。
在步骤470中,更新缓存的相应键值的值。
在步骤480中,例如在控制中心的控制下定期地将更新的数据写入关系数据库。
根据本发明的将关系数据库和缓存透明结合的系统和方法实现了以下优点:通过JDBC驱动程序实现关系数据库和缓存的完美结合,使得应用程序不再关心数据缓存的逻辑,从而提高应用系统的性能,降低了应用系统的复杂度,提高了缓存功能的重用性并便利了缓存的管理;在原有基础之上,所有数据都可以缓存,不再考虑该数据是否只读;缓冲写,提升了数据库的性能;缓存中数据的生命周期由对数据的操作而定,实现了精细化的数据生命周期管理。
应指出的是,上面分别对本发明的装置和方法实施例分别进行了描述,但是对一个实施例描述的细节也可应用于另一个实施例。
以上结合具体实施例描述了本发明的基本原理,但是,需要指出的是,对本领域的普通技术人员而言,能够理解本发明的方法和系统的全部或者任何步骤或者部件可以以软件、硬件、固件或者它们的组合加以实现,这是本领域普通技术人员在阅读了本发明的说明的情况下运用他们的基本编程技能就能实现的。
因此,本发明的目的还可以通过在任何计算装置上运行一个软件模块或者一组软件模块来实现。所述计算装置可以是公知的通用装置。因此,本发明的目的也可以仅仅通过提供包含实现所述方法或者装置的程序代码的程序产品来实现。也就是说,这样的程序产品也构成本发明,并且存储有这样的程序产品的存储介质也构成本发明。显然,所述存储介质可以是任何公知的存储介质或者将来所开发出来的任何存储介质。
虽然本说明书包含许多特定实施方式细节,但是不应当将这些细节解释为对任何发明或可以主张的内容的范围的限制,而应当解释为对可以特定于特定发明的特定实施例的特征的描述。还可以将在本说明书中在分离的实施例的情境中描述的某些特征组合在单个实施例中实现。相反地,也可以将在单个实施方式的情境中描述的各个特征分离地在多个实施方式中实现或在任何适当的子组合中实现。此外,尽管可能在上面将特征描述为在某些组合中起作用,甚至最初主张如此,但是可以在一些情况下将来自所主张的组合的一个或多个特征从组合中删去,并且可以将所主张的组合指向子组合或者子组合的变体。
类似地,虽然在附图中以特定次序描绘了操作,但是不应当将这理解为需要以所示的特定次序或者以连续次序执行这样的操作、或者需要执行所有图示的操作才能达到期望的结果。在某些情况下,多任务以及并行处理可以是有利的。此外,不应当将在上述实施例中的各种系统组件的分离理解为在所有实施例中均需要这样的分离,而应当理解的是,通常可以将所描述的程序组件和系统集成到一起成为单个软件产品或封装为多个软件产品。
计算机程序(也称作程序、软件、软件应用、脚本或代码)可以以任何形式的编程语言编写,所述编程语言包括编译或解释语言、或者说明性或过程语言,并且其可以以任何形式部署,包括作为独立程序或作为模块、组件、子程序或适于在计算环境中使用的其它单元。计算机程序没有必要对应于文件系统中的文件。可以将程序存储在保持其它程序或数据的文件(例如,存储在标记语言文档中的一个或多个脚本)的一部分、专用于讨论中的程序的单个文件或者多个协调文件(例如,存储一个或多个模块、子程序或部分代码的文件)中。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (11)
1.一种将关系数据库和缓存透明结合的系统,包括:
应用系统,当需要读取关系数据库时,所述应用系统发送SQL查询;
控制中心,用于从所述应用系统发送的所述SQL查询提取关键字,生成与所述SQL查询相关的键值,根据所述键值确定所述SQL查询是否已被缓存,并将与所述SQL查询相关的结果集返回给所述应用系统;
关系数据库,用于存储并管理数据;
缓存,用于缓存先前查询的结果集;
数据库读单元,用于在所述SQL查询未被缓存时,直接查询所述关系数据库,并且从所述关系数据库获得结果;
结果集生成单元,用于从所述数据库读单元获得的结果构建结果集,并返回所构建的结果集;
结果集反序列化单元,用于将所构建的结果集序列化;
缓存写单元,用于将序列化的结果集作为所述键值的值写入缓存中;
缓存读单元,用于在所述SQL查询已被缓存时,从所述缓存中读取结果集的值;以及
结果集序列化单元,用于对所述缓存读单元读取的结果集的值执行反序列化,并返回反序列化的结果集。
2.根据权利要求1所述的系统,进一步包括数据库写单元,
其中,当需要写关系数据库时,所述应用系统发送写SQL;并且所述控制中心通过穿透写模式或缓冲写模式而将所述写SQL所涉及的数据写入所述关系数据库。
3.根据权利要求2所述的系统,其中,在所述穿透写模式中,所述控制中心从所述应用系统发送的写SQL提取关键字,生成与所述写SQL相关的键值,将缓存的相应键值对设置为无效,然后所述数据库写单元将所述写SQL所涉及的数据写入关系数据库。
4.根据权利要求2所述的系统,其中,在所述缓冲写模式中,所述控制中心从所述应用系统发送的写SQL提取关键字,生成与所述写SQL相关的键值,利用所述结果集序列化单元序列化的数据更新缓存的相应键值的值,然后所述数据库写单元在所述控制中心的控制下定期地将更新的数据写入关系数据库。
5.根据权利要求1所述的系统,其中,所述键值等于数据库连接+用户名+数据库库名+数据表名+字段映射。
6.根据权利要求1所述的系统,其中,根据所述键值确定SQL查询是否已被缓存包括将所生成的键值与缓存的键值进行匹配,如果匹配,则确定所述SQL查询已被缓存。
7.一种应用系统读的方法,包括:
由应用系统发送SQL查询;
通过控制中心确定所述SQL查询是否已被缓存;
如果确定所述SQL查询未被缓存,则:直接查询关系数据库,并且从所述关系数据库获得结果;从所获得的结果构建结果集,并将所构建的结果集返回所述控制中心;将所构建的结果集序列化;将序列化的结果集作为键值的值写入缓存中,
如果确定SQL查询已被缓存,则:从缓存中读取结果集的值;对从所述缓存中读取的结果集的值执行反序列化,并将反序列化的结果集返回所述控制中心;
通过所述控制中心将结果集返回给所述应用系统。
8.根据权利要求7所述的方法,其中,确定所述SQL查询是否已被缓存包括:从所述应用系统发送的SQL查询提取关键字,生成与所述SQL查询相关的键值,根据所述键值确定所述SQL查询是否已被缓存。
9.根据权利要求7所述的方法,其中,根据所述键值确定所述SQL查询是否已被缓存包括:将所生成的键值与缓存的键值进行匹配,如果匹配,则确定所述SQL查询已被缓存。
10.根据权利要求7所述的方法,其中,所述键值等于数据库连接+用户名+数据库库名+数据表名+字段映射。
11.一种应用系统写的方法,包括:
由应用系统发送写SQL;
通过控制中心确定采用穿透写模式还是缓冲写模式;
当确定采用所述穿透写模式时,通过所述控制中心从所述应用系统发送的写SQL提取关键字,生成与所述写SQL相关的键值;将缓存的相应键值对设置为无效;将所述写SQL所涉及的数据写入关系数据库,
当确定采用所述缓冲写模式时,通过所述控制中心从所述应用系统发送的写SQL提取关键字,生成与所述写SQL相关的键值;更新缓存的相应键值的值;在所述控制中心的控制下定期地将更新的数据写入关系数据库。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013101971893A CN103268343A (zh) | 2013-05-24 | 2013-05-24 | 将关系数据库和缓存透明结合的系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013101971893A CN103268343A (zh) | 2013-05-24 | 2013-05-24 | 将关系数据库和缓存透明结合的系统和方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103268343A true CN103268343A (zh) | 2013-08-28 |
Family
ID=49011972
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013101971893A Pending CN103268343A (zh) | 2013-05-24 | 2013-05-24 | 将关系数据库和缓存透明结合的系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103268343A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103593419A (zh) * | 2013-10-30 | 2014-02-19 | 华为技术有限公司 | 数据查询方法、装置、服务器及系统 |
CN105512184A (zh) * | 2015-11-25 | 2016-04-20 | 国云科技股份有限公司 | 一种提高应用系统在关系数据库的空间与时间效率的方法 |
CN107145549A (zh) * | 2017-04-27 | 2017-09-08 | 深圳智高点知识产权运营有限公司 | 一种数据库缓存控制方法以及系统 |
CN107609091A (zh) * | 2017-09-08 | 2018-01-19 | 国云科技股份有限公司 | 一种跨库多表联合查询系统及其实现方法 |
CN108280227A (zh) * | 2018-01-26 | 2018-07-13 | 北京奇虎科技有限公司 | 基于缓存的数据信息处理方法及装置 |
CN110134705A (zh) * | 2018-02-09 | 2019-08-16 | 中国移动通信集团有限公司 | 一种数据查询方法、缓存服务器及终端 |
CN110168533A (zh) * | 2016-12-15 | 2019-08-23 | 微软技术许可有限责任公司 | 对子图的缓存以及将缓存的子图集成到图查询结果中 |
CN110362599A (zh) * | 2018-04-08 | 2019-10-22 | 北京京东尚科信息技术有限公司 | 数据存储方法、装置、电子设备及计算机可读介质 |
CN110795494A (zh) * | 2018-07-17 | 2020-02-14 | 北京京东尚科信息技术有限公司 | 缓存数据同步异步化的自动化测试方法和装置 |
CN112395283A (zh) * | 2019-08-14 | 2021-02-23 | 中移(苏州)软件技术有限公司 | 一种数据查询方法、装置及存储介质 |
US11748506B2 (en) | 2017-02-27 | 2023-09-05 | Microsoft Technology Licensing, Llc | Access controlled graph query spanning |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1945578A (zh) * | 2006-08-26 | 2007-04-11 | 福州开睿动力通信科技有限公司 | 一种基于空间数据库和SVG的高速Web电子地图的生成及应用方法 |
CN101046821A (zh) * | 2006-03-31 | 2007-10-03 | Sap股份公司 | 通用数据库操纵器 |
CN101706781A (zh) * | 2009-09-29 | 2010-05-12 | 北京星网锐捷网络技术有限公司 | 一种数据库缓存集中管理方法和系统 |
CN102542034A (zh) * | 2011-12-23 | 2012-07-04 | 北京人大金仓信息技术股份有限公司 | 一种数据库接口的结果集缓存方法 |
-
2013
- 2013-05-24 CN CN2013101971893A patent/CN103268343A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101046821A (zh) * | 2006-03-31 | 2007-10-03 | Sap股份公司 | 通用数据库操纵器 |
CN1945578A (zh) * | 2006-08-26 | 2007-04-11 | 福州开睿动力通信科技有限公司 | 一种基于空间数据库和SVG的高速Web电子地图的生成及应用方法 |
CN101706781A (zh) * | 2009-09-29 | 2010-05-12 | 北京星网锐捷网络技术有限公司 | 一种数据库缓存集中管理方法和系统 |
CN102542034A (zh) * | 2011-12-23 | 2012-07-04 | 北京人大金仓信息技术股份有限公司 | 一种数据库接口的结果集缓存方法 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015062201A1 (zh) * | 2013-10-30 | 2015-05-07 | 华为技术有限公司 | 数据查询方法、装置、服务器及系统 |
CN103593419A (zh) * | 2013-10-30 | 2014-02-19 | 华为技术有限公司 | 数据查询方法、装置、服务器及系统 |
CN105512184A (zh) * | 2015-11-25 | 2016-04-20 | 国云科技股份有限公司 | 一种提高应用系统在关系数据库的空间与时间效率的方法 |
CN105512184B (zh) * | 2015-11-25 | 2019-06-21 | 国云科技股份有限公司 | 一种提高应用系统在关系数据库的空间与时间效率的方法 |
CN110168533B (zh) * | 2016-12-15 | 2023-08-08 | 微软技术许可有限责任公司 | 对子图的缓存以及将缓存的子图集成到图查询结果中 |
CN110168533A (zh) * | 2016-12-15 | 2019-08-23 | 微软技术许可有限责任公司 | 对子图的缓存以及将缓存的子图集成到图查询结果中 |
US11748506B2 (en) | 2017-02-27 | 2023-09-05 | Microsoft Technology Licensing, Llc | Access controlled graph query spanning |
CN107145549B (zh) * | 2017-04-27 | 2020-01-14 | 深圳智高点知识产权运营有限公司 | 一种数据库缓存控制方法以及系统 |
CN107145549A (zh) * | 2017-04-27 | 2017-09-08 | 深圳智高点知识产权运营有限公司 | 一种数据库缓存控制方法以及系统 |
CN107609091A (zh) * | 2017-09-08 | 2018-01-19 | 国云科技股份有限公司 | 一种跨库多表联合查询系统及其实现方法 |
CN107609091B (zh) * | 2017-09-08 | 2020-10-27 | 国云科技股份有限公司 | 一种跨库多表联合查询系统的实现方法 |
CN108280227A (zh) * | 2018-01-26 | 2018-07-13 | 北京奇虎科技有限公司 | 基于缓存的数据信息处理方法及装置 |
CN110134705A (zh) * | 2018-02-09 | 2019-08-16 | 中国移动通信集团有限公司 | 一种数据查询方法、缓存服务器及终端 |
CN110362599A (zh) * | 2018-04-08 | 2019-10-22 | 北京京东尚科信息技术有限公司 | 数据存储方法、装置、电子设备及计算机可读介质 |
CN110795494A (zh) * | 2018-07-17 | 2020-02-14 | 北京京东尚科信息技术有限公司 | 缓存数据同步异步化的自动化测试方法和装置 |
CN112395283A (zh) * | 2019-08-14 | 2021-02-23 | 中移(苏州)软件技术有限公司 | 一种数据查询方法、装置及存储介质 |
CN112395283B (zh) * | 2019-08-14 | 2022-12-13 | 中移(苏州)软件技术有限公司 | 一种数据查询方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103268343A (zh) | 将关系数据库和缓存透明结合的系统和方法 | |
CN107247808B (zh) | 一种分布式NewSQL数据库系统及图片数据查询方法 | |
US9881049B2 (en) | Reducing the cost of update, delete, and append-only insert operations in a database | |
US9778991B2 (en) | Exporting and importing database tables in a multi-user database environment | |
US9659050B2 (en) | Delta store giving row-level versioning semantics to a non-row-level versioning underlying store | |
US9811548B2 (en) | Method and apparatus for database | |
US7565365B2 (en) | Object storage and synchronization hooks for occasionally-connected devices | |
CN101184106A (zh) | 一种移动数据库的关联事务处理方法 | |
CN104778270A (zh) | 一种用于多文件的存储方法 | |
CN105556519A (zh) | 对oracle存储器中数据库的存储器中快照存储的多版本并行控制 | |
CN102880671A (zh) | 一种面向分布式文件系统的主动重复数据删除方法 | |
US8600962B2 (en) | Transaction processing device, transaction processing method, and transaction processing program | |
US9928259B2 (en) | Deleted database record reuse | |
US20150039558A1 (en) | Database management method, database system and medium | |
US10872085B2 (en) | Recording lineage in query optimization | |
CN103377292A (zh) | 数据库结果集缓存方法及设备 | |
CN107656992B (zh) | 面向多插入源的快照版本管理方法 | |
CN112052234B (zh) | 业务数据的处理方法和装置、存储介质、电子装置 | |
Richardson | Disambiguating databases | |
TWI484358B (zh) | 資料庫之移轉系統、方法及其電腦可讀取之媒體 | |
CN112527911B (zh) | 一种数据存储方法、装置、设备及介质 | |
Richardson | Disambiguating Databases: Use the database built for your access model. | |
Cremer et al. | Improving Performances of an Embedded Relational Database Management System with a Hybrid CPU/GPU Processing Engine | |
Luciani | Thrudb: Document Oriented Database Services | |
CN116991860A (zh) | 基于Flink的Hudi表增量数据写入方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20130828 |