带属性的键值存储的数据库管理装置及其键值存储结构的高速缓存装置的制作方法

文档序号:6350246阅读:147来源:国知局
专利名称:带属性的键值存储的数据库管理装置及其键值存储结构的高速缓存装置的制作方法
技术领域
本发明涉及一种活用键值存储的数据库管理系统和数据库高速缓存系统。
背景技术
现有的键值存储(Key-value store),是如图1和非专利文献1记载的那样仅将数据库系统(Data base system)和值(Value)与用于识别该值的关键字(ID)组合的键值 (Key-value)要素简单集中多个的数据库资源(Database resource)。数据库资源被用于文本检索网站或对世界上的书籍进行库存管理并根据客户的要求进行检索、销售的网站等, 其中,文本检索网站通过网络在全球范围内收集文本信息,并将其作为键值式数据进行保持,将含有任意文本作为检索条件抽出。在文本检索网站中,将收录文本数据(Text data) 作为值,从中找出具有与检索关键字一致的部分文本的键值数据(Key-value data),并制作与键值数据一致的密钥表(Key list),根据用户的要求再从数据库资源中获取与密钥表中的关键字对应的值,并按顺序表示出来。从图1中可知,该键值存储具有如下优点由于其单纯性而容易进行数据库资源的水平分割,因此能将分割的数据库资源作为在相对较多的多个小规模的服务器计算机上分布配置并特殊化为用于检索的1个巨大数据库装置来看待。在非专利文献1中记载有如下方法在由将大量特有的ID作为关键字的键值式数据构成的数据库资源的水平分割中, 利用哈希函数等将大小与作为存储对象的服务器计算机存储容量对准,分割成物理数据库组,直接配置于按顺序存储管理所述数据库资源的服务器计算机上。但是,在运用中,因故障等而削减用于存储管理所述数据库资源的服务器计算机、 或者因扩充规模等增加用于存储管理所述数据库资源的服务器计算机的情况,不得不原封不动地移动大量的数据库资源。于是,在专利文献2中记载有如下方法不是利用哈希函数等将大小与作为存储对象的服务器计算机存储容量对准而进行分割,而是分割为用于存储管理所述数据库资源的服务器计算机的存储容量的三分之一到十分之一左右的大小的逻辑数据库组,并将所述分割的逻辑数据库组存储成一个或者两个以上,在用于存储管理多个所述数据库资源的服务器计算机之间,使用将一个或两个以上的所述逻辑数据库组群与用于存储管理一个或两个以上所述数据库资源的服务器计算机群相对应的表格,调整其存储数量,由此使数据库资源的移动最小化。而且,专利文献1中记载了如下分布式数据库系统将大规模数据库或分布配置于物理性分离的地方的分布数据库分割为多个域名,使各域名内的拓扑服务器上具有各域名内的一个或两个以上的数据库管理系统的元数据(metadata),在各拓扑服务器之间交换该元信息,由此在确保依靠排斥控制(exclusive control)、参照完整性(referential integrity)的数据一致性,同时具有耐用的实时更新性能。另外,专利文献3记载了分布式数据库系统的高性能化的方法,所述分布式数据库系统如下不是按每个元信息进行所述元信息的交换,而是采用在拓扑服务器之间共有主存储器空间的分区缓存(partition cache)技术或在拓扑服务器之间复制主存储器空间的拷贝缓存技术来确保一致性的同时,具有耐用的实时更新性能。在专利文献3中,除了记载有确保依靠排斥控制、参照完整性的数据一致性的内容以外,还记载有在多项事务 (Multi transaction)处理中,通过在各域名的拓扑服务器之间分布共有或者复制共有计数器和表格来实现的方法,其中,该计数器根据更新要求进行递增计数、根据更新成功进行递减计数、恢复到零时判断为事务处理整体更新已成功,所述表格为将所述逻辑数据库组群与用于存储管理数据库资源的服务器计算机群相对应的表格。在1980年代初,数据库的主流从网络型数据库转变为关系数据库时,由于当时用于管理存储数据库的计算机的CPU性能低下或主存储器和二次存储装置逊色的访问速度和容量,从而出现了关系数据库性能、特别是因连接(JOIN)处理性能低下所导致的处理能力低下的问题。为避免该问题,当时还出现了不进行规范化则更好的荒诞言论。而另一方面,作为其避免方法,将网络型数据库的构架的残余、在行(ROW,元组或者逻辑记录)的插入时或更新时事先进行连接处理,通过指针(pointee)保持地址(location)信息,当要求实际连接处理时在部分关系数据库中使用“预连接”技术,所述“预连接”技术出于通过利用该指针的地址信息进行高速连接处理的“事先连接”的意思而命名。在图2中记载了其结构。将被参照表(关系)10和参照表20设为某表格,被参照表10具有列(COLUMN,属性或者项目)11和12,列11附有主关键字,由此使表10的各逻辑记录成为分别具有特有的关键字的表格。另外,参照表20也具有列21、列22,在列22、列11上设定外部参照关键字 (FOREIGN KEY)。具有特殊列14和特殊列15,其中,特殊列14用于存储最初对被参照表10 某逻辑记录进行参照的参照表20内逻辑记录的行ID,特殊列15用于存储最后对被参照表 10某逻辑记录进行参照的参照表20内逻辑记录的行ID,进一步具有特殊列25和特殊列 26,其中,特殊列25用于存储先对被参照表10的该逻辑记录进行参照的参照表20内逻辑记录的行ID,特殊列沈用于存储后对被参照表10的该逻辑记录进行参照的参照表20内逻辑记录的行ID,由此能够得到对被参照表10的该逻辑记录进行参照的参照表20内逻辑记录的集合(collection-set) 0另外,在被参照表10中具有特殊列16,该特殊列16用于方便存储由该集合组要素指定的参照表20内逻辑记录的数量。在参照表20中具有特殊列 M,该特殊列M用于存储参照出处的被参照表内逻辑记录的行ID。通过该结构,能够灵活地保持并高速获取表之间的参照被参照关系,并使“预连接”成为可能。另外,近年来硬件的高速化和大容量化有目共睹。特别是由于普遍采用64比特的 CPU,通过大幅度扩大地址总线,使主存储器的低价格化、大容量化,从而也使用于高速化的内存数据库的使用也增加。另外,从与之相伴的核心系统的通用机向开放系统的过渡中,现有系统的构筑或程序设计的方法中,没有充分发挥近年来的硬件或软件性能的情况也在增多。特别是在访问内存数据库时,除了从简易表中进行多次简单检索的实际检索以外,在使程序设计工作量最小化的观点上可以忽略因重复多次时域连接、断开、查询文分析等附带处理所产生的浪费。特别是在沿用作为旧式构架的顾客/服务器方式的系统构架时,要求具有强有力的高速缓存功能。现有技术文献专利文献专利文献1 专利第4158534号公报
专利文献2 特开第2006-92503号公报(专利第4313845号)专利文献3 特愿第2009-119363号非专利文献“向外扩展的技术,,,“季刊”UNIX MAGAZINE,(株)ASCII MEDIA W0RKS,2009 年 4 月刊,P. 78-9
发明内容
发明要解决的课题键值存储技术作为能够应对以简单大型为特征的系统的向外扩展(scale out) 技术而被使用,所述系统如利用全球范围内的字符串检索网站或稀少书籍网络的检索销售等。但是,与该键值结构数据的简单性所带来的向外扩展容易性相比,无法用于具有如下要求的更高速复杂系统的构筑,即要求有效结合它们以使发挥简单性的同时能灵活应对数据结构和数据量的动态(dynamic)变化。因此,本发明的第一课题在于,在要求更高速、复杂的同时,灵活且具有实用性地应对数据结构和数据量的动态变化的系统中,提供应用键值存储技术的方法。本发明的课题还在于,在二层至三层结构的应用系统中,在频繁读取只有ID和名称的简单表格的应用程序中,为提高处理能力而从应用层所具有的高速缓存中获取对应数据,应用键值存储技术实现高速化。解决课题的方法本发明通过图6记载的单元-对象-组件装置解决上述课题,图6记载的单元-对象-组件装置提供如下结构,即,在图1所示的键值结构数据中添加“用于参照属性的参照结构和作为属性被参照的被参照结构”,作为其属性参照添加了 “用于参照属性的参照结构和作为属性被参照的被参照结构”的其他键值结构数据,另外,作为其属性被添加了 “用于参照属性的参照结构和作为属性被参照的被参照结构”的其他键值结构数据所参照。图3记载的参照被参照两用型单元-对象要素装置100如下将如图2记载的关系型数据库中的预连接机构那样多个其他关系上的多个元组参照单一元组的结构,应用于以键值结构数据为中心添加“用于参照属性的参照结构和作为属性被参照的被参照结构”。 参照被参照两用型单元-对象要素装置100,包括作为键值结构数据的单元-对象-存储部110、和参照单元-对象-组件存储装置120和被参照单元-对象-组件存储装置130构成,该参照单元-对象-组件存储装置120作为参照结构用于参照属性,该被参照单元-对象-组件存储装置130作为被参照结构用于被参照。进而,构成图6和权利要求1所述的单元-对象-组件装置,并由此解决上述课题。使用图3,对适用参照被参照两用型单元-对象要素装置100的权利要求1所述的单元-对象-组件装置进行说明。可以是一种单元-对象-组件装置,其配置在至少以中央处理器和主存储器作为构成要素的电子计算机的所述主存储器上,其特征在于,具有一个或两个以上的参照被参照两用型单元-对象要素装置100,所述参照被参照两用型单元-对象要素装置100具有一个或两个以上单元-对象要素标识符存储部111,其存储用于识别该参照被参照两用型单元-对象要素装置的单元-对象要素标识符;—个或两个以上单元-对象要素值存储部112,其用于将任意的值存储于该参照被参照两用型单元-对象要素装置;被参照单元-对象-组件信息存储装置130,其用于存储被该单元-对象-组件装置参照的其他一个或两个以上单元-对象-组件装置的信息;参照单元-对象-组件信息存储装置120,其用于存储参照该单元-对象-组件装置的其他一个或两个以上所述单元-对象-组件装置的信息,所述参照单元-对象-组件信息存储装置120至少具有 单元-对象-组件标识符存储部121,其用于存储被该单元-对象-组件装置参照的其他所述单元-对象-组件装置的单元-对象-组件标识符;先参照单元-对象-组件标识符存储部122,其存储先参照与被该单元-对象-组件装置参照的其他所述单元-对象-组件装置相同的所述被参照其他单元-对象-组件装置的、其他所述单元-对象-组件装置的所述单元-对象-组件标识符;后参照单元-对象-组件标识符存储部123,其存储后参照与被该单元-对象-组件装置参照的其他所述单元-对象-组件装置相同的所述被参照其他单元-对象-组件装置的、其他所述单元-对象-组件装置的所述单元-对象-组件标识符,所述被参照单元-对象-组件信息存储装置130至少具有最前参照单元-对象-组件标识符存储部,其用于存储参照该单元-对象-组件装置的其他最前所述单元-对象-组件装置的单元-对象-组件标识符131,最后参照单元-对象-组件标识符存储部132,其用于存储参照该单元-对象-组件装置的其他最后所述单元-对象-组件装置的单元-对象-组件标识符。但是,在权利要求1所述的单元-对象-组件装置中,虽然能从多个参照源被参照,却不能参照多个属性,为解决该问题,将图4记载的被参照型单元-对象要素装置200 和图5记载的参照型单元-对象要素装置300连接,从而构成能参照多个属性的图6和权利要求2所述的单元-对象-组件装置400,并解决该课题。使用图4、图5、图6,对权利要求2所述的单元-对象-组件装置进行说明。此处,图6记载的被参照型单元-对象要素装置201是图4记载的被参照型单元-对象要素装置200的实例。另外,在图4中记载了 被参照单元-对象-组件信息存储装置220、230,单元-对象要素标识符存储部211,单元-对象要素值存储部212,最前参照单元-对象-组件标识符存储部221、231,最后参照单元-对象-组件标识符存储部222、 232。此处,图6记载的参照型单元-对象要素装置301至300+n(以下在该项中,η是1 以上的整数)是图5记载的参照型单元-对象要素装置300的实例。另外,在图5中记载了 参照单元-对象-组件信息存储装置320、330,先参照单元-对象-组件标识符存储部 322、332,后参照单元-对象-组件标识符存储部323、333。 可以是一种单元-对象-组件装置400,其配置在至少以中央处理器和主存储器作为构成要素的电子计算机的所述主存储器上,其特征在于, 具有一个或两个以上参照型单元-对象要素装置实例301至300+η和一个或两个以上被参照型单元-对象要素装置的实例201,
所述参照型单元-对象要素装置实例301至300+n具有—个或两个以上单元-对象要素标识符存储部311,其存储用于识别该参照型单元-对象要素装置实例301至300+n的单元-对象要素标识符;单元-对象要素值存储部312,其用于将任意的值存储于该参照型单元-对象要素装置;参照单元-对象-组件信息存储装置320、330,其用于存储被该单元-对象-组件装置400参照的其他单元-对象-组件装置的信息;所述被参照型单元-对象要素装置实例201具有一个或两个以上单元-对象要素标识符存储部211,其存储用于识别该被参照型单元-对象要素装置的单元-对象要素标识符;单元-对象要素值存储部212,其用于将任意的值存储于该被参照型单元-对象要素装置;被参照单元-对象-组件信息存储装置220、230,其用于存储参照该单元-对象-组件装置400的其他所述单元-对象-组件装置的信息,所述参照单元-对象-组件信息存储装置320、330至少具有单元-对象-组件标识符存储部321、331,其用于存储被该单元-对象-组件装置 400参照的其他所述单元-对象-组件装置400的单元-对象-组件标识符,先参照单元-对象-组件标识符存储部322、332,其存储先参照与被该单元-对象-组件装置400参照的其他所述单元-对象-组件装置400相同的所述被参照其他单元-对象-组件装置400的、其他所述单元-对象-组件装置400的所述单元-对象-组件标识符,后参照单元-对象-组件标识符存储部323、333,其存储后参照与被该单元-对象-组件装置参照的其他所述单元-对象-组件装置相同的所述被参照其他单元-对象-组件装置的、其他所述单元-对象-组件装置的所述单元-对象-组件标识符,所述被参照单元-对象-组件信息存储装置220、230至少具有最前参照单元-对象-组件标识符存储部221、231,其用于存储参照该单元-对象-组件装置400的其他最前所述单元-对象-组件装置400的单元-对象-组件标识符,最后参照单元-对象-组件标识符存储部222、232,其用于存储参照该单元-对象-组件装置400的其他最后所述单元-对象-组件装置400的单元-对象-组件标识符。使用图3、图4、图5、图6、图7,对适用单元-对象-组件装置400的权利要求3所述的内存对象定向数据库系统进行说明。此处,在图3中记载了 参照被参照两用型单元-对象要素装置100、单元-对象要素标识符存储部111、单元-对象要素值存储部112、参照单元-对象-组件信息存储装置120和被参照单元-对象-组件信息存储装置130。此处,图6中的被参照型单元-对象要素装置的实例201是图4记载的被参照型单元-对象要素装置200的实例。另外,在图4中记载了 被参照单元-对象-组件信息存储装置220、230,单元-对象要素标识符存储部211,单元-对象要素值存储部212,最前参照单元-对象-组件标识符存储部221、231,最后参照单元-对象-组件标识符存储部222、 232。
此处,图6中的参照型单元-对象要素装置的实例301至300+n(以下在该项中,η 是1以上的整数)是图5记载的参照型单元-对象要素装置300的实例。另外,在图5中记载了 参照单元-对象-组件信息存储装置320、330,先参照单元-对象-组件标识符存储部322、332,后参照单元-对象-组件标识符存储部323、333。此处,单元-对象-组件装置的实例4500至4535是图6记载的单元-对象-组件装置400的实例。可以是一种内存对象定向数据库系统500,其配置在至少以中央处理器和主存储器作为构成要素的电子计算机的所述主存储器上,其特征在于,所述内存对象定向数据库系统通过组合单元-对象-组件装置400的实例4500 至4535而构成,所述单元-对象-组件装置的实例4500至45;35,具有参照被参照两用型单元-对象要素装置100 ;或者具有一个或两个以上参照型单元-对象要素装置300的实例301至300+η和被参照型单元-对象要素装置200的实例201 ;或者具有参照被参照两用型单元-对象要素装置100和一个或两个以上参照型单元-对象要素装置300的实例301至300+η ;或者具有参照被参照两用型单元-对象要素装置100和被参照型单元-对象要素装置200的实例201 ;或者具有参照被参照两用型单元-对象要素装置100和一个或两个以上参照型单元-对象要素装置300的实例301至300+η和被参照型单元-对象要素装置200的实例 201,所述参照被参照两用型单元-对象要素装置100具有—个或两个以上单元-对象要素标识符存储部111,其存储用于识别该参照被参照两用型单元-对象要素装置的单元-对象要素标识符;—个或两个以上单元-对象要素值存储部112,其将任意的值存储于该参照被参照两用型单元-对象要素装置;被参照单元-对象-组件信息存储装置130,其用于存储被单元-对象-组件装置 400的实例4500至4535参照的自身或其他一个或两个以上单元-对象-组件装置400的实例4500至4535的信息;参照单元-对象-组件信息存储装置120,其用于存储参照该单元-对象-组件装置400的实例4500至4535的自身或其他一个或两个以上所述单元-对象-组件装置400 的实例4500至4535的信息,所述参照型单元-对象要素装置300的实例301至300+η具有单元-对象要素标识符存储部311,其存储用于识别该参照型单元-对象要素装置 300的实例301至300+η的单元-对象要素标识符;单元-对象要素值存储部312,其将任意的值存储于该参照型单元-对象要素装置;参照单元-对象-组件信息存储装置320、330,其用于存储被该单元-对象-组件装置400的实例4500至4535参照的自身或其他一个或两个以上单元-对象-组件装置
12400的实例4500至4535的信息,所述被参照型单元-对象要素装置200的实例201具有一个或两个以上单元-对象要素标识符存储部211,其存储用于识别该被参照型单元-对象要素装置的单元-对象要素标识符;单元-对象要素值存储部212,其用于将任意的值存储于该被参照型单元-对象要素装置;被参照单元-对象-组件信息存储装置220、230,其用于存储参照该单元-对象-组件装置400的实例4500至4535的自身或其他一个或两个以上所述单元-对象-组件装置400的实例4500至4535的信息,所述参照单元-对象-组件信息存储装置320、330至少具有单元-对象-组件标识符存储部321、331,其用于存储被该单元-对象-组件装置 400的实例4500至4535参照的自身或其他所述单元-对象-组件装置400的实例4500至 4535的单元-对象-组件标识符;先参照单元-对象-组件标识符存储部322、332,其存储先参照与被该单元-对象-组件装置400的实例4500至4535参照的自身或其他所述单元-对象-组件装置400 的实例4500至4535相同的所述被参照其他单元-对象-组件装置400的实例4500至4535 的、其他所述单元-对象-组件装置400的实例4500至4535的所述单元-对象-组件标识符;后参照单元-对象-组件标识符存储部323、333,其存储后参照与被该单元-对象-组件装置400的实例4500至4535参照的自身或其他所述单元-对象-组件装置400 的实例4500至4535相同的被参照所述其他单元-对象-组件装置400的实例4500至4535 的、其他所述单元-对象-组件装置400的实例4500至4535的所述单元-对象-组件标识符,所述被参照单元-对象-组件信息存储装置220、230至少具有最前参照单元-对象-组件标识符存储部221、231,其用于存储参照该单元-对象-组件装置400的实例4500至4535的其他最前所述单元-对象-组件装置400的实例 4500至4535的单元-对象-组件标识符,最后参照单元-对象-组件标识符存储部222、232,其用于存储参照该单元-对象-组件装置400的实例4500至4535的其他最后所述单元-对象-组件装置400的实例 4500至4535的单元-对象-组件标识符。 使用图8,对适用单元-对象-组件装置的权利要求4所述的内存关系数据库系统进行说明。此处,单元-对象-组件装置的实例4600至4633是图6记载的单元-对象-组件装置400的实例。可以是一种内存关系数据库系统600,其配置在至少以中央处理器和主存储器作为构成要素的电子计算机的所述主存储器上,其特征在于,具有构成权利要求3所述的内存对象定向数据库系统500的、用于管理数据库的、一个或两个以上权利要求3所述的单元-对象-组件装置600 ;构成权利要求3所述的内存对象定向数据库系统500的、用于管理数据类型群的、一个或两个以上权利要求3所述的单元-对象-组件装置400的实例4602 ;分别参照用于管理该数据类型群的该所述单元-对象-组件装置4602的、用于管理数据类型的、一个或两个以上权利要求3所述的单元-对象-组件装置400的实例4612 至 4613 ;分别参照用于管理该数据库的该所述单元-对象-组件装置400的实例4612至 4600的、用于管理关系的、一个或两个以上权利要求3所述的单元-对象-组件装置400的实例4601 ;在两个以上分别参照用于管理该所述关系的单元-对象-组件装置400的实例 4601的、权利要求3所述的其他单元-对象-组件装置400的实例4610至4611内,用于管理属性群的一个权利要求3所述的单元-对象-组件装置400的实例4611 ;在两个以上分别参照用于管理该所述关系的单元-对象-组件装置400的实例 4601的、权利要求3所述的其他的单元-对象-组件装置400的实例4610至4611内,用于管理元组ID群的一个权利要求3所述的单元-对象-组件装置400的实例4610 ;分别参照用于管理该所述属性群的单元-对象-组件装置400的实例4611和用于管理该所述数据类型的单元-对象-组件装置400的实例4612至4613、且存储与构成该所述属性群的各属性相对应的数据长度的、用于管理该所述属性的、一个或两个以上权利要求3所述的单元-对象-组件装置400的实例4622至4623 ;分别参照用于管理该所述元组ID群的单元-对象-组件装置400的实例4610的、 用于管理一个或两个以上元组ID的、权利要求3所述的单元-对象-组件装置400的实例 4620 至 4621 ;分别参照用于管理该属性的该所述单元-对象-组件装置400的实例4622至4623 和用于管理该元组ID的该所述单元-对象-组件装置400的实例4620至4621的、用于管理一个或两个以上单元的、权利要求3所述的单元-对象-组件装置400的实例4630至 4633。使用图9,对适用单元-对象-组件装置的权利要求5所述的内存XML数据库系统进行说明。可以是一种内存XML数据库系统700,其配置在至少以中央处理器和主存储器作为构成要素的电子计算机的所述主存储器上,其特征在于,具有构成权利要求3所述的内存对象定向数据库系统500的、用于管理数据库的、上权利要求3所述的单元-对象-组件装置400的实例4701 ;构成权利要求3所述的内存对象定向数据库系统500的、用于管理标签列表地址的、权利要求3所述的单元-对象-组件装置400的实例4701 (图中,兼作用于管理所述数据库的单元-对象-组件装置);分别参照用于管理该所述标签列表地址的单元-对象-组件装置400的实例4701 的、用于管理标签列表的、权利要求3所述的单元-对象-组件装置400的实例4711、4712 ;分别参照用于管理该所述标签列表的单元-对象-组件装置400的实例4711的、 用于管理标签要素的、权利要求3所述的单元-对象-组件装置400的实例4700、4710、 4720、4730、4731、4732 ;分别参照用于管理该所述标签要素的单元-对象-组件装置400的实例4712的、用于存储数据值的、权利要求3所述的单元-对象-组件装置400的实例4713、4721、4722、 4733、4734、4735,分别参照用于递归(recursion)管理作为类别的该所述标签要素的单元-对象-组件装置400的实例4700、4710、4713、4720、4721、4722、4730至4735的、用于存储数据值的、权利要求3所述的单元-对象-组件装置400的实例4700、4710、4713、4720、4721、 4722,4730 至 4735,用于管理自身或者其他所述标签要素的单元-对象-组件装置400的实例4700、 4710、4713、4720、4721、4722、4730至4735或者用于存储所述数据值的单元-对象-组件装置400的实例4700、4710、4713、4720、4721、4722、4730至4735,参照用于递归地管理作为类别的该所述标签要素的单元-对象-组件装置400的实例4700、4710、4713、4720、4721、 4722,4730 至 4735。从数据库依据用查询语言记述的检索文限定在应用层并生成高速缓存时以如下方式解决将各种数据类型的数据转换成字符串形式并简化存储于键值存储的各元组的值部,并将由识别ID所指定的列值按照元组进行字符串结合存储在与键值存储的各元组的值部相对应的关键字部,作为从高速缓存中检索时的关键字,其中识别ID为成为与检索文同时发行的关键字候补的列(column)的识别ID。由于关键字部分是单纯的字符串,因此也能使用η元语法从而适用更加高速化的方法。对权利要求6所述的利用键值存储的数据库高速缓存装置进行说明。也可以是一种利用键值存储的数据库高速缓存装置,其特征在于,在与网络连接的包括能利用查询语言来检索确定特定的行的一个或两个以上数据库服务器计算机、和运行包含应用逻辑的计算机程序的一个或两个以上应用服务器计算机或客户端计算机的计算机系统中,用于运行包含所述应用逻辑的程序的所述应用服务器计算机或客户端计算机,在其存储装置上具有一个或两个以上由键值型数据构成的键值存储装置,键值型数据包括一对关键字和值,将用于实施在所述应用服务器计算机或客户端计算机上运行的包含所述应用逻辑的程序所设定的检索的、用查询语言记述的检索文发送到数据库服务器计算机,并从该数据库服务器计算机内的数据库中抽出符合的行,将记载于该抽出行的所述检索文的、选择对象列的值,以记载在所述检索文的每一列的顺序存储于所述键值存储装置的值部分,进而,用于从其他列中识别所述数据库内的列的一个或两个以上列ID与所述该检索文同时被发送,当传来一个所述列ID时,将对应的列值,如果是字符串就以字符串形式,如果是数值、金额、日期或时刻则转换成可表示的字符串并以字符串形式,存储在所述键值存储装置的关键字部分,当传来两个以上所述列ID时,将分别对应的两个以上的列值,如果是字符串就以字符串形式,如果是数值、金额、日期或者时刻则转换成可表示的字符串之后,进行字符串结合形成单字符串,存储在所述键值存储装置的关键字部分,每当在所述应用服务器计算机或客户端计算机上运行的包含所述应用逻辑的程序,从通过字符串检索所述键值存储装置的关键字部分所确定的键值型数据的值部分,要求与所述列ID对应的列值时,所述列ID由用所述该查询语言记述的检索文指定,不用去原始数据库服务器装置内的数据库中获取,也可以从所述键值存储装置中高速获取。发明的效果在发挥键值结构数据的单纯性的优点的同时进行封装化(encapsulated),并将该封装进行松散耦合(loose coupling),在高速复杂的大规模系统中要求灵活应对数据结构和数据量的动态变化时,也不失去其实用性能,而能加以构筑和运用。作为所述“将添加了用于参照一个或两个以上属性的参照结构和作为一个或两个以上属性被参照的被参照结构的键值结构数据”的图6记载的单元-对象-组件装置,在图 3记载的参照出处单元-对象-组件信息(实质为地址信息)121或最初参照图4记载的自身单元-对象-组件的单元-对象-组件信息(实质为地址信息)221,231或最后参照自身单元-对象-组件的单元-对象-组件信息(实质为地址信息)222,232或图5记载的参照出处单元-对象-组件信息(实质为地址信息)321、331中,可以包含参照出处的节点 IP地址或MAC地址等地址信息。因此,能够在其他的节点上参照属性,这意味着,能将数据库对象组跨节点地进行垂直分割。此处,数据库对象组例如是指在图8记载的关系数据库的应用中等同于关系数据库的关系(或者表),垂直分割是指在属性(或者列)方向上的分割,既投影(或者映射)。另外,在使图3记载的参照出处相同之前的单元-对象-组件信息(实质为地址信息)122或使参照出处相同之后的单元-对象-组件信息(实质为地址信息)123或使图 5记载的参照出处相同之前的单元-对象-组件信息(实质为地址信息)322至332或使参照出处相同之后的单元-对象-组件信息(实质为地址信息)323、333中,也可以包含参照出处的节点IP地址或MAC地址等地址信息。因此,能在其他的节点上配置具有相同属性的元组,这意味着能将数据库对象组跨节点地进行水平分割。此处的数据库对象组例如是指在图8记载的关系数据库的应用中等同于关系数据库的关系(或者表)。水平分割是指在元组(或者行)方向上的分割,即选择(或者挑选)。另外,将由专利文献2所述的多实例内存数据库中的大量元组(或者行)构成的关系(或者表)的水平分割应用于本发明,也能使由泛化关系数据库的内存对象定向数据库的、大量数据库对象构成的数据库对象组的跨节点分割成为可能。进而,在与内存对象定向数据库的关系数据库不同的特殊化XML数据库中,也能使由被大量特定标签所包围的数据库对象构成的数据库对象组的跨节点分割成为可能。进而,此处,通过应用将专利文献1和专利文献3所述的数据库结构信息等作为拓扑信息存储(repository)并交换的技术,能实施可以实时更新的P2P型分布式对象定向数据库系统、及其特殊化的可以实时更新的P2P型分布式关系数据库以及可以实时更新的 P2P型分布式XML数据库。另外,从数据库依据用查询语言所记述的检索文限定在应用层并生成高速缓存, 进一步将键值存储的关键字部分用η元语法等进行高速检索,由此,重复进行几万次如下简单检索的情况下,即包含应用逻辑的程序从主表将ID作为关键字来获取名称的程度, 当与作为内存关系数据库生成高速缓存并通过用查询语言所记述的检索文获取的情况相比,非常有助于提高包含该应用逻辑的程序的处理能力。


