数据写入方法及装置、数据库系统、存储介质制造方法及图纸

技术编号:30414316 阅读:31 留言:0更新日期:2021-10-24 16:16
本申请公开了一种数据写入方法及装置、数据库系统、存储介质,属于数据库技术领域。该数据写入方法应用于服务器中的处理单元,该方法包括:接收数据库数据的写入请求;将该数据库数据对应的日志数据写入第一存储器中,其中,该第一存储器是易失性存储器且被该处理单元识别为非易失性存储器。本申请有助于优化日志数据的写入时延,改善数据库系统的性能。改善数据库系统的性能。改善数据库系统的性能。

【技术实现步骤摘要】
数据写入方法及装置、数据库系统、存储介质


[0001]本申请涉及数据库
,特别涉及一种数据写入方法及装置、数据库系统、存储介质。

技术介绍

[0002]Hadoop数据库(hadoop database,HBase)系统是一种面向列的分布式数据库系统,包括多个存储服务器和用于管理该多个存储服务器的管理服务器。其中,存储服务器包括处理器、内存和硬盘。
[0003]客户端可以根据管理服务器的调度向存储服务器发送写入请求,存储服务器接收到该写入请求后,该存储服务器的处理器将该写入请求携带的业务数据写入该存储服务器的内存中,并生成该业务数据对应的预写日志(write-ahead logging,WAL)数据,将该WAL数据写入该存储服务器的硬盘中,之后,当内存中存储的数据满足预设条件时,该处理器将该业务数据写入该存储服务器的硬盘中(也即是将业务数据落盘)。如果在业务数据落盘之前该存储服务器宕机导致该业务数据丢失,在该存储服务器重新上电时该存储服务器的处理器可以从该存储服务器的硬盘中读取该业务数据对应的WAL数据,根据该WAL数据恢复该业务数据。
[0004]目前,在存储服务器中,存储WAL数据的硬盘为串行高级技术附件(serial advanced technology attachment,SATA)硬盘或者固态驱动器(solid state drive,SSD)硬盘,SATA硬盘和SSD硬盘的写入时延均较大,导致WAL数据的写入时延较大,HBase系统的性能较差。

技术实现思路

