CN111858531B - 一种基于多核硬盘的日志存储方法、系统及相关组件 - Google Patents
一种基于多核硬盘的日志存储方法、系统及相关组件 Download PDFInfo
- Publication number
- CN111858531B CN111858531B CN202010674397.8A CN202010674397A CN111858531B CN 111858531 B CN111858531 B CN 111858531B CN 202010674397 A CN202010674397 A CN 202010674397A CN 111858531 B CN111858531 B CN 111858531B
- Authority
- CN
- China
- Prior art keywords
- ddr
- core
- log
- hard disk
- cache region
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000011010 flushing procedure Methods 0.000 claims abstract description 18
- 230000008569 process Effects 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 4
- 230000003993 interaction Effects 0.000 abstract description 7
- 230000009286 beneficial effect Effects 0.000 abstract description 4
- 230000001360 synchronised effect Effects 0.000 abstract description 2
- 238000007726 management method Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3037—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a memory, e.g. virtual memory, cache
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种基于多核硬盘的日志存储方法,包括:为多核硬盘中的每个核分配独立的DDR缓存区,每个DDR缓存区用于存储其对应的核的日志;当存在DDR缓存区满足转存条件,将该DDR缓存区中的日志转存到DDR刷写区;将DDR刷写区中的日志刷写到NAND中。本申请能够避免多核使用一个缓存区存储日志需要频繁的交互,提高日志存储效率,解决了DDR保存和NAND刷写不同步的问题,避免多核架构下SSD日志丢失,增强了SSD的可靠性。本申请还公开了一种基于多核硬盘的日志存储系统、电子设备及计算机可读存储介质,具有以上有益效果。
Description
技术领域
本申请涉及硬盘领域,特别涉及一种基于多核硬盘的日志存储方法、系统及相关组件。
背景技术
随着互联网、云计算、物联网等技术的发展,SSD(Solid State Disk,固态硬盘)作为新一代存储介质,广泛被应用。作为数据中心的最底端,SSD承载着存储数据的关键任务,对上层接口比较单一,在主机端看来SSD即黑盒子,一旦发生故障很难定位问题。目前,对于SSD通常是通过其内部存储的日志来定位故障,对于多核架构下的SSD存在DDR(DoubleData Rate,双倍速率)保存和NAND刷写不同步的问题,容易造成SSD日志丢失,降低了SSD的可靠性。
因此,如何提供一种解决上述技术问题的方案是本领域技术人员目前需要解决的问题。
发明内容
本申请的目的是提供一种基于多核硬盘的日志存储方法、系统、电子设备及计算机可读存储介质,能够避免多核使用一个缓存区存储日志需要频繁的交互,提高日志存储效率,解决了DDR保存和NAND刷写不同步的问题,避免多核架构下SSD日志丢失,增强了SSD的可靠性。
为解决上述技术问题,本申请提供了一种基于多核硬盘的日志存储方法,包括:
为多核硬盘中的每个核分配独立的DDR缓存区,每个所述DDR缓存区用于存储其对应的核的日志;
当存在所述DDR缓存区满足转存条件,将该DDR缓存区中的日志转存到DDR刷写区;
将所述DDR刷写区中的日志刷写到NAND中。
优选的,所述为多核硬盘中的每个核分配独立的DDR缓存区的过程具体包括:
根据所述NAND的写入单元的大小为多核硬盘中的每个核分配独立的DDR缓存区。
优选的,所述将所述DDR刷写区中的日志刷写到NAND中的过程具体包括:
确定所述DDR缓存区满足所述转存条件的时间;
按所述时间的先后顺序将所述DDR刷写区中的日志刷写到NAND中。
优选的,所述转存条件为所述DDR缓存区中的日志的大小达到预设值。
优选的,该日志存储方法还包括:
当所述DDR缓存区满足所述转存条件,所述DDR缓存区生成提示信息,以便在接收到所述提示信息将所述DDR刷写区中的日志刷写到NAND中。
优选的,所述DDR缓存区生成提示信息的过程具体包括:
所述DDR缓存区通过中断或message生成提示信息。
为解决上述技术问题,本申请还提供了一种基于多核硬盘的日志存储系统,包括:
分配模块,用于为多核硬盘中的每个核分配独立的DDR缓存区,每个所述DDR缓存区用于存储其对应的核的日志;
转存模块,用于当存在所述DDR缓存区满足转存条件,将该DDR缓存区中的日志转存到DDR刷写区;
刷写模块,用于将所述DDR刷写区中的日志刷写到NAND中。
优选的,所述分配模块具体用于:
根据所述NAND的写入单元的大小为多核硬盘中的每个核分配独立的DDR缓存区。
为解决上述技术问题,本申请还提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上文任意一项所述的基于多核硬盘的日志存储方法的步骤。
为解决上述技术问题,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上文任意一项所述的基于多核硬盘的日志存储方法的步骤。
本申请提供了一种基于多核硬盘的日志存储方法,首先为多核硬盘中的每个核分配独立的DDR缓存区,避免多核使用一个缓存区存储日志需要频繁的交互,提高日志存储效率,然后当存在任一DDR缓存区满足转存条件,则将该DDR缓存区内的日志转存到DDR刷写区,从DDR刷写区向NAND刷写SSD日志,保证所述DDR缓存区可以继续打印新日志,刷写过程不影响DDR缓存区对新日志的缓存,从而解决了DDR保存和NAND刷写不同步的问题,避免多核架构下SSD日志丢失,增强了SSD的可靠性。本申请还提供了一种基于多核硬盘的日志存储系统、电子设备及计算机可读存储介质,具有和上述日志存储方法相同的有益效果。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请所提供的一种基于多核硬盘的日志存储方法的步骤流程图;
图2为本申请所提供的一种基于多核硬盘的日志存储系统的结构示意图。
具体实施方式
本申请的核心是提供一种基于多核硬盘的日志存储方法、系统、电子设备及计算机可读存储介质,能够避免多核使用一个缓存区存储日志需要频繁的交互,提高日志存储效率,解决了DDR保存和NAND刷写不同步的问题,避免多核架构下SSD日志丢失,增强了SSD的可靠性。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参照图1,图1为本申请所提供的一种基于多核硬盘的日志存储方法的步骤流程图,该日志存储方法包括:
S101:为多核硬盘中的每个核分配独立的DDR缓存区,每个DDR缓存区用于存储其对应的核的日志;
具体的,为实现本申请的方案可以在SSD内部设置一日志管理装置,通过该日志管理装置执行S101-S103的步骤。本步骤中,为多核架构的硬盘中的每个核分配一个独立的固定区域的DDR缓存区,每个核生成的日志对应打印在该核分配的DDR缓存区中,每个核一一对应一个DDR缓存区,各个核的日志分开、独立打印到各个DDR缓存区中,可以避免日志打印过程中,多个核对应一个缓存区所导致的频繁的数据交互,从而提高存储、查询效率。
作为一种优选的实施例,可根据NAND的写入单元的大小为多核硬盘中的每个核分配独立的DDR缓存区,按固定大小分配各个DDR缓存区,一方面便于管理,另一方面可以避免资源浪费。
其中,本实施例中的硬盘具体可以为SSD。
S102:当存在DDR缓存区满足转存条件,将该DDR缓存区中的日志转存到DDR刷写区;
S103:将DDR刷写区中的日志刷写到NAND中。
可以理解的是,当存在任意DDR缓存区满足转存条件,则将该DDR缓存区中的日志统一转存到NAND刷写使用的DDR刷写区,从DDR刷写区向NAND刷写日志,该DDR缓存区对应的核生成的新日志从该DDR缓存区的起始位置覆盖刷写,即DDR刷写区向NAND刷写日志的过程中,核生成的日志可继续向对应的DDR缓存区打印,两个过程不会相互影响,从而避免落NAND和DDR覆盖写不同步导致的日志保存不准确的问题。
具体的,这里的转存条件具体可以为DDR缓存区存储的日志的大小达到预设值,此时,判定该DDR缓存区满足转存条件。
作为一种优选的实施例,当DDR缓存区中满足转存条件,将该DDR缓存区的日志转存到DDR刷写区的同时,生成对应的提示信息,当日志管理装置接收到该提示信息后,将该DDR刷写区中的日志存储到NAND中,其中,DDR缓存区可以通过中断或message的方式生成提示信息。
可以理解的是,当存在多个核的DDR缓存区同时写满的情况,日志管理装置会根据各个DDR缓存区发送提示信息的时间,依次将各个DDR缓存区中的日志存储到NAND中。
可见,本实施例中首先为多核硬盘中的每个核分配独立的DDR缓存区,避免多核使用一个缓存区存储日志需要频繁的交互,可以及时记录固态硬盘的历史日志信息,提高日志存储效率,然后当存在任一DDR缓存区满足转存条件,则将该DDR缓存区内的日志转存到DDR刷写区,从DDR刷写区向NAND刷写SSD日志,保证DDR缓存区可以继续打印新日志,刷写过程不影响DDR缓存区对新日志的缓存,从而解决了DDR保存和NAND刷写不同步的问题,保证了SSD功能的可维护性,避免了多核架构下SSD日志的丢失,增强了SSD质量的可靠性,为SSD的在线及离线问题分析提供了有力的工具支持。
请参照图2,图2为本申请所提供的一种基于多核硬盘的日志存储系统,包括:
分配模块1,用于为多核硬盘中的每个核分配独立的DDR缓存区,每个DDR缓存区用于存储其对应的核的日志;
转存模块2,用于当存在DDR缓存区满足转存条件,将该DDR缓存区中的日志转存到DDR刷写区;
刷写模块3,用于将DDR刷写区中的日志刷写到NAND中。
可见,本实施例中首先为多核硬盘中的每个核分配独立的DDR缓存区,避免多核使用一个缓存区存储日志需要频繁的交互,可以及时记录固态硬盘的历史日志信息,提高日志存储效率,然后当存在任一DDR缓存区满足转存条件,则将该DDR缓存区内的日志转存到DDR刷写区,从DDR刷写区向NAND刷写SSD日志,保证DDR缓存区可以继续打印新日志,刷写过程不影响DDR缓存区对新日志的缓存,从而解决了DDR保存和NAND刷写不同步的问题,保证了SSD功能的可维护性,避免了多核架构下SSD日志的丢失,增强了SSD质量的可靠性,为SSD的在线及离线问题分析提供了有力的工具支持。
作为一种优选的实施例,分配模块1具体用于:
根据NAND的写入单元的大小为多核硬盘中的每个核分配独立的DDR缓存区。
作为一种优选的实施例,刷新模块具体用于:
确定DDR缓存区满足转存条件的时间;
按时间的先后顺序将DDR刷写区中的日志刷写到NAND中。
作为一种优选的实施例,转存条件为DDR缓存区中的日志的大小达到预设值。
作为一种优选的实施例,该日志存储系统还包括:
生成模块,用于当DDR缓存区满足转存条件,DDR缓存区生成提示信息,以便在接收到提示信息将所述DDR刷写区中的日志刷写到NAND中。
作为一种优选的实施例,DDR缓存区生成提示信息的过程具体包括:
DDR缓存区通过中断或message生成提示信息。
另一方面,本申请还提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现如上文任意一个实施例所描述的基于多核硬盘的日志存储方法的步骤。
对于本申请所提供的一种电子设备的介绍请参照上述实施例,本申请在此不再赘述。
本申请所提供的一种电子设备具有和上述基于多核硬盘的日志存储方法相同的有益效果。
另一方面,本申请还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上文任意一个实施例所描述的基于多核硬盘的日志存储方法的步骤。
对于本申请所提供的一种计算机可读存储介质的介绍请参照上述实施例,本申请在此不再赘述。
本申请所提供的一种计算机可读存储介质具有和上述基于多核硬盘的日志存储方法相同的有益效果。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其他实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种基于多核硬盘的日志存储方法,其特征在于,包括:
为多核硬盘中的每个核分配独立的DDR缓存区,每个所述DDR缓存区用于存储其对应的核的日志;
当存在所述DDR缓存区满足转存条件,将该DDR缓存区中的日志转存到DDR刷写区;
将所述DDR刷写区中的日志刷写到NAND中。
2.根据权利要求1所述的基于多核硬盘的日志存储方法,其特征在于,所述为多核硬盘中的每个核分配独立的DDR缓存区的过程具体包括:
根据所述NAND的写入单元的大小为多核硬盘中的每个核分配独立的DDR缓存区。
3.根据权利要求1所述的基于多核硬盘的日志存储方法,其特征在于,所述将所述DDR刷写区中的日志刷写到NAND中的过程具体包括:
确定所述DDR缓存区满足所述转存条件的时间;
按所述时间的先后顺序将所述DDR刷写区中的日志刷写到NAND中。
4.根据权利要求1所述的基于多核硬盘的日志存储方法,其特征在于,所述转存条件为所述DDR缓存区中的日志的大小达到预设值。
5.根据权利要求1所述的基于多核硬盘的日志存储方法,其特征在于,该日志存储方法还包括:
当所述DDR缓存区满足所述转存条件,所述DDR缓存区生成提示信息,以便在接收到所述提示信息将所述DDR刷写区中的日志刷写到NAND中。
6.根据权利要求5所述的基于多核硬盘的日志存储方法,其特征在于,所述DDR缓存区生成提示信息的过程具体包括:
所述DDR缓存区通过中断或message生成提示信息。
7.一种基于多核硬盘的日志存储系统,其特征在于,包括:
分配模块,用于为多核硬盘中的每个核分配独立的DDR缓存区,每个所述DDR缓存区用于存储其对应的核的日志;
转存模块,用于当存在所述DDR缓存区满足转存条件,将该DDR缓存区中的日志转存到DDR刷写区;
刷写模块,用于将所述DDR刷写区中的日志刷写到NAND中。
8.根据权利要求7所述的基于多核硬盘的日志存储系统,其特征在于,所述分配模块具体用于:
根据所述NAND的写入单元的大小为多核硬盘中的每个核分配独立的DDR缓存区。
9.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1-6任意一项所述的基于多核硬盘的日志存储方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-6任意一项所述的基于多核硬盘的日志存储方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010674397.8A CN111858531B (zh) | 2020-07-14 | 2020-07-14 | 一种基于多核硬盘的日志存储方法、系统及相关组件 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010674397.8A CN111858531B (zh) | 2020-07-14 | 2020-07-14 | 一种基于多核硬盘的日志存储方法、系统及相关组件 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111858531A CN111858531A (zh) | 2020-10-30 |
CN111858531B true CN111858531B (zh) | 2022-08-02 |
Family
ID=72984449
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010674397.8A Active CN111858531B (zh) | 2020-07-14 | 2020-07-14 | 一种基于多核硬盘的日志存储方法、系统及相关组件 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111858531B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113342276B (zh) * | 2021-06-13 | 2023-01-06 | 苏州浪潮智能科技有限公司 | 一种日志保存方法、系统、设备以及介质 |
CN115981548A (zh) * | 2021-10-14 | 2023-04-18 | 华为技术有限公司 | 一种流控方法及装置 |
CN113961151B (zh) * | 2021-11-02 | 2024-04-02 | 锐凌无线有限责任公司 | 一种故障日志的存储方法、装置、电子设备及存储介质 |
CN115576734B (zh) * | 2022-11-18 | 2023-05-05 | 南京芯驰半导体科技有限公司 | 一种多核异构日志存储方法和系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108762989B (zh) * | 2018-06-05 | 2021-08-31 | 郑州云海信息技术有限公司 | 固态硬盘的数据存储方法、装置、设备及可读存储介质 |
CN108959526B (zh) * | 2018-06-28 | 2021-10-15 | 郑州云海信息技术有限公司 | 日志管理方法以及日志管理装置 |
CN111104254A (zh) * | 2019-11-29 | 2020-05-05 | 北京浪潮数据技术有限公司 | 存储系统数据刷写方法、装置、设备及可读存储介质 |
-
2020
- 2020-07-14 CN CN202010674397.8A patent/CN111858531B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111858531A (zh) | 2020-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111858531B (zh) | 一种基于多核硬盘的日志存储方法、系统及相关组件 | |
US9317320B2 (en) | Hypervisor-based server duplication system and method and storage medium storing server duplication computer program | |
CN105612503B (zh) | 持久性数据结构 | |
TWI735542B (zh) | 一種虛擬機器的資料儲存方法和裝置 | |
US8396833B2 (en) | Inode management in redirect-on-write file system | |
CN109800185B (zh) | 一种数据存储系统中的数据缓存方法 | |
JP2006277208A (ja) | バックアップシステム、プログラム及びバックアップ方法 | |
CN103765373A (zh) | 数据存储方法、数据存储装置和存储设备 | |
US20160306665A1 (en) | Managing resources based on an application's historic information | |
CN112685227A (zh) | 一种日志管理方法、装置、设备及计算机可读存储介质 | |
US9448791B1 (en) | Synchronizing source code objects and software development workflow objects | |
TW509842B (en) | Reclaim space reserve for a compressed memory system | |
US11204869B2 (en) | System and method for facilitating data storage with low-latency input/output and persistent data | |
CN111143126A (zh) | 一种分布式文件系统的数据拷贝方法、系统及相关组件 | |
US7689766B1 (en) | Method, system, apparatus, and computer-readable medium for integrating a caching module into a storage system architecture | |
CN105264608A (zh) | 存储数据的方法、内存控制器和中央处理器 | |
CN102455979B (zh) | 受损存储单元的资料保护方法 | |
WO2016060700A1 (en) | File system journaling | |
CN115840635A (zh) | 计算资源管理方法、电子设备和程序产品 | |
US10013358B2 (en) | Computer system and memory allocation management method | |
CN111435302B (zh) | 一种应用程序的处理方法及装置 | |
CN106598786B (zh) | 一种存储快照写时复制处理系统和方法 | |
CN102073655A (zh) | 一种保存数据的方法和装置 | |
US20190188102A1 (en) | Method and system for data recovery in a cloud based computing environment utilizing object storage | |
US8401995B2 (en) | File removal with no available disk blocks in redirect-on-write file systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |