发明名称 | 用于数据库系统的考虑了高速缓存的并行控制方案 | ||
摘要 | 本发明提供了一种用于管理数据库系统的索引结构的优化无锁存的索引遍历(“OLFIT”)并行控制方案。在索引树的每个节点中,该OLFIT方案保存一个锁存、一个版本号、以及指向索引树同一级的下一节点的链接。索引遍历涉及从树根开始的一致节点读取操作。为了保证无锁存条件下节点读操作的一致性,每个节点更新操作首先取得一个锁存,并在该节点内容更新后,增加版本号。每个节点的读出操作均以将读出版本号到寄存器开始,并以校验当前版本号与寄存器储存的版本号是否一致结束。如果当前版本号与寄存器储存的版本号相同,则读取操作是一致的。否则,重新进行节点读出操作,直至校验成功。本发明的并行控制方案适用于多种索引结构,例如B+-tree和CSB+-tree。 | ||
申请公布号 | CN100367239C | 申请公布日期 | 2008.02.06 |
申请号 | CN02811601.1 | 申请日期 | 2002.06.04 |
申请人 | SAP股份公司 | 发明人 | 车相均;黄祥镕;金起弘;权槿周 |
分类号 | G06F12/08(2006.01) | 主分类号 | G06F12/08(2006.01) |
代理机构 | 北京市柳沈律师事务所 | 代理人 | 邵亚丽 |
主权项 | 1.一种访问索引结构的索引节点的方法,用于在其中驻留在主存储器中的索引结构包括索引节点的环境中搜索数据库中的数据,其中每个索引节点具有:节点内容、指示节点内容更新状态的版本号、以及控制对每一节点的并行存取的锁存,所述方法包括对一个节点执行无锁存读取操作的步骤,对一个节点执行无锁存读取操作还包括以下步骤:将所述节点的版本号复制到寄存器中;在复制所述版本号后,读取所述节点的内容;读取所述内容后,校验所述节点的锁存,并且如果所述节点的锁存已锁定,返回复制所述节点的所述版本号的步骤以重试;以及在通过校验所述锁存后,校验所述节点的版本号,并且如果当前的版本号与复制的版本号不同,返回复制所述节点的所述版本号的步骤以重试。 | ||
地址 | 德国瓦尔多夫 |