[0005]本申请提供了一种数据写入方法及装置、数据库系统、存储介质,有助于优化日志数据的写入时延,改善数据库系统的性能,本申请的技术方案如下:
[0006]第一方面,提供一种数据写入方法,应用于服务器中的处理单元,该方法包括:接收数据库数据的写入请求;将该数据库数据对应的日志数据写入第一存储器中,其中,该第一存储器是易失性存储器且被该处理单元识别为非易失性存储器。
[0007]本申请实施例提供的技术方案,服务器中的第一存储器是易失性存储器且被该服务器的处理单元识别为非易失性存储器,该第一存储器的写入时延较小,该处理单元将日志数据写入该第一存储器中,有助于优化日志数据的写入时延,改善数据库系统的性能。
[0008]根据第一方面,在本申请的一种可能的实现方式中,在将数据库数据对应的日志数据写入第一存储器中之前,该方法还包括:确定服务器当前应用的存储类型;根据该当前应用的存储类型,确定该服务器的日志存储类型,其中,该日志存储类型与该当前应用的存储类型不同。
[0009]根据第一方面,在本申请的一种可能的实现方式中,该方法还包括:将第一存储器的存储类型设置成该日志存储类型,其中,该日志存储类型用于指示处理单元将日志数据
存入相应的存储器中。
[0010]本申请实施例提供的技术方案,处理单元在将日志数据写入第一存储器中之前,确定与服务器当前应用的存储类型不同的日志存储类型,将第一存储器的存储类型设置成该日志存储类型,这样可以便于该处理单元根据该日志存储类型将日志数据写入该第一存储器中。
[0011]根据第一方面,在本申请的一种可能的实现方式中,该日志存储类型是非易失性双列直插式内存模块(non-volatile dual in-line memory module,NVDIMM)。
[0012]根据第一方面,在本申请的一种可能的实现方式中,该服务器还包括第二存储器和备用电源,该备用电源用于在该服务器断电时为该处理单元、该第一存储器和该第二存储器供电,该方法还包括:当该服务器断电时,将该日志数据从该第一存储器中写入该第二存储器中,该第二存储器是非易失性存储器。
[0013]本申请实施例提供的技术方案,当服务器断电时,处理单元将日志数据从第一存储器中写入第二存储器中,该第二存储器是非易失性存储器,该第二存储器的存储可靠性较高,有助于避免服务器断电导致日志数据丢失,保证日志数据的存储可靠性。
[0014]根据第一方面,在本申请的一种可能的实现方式中,在将该日志数据从该第一存储器中写入该第二存储器中之后,该方法还包括:当该服务器上电时,将该日志数据从该第二存储器写入该第一存储器中。
[0015]本申请实施例提供的技术方案,当服务器断电后重新上电时,处理单元将日志数据从第二存储器中写入第一存储器中,该第一存储器的读写时延较小,可以便于在数据库数据丢失时处理单元及时获取到该日志数据,并根据该日志数据恢复该数据库数据。
[0016]根据第一方面,在本申请的一种可能的实现方式中,第一存储器为随机存储器(random-access memory,RAM),第二存储器为M.2硬盘。
[0017]本申请实施例提供的技术方案,第一存储器、第二存储器和备用电源可以构成服务器的备电模块,该备电模块可以模拟NVDIMM和傲腾(optane)内存等非易失性内存,该备电模块能够实现与非易失性内存相同的存储功能,并且相比于NVDIMM和傲腾内存等非易失性内存,该备电模块的硬件成本较低,有助于降低服务器的硬件成本。
[0018]根据第一方面,在本申请的一种可能的实现方式中,该方法还包括:响应写入请求,将数据库数据写入第三存储器中,其中,该第三存储器是易失性存储器;当该第三存储器中存储的数据满足预设条件时,将该第三存储器中存储的数据写入第四存储器中,其中,该第四存储器是非易失性存储器。
[0019]本申请实施例提供的技术方案,第三存储器是易失性存储器,第四存储器是非易失性存储器,处理单元将数据库数据写入第三存储器中,有助于该数据库数据的快速写入;当该第三存储器中存储的数据满足预设条件时,处理单元将该第三存储器中存储的数据写入第四存储器,有助于数据库数据的持久化存储,保证数据库数据的存储可靠性。
[0020]第二方面,提供一种数据写入装置,该数据写入装置包括一个或多个模块,该一个或多个模块用于实现上述第一方面或第一方面的任一可能实现方式所提供的数据写入方法。
[0021]第三方面,提供一种数据写入装置,该数据写入装置包括:处理器和存储器,该存储器中存储有程序,该处理器用于调用该存储器中存储的程序,使得该数据写入装置执行
上述第一方面或第一方面的任一可能实现方式所提供的数据写入方法。
[0022]第四方面,提供一种计算机存储介质,该计算机存储介质内存储有计算机程序,当该计算机程序在计算机上运行时,使该计算机执行上述第一方面或第一方面的任一可能实现方式所提供的数据写入方法。
[0023]第五方面,提供一种数据库系统,该数据库系统包括管理服务器和多个存储服务器,该多个存储服务器中的至少一个包括上述第二方面或第三方面所提供的数据写入装置。
[0024]第六方面,提供一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得该计算机执行上述第一方面或第一方面的任一可能实现方式所提供的数据写入方法。
[0025]本申本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据写入方法,其特征在于,应用于服务器中的处理单元,所述方法包括:接收数据库数据的写入请求;将所述数据库数据对应的日志数据写入第一存储器中,其中,所述第一存储器是易失性存储器且被所述处理单元识别为非易失性存储器。2.根据权利要求1所述的方法,其特征在于,在将所述数据库数据对应的日志数据写入第一存储器中之前,所述方法还包括:确定所述服务器当前应用的存储类型;根据所述当前应用的存储类型,确定所述服务器的日志存储类型,其中,所述日志存储类型与所述当前应用的存储类型不同。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:将所述第一存储器的存储类型设置成所述日志存储类型,其中,所述日志存储类型用于指示所述处理单元将日志数据存入相应的存储器中。4.根据权利要求2或3所述的方法,其特征在于,所述日志存储类型是非易失性双列直插式内存模块NVDIMM。5.根据权利要求1-4任一项所述的方法,其特征在于,所述服务器还包括第二存储器和备用电源,其中,所述备用电源用于在所述服务器断电时为所述处理单元、所述第一存储器和所述第二存储器供电,所述方法还包括:当所述服务器断电时,将所述日志数据从所述第一存储器写入所述第二存储器中,其中,所述第二存储器是非易失性存储器。6.根据权利要求1-5任一项所述的方法,其特征在于,响应所述写入请求,将所述数据库数据写入第三存储器中,其中,所述第三存储器是易失性存储器;当所述第三存储器中存储的数据满足预设条件时,将所述第三存储器中存储的数据写入第四存储器中,其中,所述第四存储器是非易失性存储器。7.一种数据写入装置,其特征在于,应用于服务器中的处理单元,所述装置包括:接收模块,用于接收数据库数据的写入请求;写入模块,用于将所述数据库数据对应的日志数据写入第一存储器中,其中,所述第一存储器是易失性存储器且被所述处理单元识别为非易失性存储器。8.根据权利要求7所述的装置,其特征在于,所述装置还包括:确定模块,用于:在...

【专利技术属性】
技术研发人员:沈姝
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1