CN103823634B - 一种支持无随机写模式的数据处理方法及系统 - Google Patents

一种支持无随机写模式的数据处理方法及系统 Download PDF

Info

Publication number
CN103823634B
CN103823634B CN201210464949.8A CN201210464949A CN103823634B CN 103823634 B CN103823634 B CN 103823634B CN 201210464949 A CN201210464949 A CN 201210464949A CN 103823634 B CN103823634 B CN 103823634B
Authority
CN
China
Prior art keywords
data
user data
ssd
write
write request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210464949.8A
Other languages
English (en)
Other versions
CN103823634A (zh
Inventor
王瑶
周智昊
刘里
田明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201210464949.8A priority Critical patent/CN103823634B/zh
Publication of CN103823634A publication Critical patent/CN103823634A/zh
Application granted granted Critical
Publication of CN103823634B publication Critical patent/CN103823634B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种支持无随机写模式的数据处理方法,一种方案包括:触发写请求后,将写请求的用户数据写入内存缓冲区,并记入binlog文件;将写入内存缓存区的用户数据、和固态硬盘(SSD)的全量数据文件中的用户数据对外提供读取访问。另一种方案包括:触发读请求后,根据读请求所需要的用户数据,判断如何从对外提供读取访问的内存缓冲区和固态硬盘SSD选择读取用户数据。本发明还公开了一种支持无随机写模式的数据处理系统,数据写入单元用于触发写请求后,将写请求的用户数据写入内存缓冲区,并记入binlog文件。采用本发明,能在极大地降低运算复杂度和成本的基础上,提高读/写效率,从而能为用户提供高并发的数据读/写服务。

Description

一种支持无随机写模式的数据处理方法及系统
技术领域
本发明涉及磁盘上存储数据的数据处理技术,尤其涉及一种支持无随机写模式的数据处理方法及系统。
背景技术
用户原创内容(UGC,User Generated Content)是一种用户使用互联网的新方式,即由原来的以下载为主的数据处理,变成下载和上传并重的数据处理。社区网络、视频分享和博客等都是UGC的主要应用形式。随着全球互联网业务的不断发展,UGC业务正在日渐崛起,引起了业界的广泛关注。
由于数据是用户产生的,海量的用户势必催生出海量的数据,同时又会带来海量的读写量。如何有效地存储这些用户数据,以及提供高并发的数据读写服务,是技术领域必然面临的问题。
针对这个问题,现有技术的数据处理方法是用固态硬盘(SSD,solid statedisk)进行分区存储,即:将数据的总存储空间划分为一块块的分区,每个分区有16k字节的大小,将数据分别存储,以提高数据处理的并发处理效率。现有的数据处理只能支持随机写模式,所谓随机写模式指:按照用户的写请求(包括新增数据的写请求或修改数据的写请求),逐行顺序写入数据的方式来实现数据处理,对应的SSD数据存储方式如图1所示。
由于SSD写性能很差,特别是在随机写模式时对写请求的数据处理,具体的,在新增数据的写请求时,是不断地在文件的末尾新增数据,逐行顺序写入数据到SSD的分区中;在修改数据的写请求时,基于SSD的介质存储的原理,将存储划分为一块块的分区,每个分区有16k字节的大小,即便只修改16k中的一个字节,SSD也会将16k全部读取出来,仅修改其中的一个字节,将原有16k的内容进行擦除,再将修改后的数据写回,也就是说,针对修改数据的写请求是会完全擦除原有的数据,再更新。
现有技术存在的问题如下所述:
1、海量数据势必带来大的读写量,由于随机写模式的写请求会擦除原有的数据,再更新,因此,用户大量随机写模式的写请求会对SSD硬盘分区进行频繁地修改更新操作,不仅数据处理的耗时增加,而且对SSD的物理存储磨损也很大,导致SSD使用寿命大大缩短。举例来说,经过对SSD性能的测试可知:读、写、擦除的时间消耗分别为25us、200us、1.5ms,可见频繁擦除会带来严重的时间损耗;一个SSD的分区,其写次数的使用寿命是5000次,也就是说,如果反复修改一个分区达到上限5000次,则这个分区就会损坏,需要更换整块SSD。
2、随机写模式的写请求会干扰到数据读取的效率,从而对高并发读服务造成很不稳定的服务质量。举例来说,经过对SSD性能的测试可知:SSD如果只提供读服务,能达到4000/S稳定的读质量,但是若同时增加了25/S的随机写模式的写请求,则读性能会降低到2500/S的不稳定的读质量,读取效率大大降低。
综上所述,现有技术支持随机写模式写请求的数据处理方案,不仅耗时,影响SSD的使用寿命,而且对读请求或写请求的数据处理效果都不好,如果能有一种简单、高效、低成本的方案,在极大地降低运算复杂度和成本的基础上,提高读/写效率,从而能为用户提供高并发的数据读/写服务,将是非常有意义的。
发明内容
有鉴于此,本发明的主要目的在于提供一种支持无随机写模式的数据处理方法及系统,在极大地降低运算复杂度和成本的基础上,提高读/写效率,从而能为用户提供高并发的数据读/写服务。
为达到上述目的,本发明的技术方案是这样实现的:
一种支持无随机写模式的数据处理方法,该方法包括:
触发写请求后,将写请求的用户数据写入内存缓冲区,并记入binlog文件;
将固态硬盘SSD中的原始数据与记入所述binlog文件里的用户数据进行整理合并,生成全量数据文件并写入所述SSD中;
将写入所述内存缓存区的用户数据、和SSD的全量数据文件中的用户数据对外提供读取访问。
所述将写请求的用户数据写入内存缓冲区,并记入binlog文件具体包括:所述写请求为新增数据的写请求时,从所述SSD中原始数据文件里找到需要新增数据的位置并标记好所述位置,将新增数据的写请求的用户数据写入内存缓冲区,将新增数据的写请求的用户数据记入binlog文件。
所述方法还包括:等到所有新增数据的写请求都执行完毕,返回到标记好的所述位置,用新增数据的写请求的用户数据统一进行新增数据的修改。
所述将写请求的用户数据写入内存缓冲区,并记入binlog文件具体包括:所述写请求为修改数据的写请求时,根据所述修改数据的写请求的用户数据,读取所述SSD中原始数据文件里对应的需要修改的数据;从所述SSD中原始数据文件里找到所述需要修改的数据的位置并标记好所述位置,将修改数据的写请求的用户数据写入内存缓冲区,将修改数据的写请求的用户数据记入binlog文件。
所述方法还包括:等到所有修改数据的写请求都执行完毕,返回到标记好的所述位置,用修改数据的写请求的用户数据将需要修改的数据统一进行修改。
一种支持无随机写模式的数据处理方法,该方法包括:触发读请求后,根据读请求所需要的用户数据,判断如何从对外提供读取访问的内存缓冲区和固态硬盘SSD选择读取用户数据。
所述从对外提供读取访问的内存缓冲区和SSD选择读取用户数据具体包括:
如果判断出所述读请求所需要的用户数据都包括在内存缓冲区,则直接从内存缓冲区读取用户数据;
如果判断出所述读请求所需要的用户数据未都包括在内存缓冲区,则除了需要从内存缓冲区读取用户数据,还需要从SSD的全量数据文件中读取用户数据。
一种支持无随机写模式的数据处理系统,该系统包括:数据写入单元、数据整理单元、数据读取单元;其中,
所述数据写入单元,用于触发写请求后,将写请求的用户数据写入内存缓冲区,并记入binlog文件;
所述数据整理单元,用于将固态硬盘SSD中的原始数据与记入所述binlog文件里的用户数据进行整理合并,生成全量数据文件并写入所述SSD中;
所述数据读取单元,用于触发读请求后,根据读请求所需要的用户数据进行判断,如果需要从内存缓冲区读取用户数据,则直接从内存缓冲区读取用户数据;如果还需要从SSD读取用户数据,则从SSD的全量数据文件中读取用户数据。
所述数据写入单元,进一步用于所述写请求为新增数据的写请求时,从所述SSD中原始数据文件里找到需要新增数据的位置并标记好所述位置,将新增数据的写请求的用户数据写入内存缓冲区,将新增数据的写请求的用户数据记入binlog文件。
所述系统还包括:数据修改单元,用于获知所有新增数据的写请求都执行完毕后,返回到标记好的所述位置,用新增数据的写请求的用户数据统一进行新增数据的修改。
所述数据写入单元,进一步用于所述写请求为修改数据的写请求时,根据所述修改数据的写请求的用户数据,读取所述SSD中原始数据文件里对应的需要修改的数据;从所述SSD中原始数据文件里找到所述需要修改的数据的位置并标记好所述位置,将修改数据的写请求的用户数据写入内存缓冲区,将修改数据的写请求的用户数据记入binlog文件。
所述系统还包括:数据修改单元,用于获知所有修改数据的写请求都执行完毕后,返回到标记好的所述位置,用修改数据的写请求的用户数据将需要修改的数据统一进行修改。
本发明方法的一种方案为:触发写请求后,将写请求的用户数据写入内存缓冲区,并记入binlog文件;将SSD中的原始数据与记入binlog文件里的用户数据进行整理合并,生成全量数据文件并写入SSD中;将写入内存缓存区的用户数据、和SSD的全量数据文件中的用户数据对外提供读取访问。
采用本发明,由于不仅仅将用户数据存储在SSD中供读取访问使用这一种途径,而且还能将用户数据写入内存缓冲区,并记入binlog文件,且生成全量数据文件并存储于SSD中,因此,除了读取SSD,还多了一种途径,即:少量数据直接从内存缓冲区读取,能减少对SSD的读取次数,减少对SSD的物理损耗。本发明的SSD可供读取访问的文件,并不是原始文件,而是整理合并后的最新的全量数据文件,因此,可以在极大地降低运算复杂度和成本的基础上,提高读/写效率,从而能为用户提供高并发的数据读/写服务。
附图说明
图1为现有技术SSD数据存储方式的示意图;
图2为本发明针对写请求的数据处理方法的实现流程示意图;
图3为本发明针对读请求的数据处理方法的实现流程示意图;
图4为本发明系统的组成结构及系统模块间的交互示意图。
具体实施方式
本发明的基本思想是:基于写请求和读请求,提供了基于内存缓冲区和binlog文件机制的不同的数据处理方法,对于写请求,将写请求的用户数据写入内存缓冲区,并记入binlog文件,将写入内存缓存区的用户数据、和SSD的全量数据文件中的用户数据对外提供读取访问;对于读请求,如果从内存缓冲区读取用户数据就可以,则从内存缓冲区读取用户数据,如果还需要进一步从SSD读取用户数据,则从SSD的全量数据文件中读取用户数据。
需要指出的是:本文中,SSD中原始数据可以称为原始数据文件,也可以称为SSD中的旧数据文件,如图4所示。binlog文件里的数据指所有新增数据的写请求和修改数据的写请求对应的用户数据。在SSD中生成的一个最新最全的新数据文件,称为整理合并后生成的全量数据文件,也可以简称为SSD中的新数据文件,如图4所示。以下不做赘述。
下面结合附图对技术方案的实施作进一步的详细描述。
一种支持无随机写模式的数据处理方法,如图2所示,该方法包括:
步骤101、触发写请求后,将写请求的用户数据写入内存缓冲区,并记入binlog文件。
步骤102、在读取访问量少的情况下,将SSD中的原始数据与记入binlog文件里的用户数据进行整理合并,生成整理合并后的全量数据文件并写入SSD中。
步骤103、将写入内存缓存区的用户数据、和SSD的全量数据文件中的用户数据对外提供读取访问。
一种支持无随机写模式的数据处理方法,如图3所示,该方法包括:
步骤201、触发读请求后,根据读请求所需要的用户数据,判断是否需要除了从内存缓冲区读取用户数据,还需要进一步从SSD读取用户数据,如果从内存缓冲区读取用户数据就可以,则执行步骤202;如果还需要进一步从SSD读取用户数据,则执行步骤203。
步骤202、从内存缓冲区读取用户数据。
步骤203、从SSD的全量数据文件中读取用户数据。
一种支持无随机写模式的数据处理系统,如图4所示,该系统包括:数据写入单元、数据整理单元、数据读取单元;其中,述数据写入单元用于触发写请求后,将写请求的用户数据写入内存缓冲区,并记入binlog文件;数据整理单元,用于将固态硬盘SSD中的原始数据与记入binlog文件里的用户数据进行整理合并,生成全量数据文件并存储于SSD中;数据读取单元用于触发读请求后,根据读请求所需要的用户数据进行判断,如果需要从内存缓冲区读取用户数据,则直接从内存缓冲区读取用户数据;如果还需要从SSD读取用户数据,则从SSD的全量数据文件中读取用户数据。
这里,数据写入单元进一步用于所述写请求为新增数据的写请求时,从所述SSD中原始数据文件里找到需要新增数据的位置并标记好所述位置,将新增数据的写请求的用户数据写入内存缓冲区,将新增数据的写请求的用户数据记入binlog文件。
这里,该系统还包括:数据修改单元,用于获知所有新增数据的写请求都执行完毕后,返回到标记好的所述位置,用新增数据的写请求的用户数据统一进行新增数据的修改。
这里,数据写入单元进一步用于所述写请求为修改数据的写请求时,根据所述修改数据的写请求的用户数据,读取所述SSD中原始数据文件里对应的需要修改的数据;从所述SSD中原始数据文件里找到所述需要修改的数据的位置并标记好所述位置,将修改数据的写请求的用户数据写入内存缓冲区,将修改数据的写请求的用户数据记入binlog文件。
这里,该系统还包括:数据修改单元,用于获知所有修改数据的写请求都执行完毕后,返回到标记好的所述位置,用修改数据的写请求的用户数据将需要修改的数据统一进行修改。
如图4所示,存储区域包括内存缓存区,最好是高速缓冲存储器(cache)缓存区,存储区域还包括SSD。其中,SSD至少有2个分区,图4中只画了2个分区进行示意描述,一个分区用于存储旧数据文件,另一个分区用于存储新数据文件。这里,所述旧数据文件指:未经数据处理、原始写入的文件;所述新数据文件指:通过对cache缓冲区里的数据与旧数据文件里的数据进行合并整理后获得的新数据文件。
可见,本发明采取的存储方式比现有技术优越,因为现有技术仅仅在SSD存储数据,而本发明是在内存缓存区和SSD都存储有数据;而且,如果一个读请求所需要的数据能在内存缓存区里全部找到,就不需要读取SSD存储的数据文件,仅仅在内存缓存区找不齐数据的情况才需要读取SSD,这种可选择的读取访问比现有技术只能单一读取访问SSD来说,由于内存缓冲区的反应速度快,因此,采用本发明不仅效率高,节约了时间成本,而且避免了多次读取访问SSD造成的对SSD的物理损耗,延长其使用寿命。
如图4所示,基于本发明的系统模块,各模块间的交互过程包括以下内容:
一、针对写请求而言,对于任意的写请求,包括新增数据的写请求和修改数据的写请求,所有的写请求都会记入binlog文件中,同时也会记入内存缓冲区中,以便对外提供用户的读取访问。所述binlog文件指:二进制日志,采用二进制形式记录用户的动作。
具体的,对于新增数据的写请求,其实现过程为:从SSD中原始数据找到需要新增数据的位置并标记好所述位置,将新增数据的写请求写入内存缓冲区;将新增数据的写请求记入binlog文件。一种方式是:等到所有新增数据的写请求都执行完毕,返回到标记好的位置,用新增数据的写请求的用户数据统一进行新增数据的修改。另一种方式是:达到设定的处理周期时,返回到标记好的位置,用binlog文件里累积的新增数据的写请求统一对用户的数据进行修改。采用后一种方式的好处是:会将由写请求操作导致的SSD物理损坏降低到最小。
具体的,对于修改数据的写请求,其实现过程为:先根据修改数据的写请求,读取SSD中原始数据里对应的需要修改的原始数据;从旧数据文件里找到该原始数据的位置后,标记好该原始数据的位置,将修改数据的写请求写入内存缓冲区;将修改数据的写请求记入binlog文件。一种方式是:等到修改数据的写请求都执行完毕,返回到标记好的该原始数据的位置,用修改数据的写请求将对应的需要修改的原始数据统一进行一次性的修改,该修改可以采用批处理命令执行。另一种方式是:达到设定的处理周期时,返回到标记好的位置,用binlog文件里累积的修改数据的写请求统一对用户的数据进行修改。采用后一种方式的好处是:会将由写请求操作导致的SSD物理损坏降低到最小。
需要指出的是:新增数据的写请求和修改数据的写请求,可以在内存缓冲区里面分2个区放置,也可以在同一个分区里放置。
针对内存缓冲区和binlog文件而言,内存缓冲区还可以存储最近一个预设处理周期的数据,比如最近7天的新增数据的写请求和修改数据的写请求对应的用户数据,超过7天则会进行淘汰,删除对应的用户数据以节约内存资源。而且,内存缓冲区可以对外提供实时的高性能并发读取和写入数据处理服务。而binlog文件区别于内存缓冲区,存储的是所有新增数据的写请求和修改数据的写请求对应的用户数据,因为是作为备份永久存储,所以不会超时删除,也并不对外提供实时的高性能并发读取和写入数据处理服务。
采用内存缓冲区的好处是:一:在内存缓冲区上述删除对应的用户数据以节约内存资源的;二、内存缓冲区是把最近一个处理周期,如7天内新增数据的写请求和修改数据的写请求对应的用户数据写入内存缓冲区中,在该处理周期内(7天),会将binlog文件里存储的用户数据和SSD中旧数据文件里的数据一起整理合并,以整理出最新最全的数据文件(全量保存用户数据的文件),即为图4中的新数据文件,则在后续处理读请求时,会结合内存缓冲区判断是否还需要读取SSD上的该新数据文件,或者直接读取内存缓冲区里的数据就可以,如果一个读请求所需要的数据能在内存缓冲区里全部找到,则就不需要读取SSD存储的新数据文件,这样只访问了内存缓冲区,比需要访问内存缓冲区+SSD的效率会高很多。而且,如果在这个处理周期内,只访问了内存缓冲区就能完成对读请求的处理,则本发明引入内存缓存区和binlog文件的这种无随机写的模式,区别于现有技术的有随机写模式(随写随读顺序输入,且随机写请求会擦除原有的数据,再更新),本发明对SSD是无任何写请求处理的,只有读请求处理,这样有利于读请求服务质量的提高,同时提高SSD的使用寿命,因为SSD无随机写与有随机写的使用寿命之比为300∶1。
二、针对整理操作而言,其实现过程为:读取旧数据文件里的数据;读取binlog文件里的用户数据;将binlog文件里存储的用户数据和SSD中旧数据文件里的数据一起整理合并,以整理出最新最全的新数据文件(全量保存用户数据的文件),即为图4中的新数据文件,将生成的新数据文件设置为提供非实时的读取访问,以便对外提供读取数据处理服务。
采用整理操作的好处是:在读取请求量较小时,通过将原始数据与binlog文件里的数据一起做整理合并,生成一个最新最全的新数据文件。这样,本发明区别于现有技术是实时的修改SSD的动作,变成非实时的修改SSD,从而在读取请求量小时,更新数据文件,将处理写请求带来的影响尽量降低。比如,在进行整理操作时,可以选择读取请求量比较小的时刻(例如凌晨1点)进行整理,这样会将处理读取请求带来的影响降低到最小甚至为0。需要指出的是,针对整理操作而言,还可以针对内存缓冲区的处理周期,设置在该处理周期如7天内,周期性地将binog文件与SSD上的旧数据文件的数据进行合并,更新数据,生成新数据文件,这样新数据文件能得到周期性地更新,以达到最新的数据,提高对外提供读取服务的服务质量和效率。
三、针对读请求而言,先读取内存缓冲区,如果一个读请求所需要的数据,能在内存缓冲区里全部找到,则就不需要读取SSD存储的数据文件,即内存访问方式,这样只访问了内存缓冲区,比需要访问内存+SSD所采用的内存+SSD访问方式的效率会高出很多;如果不能满足需要,即一个读请求所需要的数据还需要在SSD找寻(内存+SSD访问方式),需要借助整合操作,将原始数据(旧数据文件)与binlog文件里的数据一起做整理合并,生成一个最新最全的新数据文件对外提供读取服务。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

Claims (12)

1.一种支持无随机写模式的数据处理方法,其特征在于,该方法包括:
触发写请求后,将写请求的用户数据写入内存缓冲区,并记入binlog文件;
将固态硬盘SSD中的原始数据与记入所述binlog文件里的用户数据进行整理合并,生成全量数据文件并写入所述SSD中;
将写入所述内存缓存区的用户数据、和SSD的全量数据文件中的用户数据对外提供读取访问;
在所述内存缓存区和所述SSD都存储有所述用户数据,在所述内存缓存区找不齐用户数据时从所述SSD中得到用户数据。
2.根据权利要求1所述的方法,其特征在于,所述将写请求的用户数据写入内存缓冲区,并记入binlog文件具体包括:
所述写请求为新增数据的写请求时,从所述SSD中原始数据文件里找到需要新增数据的位置并标记好所述位置,将新增数据的写请求的用户数据写入内存缓冲区,将新增数据的写请求的用户数据记入binlog文件。
3.根据权利要求2所述的方法,其特征在于,该方法还包括:等到所有新增数据的写请求都执行完毕,返回到标记好的所述位置,用新增数据的写请求的用户数据统一进行新增数据的修改。
4.根据权利要求1所述的方法,其特征在于,所述将写请求的用户数据写入内存缓冲区,并记入binlog文件具体包括:
所述写请求为修改数据的写请求时,根据所述修改数据的写请求的用户数据,读取所述SSD中原始数据文件里对应的需要修改的数据;从所述SSD中原始数据文件里找到所述需要修改的数据的位置并标记好所述位置,将修改数据的写请求的用户数据写入内存缓冲区,将修改数据的写请求的用户数据记入binlog文件。
5.根据权利要求4所述的方法,其特征在于,该方法还包括:等到所有修改数据的写请求都执行完毕,返回到标记好的所述位置,用修改数据的写请求的用户数据将需要修改的数据统一进行修改。
6.一种支持无随机写模式的数据处理方法,其特征在于,该方法包括:
触发读请求后,根据读请求所需要的用户数据,判断如何从对外提供读取访问的内存缓冲区和固态硬盘SSD选择读取用户数据;
在所述内存缓存区和所述SSD都存储有所述用户数据,在所述内存缓存区找不齐用户数据时从所述SSD中得到用户数据。
7.根据权利要求6所述的数据处理方法,其特征在于,所述在所述内存缓存区和所述SSD都存储有所述用户数据,在所述内存缓存区找不齐用户数据时从所述SSD中得到用户数据具体包括:
如果判断出所述读请求所需要的用户数据都包括在内存缓冲区,则直接从内存缓冲区读取用户数据;
如果判断出所述读请求所需要的用户数据未都包括在内存缓冲区,则除了需要从内存缓冲区读取用户数据,还需要从SSD的全量数据文件中读取用户数据。
8.一种支持无随机写模式的数据处理系统,其特征在于,该系统包括:数据写入单元、数据整理单元、数据读取单元;其中,
所述数据写入单元,用于触发写请求后,将写请求的用户数据写入内存缓冲区,并记入binlog文件;
所述数据整理单元,用于将固态硬盘SSD中的原始数据与记入所述binlog文件里的用户数据进行整理合并,生成全量数据文件并写入所述SSD中,以在所述内存缓存区和所述SSD都存储有所述用户数据;
所述数据读取单元,用于触发读请求后,在所述内存缓存区找不齐用户数据以从所述SSD中得到用户数据的过程中,根据读请求所需要的用户数据进行判断,如果需要从内存缓冲区读取用户数据,则直接从内存缓冲区读取用户数据;如果还需要从SSD读取用户数据,则从SSD的全量数据文件中读取用户数据。
9.根据权利要求8所述的系统,其特征在于,所述数据写入单元,进一步用于所述写请求为新增数据的写请求时,从所述SSD中原始数据文件里找到需要新增数据的位置并标记好所述位置,将新增数据的写请求的用户数据写入内存缓冲区,将新增数据的写请求的用户数据记入binlog文件。
10.根据权利要求9所述的系统,其特征在于,其特征在于,该系统还包括:数据修改单元,用于获知所有新增数据的写请求都执行完毕后,返回到标记好的所述位置,用新增数据的写请求的用户数据统一进行新增数据的修改。
11.根据权利要求8所述的系统,其特征在于,所述数据写入单元,进一步用于所述写请求为修改数据的写请求时,根据所述修改数据的写请求的用户数据,读取所述SSD中原始数据文件里对应的需要修改的数据;从所述SSD中原始数据文件里找到所述需要修改的数据的位置并标记好所述位置,将修改数据的写请求的用户数据写入内存缓冲区,将修改数据的写请求的用户数据记入binlog文件。
12.根据权利要求11所述的系统,其特征在于,该系统还包括:数据修改单元,用于获知所有修改数据的写请求都执行完毕后,返回到标记好的所述位置,用修改数据的写请求的用户数据将需要修改的数据统一进行修改。
CN201210464949.8A 2012-11-16 2012-11-16 一种支持无随机写模式的数据处理方法及系统 Active CN103823634B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210464949.8A CN103823634B (zh) 2012-11-16 2012-11-16 一种支持无随机写模式的数据处理方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210464949.8A CN103823634B (zh) 2012-11-16 2012-11-16 一种支持无随机写模式的数据处理方法及系统

Publications (2)

Publication Number Publication Date
CN103823634A CN103823634A (zh) 2014-05-28
CN103823634B true CN103823634B (zh) 2017-12-12

Family

ID=50758724

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210464949.8A Active CN103823634B (zh) 2012-11-16 2012-11-16 一种支持无随机写模式的数据处理方法及系统

Country Status (1)

Country Link
CN (1) CN103823634B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104679449B (zh) * 2015-03-12 2017-08-25 浪潮集团有限公司 一种提升海量存储后端性能的方法
CN108153488B (zh) * 2017-12-13 2021-05-04 北京小米移动软件有限公司 数据自增方法及装置
CN108762674A (zh) * 2018-05-24 2018-11-06 深圳忆联信息系统有限公司 提升ssd响应延迟的方法及装置
CN109460186A (zh) * 2018-11-02 2019-03-12 深圳忆联信息系统有限公司 一种提升固态硬盘读性能的方法及其系统
CN113590035A (zh) * 2021-07-21 2021-11-02 湖南兴天电子科技有限公司 一种非标准sata接口的驱动方法和系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1848071A (zh) * 2005-03-24 2006-10-18 株式会社东芝 计算机系统、盘装置以及数据更新控制方法
CN1862475A (zh) * 2005-07-15 2006-11-15 华为技术有限公司 磁盘阵列缓存的管理方法
CN101673188A (zh) * 2008-09-09 2010-03-17 上海华虹Nec电子有限公司 一种固态硬盘的数据存取方法
CN102253810A (zh) * 2010-05-17 2011-11-23 腾讯科技(深圳)有限公司 数据读取方法、装置和系统
CN102609337A (zh) * 2012-01-19 2012-07-25 北京神州数码思特奇信息技术股份有限公司 一种内存数据库快速数据恢复方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080120469A1 (en) * 2006-11-22 2008-05-22 International Business Machines Corporation Systems and Arrangements for Cache Management

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1848071A (zh) * 2005-03-24 2006-10-18 株式会社东芝 计算机系统、盘装置以及数据更新控制方法
CN1862475A (zh) * 2005-07-15 2006-11-15 华为技术有限公司 磁盘阵列缓存的管理方法
CN101673188A (zh) * 2008-09-09 2010-03-17 上海华虹Nec电子有限公司 一种固态硬盘的数据存取方法
CN102253810A (zh) * 2010-05-17 2011-11-23 腾讯科技(深圳)有限公司 数据读取方法、装置和系统
CN102609337A (zh) * 2012-01-19 2012-07-25 北京神州数码思特奇信息技术股份有限公司 一种内存数据库快速数据恢复方法

Also Published As

Publication number Publication date
CN103823634A (zh) 2014-05-28

Similar Documents

Publication Publication Date Title
KR102080967B1 (ko) 하이브리드 스토리지
US8572312B2 (en) Data de-duplication and solid state memory device
CN103823634B (zh) 一种支持无随机写模式的数据处理方法及系统
CN105593942B (zh) 非易失性存储器装置中的易失性存储器架构及相关控制器
CN109144887B (zh) 存储器系统及控制非易失性存储器的控制方法
US9250812B2 (en) Leveraging a hybrid infrastructure for dynamic memory allocation and persistent file storage
US8914579B2 (en) Access device, information recording device, controller, and information recording system
US8984247B1 (en) Storing and reconstructing mapping table data in a data storage system
US20110055297A1 (en) Access module, information recording module, controller, and information recording system
CN103838853B (zh) 一种基于不同存储介质的混合文件系统
CN107003814A (zh) 存储系统中的有效元数据
Yao et al. Building efficient key-value stores via a lightweight compaction tree
CN107766374B (zh) 一种海量小文件存储读取的优化方法和系统
US10360189B2 (en) Data object storage across multiple storage nodes
CN107368257B (zh) 固态存储器中的数据巡检方法及装置
CN108874309A (zh) 一种管理固态硬盘中物理块的方法和装置
CN102520885B (zh) 一种混合硬盘的数据管理系统
CN105988720B (zh) 数据存储装置和方法
CN109727629B (zh) 使用利用多间隙进度字段的磨损均衡的方法和系统
CN104516827B (zh) 一种读缓存的方法及装置
Yao et al. A set-aware key-value store on shingled magnetic recording drives with dynamic band
WO2018186455A1 (ja) 不揮発性メモリにおける空き容量管理方法、及び不揮発性メモリを含む情報記録装置にデータを記録するアクセス装置、情報記録装置および情報記録システム
US10496318B1 (en) System and method for capacity management in multi-tiered storage
Zhan et al. Design and implementation of SCM and SSD based hybrid key-value store
Wu Efficient Data and Space Management in Modern Storage Devices and Systems

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant