【技术实现步骤摘要】
一种数据合并的方法、装置、存储介质及电子设备
[0001]本申请涉及计算机领域,特别涉及一种数据合并的方法、装置、存储介质及电子设备。
技术介绍
[0002]随着互联网技术与数据库技术的不断发展,数据库的数据量越来越庞大。
[0003]数据库中存储数据的文件主要有两种,一种是主要数据文件(Major SSTable),另一种是次要数据文件(Minor SSTable)。
[0004]主要数据文件是对应于快照位点的数据文件,针对每个快照位点,该快照位点对应的主要数据文件存储所有提交时间不超过该快照位点的事务相关的最新数据。具体地,每隔预设周期确定一个时间点,并将这个时间点称为快照位点,针对每个快照位点,数据库节点将所有提交时间不超过该快照位点的事务相关的最新数据存储在主要数据文件中。例如,5:00pm是一个快照位点,在4:00pm,主键key1对应键值value1,在4:30pm,主键key1对应键值value2,则针对key1,5:00pm对应的主要数据文件中只存储value2,即5:00pm时的最新数据。< ...
【技术保护点】
【技术特征摘要】
1.一种数据合并的方法,所述方法包括:确定指定时间段;根据所述指定时间段,在各快照位点中确定指定快照位点,并根据所述指定时间段,在各次要数据文件中选择待合并的次要数据文件,作为指定文件;针对每个指定文件,根据该指定文件中各数据的统计信息,判断该指定文件是否满足预设的回收条件,若满足,回收该次要数据文件占用的存储空间;若不满足,针对该指定文件中的每个宏块,当根据该宏块中各数据的统计信息,确定该宏块中的数据全部提交,且,该宏块中各数据的最大提交时间不晚于所述指定快照位点时,回收该宏块占用的存储空间;当根据该宏块中各数据的统计信息,确定该宏块中的数据未全部提交,或,该宏块中各数据的最大提交时间晚于所述指定快照位点时,保留该宏块;合并不满足所述回收条件的指定文件中保留的宏块。2.如权利要求1所述的方法,确定指定时间段,具体包括:获取预设的撤销保留时长;确定以当前时刻为终止时刻,且时长为所述撤销保留时长的时间段,作为指定时间段。3.如权利要求1所述的方法,根据所述指定时间段,在各快照位点中确定指定快照位点,具体包括:确定所述指定时间段的起始时刻;确定与所述起始时刻最接近且早于所述起始时刻的快照位点,作为指定快照位点。4.如权利要求1所述的方法,根据所述指定时间段,在各次要数据文件中选择待合并的次要数据文件,具体包括:确定所述指定时间段的起始时刻;针对每个次要数据文件,判断该次要数据文件中数据的最早写入时间是否早于所述起始时刻;若是,则确定该次要数据文件为待合并的次要数据文件。5.如权利要求1所述的方法,所述指定文件中各数据的统计信息至少包括:所述指定文件中的数据是否全部提交、所述指定文件中各数据的最大提交时间;针对每个指定文件,根据该指定文件中各数据的统计信息,判断该指定文件是否满足预设的回收条件,具体包括:针对每个指定文件,当该指定文件中的数据全部提交,且该指定文件中各数据的最大提交时间不晚于所述指定快照位点时,确定该指定文件满足预设的回收条件;当该指定文件中的数据未全部提交,或,该指定文件中各数据的最大提交时间晚于所述指定快照位点时,确定该指定文件不满足所述回收条件。6.如权利要求1所述的方法,合并不满足所述回收条件的指定文件中保留的宏块,具体包括:确定不满足所述回收条件的指定文件中的宏块中包含的每个微块,作为待处理微块;针对每个待处理微块,确定该待处理微块中各数据的统计信息;当根据该待处理微块中各数据的统计信息,确定该待处理微块中的数据全部提交,且,该待处理微块中各数据的最大提交时间不晚于所述指定快照位点时,删除该待处理微块;
当根据该待处理微块中各数据的统计信息,确定该待处理微块中的数据未全部提交,或,该待处理微块中各数据的最大提交时间晚于所述指定快照位点时,保留该待处理微块;合并保留的待处理微块。7.如权利要求6所述的方法,合并保留的待处理微块,具体包括:针对待处理微块中的每个数据,确定该数据的属性;当根据该数据的属性,确定该数据已提交,且,该数据的提交时间不晚于指定快照位点时,删除该数据;当根据该数据的属性,确定该数据未提交,或,该数据的提交时间晚于指定快照位点时,保留该数据;合并待处理微块中保留的数据。8.一种数据合并的装置,所述装置包括:第一确定模块,用于确定指定时间段;第二确定模块,用于根据所述指定时间段...
【专利技术属性】
技术研发人员:刘登志,
申请(专利权)人:北京奥星贝斯科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。