数据存储方法、装置、设备及存储介质制造方法及图纸

技术编号:28752726 阅读:39 留言:0更新日期:2021-06-09 10:18
本发明专利技术公开了一种数据存储方法、装置、设备及存储介质,所述方法包括:读取文件的暂存数据,所述文件的暂存数据为与磁盘扇区未对齐的、待写入所述文件的第一数据;将所述文件的暂存数据与待写入所述文件的第二数据合并,得到合并数据;判断所述合并数据与磁盘扇区是否对齐;若所述合并数据与磁盘扇区未对齐,则将所述合并数据中的与磁盘扇区未对齐的数据部分写入到文件写入日志的新磁盘扇区中。根据本发明专利技术实施例,能够减少覆盖写,提高磁盘性能。提高磁盘性能。提高磁盘性能。

【技术实现步骤摘要】
数据存储方法、装置、设备及存储介质


[0001]本专利技术属于计算机领域,尤其涉及一种数据存储方法、装置、设备及存储介质。

技术介绍

[0002]计算机中存放信息的存储设备可以是磁盘,磁盘的每一面被分为很多条磁道,即表面上的一些同心圆,越接近中心,圆就越小。而每一个磁道又被划分为等分,叫做扇区或者磁盘扇区。
[0003]随着科技的发展,对于磁盘的要求也越来越高,通常要求存储容量大、且读写性能好的磁盘。但是,磁盘的性能受到多个方面的限制,提高磁盘的性能一直是业界所追求的。

技术实现思路

