【技术实现步骤摘要】
【国外来华专利技术】存储器内数据库中的直接表关联
技术介绍
计算机化数据库被广泛用来存储和组织数据。计算机化数据库的最近应用的一个领域是实时处理在线事务。通常,关系数据库被用来处理此类事务。为了满足对在线事务不断增长的需求,数据库开发人员在开发这样的关系数据库系统时面临着挑战,这样的关系数据库系统实现了低时延并且在高并发性条件下可以很好地运行。
技术实现思路
为了解决上述问题,提供了一种计算机化数据库管理系统,其包括数据库服务器、处理器和相关联的随机存取存储器。处理器可以将随机存取存储器中的存储器内数据库配置为具有表,每个表包含具有相关联的存储器地址的多个单元,在包含原始单元的行和包含在表内的至少一个目标单元的行之间建立直接表关联,接收在包括目标单元的第二表上执行包括原始单元的第一表的联接数据库操作的请求,取消引用针对原始单元的直接表关联以获得在针对目标单元的存储器地址处被存储的目标单元的值,执行联接数据库操作以产生包括该值的联接表,并将联接表存储在随机存取存储器中的新位置处。提供本
技术实现思路
是为了以简化的形式介绍一些概念,这些概念将在下面的具体实施方式中进一步被描述。本
技术实现思路
不旨在标识所要求保护的主题内容的关键特征或必要特征,也不旨在被用来限制所要求保护的主题内容的范围。此外,所要求保护的主题内容不限于解决在本公开的任何部分中提到的任何或所有缺点的实现。附图说明图1是根据本公开的一个实施例的计算机化数据库管理系统的示意图。图2A-2B是图1的系统的直接表关联的示意图,其示出了多对一关系。图3A-3B是图1的系统的直接表关联的示意图,其示出了与中间索引表的多对多关系。图4A-4 ...
【技术保护点】
1.一种计算机化数据库管理系统,包括:数据库服务器,其包括处理器和相关联的随机存取存储器,所述处理器被配置为:将所述随机存取存储器中的存储器内数据库配置为具有:被组织成逻辑行和逻辑列的多个单元的第一表,以及被组织成逻辑行和逻辑列的多个单元的第二表,所述表中的每个表的所述单元中的每个单元在所述随机存取存储器内具有相关联的存储器地址;在所述第一表的所述多个单元的原始单元的存储器地址和所述第二表的所述多个单元的目标单元的存储器地址之间建立直接表关联;接收在包括所述目标单元的所述第二表的一个或多个行或列上执行包括所述原始单元的所述第一表的一个或多个行或列的联接数据库操作的请求;取消引用针对所述原始单元的所述直接表关联,以获得在针对所述目标单元的所述存储器地址处所存储的所述目标单元的值;使用所述值来执行所述联接数据库操作,以从而产生包括所述值的联接表;以及将所述联接表存储在所述随机存取存储器中的新位置处。
【技术特征摘要】
【国外来华专利技术】2016.09.28 US 15/279,0151.一种计算机化数据库管理系统,包括:数据库服务器,其包括处理器和相关联的随机存取存储器,所述处理器被配置为:将所述随机存取存储器中的存储器内数据库配置为具有:被组织成逻辑行和逻辑列的多个单元的第一表,以及被组织成逻辑行和逻辑列的多个单元的第二表,所述表中的每个表的所述单元中的每个单元在所述随机存取存储器内具有相关联的存储器地址;在所述第一表的所述多个单元的原始单元的存储器地址和所述第二表的所述多个单元的目标单元的存储器地址之间建立直接表关联;接收在包括所述目标单元的所述第二表的一个或多个行或列上执行包括所述原始单元的所述第一表的一个或多个行或列的联接数据库操作的请求;取消引用针对所述原始单元的所述直接表关联,以获得在针对所述目标单元的所述存储器地址处所存储的所述目标单元的值;使用所述值来执行所述联接数据库操作,以从而产生包括所述值的联接表;以及将所述联接表存储在所述随机存取存储器中的新位置处。2.根据权利要求1所述的计算机化数据库管理系统,其中所述联接数据库操作是在所述第一表和所述第二表之间的多对一关系上的联接数据库操作,所述直接表关联包括物理存储器地址指针,所述物理存储器地址指针被包括在包含所述原始单元的行中,并且指向所述目标单元的所述存储器地址。3.根据权利要求1所述的计算机化数据库管理系统,其中所述联接数据库操作是在所述第一表和所述第二表之间的多对多关系上的联接数据库操作,所述直接表关联包括中间表、第一物理存储器地址指针和第二物理存储器地址指针,其中:所述中间表包括被组织成逻辑行和逻辑列的多个单元;所述第一物理存储器地址指针被包括在所述中间表的所述多个单元中的至少一个单元内,并且指向与所述第一表的所述多个单元的目标单元相对应的随机存取存储器内的存储器地址;并且所述第二物理存储器地址指针被包括在所述中间表的所述多个单元中的至少一个单元内,并且指向与所述第二表的所述多个单元的至少一个目标单元相对应的随机存取存储器内的存储器地址。4.根据权利要求1所述的计算机化数据库管理系统,其中包含所述原始单元的所述行或所述列包含外键,并且包含所述目标单元的所述行或所述列包含主键;并且所述处理器还被配置为定义主键版本元素,所述主键版本元素被配置为包括:物理存储器地址指针,所述物理存储器地址指针被指向主键行版本列表的开头,其中包含所述原始单元的所述多个行中的行被配置为包括被指向所述主键版本元素的物理存储器地址指针,并且包含所述目标单元的所述多个行中的行被配置为包括被指向所述主键版本元素的物理存储器地址指针;以及引用计数,所述引用计数用以确定在时间点多少主行正在引用所述主键版本元素。5.根据权利要求4所述的计算机化数据库管理系统,其中所述处理器还被配置为:在包含所述第一表的所述外键的所述行上执行所述联接数据库操作,其中所述外键引用指向所述主键版本元素的所述物理存储器地址指针,以获得在所述第二表中所存储的所述主键值。6.根据权利要求4所述的计算机化数据库管理系统,其中所述处理器还被配置为:接收执行插入数据库操作以将一个或多个行的主键插入到所述第二表中的请求;扫描所述第二表以定位针对所述插入数据库操作的适当位置;分配随机存取存储器以用于新的主键行的添加;分配主键版本元素;执行所述插入数据库操作;更新被指向所述主键行版本列表的所述主键版本元素中的物理存储器地址指针;更新被指向主键版本元素的所述主键行版本中的物理存储器地址指针;以及将物理存储器地址指针包括在所述主键行版本中,所述物理存储器地址指针被指向所述主键行版本列表中的后续行。7.根据权利要求4所述的计算机化数据库管理系统,其中所述处理器还被配置为:接收执行数据库操作以将一个或多个行的外键插入到所述第一表中的请求;扫描所述第一表以定位针对所述插入数据库操作的适当位置;分配存储器以用于支持物理存储器地址指针实现;执行所述插入数据库操作;在所述外键行中创建将被指向所述主键版本元素的物理存储器地址指针;通过扫描用于对应的所述主键行版本的所述第二表来验证所述外键行的插入;以及从对应的所述主键行版本引用物理存储器地址指针来初始化所述外键行,以指向所述主键版本元素。8.根据权利要求4所述的计算机化数据库管理系统,其中所述处理器还被配置为:接收执行数据库...
【专利技术属性】
技术研发人员:N·武基科,A·武基科,
申请(专利权)人:微软技术许可有限责任公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。