本公开提供了一种针对键值数据库的文件处理方法、装置、设备、存储介质和程序产品,涉及计算机技术领域,可以应用于金融技术领域。该方法包括:响应于接收到合并操作指令,确定键值数据库的存储组件的第一目标层;确定存储在第一目标层的候选第一排序字符串表文件;根据候选第一排序字符串表文件,确定存储在第二目标层的候选第二排序字符串表文件;其中,第二目标层为低于第一目标层一个级别的存储层;根据候选第一排序字符串表文件和候选第二排序字符串表文件,执行合并操作,得到合并后的目标排序字符串表文件;以及将目标排序字符串表文件存储至存储组件。表文件存储至存储组件。表文件存储至存储组件。
【技术实现步骤摘要】
针对键值数据库的文件处理方法、装置、电子设备和介质
[0001]本公开涉及计算机
,可以应用于金融
,更具体地涉及一种针对键值数据库的文件处理方法、装置、设备、介质和程序产品。
技术介绍
[0002]区块链是一个点对点的网络,由一些形成链的节点连接而成,具有分布式事务数据库的属性。区块链系统要求每个节点都复制一个完整的交易数据库,用来保证新的交易可以独立进行验证。在典型的区块链系统(如比特币系统)中,节点不依赖于任何中央代理,每个节点都保存着交易数据库的完整副本,靠分布式共识算法自行同步。然而,这一特性决定了区块链交易数据库的规模飞速增长。因此,随着系统的不断运行,节点所需的内存也需要不断扩展来支持系统运行。尤其是在大数据时代,银行不断增长的交易量以及数据流量会给数据存储带来更大的挑战。因此,具有海量数据的区块链系统普遍使用的存储数据库是键值数据库,利用了其灵活的可扩展性和数据模型。
[0003]区块链系统传统使用的存储数据库是LevelDB,LevelDB是基于LSM树(日志结构合并树)结构的键值数据库,其能够提供相当高的随即写入速度,但是随着交易量的不断提升,当数据量达到一个量级时,LevelDB的性能会明显下降,特别是在写密集型的负载下会产生严重的延迟问题。
技术实现思路
[0004]鉴于上述问题,本公开提供了针对键值数据库的文件处理方法、装置、设备、介质和程序产品,在执行合并操作指令时,可以通过先确定存储在第一目标层的候选第一排序字符串表文件;再根据候选第一排序字符串表文件,确定存储在第二目标层的候选第二排序字符串表文件,来控制参与进行合并操作的排序字符串表文件,从而通过筛选执行合并操作的文件,来限制每一次合并的文件数量,进而通过数据量的减少,改善文件处理过程中引起的I/O开销和写入停顿,提高写入数据的性能,改善延迟问题。
[0005]根据本公开的第一个方面,提供了一种针对键值数据库的文件处理方法,包括:响应于接收到合并操作指令,确定所述键值数据库的存储组件的第一目标层;确定存储在所述第一目标层的候选第一排序字符串表文件;根据所述候选第一排序字符串表文件,确定存储在第二目标层的候选第二排序字符串表文件;其中,所述第二目标层为低于所述第一目标层一个级别的存储层;根据所述候选第一排序字符串表文件和所述候选第二排序字符串表文件,执行合并操作,得到合并后的目标排序字符串表文件;以及将所述目标排序字符串表文件存储至所述存储组件。
[0006]根据本公开实施例,所述确定存储在所述第一目标层的候选第一排序字符串表文件,包括:基于存储在所述第一目标层的所有第一排序字符串表文件,确定与每个第一排序字符串表文件对应的第一键值范围;基于存储在所述第二目标层的所有第二排序字符串表文件,确定与每个第二排序字符串表文件对应的第二键值范围;根据所述第一键值范围和
所述第二键值范围,确定任一第一排序字符串表文件与任一第二排序字符串表文件之间的键值重叠率,得到与所述第一排序字符串表文件对应的多个键值重叠率计算结果;以及根据所述多个键值重叠率计算结果,确定所述候选第一排序字符串表文件。
[0007]根据本公开实施例,所述根据所述第一键值范围和所述第二键值范围,确定任一第一排序字符串表文件与任一第二排序字符串表文件之间的键值重叠率,得到与所述第一排序字符串表文件对应的多个键值重叠率计算结果,包括:根据所述第一键值范围和所述第二键值范围,采用概率基数估计法确定任一第一排序字符串表文件与任一第二排序字符串表文件之间的键值重叠率,得到与所述第一排序字符串表文件对应的多个键值重叠率计算结果。
[0008]根据本公开实施例,所述根据所述多个键值重叠率计算结果,确定所述候选第一排序字符串表文件,包括:将所述多个键值重叠率计算结果中键值重叠率最小的第一排序字符串表文件,作为所述候选第一排序字符串表文件。
[0009]根据本公开实施例,所述方法还包括,在所述确定存储在所述第一目标层的候选第一排序字符串表文件之前:确定所述第一目标层是否为预定层;以及在确定所述第一目标层是所述预定层的情况下,设置用于执行所述合并操作的所述候选第一排序字符串表文件的文件数量。
[0010]根据本公开实施例,所述根据所述候选第一排序字符串表文件和所述候选第二排序字符串表文件,执行合并操作,得到合并后的目标排序字符串表文件,包括:将所述候选第一排序字符串表文件和所述候选第二排序字符串表文件加载至所述键值数据库的内存中进行排序和合并,得到合并后的目标排序字符串表文件。
[0011]根据本公开实施例,所述将所述目标排序字符串表文件存储至所述存储组件,包括:将所述目标排序字符串表文件存储至所述第二目标层。
[0012]根据本公开实施例,所述方法还包括:响应于所述目标排序字符串表文件存储至所述存储组件,从所述键值数据库中删除所述候选第一排序字符串表文件和所述候选第二排序字符串表文件。
[0013]本公开的第二方面提供了一种针对键值数据库的文件处理装置,包括:第一确定模块,用于响应于接收到合并操作指令,确定所述键值数据库的存储组件的第一目标层;第二确定模块,用于确定存储在所述第一目标层的候选第一排序字符串表文件;第三确定模块,用于根据所述候选第一排序字符串表文件,确定存储在第二目标层的候选第二排序字符串表文件;其中,所述第二目标层为低于所述第一目标层一个级别的存储层;合并操作模块,用于根据所述候选第一排序字符串表文件和所述候选第二排序字符串表文件,执行合并操作,得到合并后的目标排序字符串表文件;以及存储操作模块,用于将所述目标排序字符串表文件存储至所述存储组件。
[0014]本公开的第三方面提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得一个或多个处理器执行上述针对键值数据库的文件处理方法。
[0015]本公开的第四方面还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行上述针对键值数据库的文件处理方法。
[0016]本公开的第五方面还提供了一种计算机程序产品,包括计算机程序,该计算机程
序被处理器执行时实现上述针对键值数据库的文件处理方法。
[0017]本实施例提供的针对键值数据库的文件处理方法,在执行合并操作指令时,可以通过先确定存储在第一目标层的候选第一排序字符串表文件;再根据候选第一排序字符串表文件,确定存储在第二目标层的候选第二排序字符串表文件,来控制参与进行合并操作的排序字符串表文件,从而通过筛选执行合并操作的文件,来限制每一次合并的文件数量,进而通过数据量的减少,改善文件处理过程中引起的I/O开销和写入停顿,提高写入数据的性能,改善延迟问题。
附图说明
[0018]通过以下参照附图对本公开实施例的描述,本公开的上述内容以及其他目的、特征和优点将更为清楚,在附图中:
[0019]图1示意性示出了根据本公开实施例的针对键值本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种针对键值数据库的文件处理方法,包括:响应于接收到合并操作指令,确定所述键值数据库的存储组件的第一目标层;确定存储在所述第一目标层的候选第一排序字符串表文件;根据所述候选第一排序字符串表文件,确定存储在第二目标层的候选第二排序字符串表文件;其中,所述第二目标层为低于所述第一目标层一个级别的存储层;根据所述候选第一排序字符串表文件和所述候选第二排序字符串表文件,执行合并操作,得到合并后的目标排序字符串表文件;以及将所述目标排序字符串表文件存储至所述存储组件。2.根据权利要求1所述的方法,其中,所述确定存储在所述第一目标层的候选第一排序字符串表文件,包括:基于存储在所述第一目标层的所有第一排序字符串表文件,确定与每个第一排序字符串表文件对应的第一键值范围;基于存储在所述第二目标层的所有第二排序字符串表文件,确定与每个第二排序字符串表文件对应的第二键值范围;根据所述第一键值范围和所述第二键值范围,确定任一第一排序字符串表文件与任一第二排序字符串表文件之间的键值重叠率,得到与所述第一排序字符串表文件对应的多个键值重叠率计算结果;以及根据所述多个键值重叠率计算结果,确定所述候选第一排序字符串表文件。3.根据权利要求2所述的方法,其中,所述根据所述第一键值范围和所述第二键值范围,确定任一第一排序字符串表文件与任一第二排序字符串表文件之间的键值重叠率,得到与所述第一排序字符串表文件对应的多个键值重叠率计算结果,包括:根据所述第一键值范围和所述第二键值范围,采用概率基数估计法确定任一第一排序字符串表文件与任一第二排序字符串表文件之间的键值重叠率,得到与所述第一排序字符串表文件对应的多个键值重叠率计算结果。4.根据权利要求2所述的方法,其中,所述根据所述多个键值重叠率计算结果,确定所述候选第一排序字符串表文件,包括:将所述多个键值重叠率计算结果中键值重叠率最小的第一排序字符串表文件,作为所述候选第一排序字符串表文件。5.根据权利要求1所述的方法,还包括,在所述确定存储在所述第一目标层的候选第一排序字符串表文件之前:确定所述第一目标层...
【专利技术属性】
技术研发人员:胡永超,
申请(专利权)人:建信金融科技有限责任公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。