【技术实现步骤摘要】
【国外来华专利技术】用于使用基于硬件的处理来提供分布式树遍历的系统和方法
技术介绍
如今的数据库系统必须对大数据库执行许多查询,例如Google必须每天回答约十亿个搜索查询。为了保持响应时间低,必须尽可能快地执行查询。查询是在保持数据库的数据库管理系统与依赖于在这样的数据库中存储的数据的数据库应用之间的接口。因此,加速查询执行增加数据库系统的性能,并且数据库应用将从降低的响应时间受益。专用和可重配置硬件加速器与常规的基于软件的处理器相比具有改进数据库查询、尤其是计算的吞吐量、延时和功率要求的长久历史。然而同时,这些类型的设备的专用性质也一般地意味着它们仅能够执行相对简单的功能,从而要求基于软件的处理完成任务或者至少充当备用处理。该分布式处理可能导致在两个系统之间的同步和/或一致性问题。现场可编程门阵列(FPGA)和其他硬件逻辑设备(例如专用集成电路(ASIC)和复杂可编程门阵列(CPGA))已经用来加速对树数据结构的存储和遍历。当前解决方案采用两种一般方式之一:通过内容可寻址存储器结构的高速缓存和用于树的FPGA加速器,在FPGA加速器中,在专用寄存器传送级(RTL)逻辑中布置树节点。第一类解决方案具有两个缺点。首先,它通常地以显式高速缓存策略为特征,其中主机(例如数据库管理系统(DBMS))必须做出关于在高速缓存中存储/更新项目的决策。第二,最经常使用的数据结构没有提高很高存储器效率。第二类解决方案也具有两个主要缺点。首先,由于在硬件中直接地表示整个树,所以它们消耗大量片上存储器/逻辑。第二,实施的树结构很刚性从而使对树结构的动态更新难以快速地和经济地处置。
技术实现思路
本公开描述 ...
【技术保护点】
一种系统,包括:数据库管理系统(DBMS),至少部分地在由一个或者多个处理器可执行的计算机可读介质中被体现,其中所述DBMS响应于接收到查询而被配置为发送查询;以及驱动器,至少部分地在由一个或者多个处理器可执行的计算机可读介质中被体现,其中所述驱动器响应于从所述DBMS接收到所述查询而被配置为发送修改的查询,由此创建更有效搜索工具。
【技术特征摘要】
【国外来华专利技术】2014.11.26 US 14/555,2751.一种系统,包括:数据库管理系统(DBMS),至少部分地在由一个或者多个处理器可执行的计算机可读介质中被体现,其中所述DBMS响应于接收到查询而被配置为发送查询;以及驱动器,至少部分地在由一个或者多个处理器可执行的计算机可读介质中被体现,其中所述驱动器响应于从所述DBMS接收到所述查询而被配置为发送修改的查询,由此创建更有效搜索工具。2.根据权利要求1所述的系统,还包括:逻辑设备,至少部分地在硬件中被体现,所述逻辑设备包括用于存储树型关系数据库数据结构的高速缓存存储器,所述树型关系数据库数据结构与关联于所述DBMS的一个或者多个所述树型关系数据库数据结构之一的至少部分关联,所述逻辑设备被配置为响应于接收到所述修改的查询:至少基于所述修改的查询来遍历在所述高速缓存存储器中被存储的所述树型关系数据库数据结构的节点;取回位于每个遍历的节点处的数据的部分;以及向所述驱动器发送取回的所述数据的部分。3.根据权利要求1或者权利要求2所述的系统,其中所述驱动器被配置为减少在所述DBMS与所述逻辑设备之间的通信。4.根据权利要求1或者权利要求2所述的系统,其中所述驱动器被配置为响应于接收到所述数据的部分:至少基于在关联于所述DBMS的所述树型关系数据库数据结构之一处被存储的数据证实所述数据的所述部分;以及向所述DBMS发送证实的所述数据的所述部分。5.根据权利要求1或者权利要求2所述的系统,其中所述查询是至少包括查询值和位于关联节点处的数据的节点级查询,其中所述修改的查询是包括所述查询值和节点标识符的树级请求。6.根据权利要求1或者权利要求2所述的系统,其中所述驱动器被配置为响应于接收到数据的部分:确定所述数据的接收的所述部分是否不一致;以及响应于确定所述数据的接收的所述部分不一致,发送所述查询、节点数据和路径信息,以及还包括:逻辑设备,被配置为响应于接收到所述查询、所述节点数据和所述路径信息来执行以下各项中的至少一项:分配用于与所述节点数据关联的节点的页面;或者更新在与所述节点数据关联的先前高速缓存的页面中被包括的数据值或者指针信息中的至少一个。7.根据权利要求1所述的系统,还包括:逻辑设备,被配置为响应于接收到所述查询、节点数据和路径信息,在与所述逻辑设备关联的高速缓存存储器当前不包括与关联于接收的所述查询的节点关联的页面时,至少基于分配规则为与接收的所述查询、所述节点数据和所述路径信息关联的所述节点依次地分配在所述高速缓存存储器内的页面。8.根据权利要求1所述的系统,其中所述驱动器被配置为:尝试证实从所述逻辑设备发送的数据的部分;以及响应于不能够证实所述数据的部分,发送所述查询、节点数据和路径信息,以及还包括:逻辑设备,响应于在所述逻辑设备先前发送所述数据的部分之后接收到所述查询、所述节点数据和所述路径信息,更新在与接收的所述节点数据或者接收的所述路径信息中的至少一个关联的所述先前高速缓存的页面中被包括的数据值或者指针信息中的至少一个。9.根据权利要求1或者权利要求2所述的系统,其中所述驱动器被配置为:在查找表(LUT)内存储从所述逻辑设备接收的接收的数据的部分作为节点;响应于从所述DBMS接收到所述查询,确定在所述LUT内被存储的信息是否与接收的所述查询关联;以及至少基于在所述LUT内被存储的所述信息与接收的所述查询关联的确定,向...
【专利技术属性】
技术研发人员:K·H·埃古罗,Z·伊斯特范,A·阿拉苏,R·拉马莫西,K·施里拉格哈夫,
申请(专利权)人:微软技术许可有限责任公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。