【技术实现步骤摘要】
【国外来华专利技术】用于在数据库中提早移除墓碑记录的系统和方法
技术介绍
数据结构是提供各种方式来与存储在其中的数据交互的数据组织。数据结构可以被设计用于各种目的,例如,用于促进数据的有效搜索(诸如在二叉搜索树中)、用于允许稀疏数据的有效存储(诸如利用链表)、或用于提供可搜索数据的有效存储(诸如利用B树)。利用键值范例的数据结构接受键值对,并且被配置成对键的查询作出响应。键值数据结构可以包括诸如字典(例如,映射、哈希映射等)这样的结构,其中键被存储在链接(或包含)相应值的列表中。虽然这些结构在存储器中(例如,在不同于存储装置的主存储器或系统状态存储器中)是有用的,但是这些结构在持久存储装置中(例如,盘上)的存储表示可能是低效的。因而,已经引入了一类基于日志的存储结构。一个实施例是日志结构合并树(LSM树)。LSM树数据库可以由一个或多个盘驻留不可变层加上可变存储器驻留存储器层组成。当从LSM树读取时,读取器可以从所有层读取和合并结果。在索引新的记录时,对应的索引条目被添加到可变存储器驻留层。LSM树数据库中的事务被存储为给定记录的不可变版本。已经存储在系统上的记录内容的不可变版本可以保持不变,直到所述内容从系统删除(如果有的话)。即,所接收的事务可以创建记录内容的新版本以存储在系统中,而不是更改记录内容。因此,记录的多个版本(例如,具有不同内容的记录)除了事务标识符(例如,其可以包括事务号)之外可以具有相同的键。附图说明被包括以提供对所公开的主题的进一步理解的附图被并入本说明书中并且构成本说明书的一部分。附图还展示了所 ...
【技术保护点】
1.一种在合并操作期间从基于日志结构合并(LSM)树的存储系统删除一个或多个记录的计算机实现的方法,包括:/n在所述存储系统中的第一记录中设置初始标志,所述初始标志指示所述第一记录与第一键相关联,所述第一键不与任何其他活动记录相关联;/n在所述存储系统中的第二记录中设置删除标志,所述第二记录与所述第一键相关联,并且所述删除标志指示与所述第一键相关联的值被指定为被从所述存储系统删除;/n选择所述存储系统中的要在合并操作中写入所述存储系统的盘区的一个或多个记录的集,所述一个或多个记录中的每一个记录与所述第一键相关联;以及/n执行所述合并操作,其中至少部分地基于确定具有初始标志集的所述第一记录是所述集中的最旧记录并且具有删除标志集的所述第二记录是所述集中的最新记录,在所述合并操作期间不将所述第二记录写入所述盘区。/n
【技术特征摘要】
【国外来华专利技术】20180924 US 16/139,7171.一种在合并操作期间从基于日志结构合并(LSM)树的存储系统删除一个或多个记录的计算机实现的方法,包括:
在所述存储系统中的第一记录中设置初始标志,所述初始标志指示所述第一记录与第一键相关联,所述第一键不与任何其他活动记录相关联;
在所述存储系统中的第二记录中设置删除标志,所述第二记录与所述第一键相关联,并且所述删除标志指示与所述第一键相关联的值被指定为被从所述存储系统删除;
选择所述存储系统中的要在合并操作中写入所述存储系统的盘区的一个或多个记录的集,所述一个或多个记录中的每一个记录与所述第一键相关联;以及
执行所述合并操作,其中至少部分地基于确定具有初始标志集的所述第一记录是所述集中的最旧记录并且具有删除标志集的所述第二记录是所述集中的最新记录,在所述合并操作期间不将所述第二记录写入所述盘区。
2.根据权利要求1所述的方法,其中所述第一记录和所述第二记录是同一记录,是所述集中的唯一记录。
3.根据权利要求1或2所述的方法,其中所述一个或多个记录的集全部是基于具有在扫描操作开始时的时间点T之后的相关联的事务时间来选择的。
4.根据权利要求1至3中任一项所述的方法,其进一步包括当第三记录是所述集中的最旧记录并且所述合并操作将记录写入所述存储系统中的最低盘区时,在所述第三记录中设置初始标志。
5.根据权利要求1至4中任一项所述的方法,其进一步包括在所述第一记录中设置所述初始标志之前:
在所述存储系统中执行对与所述第一记录具有相同键的活动记录的搜索;以及
当所述搜索没有得到所述存储系统中存储的与所述第一记录具有相同键的记录时,设置所述第一记录的所述初始标志。
6.根据权利要求1至5中任一项所述的方法,其中在所述第一记录被插入所述存储系统中时,发生在所述第一记录中设置所述初始标志的搜索和确定。
7.一种在对目标盘区的合并操作期间管理基于日志结构合并(LSM)树的存储系统中的一个或多个记录的计算机实现的方法,包括:
选择属于时间范围内的一个或多个记录;
从所述一个或多个记录的范围内选择具有相同键的一个或多个记录,以形成以时间顺序组织的重复集;
将最新记录R与所述重复集分离,以从剩余的重复集记录形成修剪集;
通过不将所述修剪集写入所述目标盘区来丢弃所述修剪集;以及
当R是墓碑并且所述修剪集中的最旧记录是初始记录时,通过不将R写入所述目标盘区来丢弃R,
其中墓碑是指示对应于与所述墓碑相关联的键的值已被删除的记录,并且初始记录是包括指定的记录,所述指定指示当所述初始记录被插入时,在所述系统中没有其他活动记录与和所述初始记录相关联的相同键相关联。
8.根据权利要求7所述的方法,其进一步包括当R是墓碑并且所述目标盘区是所述系统中的最低级别盘区时,通过不将R写入所述目标盘区来丢弃R。
9.根据权利要求7或8所述的方法,其进一步包括当所述修剪集为空并且R既是墓碑又是初始记录时,丢弃R。
10.根据权利要求7至9中任一项所述的方法,其进一步包括当R未被丢弃并且R不是墓碑并且所述修剪集中的最旧记录是初始记录时,将R写入所述目标盘区指定为初始记录。
11.根据权利要求7至10中任一项所述的方法,其进一步包括当R未被丢弃并且R是墓碑时,将R写入所述目标盘区指定为墓碑记录。
12.一种存储系统,其包括:
存储计算机可执行指令的至少一个存储器;
存储多个记录的数据库;以及
至少一个处理器...
【专利技术属性】
技术研发人员:T·方哈内尔,T·崇,J·B·马丁,
申请(专利权)人:易享信息技术有限公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。