[0004]本专利技术实施例提供一种数据存储方法、装置、设备及存储介质,能够解决磁盘性能较低的问题。
[0005]根据本专利技术实施例的第一方面,提供一种数据存储方法,该方法包括:
[0006]读取文件的暂存数据,所述文件的暂存数据为与磁盘扇区未对齐的、待写入所述文件的第一数据;
[0007]将所述文件的暂存数据与待写入所述文件的第二数据合并,得到合并数据;
[0008]判断所述合并数据与磁盘扇区是否对齐;
[0009]若所述合并数据与磁盘扇区未对齐,则将所述合并数据中的与磁盘扇区未对齐的数据部分写入到文件写入日志的新磁盘扇区中。
[0010]根据本专利技术实施例的第二方面,提供一种数据存储装置,该装置包括:
[0011]数据读取模块,用于读取文件的暂存数据,所述文件的暂存数据为与磁盘扇区未对齐的、待写入所述文件的第一数据;
[0012]数据合并模块,用于将所述文件的暂存数据与待写入所述文件的第二数据合并,得到合并数据;
[0013]判断模块,用于判断所述合并数据与磁盘扇区是否对齐;
[0014]日志写入模块,用于若所述合并数据与磁盘扇区未对齐,则将所述合并数据中的与磁盘扇区未对齐的数据部分写入到文件写入日志的新磁盘扇区中。
[0015]根据本专利技术实施例的第三方面,提供一种计算设备,该设备包括:处理器以及存储有计算机程序指令的存储器;
[0016]所述处理器执行所述计算机程序指令时实现数据存储方法。
[0017]根据本专利技术实施例的第四方面,提供一种计算机存储介质,所述计算机存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现数据存储方法。
[0018]本专利技术实施例的数据存储方法、装置、设备及存储介质,通过读取文件的暂存数据,文件的暂存数据为与磁盘扇区未对齐的、待写入文件的第一数据;将文件的暂存数据与待写入文件的第二数据合并,得到合并数据;判断合并数据与磁盘扇区是否对齐;若合并数
据与磁盘扇区未对齐,则将合并数据中的与磁盘扇区未对齐的数据部分写入到文件写入日志的新磁盘扇区中。由于是写入到新磁盘扇区中,因此不存在覆盖写的情况,从而提高了磁盘性能。而且是写入到日志中,不会因为保存在内存中导致系统重启时数据消失,保证了数据的持久化存储,实现了实时数据的可靠性。
附图说明
[0019]为了更清楚地说明本专利技术实施例的技术方案,下面将对本专利技术实施例中所需要使用的附图作简单的介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0020]图1为本专利技术实施例的一种数据存储方法的流程示意图;
[0021]图2为本专利技术实施例的另一种数据存储方法的流程示意图;
[0022]图3为本专利技术实施例的又一种数据存储方法的流程示意图;
[0023]图4为本专利技术实施例的一种数据合并结果的示意图;
[0024]图5为本专利技术实施例的另一种数据合并结果的示意图;
[0025]图6为本专利技术实施例的又一种数据合并结果的示意图;
[0026]图7为本专利技术一个实施例提供的数据存储装置的结构示意图;
[0027]图8示出了本专利技术实施例提供的计算设备的硬件结构示意图。
具体实施方式
[0028]下面将详细描述本专利技术的各个方面的特征和示例性实施例,为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本专利技术进行进一步详细描述。应理解,此处所描述的具体实施例仅被配置为解释本专利技术,并不被配置为限定本专利技术。对于本领域技术人员来说,本专利技术可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本专利技术的示例来提供对本专利技术更好的理解。
[0029]需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0030]下面结合附图,对本说明书提供的方案进行详细描述。
[0031]图1为本专利技术实施例的一种数据存储方法的流程示意图。如图1所示,该数据存储方法可以包括:
[0032]S110:读取文件的暂存数据,文件的暂存数据为与磁盘扇区未对齐的、待写入文件的第一数据。
[0033]S120:将文件的暂存数据与待写入文件的第二数据合并,得到合并数据。
[0034]其中,第二数据可以是任意的需要写入到文件中的数据。
[0035]S130:判断合并数据与磁盘扇区是否对齐。
[0036]其中,根据合并数据的大小与单个磁盘扇区的容量是否相同,判断合并数据与磁盘扇区是否对齐。若合并数据的大小与单个磁盘扇区的容量不相同,则说明合并数据与磁盘扇区不对齐;若合并数据的大小与单个磁盘扇区的容量相同,则说明合并数据与磁盘扇区对齐。磁盘扇区是磁盘的最小写入和读取单元,单个磁盘扇区的容量可以是512字节或者4K。
[0037]S140:若合并数据与磁盘扇区未对齐,则将合并数据中的与磁盘扇区未对齐的数据部分写入到文件写入日志的新磁盘扇区中。
[0038]其中,文件的暂存数据更新为合并数据中的与磁盘扇区未对齐的数据部分。
[0039]比如,一个磁盘扇区的容量为512字节。
[0040]第一次待写入文件A的数据大小是600字节,在600字节的数据中,有512字节的数据与磁盘扇区对齐,有88字节的数据未与磁盘扇区对齐。将与磁盘扇区对齐的512字节的数据写入文件A的新磁盘扇区中,在内存或文件写入日志中暂存与磁盘扇区未对齐的88字节的暂存数据。
[0041]第二次待写入文件A的是300字节的第二数据,将88字节的暂存数据与300字节的第二数据合并,得到388字节的合并数据。可见,合并数据的大小(388字节)小于一个磁盘扇区的容量(512字节),所以合并数据与磁本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据存储方法,所述方法包括:读取文件的暂存数据,所述文件的暂存数据为与磁盘扇区未对齐的、待写入所述文件的第一数据;将所述文件的暂存数据与待写入所述文件的第二数据合并,得到合并数据;判断所述合并数据与磁盘扇区是否对齐;若所述合并数据与磁盘扇区未对齐,则将所述合并数据中的与磁盘扇区未对齐的数据部分写入到文件写入日志的新磁盘扇区中。2.根据权利要求1所述方法,其中,在所述文件的暂存数据存储在内存中和所述文件写入日志中的情况下,所述读取文件的暂存数据,包括:从所述内存中读取所述文件的暂存数据;或者,从所述文件写入日志中读取所述文件的暂存数据。3.根据权利要求2所述方法,其中,所述的方法还包括:将所述未对齐的数据部分缓存在所述内存中,以将所述文件的暂存数据更新为所述未对齐的数据部分。4.根据权利要求1所述方法,其中,将所述文件的暂存数据与待写入所述文件的第二数据合并,包括:将所述文件的暂存数据的尾部与待写入到所述文件中的第二数据的头部拼接。5.根据权利要求1至4中任一项所述方法,其中,所述合并数据与磁盘扇区未对齐包括:所述合并数据的数据量大于单个磁盘扇区的容量。6.根据权利要求5所述方法,其中,所述的方法还包括:将所述合并数据中的与所述磁盘扇区对齐的数据部分写入到所述文件的新...

【专利技术属性】
技术研发人员:王文博
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:

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

1