图1是表示在非专利文献1记载的键值型数据结构的结构图。图2是表示在关系数据库中的预连接机构的结构图。图3是将预连接机构应用于键值型数据结构的参照被参照两用型单元-对象 (cell object)要素装置的结构图。图4是将参照被参照两用型单元-对象要素装置的两侧的要素之间界面 (interface)特殊化为被参照型的被参照型单元-对象要素装置的结构图。图5是将参照被参照两用型单元-对象要素装置的两侧的要素之间界面特殊化为参照型的参照型单元-对象要素装置的结构图。图6是能够参照将参照型单元-对象要素装置和被参照型单元-对象要素装置组合构成的一个或者两个以上的自身或者其他的组件的单元-对象-组件装置的结构图。图7是利用单元-对象-组件装置的组合而构成内存对象定向数据库的例子(实施例1)。图8是利用单元-对象-组件装置的组合而构成的内存关系数据库的例子(实施例2)。图9是利用单元-对象-组件装置的组合的内存XML数据库的主存储器上的展开构成例。图10是表示将利用查询语言的检索文和指定关键字要素的列ID作为输入要素在应用层生成具有键值存储型数据结构的高速缓存的步骤的流程图,该查询语言用于从关系数据库生成键值存储的值要素。图11是表示从高速缓存中获取对应数据的步骤的流程图(实施例幻,该高速缓存具有从数据库抽出生成的键值存储型数据结构。
具体实施例方式以下,参照附图对用于实施本发明的最佳实施方案进行说明。此外,本发明并不局限于这些实施方案,在不脱离其宗旨的范围内可以通过各种形态实现。实施例1将利用图6中单元(cell) -对象(object) -组件(component)装置(以下组件) 的组合的、权利要求3所记载的内存对象定向数据库系统的实施例记载在图7中。设定在被核准的专利中有一个或者两个以上的申请人,还有1项或者两项以上的权利要求。各申请人具有识别号码且被编入列表并登记。在图7中,4530、4531、4532、4533是以专利申请人ID为值的按申请人分类的组件, 各组件分别具有被识别者属性和申请人属性。被识别者属性参照与该属性值相对应的被识别者A组件4520、被识别者B组件4521、被识别者C组件4523,并且,被识别者A组件4520、 被识别者B组件4521、被识别者C组件4522分别具有识别者号码属性并参照识别号码列表组件4510。另外,申请人Al组件4530和申请人Bl组件4531的申请人属性均参照专利 4158634号申请人列表组件4523,且申请人A2组件4532和申请人Cl组件4533的申请人属性均参照专利4313845号申请人列表组件45M。4534、4535是以权利要求ID为值的组件,该组件分别具有权利要求列表属性。另外,权利要求属性参照专利4158634号的权利要求列表组件4525。进而,专利4158634号的申请人列表组件4523具有专利4158634号属性并参照专利4158634号的组件4511。另外,专利4313845号的申请人列表组件45M和专利 4158634号的权利要求列表组件4525具有专利4313845号属性并参照专利4313845号组件 4512。专利4158634号的组件4511和专利4313845号组件4512均具有专利列表属性并参照专利列表组件4500。相反,识别号码列表组件4510分别将被识别者组件4520、4521、4522作为被参照集合组,被识别者A组件4520将申请人Al组件4530和申请人A2组件4532作为被参照集合组,被识别者B组件4521将申请人Bl组件4531作为被参照集合组,被识别者C组件 4522将申请人Cl组件4532作为被参照集合组。另外,专利列表组件4500作为被参照集合组具有专利4158634号组件4511和专利4313845号组件4512。另外,专利4158634号组件4511作为被参照集合组具有专利4158634号申请人列表组件4523,进而,生成图外的专利4158634号权利要求列表组件并添加在被参照集合组也可以。另外,专利4313845号的组件4512作为被参照集合组具有专利4313845号申请人列表组件4523和专利4313845 号权利要求列表组件4525。专利4158634号申请人列表组件4523将申请人Al组件4530 和申请人Bl组件4531作为被参照集合组,专利4313845号申请人列表组件45M将申请人 A2组件4532和申请人Cl组件4533作为被参照集合组,专利4313845号权利要求列表组件 4525将专利4313845号权利要求1的组件4534和专利4313845号权利要求2的组件4535 作为被参照集合组。实施例2将利用图6中单元(cell)-对象-组件装置(以下组件)的组合的、权利要求4 记载的内存关系数据库系统的实施例记载在图8中。所述内存关系数据库系统是利用列表组件来进行限制特殊化的系统,该列表组件用于在所述内存对象定向数据库系统中分别管理单元组件、元组组件、属性组件、类型组件、关系组件以及各组件。在图8中,4830、4831、4832、4833是由元组ID和属性ID规定的单元的组件, 以各个单元的值为值(Value),所述单元的组件作为单元组件分别具有元组特征和属性 (Attribute)特征,元组特征分别参照对应的元组组件4620、4621,属性(Attribute)特征分别参照对应的属性组件4622、4623。元组组件4620、4621分别具有元组特征列表并参照元组列表组件4610,属性组件4622、4623分别具有属性列表特征和类型特征,属性列表特征参照属性列表组件4611,类型特征参照类型列表组件4601。其他的属性组件4622、4623 具有数据长度特征,但不参照其他的组件。元组列表组件4610和属性列表组件4611参照对应的关系组件4601,关系组件4601具有关系列表特征并参照关系列表组件4600。相反,关系列表组件4600具有由关系组件4601构成的集合组,指定特定的关系组件4601,且该关系组件4601具有由参照该关系组件4601的元组列表组件4610构成的集合组和由属性列表组件4611构成的集合组。另外,元组列表组件4610分别具有由元组组件 4620,4621构成的集合组。另外,属性列表组件4611具有由属性组件4622、4623构成的集合组。进而,元组1组件4620具有由单元组件4630、4631构成的集合组,元组2组件4621 具有由单元组件4632、4633构成的集合组,属性1组件4622具有由单元组件4630、4632构成的集合组,属性2组件4623具有由单元组件4631、4633构成的集合组,指定特定的元组组件和特定的属性组件,由此能特别指定单元组件。
实施例3将利用图6中单元-对象-组件装置(以下组件)的组合的、权利要求5中记载的内存XML数据库系统的主存储器上的展开实施例记载在图9中。在所述内存对象定向数据库系统中,所述内存XML数据库系统是用一个或者两个以上的标签(tag)组件和标签列表组件进行限制并特殊化的系统。在图9中,4730、4731、4732、4733、4734、4735是指定各种鱼的属分类的属分类标签组件,具有作为值的各属分类标签名,各属分类标签组件4730、4731、4732、4733,4734、 4735具有标签列表属性和与该鱼的属分类对应的鱼的科分类标签属性,标签列表属性参照对应的标签列表组件4711、4712,科分类属性参照对应的鱼的科分类组件4720、4721、 4722。各所述标签列表组件4711、4712具有地址(location)标签属性并参照地址组件 4701。另外,各所述鱼的科分类组件4720、4721、4722具有作为值的各科分类标签名,各科分类标签组件4720、4721、4722具有标签列表属性和与该鱼的科分类对应的鱼的目分类标签属性,标签列表属性参照对应的标签列表组件4711、4712,目分类标签属性参照对应的鱼的目分类组件4710、4713。各所述标签列表组件4711、4712具有地址标签属性并参照地址组件4701。另外,各所述鱼的目分类组件4710、4713具有作为值的各目分类标签名,各目分类标签组件4710、4713具有标签列表属性和与该鱼的目分类对应的鱼的鱼类标签属性,标签列表属性参照对应的标签列表组件4711、4712,鱼类标签属性参照对应的鱼类分类组件 4700。各所述标签列表组件4711、4712具有地址标签属性并参照地址组件4701。相反,地址组件4701具有由标签列表组件4711、4712构成的集合组,指定特定的标签列表组件,并且标签列表1组件4711具有由参照该标签列表组件的各种组件4720、 4730,4731,4732构成的集合组,标签列表2组件4712具有由参照该标签列表组件的各种组件4721、4722、4733、4734、4735构成的集合组。另外,鱼类分类组件具有由目分类组件 4710、4713构成的集合组。进而,鲈形目分类组件4710具有由科分类组件4720、4721构成的集合组。另外,鲑形目分类组件具有由科分类组件4722构成的集合组。进而,鲭科分类组件4720具有由属分类组件4730、4731、4732构成的集合组。另外,鲈科分类组件4721具有由属分类组件4733构成的集合组。另外,鲑科分类组件4722具有由属分类组件4734、 4735构成的集合组。由此,也可以例如构筑进行鱼类分类的XML数据库作为内存XML数据库系统而用于检索服务中。另外,也可以从地址组件中获取构成该组件的标签列表,从各标签列表获取所要的标签,并获取对应的内容。由此,不用像SAX那样将全部该XML文件展开在存储系统上,而像DOM那样从任意标签中获取所需的信息。实施例4在将运行含有应用逻辑的程序的应用服务器装置和数据库管理装置置于同一个计算机上,并无需用LAN等网络连接应用层和数据库层的系统的运行环境下,可以以如下方式改变或再制作将被设计构筑成包含应用逻辑的程序容易访问数据库的旧构架系统中的程序,即通过在最初仅发行一次依据包含在旧程序查询语言的检索文,在应用层侧形成高速缓存,以后对相同的查询,不发行依据比较冗长的查询语言的检索文,而是通过字符串检索高速获取对应的数据,该字符串检索依据与构成键值结构数据的字符串关键字相对应
19的η元(n-gram)语法。产业上的利用可能性随着企业内部统一管理和服从(compliance)的强化作为业务完成的证据而必须长期保管的数据与日俱增,如职员向公司外部发送的电子邮件和在该电子邮件中添加并交换的报价单或订单等业务资料文件等。并且,也会发生由于监督部门突然提出检查或监查的要求而必须将特定的文件在短时间内找出并提交的情况。通过将用于该数据保管后的取出或正确解释的注释等作为XML数据进行保管,就能向利用标签的该数据赋予属性。但是, XML数据则变成数据本身就具有作为标签的冗长附加信息。进而,数据与XML被研究并开始利用时相比规模格外变大。作为XML数据的反序列化(deserialize)方法主要有使用DOM 的方法和使用SAX的技术。DOM是一种用能直接访问XML数据的任何部分的方式来代替将全部XML数据放到主存储器上的结构。另一方面,SAX从路由器(route)到末端为止按顺序根据主存储器的容量在主存储器上展开大规模的XML数据,同时分析信息。将本发明用于XML文件的反序列化时,可以无需像DOM那样在主存储器上展开全部数据,也不用像SAX 那样从路由器读取数据,而只读取XML数据中写入的文件的必要部分并提供给主存储器。另外,由于能容易地构筑跨节点(node)的分布式数据库,从而方便构筑以SCM为主的SOA系统。进而,作为本发明的核心的图6中记载的单元-对象-组件装置不仅可以建立参照自身的关系,而且还可以建立参照其他单元-对象-组件装置的关系,该其他单元-对象-组件装置具有不仅一个的多个不同属性,因此,不仅通过面向生产BOM中实际使用的构成部件或材料上游的参照,还通过发货的产品和发货量的附带条件,确定包含运转不良的部件、对环境有不良影响的原材料的产品,以及确定已在此确定的产品的制造量和发货量, 将产品的回收限制在确定的量,从而有利于最大程度地降低由回收所产生的损失和原因查明。在将运行含有应用逻辑的程序的应用服务器装置和数据库管理装置置于同一个计算机上且无需用LAN等网络连接应用层和数据库层的系统的运行环境下,将被设计构筑成包含应用逻辑的大量程序容易访问数据库的旧构架系统转换成分离为应用层和数据库层的比较新的构架的项目中,能在抑制旧系统的程序变化的同时并高速获取对应的数据。从数据库依据用查询语言记述的检索文限定在应用层并生成高速缓存时以如下方式解决将各种数据类型的数据转换成字符串形式并简化存储于键值存储的各元组的值部,并将由识别ID所指定的列值按照元组进行字符串结合存储在与键值存储的各元组的值部相对应的关键字部,作为从高速缓存中检索时的关键字,其中识别ID为成为与检索文同时发行的关键字候补的列(column)的识别ID。由于关键字部分是单纯的字符串,因此也能使用η元语法从而适用更加高速化的方法。对权利要求6所述的利用键值存储的数据库高速缓存装置进行说明。也可以是一种利用键值存储的数据库高速缓存装置,其特征在于,在与网络连接的包括能利用查询语言来检索确定特定的行的一个或两个以上数据库服务器计算机、和运行包含应用逻辑的计算机程序的一个或两个以上应用服务器计算机或客户端计算机的计算机系统中,用于运行包含所述应用逻辑的程序的所述应用服务器计算机或客户端计算机,在其存储装置上具有一个或两个以上由键值型数据构成的键值存储装置,键值型数据包括一对关键字和值,将用于实施在所述应用服务器计算机或客户端计算机上运行的包含所述应用逻辑的程序所设定的检索的、用查询语言记述的检索文发送到数据库服务器计算机,并从该数据库服务器计算机内的数据库中抽出符合的行,将记载于该抽出行的所述检索文的、选择对象列的值,以记载在所述检索文的每一列的顺序存储于所述键值存储装置的值部分,进而,用于从其他列中识别所述数据库内的列的一个或两个以上列ID与所述该检索文同时被发送,当传来一个所述列ID时,将对应的列值,如果是字符串就以字符串形式,如果是数值、金额、日期或时刻则转换成可表示的字符串并以字符串形式,存储在所述键值存储装置的关键字部分,当传来两个以上所述列ID时,将分别对应的两个以上的列值,如果是字符串就以字符串形式,如果是数值、金额、日期或者时刻则转换成可表示的字符串之后,进行字符串结合形成单字符串,存储在所述键值存储装置的关键字部分,每当在所述应用服务器计算机或客户端计算机上运行的包含所述应用逻辑的程序,从通过字符串检索所述键值存储装置的关键字部分所确定的键值型数据的值部分,要求与所述列ID对应的列值时,所述列ID由用所述该查询语言记述的检索文指定,不用去原始数据库服务器装置内的数据库中获取,也可以从所述键值存储装置中高速获取。附图标记说明1 关键字2 值3 键值型数据结构10被参照表11,21 行 ID12、13、22、23 列14 最初参照的参照表的行ID15 最初参照的参照表的行ID16 参照被参照表的参照表的行数20 参照表24 参照表参照出处的被参照表的行ID25 先参照相同被参照表的行的行ID26 后参照相同被参照表的行的行ID100参照被参照两用型单元-对象要素装置110 单元-对象存储部111 对象ID (关键字)112 值120参照单元-对象-组件信息存储装置121参照出处单元-对象-组件信息(实质是地址信息或者地址ID)122 使参照出处相同之前的单元-对象-组件信息(实质是地址信息或者地址ID) 123 使参照出处相同之后的单元-对象-组件信息(实质是地址信息或者地址ID) 130 被参照单元-对象-组件信息存储装置 131 最初参照自身单元-对象-组件的单元-对象-组件信息(实质是地址ii息或者地址ID)132 最后参照自身单元-对象-组件的单元-对象-组件信息(实质是地址ii 息或者地址ID)133参照自身单元-对象-组件的单元-对象-组件的件数200被参照型单元-对象要素装置201被参照型单元-对象要素装置200的实例210 单元-对象存储部 211对象ID (关键字) 212 值 220,230被参照单元-对象-组件信息存储装置221,231 最初参照自身单元-对象-组件的单元-对象-组件信息(实质是地
址信息)222,232 最后参照自身单元-对象-组件的单元_对象_组件信息(实质是地址信息)223,233参照自身单元-对象-组件的单元_对象_组件的件数300参照型单元-对象要素装置301、302、300+n参照型单元-对象要素装置300的实例(η是参照自身单元-对象-组件的单元-对象-组件的件数)310单元-对象存储部 311对象ID (关键字) 312 值320,330参照单元-对象-组件信息存储装置321、331参照出处单元-对象-组件信息(实质是地址地址)322,332使参照出处相同之前的单元-对象-组件信息(实质是地址信息)323,333使参照出处相同之后的单元-对象-组件信息(实质是地址信息) 400单元-对象-组件装置4500、4510、4511、4512、4520、4521、4522、4523、4524、4525、4530、4531、4532、4533、4534,4535用于说明内存对象定向数据库的构成例的单元-对象-组件装置400
的实例 4500专利列表组件装置 4510识别号码列表组件装置 4511专利41586 组件装置 4512专利4313845组件装置
4520被识别者A组件装置4521被识别者B组件装置4522被识别者C组件装置4523专利4158634申请人列表组件装置4524专利4313845申请人列表组件装置4525专利4313845权利要求列表组件装置4530申请人A1组件装置4531申请人B1组件装置4532申请人A2组件装置4533申请人C1组件装置4534专利4313845权利要求1的组件装置4535专利4313845权利要求2的组件装置4541识别号码属性4542被识别号码属性4543被识别者A4544被识别者B4545被识别者C4546识别号码列表4547申请人属性4548申请人A姓名/名称4549申请人B姓名/名称4550申请人C姓名/名称4551专利列表4552专利列表属性4553专利 41586344554专利 4158634 属性4555专利4158634申请人列表4556专利 43138454557专利 4313845 属性4558专利4313845申请人列表4559专利4313845权利要求列表4560权利要求列表属性4561权利要求14562权利要求24600用于管理数据库的单元_对象_组件装置400的实例4601用于管理关系的单元_对象_组件装置400的实例4602用于管理数据类型群的单元_对象_组件装置400的实例4610用于管理元组ID群的单元-对象-组件装置400的实例4611用于管理属性群的单元_对象_组件装置400的实例
4612用于管理数据类型的单元_对象_组件装置400的实例14613用于管理数据类型的单元_对象_组件装置400的实例24620用于管理元组ID的单元-对象-组件装置400的实例14621用于管理元组ID的单元-对象-组件装置400的实例24622用于管理属性的单元-对象-组件装置400的实例14623用于管理属性的单元-对象-组件装置400的实例24630用于管理单元的单元_对象_组件装置400的实例14631用于管理单元的单元_对象_组件装置400的实例24632用于管理单元的单元-对象-组件装置400的实例34633用于管理单元的单元-对象-组件装置400的实例44640关系列表4641关系列表属性4642关系 14643类型列表4644关系属性4645元组列表4646属性列表4647类型 14648数值4649类型 24650字符串4651元组列表属性4652元组 1-ID4653元组 2-ID4654属性列表特征4655属性1_名称4656属性2_名称4657类型属性4658数据长度4659元组属性4660属性特征4661单元 11 值4662单元 12 值4663单元 21 值4664单元 22 值4700参照用于管理鱼类分类组件、标签列表的单元_对象_组件装置400的实 例4711的、用于管理标签要素的单元-对象-组件装置400的实例,4701用于管理地址组件,标签列表的地址的单元_对象_组件装置400的实例 「030114710参照用干管理鲈形目分类纟日件、标溶列表的单元-对象-纟日件装置400的实例4711的、用于管理标签要素的单元-对象-组件装置400的实例,4711用于管理标签列表1组件、标签列表的单元-对象-组件装置400的实例,4712用于管理标签列表2组件、标签列表的单元-对象-组件装置400的实例,4713分别参照用于管理鲑形目分类组件、标签列表的单元-对象-组件装置400 的实例4712的、用于管理标签要素的单元-对象-组件装置400的实例,4720 参照用于管理鲭科分类组件、标签列表的单元-对象-组件装置400的实例4711的、用于管理标签要素的单元-对象-组件装置400的实例,4721该分别参照用于管理鲈科分类组件、标签列表的单元-对象-组件装置400 的实例4712的、用于管理标签要素的单元-对象-组件装置400的实例,4722 分别参照用于管理鲑科分类组件、标签列表的单元-对象-组件装置400 的实例4712的、用于管理标签要素的单元-对象-组件装置400的实例,4730 参照用于管理鲭属分类组件、标签列表的单元-对象-组件装置400的实例4711的、用于管理标签要素的单元-对象-组件装置400的实例,4731 参照用于管理鲔属分类组件、标签列表的单元-对象-组件装置400的实例4711的、用于管理标签要素的单元-对象-组件装置400的实例,4732 参照用于管理鲣属分类组件、标签列表的单元-对象-组件装置400的实例4711的、用于管理标签要素的单元-对象-组件装置400的实例,4733 分别参照用于管理鲈属分类组件、标签列表的单元-对象-组件装置400 的实例4712的、用于管理标签要素的单元-对象-组件装置400的实例,4734 分别参照用于管理鲑属分类组件,标签列表的单元-对象-组件装置400 的实例4712的、用于管理标签要素的单元-对象-组件装置400的实例,4735 分别参照用于管理红点鲑属分类组件、标签列表的单元-对象-组件装置 400的实例4712的、用于管理标签要素的单元-对象-组件装置400的实例,4740标签列表属性
4741鱼类标签
4742地址标签
4743鱼类标签属性
4744地址标签属性
4745鲈形目标签
4746鲑形目标签
4747鲈形目标签属性
4748鲑形目标签属性
4749鲭科标签
4750鲈科标签
4751鲑科标签
4752鲭科标签属性
4753鲈科标签属性
4754鲑科标签属性
4755鲭属标签
4756鲔属标签
4757鲣属标签
4758鲈属标签
4759鲑属标签
4760红点鲑属标签
4761标签列表1标签
4762标签列表2标签
500利用单元-对象
600利用单元-对象
700利用单元-对象构成例
权利要求
1.一种单元-对象-组件装置,其配置在至少以中央处理器和主存储器作为构成要素的电子计算机的所述主存储器上,其特征在于,具有一个或两个以上参照被参照两用型单元-对象要素装置, 所述参照被参照两用型单元-对象要素装置具有一个或两个以上单元-对象要素标识符存储部,其存储用于识别该参照被参照两用型单元-对象要素装置的单元-对象要素标识符;一个或两个以上单元-对象要素值存储部,其用于将任意的值存储于该参照被参照两用型单元-对象要素装置;被参照单元-对象-组件信息存储装置,其用于存储被单元-对象-组件装置参照的其他一个或两个以上单元-对象-组件装置的信息;参照单元-对象-组件信息存储装置,其用于存储参照该单元-对象-组件装置的其他一个或两个以上所述单元-对象-组件装置的信息, 所述参照单元-对象-组件信息存储装置至少具有单元-对象-组件标识符存储部,其用于存储被该单元-对象-组件装置参照的其他所述单元-对象-组件装置的单元-对象-组件标识符;先参照单元-对象-组件标识符存储部,其存储先参照与被该单元-对象-组件装置参照的其他所述单元-对象-组件装置相同的所述被参照其他单元-对象-组件装置的、 其他所述单元-对象-组件装置的所述单元-对象-组件标识符;后参照单元-对象-组件标识符存储部,其存储后参照与被该单元-对象-组件装置参照的其他所述单元-对象-组件装置相同的所述被参照其他单元-对象-组件装置的、 其他所述单元-对象-组件装置的所述单元-对象-组件标识符, 所述被参照单元-对象-组件信息存储装置至少具有最前参照单元-对象-组件标识符存储部,其用于存储参照该单元-对象-组件装置的其他最前所述单元-对象-组件装置的单元-对象-组件标识符,最后参照单元-对象-组件标识符存储部,其用于存储参照该单元-对象-组件装置的其他最后所述单元-对象-组件装置的单元-对象-组件标识符。
2.—种单元-对象-组件装置,其配置在至少以中央处理器和主存储器作为构成要素的电子计算机的所述主存储器上,其特征在于,具有一个或两个以上参照型单元-对象要素装置和一个或两个以上被参照型单元-对象要素装置,所述参照型单元-对象要素装置具有一个或两个以上单元-对象要素标识符存储部,其存储用于识别该参照型单元-对象要素装置的单元-对象要素标识符;一个或两个以上单元-对象要素值存储部,其用于将任意的值存储于该参照型单元-对象要素装置;参照单元-对象-组件信息存储装置,其用于存储被该单元-对象-组件装置参照的其他一个或两个以上单元-对象-组件装置的信息; 所述被参照型单元-对象要素装置具有一个或两个以上单元-对象要素标识符存储部,其存储用于识别该被参照型单元-对象要素装置的单元-对象要素标识符;一个或两个以上单元-对象要素值存储部,其用于将任意的值存储于该被参照型单元-对象要素装置;被参照单元-对象-组件信息存储装置,其用于存储参照该单元-对象-组件装置的其他一个或两个以上所述单元-对象-组件装置的信息, 所述参照单元-对象-组件信息存储装置至少具有单元-对象-组件标识符存储部,其用于存储被该单元-对象-组件装置参照的其他所述单元-对象-组件装置的单元-对象-组件标识符,先参照单元-对象-组件标识符存储部,其存储先参照与被该单元-对象-组件装置参照的其他所述单元-对象-组件装置相同的所述被参照其他单元-对象-组件装置的、 其他所述单元-对象-组件装置的所述单元-对象-组件标识符,后参照单元-对象-组件标识符存储部,其存储后参照与被该单元-对象-组件装置参照的其他所述单元-对象-组件装置相同的所述被参照其他单元-对象-组件装置的、 其他所述单元-对象-组件装置的所述单元-对象-组件标识符, 所述被参照单元-对象-组件信息存储装置至少具有最前参照单元-对象-组件标识符存储部,其用于存储参照该单元-对象-组件装置的其他最前所述单元-对象-组件装置的单元-对象-组件标识符,最后参照单元-对象-组件标识符存储部,其用于存储参照该单元-对象-组件装置的其他最后所述单元-对象-组件装置的单元-对象-组件标识符。
3. 一种内存对象定向数据库系统,其配置在至少以中央处理器和主存储器作为构成要素的电子计算机的所述主存储器上,其特征在于,所述内存对象定向数据库系统通过组合一个或两个以上单元-对象-组件装置而构成,所述单元-对象-组件装置,具有一个或两个以上参照被参照两用型单元-对象要素装置; 或者具有一个或两个以上参照型单元-对象要素装置和一个或两个以上被参照型单元-对象要素装置;或者具有一个或两个以上参照被参照两用型单元-对象要素装置和一个或两个以上参照型单元-对象要素装置;或者具有一个或两个以上参照被参照两用型单元-对象要素装置和一个或两个以上被参照型单元-对象要素装置;或者具有一个或两个以上参照被参照两用型单元-对象要素装置和一个或两个以上参照型单元-对象要素装置和一个或两个以上被参照型单元-对象要素装置, 所述参照被参照两用型单元-对象要素装置具有一个或两个以上单元-对象要素标识符存储部,其存储用于识别该参照被参照两用型单元-对象要素装置的单元-对象要素标识符;一个或两个以上单元-对象要素值存储部,其将任意的值存储于该参照被参照两用型单元-对象要素装置;被参照单元-对象-组件信息存储装置,其用于存储被单元-对象-组件装置参照的自身或其他一个或两个以上单元-对象-组件装置的信息;参照单元-对象-组件信息存储装置,其用于存储参照该单元-对象-组件装置的自身或其他一个或两个以上所述单元-对象-组件装置的信息, 所述参照型单元-对象要素装置具有一个或两个以上单元-对象要素标识符存储部,其存储用于识别该参照型单元-对象要素装置的单元-对象要素标识符;一个或两个以上单元-对象要素值存储部,其将任意的值存储于该参照型单元-对象要素装置;参照单元-对象-组件信息存储装置,其用于存储被该单元-对象-组件装置参照的自身或其他一个或两个以上单元-对象-组件装置的信息, 所述被参照型单元-对象要素装置具有一个或两个以上单元-对象要素标识符存储部,其存储用于识别该被参照型单元-对象要素装置的单元-对象要素标识符;一个或两个以上单元-对象要素值存储部,其用于将任意的值存储于该被参照型单元-对象要素装置;被参照单元-对象-组件信息存储装置,其用于存储参照该单元-对象-组件装置的自身或其他一个或两个以上所述单元-对象-组件装置的信息, 所述参照单元-对象-组件信息存储装置至少具有单元-对象-组件标识符存储部,其用于存储被该单元-对象-组件装置参照的自身或其他所述单元-对象-组件装置的单元-对象-组件标识符;先参照单元-对象-组件标识符存储部,其存储先参照与被该单元-对象-组件装置参照的自身或其他所述单元-对象-组件装置相同的所述被参照其他单元-对象-组件装置的、其他所述单元-对象-组件装置的所述单元-对象-组件标识符;后参照单元-对象-组件标识符存储部,其存储后参照与被该单元-对象-组件装置参照的自身或其他所述单元-对象-组件装置相同的被参照所述其他单元-对象-组件装置的、其他所述单元-对象-组件装置的所述单元-对象-组件标识符, 所述被参照单元-对象-组件信息存储装置至少具有最前参照单元-对象-组件标识符存储部,其用于存储参照该单元-对象-组件装置的其他最前所述单元-对象-组件装置的单元-对象-组件标识符,最后参照单元-对象-组件标识符存储部,其用于存储参照该单元-对象-组件装置的其他最后所述单元-对象-组件装置的单元-对象-组件标识符。
4. 一种内存关系数据库系统,其配置在至少以中央处理器和主存储器作为构成要素的电子计算机的所述主存储器上,其特征在于,具有构成权利要求3所述的内存对象定向数据库系统的、用于管理数据库的、一个或两个以上权利要求3所述的单元-对象-组件装置;构成权利要求3所述的内存对象定向数据库系统的、用于管理数据类型群的、一个或两个以上权利要求3所述的单元-对象-组件装置;分别参照用于管理该数据类型群的该所述单元-对象-组件装置的、用于管理数据类型的、一个或两个以上权利要求3所述的单元-对象-组件装置;分别参照用于管理该数据库的该所述单元-对象-组件装置的、用于管理关系的、一个或两个以上权利要求3所述的单元-对象-组件装置;在两个以上分别参照用于管理该所述关系的单元-对象-组件装置的、权利要求3所述的其他单元-对象-组件装置内,用于管理属性群的一个权利要求3所述的单元-对象-组件装置;在两个以上分别参照用于管理该所述关系的单元-对象-组件装置的、权利要求3 所述的其他的单元-对象-组件装置内,用于管理元组ID群的一个权利要求3所述的单元-对象-组件装置;分别参照用于管理该所述属性群的单元-对象-组件装置和用于管理该所述数据类型的单元-对象-组件装置、且存储与构成该所述属性群的各属性相对应的数据长度的、用于管理该所述属性的、一个或两个以上权利要求3所述的单元-对象-组件装置;分别参照用于管理该所述元组ID群的单元-对象-组件装置的、用于管理一个或两个以上元组ID的、权利要求3所述的单元-对象-组件装置;分别参照用于管理该属性的该所述单元-对象-组件装置和用于管理该元组ID的该所述单元-对象-组件装置的、用于管理一个或两个以上单元的、权利要求3所述的单元-对象-组件装置。
5.一种内存XML数据库系统,其配置在至少以中央处理器和主存储器作为构成要素的电子计算机的所述主存储器上,其特征在于,具有构成权利要求3所述的内存对象定向数据库系统的、用于管理数据库的、一个或两个以上权利要求3所述的单元-对象-组件装置;构成权利要求3所述的内存对象定向数据库系统的、用于管理标签列表地址的、一个或两个以上权利要求3所述的单元-对象-组件装置;分别参照用于管理该所述标签列表地址的单元-对象-组件装置的、用于管理标签列表的、一个或两个以上权利要求3所述的单元-对象-组件装置;分别参照用于管理该所述标签列表的单元-对象-组件装置的、用于管理标签要素的、 一个或两个以上权利要求3所述的单元-对象-组件装置;分别参照用于管理该所述标签要素的单元-对象-组件装置的、用于存储数据值的、一个或两个以上权利要求3所述的单元-对象-组件装置,用于管理自身或者一个或两个以上其他所述标签要素的单元-对象-组件装置、或者一个或两个以上用于存储所述数据值的单元-对象-组件装置,参照用于管理该所述标签要素的单元-对象-组件装置。
6.一种利用键值存储的数据库高速缓存装置,其特征在于,在与网络连接的包括能利用查询语言来检索确定特定的行的一个或两个以上数据库服务器计算机、和运行包含应用逻辑的计算机程序的一个或两个以上应用服务器计算机或客户端计算机的计算机系统中,用于运行包含所述应用逻辑的程序的所述应用服务器计算机或客户端计算机,在其存储装置上具有一个或两个以上由键值型数据构成的键值存储装置,键值型数据包括一对关键字和值,将用于实施在所述应用服务器计算机或客户端计算机上运行的包含所述应用逻辑的程序所设定的检索的、用查询语言记述的检索文发送到数据库服务器计算机,并从该数据库服务器计算机内的数据库中抽出符合的行,将记载于该抽出行的所述检索文的、选择对象列的值,以在记载所述检索文的每一列的顺序存储于所述键值存储装置的值部分,进而,用于从其他列中识别所述数据库内的列的一个或两个以上列ID与所述该检索文同时被发送,当传来一个所述列ID时,将对应的列值,如果是字符串就以字符串形式,如果是数值、 金额、日期或时刻则转换成可表示的字符串并以字符串形式,存储在所述键值存储装置的关键字部分,当传来两个以上所述列ID时,将分别对应的两个以上的列值,如果是字符串就以字符串形式,如果是数值、金额、日期或者时刻则转换成可表示的字符串之后,进行字符串结合形成单字符串,存储在所述键值存储装置的关键字部分,每当在所述应用服务器计算机或客户端计算机上运行的包含所述应用逻辑的程序,从通过字符串检索所述键值存储装置的关键字部分所确定的键值型数据的值部分,要求与所述列ID对应的列值时,所述列ID由用所述该查询语言记述的检索文指定,不用去原始数据库服务器装置内的数据库中获取,也可以从所述键值存储装置中高速获取。
7. 一种具有键值存储的数据库高速缓存装置的内存关系数据库系统,其特征在于,通过将利用权利要求6所述的键值存储的数据库高速缓存装置附加于权利要求4所述的内存关系数据库系统,能够将从所述内存关系数据库系统中检索并读取的数据简化为键值存储结构以高速缓存的形式保存,并能够高速处理频繁的相同访问。
全文摘要
本发明的课题在于提供一种有效地结合键值结构数据从而灵活应对数据结构和数据量的动态变化的结构,和提高从该结构中频繁读取简单表的处理能力。本发明将用于参照属性的参照结构和用于作为属性被参照的被参照结构作为“参照-参照”元件和“被参照-被参照”元件,并包含键值存储结构的数据形成一个组件,与具有多个属性的组件之间作为“参照-被参照”的关系进行结合,并构筑灵活的数据模型,并将检索结果作为键值存储结构的高速缓存接收,由此有利于简化从现有应用程序向所述灵活数据模型的访问,进而有利于应用程序整体的高速化。
文档编号G06F12/00GK102597969SQ20108003779
公开日2012年7月18日 申请日期2010年6月21日 优先权日2009年6月25日
发明者西山修平 申请人:西山修平
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1