CN109828862B - 一种回放日志的方法和装置 - Google Patents
一种回放日志的方法和装置 Download PDFInfo
- Publication number
- CN109828862B CN109828862B CN201711180655.1A CN201711180655A CN109828862B CN 109828862 B CN109828862 B CN 109828862B CN 201711180655 A CN201711180655 A CN 201711180655A CN 109828862 B CN109828862 B CN 109828862B
- Authority
- CN
- China
- Prior art keywords
- data segment
- metadata
- log
- logs
- data
- 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
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本申请提供了一种回放日志的方法和装置,该方法包括:确定待回放的第一数据段,该第一数据段包括N个日志,该N个日志中每个日志包括元数据和数据,该N个日志中每个日志的元数据和数据在该第一数据段上的位置相邻,N为正整数;确定元数据集合,该元数据集合包括该N个日志中每个日志的元数据;根据该元数据集合,对该N个日志中每个日志的元数据进行回放。本申请实施例的方法,在写日志不受影响的情况下,通过确定元数据集合,有助于缩短日志的回放时延。
Description
技术领域
本申请涉及通信领域,并且更具体地,涉及一种回放日志的方法和装置。
背景技术
数据所在服务器突然掉电、突然重启或者直接关闭数据库,正在访问数据库的会话会突然中止(shutdown abort)时,使得在服务器重新启动或介质故障之后,数据没有办法正常的恢复,此时日志就派上了用场,通过使用日志回放,把数据恢复到服务器故障那一个时刻,从而保障数据一致性。而回放时间决定***开始正常工作的时间。
当前技术中,日志中的数据和元数据在同时下发保障写性能情况下,回放时逐条读取存储介质回放数据,这样会导致回放时延随着数据段(segment)长度的增加而增加,回放时间过长会导致***长时间无法正常工作。
发明内容
本申请提供一种回放日志的方法,在写日志不受影响的情况下,通过确定元数据集合,有助于缩短日志的回放时延。
第一方面,提供了一种回放日志的方法,该方法包括:确定待回放的第一数据段,该第一数据段包括N个日志,该N个日志中每个日志包括元数据和数据,该N个日志中每个日志的元数据和数据在该第一数据段上的位置相邻,N为正整数;确定元数据集合,该元数据集合包括该N个日志中每个日志的元数据;根据该元数据集合,对该N个日志中每个日志的元数据进行回放。
本申请实施例的回放日志的方法,在写日志不受影响的情况下,通过确定元数据集合,有助于缩短日志的回放时延。
结合第一方面,在第一方面的某些可能的实现方式中,该第一数据段包括该元数据集合。
本申请实施例的回放日志的方法,在写日志不受影响的情况下,通过确定本数据段中的元数据集合,有助于缩短日志的回放时延。
结合第一方面,在第一方面的某些可能的实现方式中,该确定元数据集合,包括:从第二数据段获取该元数据集合,该第二数据段与该第一数据段不同。
本申请实施例的回放日志的方法,在写日志不受影响的情况下,通过确定另一个数据段中的元数据集合,有助于缩短日志的回放时延。
结合第一方面,在第一方面的某些可能的实现方式中,该确定元数据集合之前,该方法还包括:在确定该第一数据段的日志写满时,将该元数据集合写入该第一数据段。
本申请实施例的回放日志的方法,通过在本数据段中增加元数据集合,有助于缩短日志的回放时延。
结合第一方面,在第一方面的某些可能的实现方式中,该确定元数据集合之前,该方法还包括:在确定该第一数据段的日志写满时,将该元数据集合写入该第二数据段。
本申请实施例的回放日志的方法,通过在另一个数据段中增加元数据集合,有助于缩短日志的回放时延。
结合第一方面,在第一方面的某些可能的实现方式中,该元数据集合在该第一数据段的尾部。本申请实施例的回放日志的方法,通过在本数据段的尾部增加元数据集合,有助于缩短日志的回放时延。
结合第一方面,在第一方面的某些可能的实现方式中,该根据该元数据集合,对该N个日志中每个日志的元数据进行回放,包括:对该N个日志中每个日志的元数据进行回放;根据该回放得到的元数据,确定该第一数据段的位置信息;根据该第一数据段的位置信息,确定该第一数据段。
第二方面,提供了一种回放日志的装置,该装置包括:第一处理模块,用于确定待回放的第一数据段,该第一数据段包括N个日志,该N个日志中每个日志包括元数据和数据,该N个日志中每个日志的元数据和数据在该第一数据段上的位置相邻,N为正整数;第二处理模块,用于确定元数据集合,该元数据集合包括该N个日志中每个日志的元数据;第三处理模块,用于根据该元数据集合,对该N个日志中每个日志的元数据进行回放。
结合第二方面,在第二方面的某些可能的实现方式中,该第一数据段包括该元数据集合。
结合第二方面,在第二方面的某些可能的实现方式中,该第二处理模块具体用于:从第二数据段获取该元数据集合,该第二数据段与该第一数据段不同。
结合第二方面,在第二方面的某些可能的实现方式中,该装置还包括:第四处理模块,用于在确定该第一数据段的日志写满时,将该元数据集合写入该第一数据段。
结合第二方面,在第二方面的某些可能的实现方式中,该装置还包括:第五处理模块,用于在确定该第一数据段的日志写满时,将该元数据集合写入该第二数据段。
结合第二方面,在第二方面的某些可能的实现方式中,该元数据集合在该第一数据段的尾部。
结合第二方面,在第二方面的某些可能的实现方式中,该第三处理模块具体用于:对该N个日志中每个日志的元数据进行回放;根据该回放得到的元数据,确定该第一数据段的位置信息;根据该第一数据段的位置信息,确定该第一数据段。
第三方面,提供了一种回放日志的装置,该装置包括存储器和处理器,该存储器用于存储指令;该处理器用于调用所述存储器中的指令,以执行上述第一方面以及第一方面任一种可能的实现方式中所述的方法。
第四方面,提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机机构执行第一方面或第一方面任意一种可能的实现方式中的方法。
第五方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码被计算机运行时,使得所述计算机执行上述第一方面或第一方面任一种可能实现方式中的方法。
附图说明
图1是本申请实施例的一种数据段结构的示意图。
图2是本申请实施例的回放日志的方法的示意性流程图。
图3是本申请实施例的一种数据段结构的另一示意图。
图4是本申请实施例的一种数据段结构的再一示意图。
图5是本申请实施例的回放日志的方法的另一示意性流程图。
图6是本申请实施例的回放日志的装置的示意性框图。
图7是本申请实施例的回放日志的装置的另一示意性框图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
本申请实施例适用于所有非易失性存储器日志回放的场景,包括但并不限于存储***、终端设备等。
本申请实施例中的终端设备可以指用户设备、接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置。终端设备还可以是蜂窝电话、无绳电话、会话启动协议(Session InitiationProtocol,SIP)电话、无线本地环路(Wireless Local Loop,WLL)站、个人数字处理(Personal Digital Assistant,PDA)、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、车载设备、可穿戴设备,未来5G网络中的终端设备或者未来演进的公用陆地移动通信网络(Public Land Mobile Network,PLMN)中的终端设备等,本申请实施例对此并不限定。
图1是本申请实施例的一种数据段结构的示意图,如图1所示,在写日志过程中,数据和元数据由***一起下发,在进行日志回放时,对日志进行逐条回放。日志存储的格式为最前面数据段(Segment)头,依次存放日志(Log),应理解,每个日志包括日志的数据(LogData)和元数据(LogMeta)。
图2示出了根据本申请实施例的回放日志的方法100的示意性流程图,如图1所示,该方法100可以由处理器执行,该方法100包括:
S110,确定待回放的第一数据段,该第一数据段包括N个日志,该N个日志中每个日志包括元数据和数据,该N个日志中每个日志的元数据和数据在该第一数据段上的位置相邻,N为正整数;
应理解,该第一数据段可以为图1中的数据段。
还应理解,该每个日志的元数据和数据可以由写数据的存储***同时下发给处理器,该处理器将该元数据和数据写入该第一数据段的某一个日志,该元数据和数据的位置在该第一日志中的位置相邻。
S120,确定元数据集合,该元数据集合包括该N个日志中每个日志的元数据。
可选地,该第一数据段包括该元数据集合。
可选地,该确定元数据集合之前,该方法100还包括:
在确定该第一数据段的日志写满时,将该元数据集合写入该第一数据段。
具体而言,该第一数据段包括该元数据集合,当该处理器确定该第一数据段的日志已经写满时,将该元数据集合写入该第一数据段的预留位置,可以通过确定该元数据集合的预留位置,从而确定该预留位置上的该元数据集合。
可选地,该元数据集合在该第一数据段的尾部。
应理解,该元数据集合可以在第一数据段的尾部,也可以在第一数据段的其他任何位置,本申请并不限于此。
图3示出了根据本申请实施例的另一种数据段结构的示意图,如图3所示,在每个数据段结尾预留元数据集合(Meta Blocks)空间,该元数据集合用于存放本数据段所有的元数据,该元数据集合可以与最后一条日志一起下发非易失性存储器。
应理解,该元数据集合的大小可以根据数据段的大小、数据段头的大小、最大日志的大小以及日志元数据头的大小计算得出,还可以有其他得出,本申请并不限于此。
还应理解,图3所示的数据段结构示意图中的元数据集合只要是在快速读取的位置均可以,并不限于该数据段的尾部。
可选地,该确定元数据集合,包括:
从第二数据段获取该元数据集合,该第二数据段与该第一数据段不同。
可选地,确定元数据集合之前,该方法100还包括:
在确定该第一数据段的日志写满时,将该元数据集合写入该第二数据段。
具体而言,该第二数据段包括该元数据集合,当处理器确定该第一数据段已经写满时,可以将该第一数据段的元数据写入该第二数据段。
应理解,在将该元数据集合写入该第二数据段之前,可以首先建立第一数据段和第二数据段之间的索引关系,当第一数据段的日志写满时,可以将该第一数据段中N个日志的元数据写入对应的第二数据段。
还应理解,该元数据集合可以在该第二数据段的任意位置。
图4示出了根据本申请实施例的在一中数据段结构的示意图,如图4所示,***在初始化时预留M个数据段(Segment),该M个数据段用于存放元数据,在某一个数据段(除了该M个数据段外的其他数据段)写满时,下发本数据段的元数据集合至该M个数据段中的一个数据段,回放时读取对应的元数据集合信息,进行数据段的元数据信息还原。
例如,初始化时存在3个数据段用于写日志,分别为数据段1、数据段2和数据段3,还预留了1个数据段(数据段4)用于存放数据段1、数据段2和数据段3的所有的元数据,当数据段1、数据段2和数据段3中某一个数据段写满时,由***下发本数据段的元数据至数据段4,回放时读取数据段4对应的元数据信息,进行数据段的元数据信息还原。
应理解,图4所示的数据段结构示意图中的元数据集合只要是在快速读取的位置均可以,并不限于在单独的数据段中存放。
S130,根据该元数据集合,对该N个日志中每个日志的元数据进行重建。
具体而言,处理器在进行日志回放时,首先确定需要进行日志回放的第一数据段,该第一数据段包括N个日志,该N个日志中每个日志包括元数据和数据,该N个日志中每个日志的元数据和数据由***同时下发,N为正整数,根据该第一数据段,确定元数据集合,该元数据集合包括该N个日志中每个日志的元数据,例如,如图3所示,该第一数据段的元数据集合可以在该第一数据段的尾部;又例如,如图4所示,该第一数据段的元数据可以在另一个数据段中。该处理器可以根据该元数据集合,对该N个日志中每个日志的元数据进行重建。
可选地,该根据该元数据集合,对该N个日志中每个日志的元数据进行回放,包括:
对该N个日志中每个日志的元数据进行回放;
根据该回放得到的元数据,确定该第一数据段的位置信息;
根据该第一数据段的位置信息,确定该第一数据段。
具体而言,该元数据集合中的元数据包括该第一数据段的位置信息(还可能包括其他信息),对该N个日志中每个日志的元数据进行回放,可以获得该第一数据段中数据对应在存储盘中的位置信息,当用户需要获取该第一数据段的数据时,可以根据该第一数据段对应存储盘中的位置信息,获取相应的数据。
应理解,该第一数据段对应的存储盘中的位置信息可以是存储盘中某个管理单元的位置,该管理单元中存储有该第一数据段中的数据。
本申请实施例的回放日志的方法,在写日志不受影响的情况下,通过确定元数据集合,有助于缩短日志的回放时延。
图5示出了根据本申请实施例的回放日志的方法200的示意性流程图,如图5所示,该方法200可以由处理器执行,该方法200包括:
S210,故障恢复、重启时或者节点升主时启动日志回放;
S220,获取所有的待回放数据段标识(SegmentID)集合;
S230,从该数据段标识集合中获取未回放的最小的数据段标识(例如,未回放的最小的数据段标识对应为Segment1,即数据段1);
S240,判断数据段1释放存在,若不存在则回放结束;若存在,则进行数据段1的日志回放;
S250,判断数据段1是否已满(已经写入元数据集合),若满则进行S260读取该数据段1的元数据集合进行元数据回放,若不满则进行S280逐条回放日志。
应理解,对于图3所示的数据段结构,可以判断该数据段1是否写入了元数据集合,对于图4所示的数据段结构,可以判断第二数据段(与数据段1不同)是否写入了元数据集合。
S260,读取该数据段1预留的元数据集合位置获取元数据;
S270,重建该数据段1的元数据信息;
S280,逐条读取日志,获取元数据进行元数据重建;
S290,日志回放结束。
本申请实施例的回放日志的方法,在写日志时延不受影响的情况下,在回放日志时通过确定元数据集合,有助于缩短日志回放时延。
上面结合图1至图5,详细得描述了根据本申请实施例的回放日志的方法,下面结合图6和图7,详细描述根据本申请实施例的回放日志的装置。
图6示出了根据本申请实施例的回放日志的装置300的示意性框图,如图6所示,该装置300包括:
第一处理模块310,用于确定待回放的第一数据段,该第一数据段包括N个日志,该N个日志中每个日志包括元数据和数据,该N个日志中每个日志的元数据和数据在该第一数据段上的位置相邻,N为正整数;
第二处理模块320,用于确定元数据集合,该元数据集合包括该N个日志中每个日志的元数据;
第三处理模块330,用于根据该元数据集合,对该N个日志中每个日志的元数据进行回放。
可选地,该第一数据段包括该元数据集合。
可选地,该第二处理模块320具体用于:
从第二数据段获取该元数据集合,该第二数据段与该第一数据段不同。
可选地,该装置300还包括:
第四处理模块,用于在确定该第一数据段的日志写满时,将该元数据集合写入该第一数据段。
可选地,该装置300还包括:
第五处理模块,用于在确定该第一数据段的日志写满时,将该元数据集合写入该第二数据段。
可选地,该元数据集合在该第一数据段的尾部。
可选地,该第三处理模块330具体用于:
对该N个日志中每个日志的元数据进行回放;
根据该回放得到的元数据,确定该第一数据段的位置信息;
根据该第一数据段的位置信息,确定该第一数据段。
本申请实施例的回放日志的装置,在写日志不受影响的情况下,通过确定元数据集合,有助于缩短日志的回放时延。
图7示出了根据本申请实施例的回放日志的装置400的示意性框图,该装置400包括:
存储器410,用于存储指令;
处理器420,用于调用该存储器410中的指令,以进行本申请实施例的相应方法中的操作。
本申请实施例还提供了一种计算机程序产品,应用于回放日志的装置中,所述计算机程序产品包括一系列指令,当所述指令被运行时,以使得所述装置可以执行对应于上述方法的装置的操作。
在本申请实施例中,应注意,本申请实施例上述的方法实施例可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
可以理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data RateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(DirectRambus RAM,DR RAM)。应注意,本文描述的***和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的一个或多个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
另外,本文中术语“***”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应理解,在本申请实施例中,“与A相应的B”表示B与A相关联,根据A可以确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品可以包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁盘)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (8)
1.一种回放日志的方法,其特征在于,包括:
确定待回放的第一数据段,所述第一数据段包括N个日志,所述N个日志中每个日志包括元数据和数据,所述N个日志中每个日志的元数据和数据在所述第一数据段上的位置相邻,N为正整数;
从所述第一数据段中确定元数据集合,所述元数据集合包括所述N个日志中每个日志的元数据,所述元数据集合是在确定所述第一数据段的日志写满时,被写入所述第一数据段的预留位置的,或者,从第二数据段中确定所述元数据集合,所述元数据集合是在确定所述第一数据段的日志写满时,被写入所述第二数据段的,所述第二数据段与所述第一数据段不同;
根据所述元数据集合,对所述N个日志中每个日志的元数据进行回放。
2.根据权利要求1所述的方法,其特征在于,所述预留位置在所述第一数据段的尾部。
3.根据权利要求1或2所述的方法,其特征在于,所述根据所述元数据集合,对所述N个日志中每个日志的元数据进行回放,包括:
对所述N个日志中每个日志的元数据进行回放;
根据所述回放得到的元数据,确定所述第一数据段的位置信息;
根据所述第一数据段的位置信息,确定所述第一数据段。
4.一种回放日志的装置,其特征在于,包括:
第一处理模块,用于确定待回放的第一数据段,所述第一数据段包括N个日志,所述N个日志中每个日志包括元数据和数据,所述N个日志中每个日志的元数据和数据在所述第一数据段上的位置相邻,N为正整数;
第二处理模块,用于从所述第一数据段中确定元数据集合,所述元数据集合包括所述N个日志中每个日志的元数据,所述元数据集合是第四处理模块在确定所述第一数据段的日志写满时,被写入所述第一数据段的预留位置的,或者,从第二数据段中确定所述元数据集合,所述元数据集合是第五处理模块在确定所述第一数据段的日志写满时,被写入所述第二数据段的,所述第二数据段与所述第一数据段不同;
第三处理模块,用于根据所述元数据集合,对所述N个日志中每个日志的元数据进行回放。
5.根据权利要求4所述的装置,其特征在于,所述预留位置在所述第一数据段的尾部。
6.根据权利要求4或5所述的装置,其特征在于,所述第三处理模块具体用于:
对所述N个日志中每个日志的元数据进行回放;
根据所述回放得到的元数据,确定所述第一数据段的位置信息;
根据所述第一数据段的位置信息,确定所述第一数据段。
7.一种回放日志的装置,其特征在于,包括:
存储器,用于存储指令;
处理器,用于调用所述存储器中的指令,执行上述权利要求1-3中任一项所述的方法。
8.一种计算机可读存储介质,其特征在于,包括指令,当其在计算机上运行时,使得计算机执行上述权利要求1-3中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711180655.1A CN109828862B (zh) | 2017-11-23 | 2017-11-23 | 一种回放日志的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711180655.1A CN109828862B (zh) | 2017-11-23 | 2017-11-23 | 一种回放日志的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109828862A CN109828862A (zh) | 2019-05-31 |
CN109828862B true CN109828862B (zh) | 2023-08-22 |
Family
ID=66858438
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711180655.1A Active CN109828862B (zh) | 2017-11-23 | 2017-11-23 | 一种回放日志的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109828862B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102375853A (zh) * | 2010-08-24 | 2012-03-14 | ***通信集团公司 | 分布式数据库***、在其中建立索引的方法和查询方法 |
CN103077222A (zh) * | 2012-12-31 | 2013-05-01 | 中国科学院计算技术研究所 | 机群文件***分布式元数据一致性保证方法及*** |
CN103516549A (zh) * | 2013-09-27 | 2014-01-15 | 浪潮电子信息产业股份有限公司 | 一种基于共享对象存储的文件***元数据日志机制 |
CN103902479A (zh) * | 2014-03-27 | 2014-07-02 | 浪潮电子信息产业股份有限公司 | 一种基于元数据日志的元数据缓存快速重建机制 |
CN104050268A (zh) * | 2014-06-23 | 2014-09-17 | 西北工业大学 | 一种日志空间在线可调整的连续数据保护和恢复方法 |
CN104301360A (zh) * | 2013-07-19 | 2015-01-21 | 阿里巴巴集团控股有限公司 | 一种日志数据记录的方法、日志服务器及*** |
CN105138284A (zh) * | 2015-08-11 | 2015-12-09 | 上海交通大学 | 虚拟机磁盘镜像同步操作优化的***及方法 |
CN105574104A (zh) * | 2015-12-11 | 2016-05-11 | 上海爱数信息技术股份有限公司 | 一种基于ObjectStore的LogStructure存储***及其数据写入方法 |
CN105956090A (zh) * | 2016-04-27 | 2016-09-21 | 中国科学技术大学 | 一种基于i/o自适应的文件***日志模式 |
CN106294866A (zh) * | 2016-08-23 | 2017-01-04 | 北京奇虎科技有限公司 | 一种日志处理方法和装置 |
-
2017
- 2017-11-23 CN CN201711180655.1A patent/CN109828862B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102375853A (zh) * | 2010-08-24 | 2012-03-14 | ***通信集团公司 | 分布式数据库***、在其中建立索引的方法和查询方法 |
CN103077222A (zh) * | 2012-12-31 | 2013-05-01 | 中国科学院计算技术研究所 | 机群文件***分布式元数据一致性保证方法及*** |
CN104301360A (zh) * | 2013-07-19 | 2015-01-21 | 阿里巴巴集团控股有限公司 | 一种日志数据记录的方法、日志服务器及*** |
CN103516549A (zh) * | 2013-09-27 | 2014-01-15 | 浪潮电子信息产业股份有限公司 | 一种基于共享对象存储的文件***元数据日志机制 |
CN103902479A (zh) * | 2014-03-27 | 2014-07-02 | 浪潮电子信息产业股份有限公司 | 一种基于元数据日志的元数据缓存快速重建机制 |
CN104050268A (zh) * | 2014-06-23 | 2014-09-17 | 西北工业大学 | 一种日志空间在线可调整的连续数据保护和恢复方法 |
CN105138284A (zh) * | 2015-08-11 | 2015-12-09 | 上海交通大学 | 虚拟机磁盘镜像同步操作优化的***及方法 |
CN105574104A (zh) * | 2015-12-11 | 2016-05-11 | 上海爱数信息技术股份有限公司 | 一种基于ObjectStore的LogStructure存储***及其数据写入方法 |
CN105956090A (zh) * | 2016-04-27 | 2016-09-21 | 中国科学技术大学 | 一种基于i/o自适应的文件***日志模式 |
CN106294866A (zh) * | 2016-08-23 | 2017-01-04 | 北京奇虎科技有限公司 | 一种日志处理方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109828862A (zh) | 2019-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108563532B (zh) | 数据处理方法及相关装置 | |
US8560778B2 (en) | Accessing data blocks with pre-fetch information | |
CN106951521B (zh) | 日志文件的读写方法、装置及*** | |
CN112954244B (zh) | 监控录像的存储实现方法、装置、设备及存储介质 | |
CN110837502B (zh) | 一种块链式账本中的数据存储方法、装置及设备 | |
US11050550B2 (en) | Methods and systems for reading data based on plurality of blockchain networks | |
CN110941514B (zh) | 一种数据备份方法、恢复方法、计算机设备和存储介质 | |
CN103942126B (zh) | 电子设备及其数据备份方法 | |
CN101763433B (zh) | 一种数据存储***及方法 | |
CN112162773B (zh) | 差分升级方法及装置、存储介质、终端 | |
CN112182010B (zh) | 脏页刷新方法和装置、存储介质和电子设备 | |
CN113515531A (zh) | 数据访问方法、装置、客户端及存储介质 | |
JP2014526098A (ja) | フォントファイルをダウンロードする方法およびシステム | |
CN110597461B (zh) | 块链式账本中的数据存储方法、装置及设备 | |
CN112988458B (zh) | 数据备份方法、装置、电子设备及存储介质 | |
CN111803917A (zh) | 资源的处理方法和装置 | |
CN110377276B (zh) | 源代码文件管理方法及设备 | |
CN113535226B (zh) | 应用下载方法、终端、服务器、计算机设备以及存储介质 | |
CN109828862B (zh) | 一种回放日志的方法和装置 | |
CN108491315A (zh) | 页面驻留时长的统计方法、装置及计算机可读存储介质 | |
CN106293542B (zh) | 一种文件解压缩的方法及装置 | |
CN110187837B (zh) | 一种文件存取方法、装置及文件*** | |
CN110597462A (zh) | 块链式账本中的数据存储方法、***、装置及设备 | |
US11750211B2 (en) | Encoding method and apparatus, storage medium, and computer device | |
CN109947978B (zh) | 一种音频存储、播放方法及装置 |
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 |