CN105989140A - 一种数据块处理方法和设备 - Google Patents

一种数据块处理方法和设备 Download PDF

Info

Publication number
CN105989140A
CN105989140A CN201510090139.4A CN201510090139A CN105989140A CN 105989140 A CN105989140 A CN 105989140A CN 201510090139 A CN201510090139 A CN 201510090139A CN 105989140 A CN105989140 A CN 105989140A
Authority
CN
China
Prior art keywords
data block
tablet
block information
daily record
tablet 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.)
Granted
Application number
CN201510090139.4A
Other languages
English (en)
Other versions
CN105989140B (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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201510090139.4A priority Critical patent/CN105989140B/zh
Priority to JP2017544648A priority patent/JP6633642B2/ja
Priority to US15/553,050 priority patent/US20180032567A1/en
Priority to EP16754748.8A priority patent/EP3264291A4/en
Priority to PCT/CN2016/073594 priority patent/WO2016134639A1/zh
Publication of CN105989140A publication Critical patent/CN105989140A/zh
Application granted granted Critical
Publication of CN105989140B publication Critical patent/CN105989140B/zh
Priority to JP2019224177A priority patent/JP6996812B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/327Alarm or error message display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2358Change logging, detection, and notification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/80Database-specific techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请公开了一种数据块处理方法和设备,该方法包括:当控制服务器接收到存储服务器发送的携带有tablet数据块信息的日志时,获取所述日志中携带的tablet数据块信息;向合并服务器查询root table中的tablet数据块信息;判断所述日志中携带的tablet数据块信息与所述root table中的tablet数据块信息是否一致;将所述日志中携带的tablet数据块信息和所述root table中的tablet数据块信息进行汇总存储,若判断结果不一致,则报警。本申请实施例中,能够持续跟踪tablet数据块的变化状态,高效、精确的校验tablet数据块。

Description

一种数据块处理方法和设备
技术领域
本申请涉及通信技术领域,特别涉及一种数据块处理方法,以及一种数据块的处理设备。
背景技术
随着云计算逐渐变成现实,传统的数据库已经越来越难以支撑云计算下的大数据,在此背景下,分布式数据库得到了迅速发展。作为云计算系统的重要组成部分,分布式数据库越来越成熟,未来将广泛应用于各个行业中,为它们提供低成本、易扩展、高可用的数据存储方案。oceanbase作为当前主流的一种分布式数据库,与其它分布式数据库类似,oceanbase存储引擎的实现方式也是将成千上万台的普通pc服务器的磁盘联合起来进行管理,每台pc服务器中的磁盘被存储引擎划分成了一块块的存储块用于存储数据,即逻辑数据块tablet数据块。在oceanbase数据库中,一个tablet数据块只能属于oceanbase数据库中的某一张表,数据库中的一张表根据数据量的大小可以有多个tablet数据块,即oceanbase数据库中tablet数据块与表的关系是多对一的关系。作为分布式数据库存储引擎的基本存储单元,tablet数据块在pc server上的数量非常巨大,为了保证分布式数据库的高可用性,tablet数据块会有多个副本,即同一份数据会存在于多个tablet数据块上,并且随着时间的推移,数据的插入、删除、更新,以及分布式数据库系统的负载均衡的需要,tablet数据块会有分裂、迁移、合并等等十分复杂的操作,这些操作一旦失败就会带来副本的丢失或者副本间数据的不一致现象。由于大型分布式数据库系统固有的高复杂性,如需要处理数据的一致性、系统的高可用性、分区的容错性等等巨大难题,导致很难控制tablet数据块分布合理性和正确性。
因此,实时的跟踪tablet数据块的变化状态,可以精确的掌握tablet数据块在各个pc server上磁盘上的详细分布情况,从而便于我们分析tablet数据块在各个pc server上磁盘中的分布的合理性,对于tablet数据块集中分布某些pc server上或者pc sever上的特定磁盘上可以提前进行预警,从而为用户带来额外的业务价值;可以精确的掌握每张表的tablet数据块的分布位置,从而得到每张表在其生存期内tablet数据块的变化状态,为用户提供额外的业务价值;可以对分布式数据库的整个数据存储进行全方面的监控,精确定位数据段的存储位置,从而为用户带来额外的业务价值,除上述之外,实时的跟踪分布式数据库中tablet数据块的变化状态还能带来其他很多的好处。对实时得到的分布式数据库中tablet数据块进行相关校验,可以对tablet数据块中数据不一致的情况及时的进行报警,为后续的自动化或者人肉处理提供依据,防止程序bug导致的tablet数据块的错乱或丢失,将程序bug上报给分布式数据库的开发者,由他们解决该bug,从而进一步提高分布式数据库的稳定性和高可用性。
当前没有现成的方法来跟踪oceanbase数据库中的tablet数据块,一般是在出现tablet数据块丢失或者tablet数据块不一致时人工到oceanbase数据库中查找root table获取到tablet数据块的数据信息来进行跟踪,现有技术由于只是在出现tablet数据块丢失或者tablet数据块不一致时通过人工从oceanbase roottable系统表中获取到各个table的tablet数据块信息,而oceanbase root table中存储的各个table的tablet数据块信息只是当前最新的tablet数据块信息,即现有方式只能获取到tablet数据块的当前状态数据,无法持续的跟踪tablet数据块随时间的变换状态。
现有的校验方法是通过人工遍历oceanbase的存储服务器日志获取到tablet数据块相关日志,整合这些日志的信息后与oceanbase root table系统表中对应table的tablet数据块的相关数据进行对比来校验的,通过人工遍历oceanbase的存储服务器的日志,其缺点是效率非常低下;另外为了防止磁盘空间被日志文件大量占用,oceanbase会定期清理一定时间之前的日志,由于日志被清除,导致通过人工遍历oceanbase的存储服务器日志获取到的tablet数据块的日志数据不完整,从而可能导致校验结果不准确的情况。
因此,现有技术一方面无法持续的跟踪tablet数据块随时间的变换状态,另一方面现有技术的校验具有效率非常低下、校验结果不准确的缺点。
发明内容
本申请实施例提供一种数据块处理方法和设备,可以实时的跟踪tablet数据块的变化状态,高效准确的校验tablet数据块信息。
本申请实施例提供一种数据块的处理方法,应用于包括存储服务器、控制服务器和合并服务器的系统中,所述方法包括以下步骤:
当所述控制服务器接收到所述存储服务器发送的携带有tablet数据块信息的日志时,所述控制服务器获取所述日志中携带的tablet数据块信息;
所述控制服务器根据所述日志中携带的tablet数据块信息,向所述合并服务器查询相对应的根表root table中的tablet数据块信息;
所述控制服务器判断所述日志中携带的tablet数据块信息与所述root table中的tablet数据块信息是否一致;
所述控制服务器将所述日志中携带的tablet数据块信息和所述root table中的tablet数据块信息进行汇总存储,并在所述判断结果为不一致时,进行报警。
优选地,所述控制服务器根据所述日志中携带的tablet数据块信息,向所述合并服务器查询相对应的root table中的tablet数据块信息,具体包括:
所述控制服务器确定所述日志中携带的tablet数据块信息所对应的表名;
所述控制服务器向所述合并服务器查询所述表名所对应的root table中的tablet数据块信息。
优选地,所述控制服务器判断所述日志中携带的tablet数据块信息与所述root table中的tablet数据块信息是否一致,具体包括:
所述控制服务器校验所述日志中携带的tablet数据块信息与所述root table中的tablet数据块信息所对应的以下一项或多项信息是否一致:
表名、边界、位置分布、数据校验码、索引等信息、创建时间、大小;
当所述校验结果中的任一项不一致时,所述控制服务器判断所述日志中携带的tablet数据块信息与所述root table中的tablet数据块信息不一致。
优选地,其特征在于,所述控制服务器将所述日志中携带的tablet数据块信息和所述root table中的tablet数据块信息进行汇总存储,具体包括:
所述控制服务器将所述日志中携带的tablet数据块信息和所述root table中的tablet数据块信息进行汇总;
所述控制服务器以tablet数据块对应的表名作为key值,将汇总后的tablet数据块信息持久化保存到磁盘上。
本申请实施例提供一种数据块处理方法,应用于包括存储服务器、控制服务器和合并服务器的系统中,所述方法包括以下步骤:
所述存储服务器轮询自身的日志;
当所述存储服务器确定所述日志出现新的数据信息时,识别所述新的数据信息是否为tablet数据块信息;
如果是,所述存储服务器将携带有所述tablet数据块信息的日志发送给所述控制服务器,以使所述控制服务器根据所述日志中携带的tablet数据块信息与所述合并服务器的root table中的tablet数据块信息进行一致性识别和汇总存储。
本申请实施例提供一种控制服务器,应用于包括存储服务器、控制服务器和合并服务器的系统中,所述控制服务器包括:
接收模块,用于接收所述存储服务器发送的携带有tablet数据块信息的日志;
获取模块,用于在所述接收模块接收到所述存储服务器发送的携带有tablet数据块信息的日志时,获取所述日志中携带的tablet数据块信息;
查询模块,用于根据所述获取模块所获取到的所述日志中携带的tablet数据块信息,向所述合并服务器查询相对应的root table中的tablet数据块信息;
判断模块,用于判断所述获取模块所获取到的所述日志中携带的tablet数据块信息与所述查询模块所查询到的所述root table中的tablet数据块信息是否一致;
处理模块,用于所述获取模块所获取到的所述日志中携带的tablet数据块信息与所述查询模块所查询到的所述root table中的tablet数据块信息进行汇总存储,并在所述判断模块的判断结果为不一致时,进行报警。
优选地,所述查询模块,具体用于:
确定所述获取模块所获取到的所述日志中携带的tablet数据块信息所对应的表名;
向所述合并服务器查询所述表名所对应的root table中的tablet数据块信息。
优选地,所述判断模块,具体包括:
校验所述获取模块所获取到的所述日志中携带的tablet数据块信息与所述查询模块所查询到的所述root table中的tablet数据块信息所对应的以下一项或多项信息是否一致:
表名、边界、位置分布、数据校验码、索引等信息、创建时间、大小;
当所述校验结果中的任一项不一致时,判断所述获取模块所获取到的所述日志中携带的tablet数据块信息与所述查询模块所查询到的所述root table中的tablet数据块信息不一致。
优选地,所述处理模块,具体包括:
将所述获取模块所获取到的所述日志中携带的tablet数据块信息与所述查询模块所查询到的所述root table中的tablet数据块信息进行汇总;
以tablet数据块对应的表名作为key值,将汇总后的tablet数据块信息持久化保存到磁盘上。
本申请实施例提供一种存储服务器,应用于包括存储服务器、控制服务器和合并服务器的系统中,所述存储服务器包括:
轮询模块,用于轮询所述存储服务器自身的日志;
识别模块,用于当所述轮训模块确定所述日志出现新的数据信息时,识别所述新的数据信息是否为tablet数据块信息;
发送模块,用于在所述识别模块的识别结果为是时,将携带有所述tablet数据块信息的日志发送给所述控制服务器,以使所述控制服务器根据所述日志中携带的tablet数据块信息与所述合并服务器的root table中的tablet数据块信息进行一致性识别和汇总存储。
与现有技术相比,本申请至少具有以下优点:本申请可以实时的获取到各个table的tablet数据块随时间的变化状态数据,将获取到的数据持久化存储到磁盘中,依据持久化存储到磁盘中的数据可以描绘出各个table在生存期时间范围内其tablet数据块的状态变化图,达到持续跟踪tablet数据块状态变化的效果,本申请依据得到的tablet数据块相关信息可以实时的对数据库中各个table的tablet数据块进行相关校验,可以实时、高效、准确的预警程序bug产生的tablet数据块的错乱与丢失,从而可以解决现有方案效率非常低下、校验结果不准确的缺点。
附图说明
为了更加清楚地说明本申请实施例的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据本申请实施例的这些附图获得其他的附图。
图1为本申请具体实施例中的数据库的结构示意图;
图2为本申请提出的一种数据块处理方法的流程示意图;
图3为本申请提出的一种数据块处理方法的流程示意图;
图4a为本申请具体实施例中的存储服务器日志解析后台程序流程示意图;
图4b为本申请具体实施例中的控制服务器工作流程示意图;
图5为本申请提出的一种数据库数据块的处理设备的结构示意图;
图6为本申请提出的一种数据库数据块的处理设备的结构示意图。
具体实施方式
为了更加清楚的说明现有技术中所存在的问题,本申请实施例给出了一种数据库的结构图,该数据库例如可以是Oceanbase。具体如图1所示,在具体的应用场景中,针对数据库中的每张表,该数据库使用固定的三层结构来存储其逻辑数据块(tablet数据块)位置信息等元数据,这三层table一起构成系统全部的root table(根表):
A:最右侧为user table(用户表),不属于root table。每个user table按照配置大小在每日合并中分裂成多个tablet,每个tablet存储部分user table的数据,所有tablet分片构成整个user table的所有数据;
B:第三层为user table的元数据表,称为user meta table(用户元数据表)。每个user table对应一个user meta table,user meta table中的一行数据对应于usertable中的一个tablet,该行数据存储了user table的tablet边界值、位置分布、校验值、索引等信息等。该user meta table可根据配置大小在每日合并中分裂为多个tablet,每个tablet存储部分的user meta table数据;
C:第二层为user meta table的元数据表,称为user root table(用户根表)。每一行对应第三层中的一个tablet,存储user meta table的tablet边界值、位置分布、校验值、索引信息等。user root table只有一个tablet,且该tablet不允许分裂;
D:第一层是所有user root table的入口,称为first root table(第一根表)。每一行对应第二层中一个user root table,存储user root table所属的tablet边界、位置分布、校验值、索引信息等等。First root table只有一个tablet,且该tablet不允许分裂。
oceanbase数据库中tablet数据块会有多个副本,即同一份数据会存在于多个tablet数据块上,并且随着时间的推移,数据的插入、删除、更新,以及分布式数据库系统的负载均衡的需要,tablet数据块会有分裂、迁移、合并等等十分复杂的操作,这些操作一旦失败就会带来副本的丢失或者副本间数据的不一致现象。因此,实时的跟踪tablet数据块的变化状态,可以达到持续跟踪tablet数据块状态变化的效果,依据得到的tablet数据块相关信息可以实时的对oceanbase中各个table的tablet数据块进行相关校验,可以实时、高效、准确的预警程序bug产生的tablet数据块的错乱与丢失。
但是,现有技术一方面无法持续的跟踪tablet数据块随时间的变换状态,另一方面现有技术的校验具有效率非常低下、校验结果不准确。
为克服现有技术中的缺陷,本申请提出了以下几种具体实施例:
实施例一
为克服现有技术无法持续的跟踪tablet数据块随时间的变换状态,以及校验效率低下、校验结果不准确的缺点。本申请提出了一种数据块处理方法,如图2所示,为本申请提出的一种数据块处理方法的流程示意图,应用于包括存储服务器、控制服务器和合并服务器的系统中,所述方法包括以下步骤:
步骤S201,当所述控制服务器接收到所述存储服务器发送的携带有逻辑数据块tablet数据块信息的日志时,所述控制服务器获取所述日志中携带的tablet数据块信息。
在本申请优选的实施例中,该步骤具体包括:所述控制服务器接收到来自存储服务器上报的携带有tablet数据块信息的日志,解析所述日志,提取出所述日志对应的tablet数据块信息。
所述tablet数据块信息包括但不限于以下信息中的一种或多种:tablet数据块对应的表名、tablet数据块对应的边界、tablet数据块的位置分布、tablet数据块的数据校验码、tablet数据块的索引等信息、tablet数据块的创建时间、tablet数据块的大小。
步骤S202,所述控制服务器根据所述日志中携带的tablet数据块信息,向所述合并服务器查询相对应的根表root table中的tablet数据块信息。
在具体的应用场景中,该步骤的处理流程具体包括:
所述控制服务器确定所述日志中携带的tablet数据块信息所对应的表名;所述控制服务器向所述合并服务器查询所述表名所对应的root table中的tablet数据块信息。
步骤S203,所述控制服务器判断所述日志中携带的tablet数据块信息与所述root table中的tablet数据块信息是否一致;
在具体的应用场景中,该步骤的处理流程具体包括:
所述控制服务器校验所述日志中携带的tablet数据块信息与所述root table中的tablet数据块信息所对应的以下一项或多项信息是否一致:表名、边界、位置分布、数据校验码、索引等信息、创建时间、大小。
当所述校验结果中的任一项不一致时,所述控制服务器判断所述日志中携带的tablet数据块信息与所述root table中的tablet数据块信息不一致。
反之,当所述校验结果中的全部信息均一致时,所述控制服务器判断所述日志中携带的tablet数据块信息与所述root table中的tablet数据块信息一致。
在本申请所提出的实施例中,无论判断结果为何种情况,均需要执行步骤S204,并且,在判断结果为不一致时,还需要执行步骤S205。
步骤S204,所述控制服务器将所述日志中携带的tablet数据块信息和所述root table中的tablet数据块信息进行汇总存储。
在本申请具体实施例中,该步骤具体包括:所述控制服务器将所述日志中携带的tablet数据块信息和所述root table中的tablet数据块信息进行汇总;
所述控制服务器以tablet数据块对应的表名作为key值,将汇总后的tablet数据块信息持久化保存到磁盘上;
步骤S205,所述控制服务器进行报警。
通过报警进行数据块信息不一致的提醒,以便及时进行处理。
综上所述,与现有技术相比,本申请在每次tablet数据块的状态发生变化时,都将获取到tablet数据块信息与查询得到tablet数据块信息汇合并持久化存储到磁盘中,从而能持续跟踪tablet数据块状态变化;本申请实时的将得到的tablet数据块信息和root table中的tablet数据块信息进行多维度地校验,并在校验结果不一致时进行了及时的预警,有利于在tablet数据块发生错乱与丢失时,进行及时的修正,校验效率高,校验结果准确。
实施例二
上述说明为本申请在控制服务器侧的实现流程,相应的,本申请还提出了上述技术方案在存储服务器侧的实现流程,如图3所示,为本申请提出的一种数据块处理方法的流程示意图,所述方法应用于包括存储服务器、控制服务器和合并服务器的系统中,所述方法包括以下步骤:
步骤S301,所述存储服务器轮询自身的日志。
在本申请具体的实施例中,该步骤具体为:当存储服务器上发生tablet数据块的分裂或者合并,会产生一条日志数据到存储服务器本地的日志文件中,存储服务器不断地轮询自身的日志,从而进一步确定所述日志是否出现新的数据信息。
步骤S302,当所述存储服务器确定所述日志出现新的数据信息时,识别所述新的数据信息是否为tablet数据块信息。
在本申请具体的实施例中,该步骤具体为:当存储服务器日志文件有新数据信息产生时,获取到新产生的日志数据信息,对新产生的日志数据信息进行解析,识别所述新的数据信息是否为tablet数据块信息。
如果是,执行步骤S403;如果不是,则返回继续执行步骤S401。
步骤S303,所述存储服务器将携带有所述tablet数据块信息的日志发送给所述控制服务器。
通过本步骤的处理,可以使所述控制服务器根据所述日志中携带的tablet数据块信息与所述合并服务器的root table中的tablet数据块信息进行一致性识别和汇总存储;从而方便后续查看oceanbase数据库下某一个表在其生存期内的tablet数据块变化状态;方便后续自动化的处理或者人肉处理。
在本申请具体的实施例中,该步骤具体为:当新产生的日志数据中含有tablet数据块日志,将所述tablet数据块日志上报给控制服务器,之后继续读取存储服务器产生的日志数据;
当无新日志产生或者产生的日志不是tablet数据块日志,则返回继续读取存储服务器产生的日志数据。
在具体的应用场景中,oceanbase的tablet日志按照oceanbase自定的日志协议格式进行封装,该格式包含的信息有tablet数据块日志产生的时间,该tablet数据块对应的表名,该tablet数据块的边界,该tablet数据块的校验码,该tablet数据块的位置分布等等信息。oceanbase之所以选择日志的方式来记录tablet数据块的信息,是因为记录到磁盘的日志具有非常高的可靠性,正如传统数据库以redo日志和undo日志来实现数据的存储一样,依靠的局势日志的高可靠性。当oceanbase数据库中tablet数据块的分裂或者合并动作结束时oceanbase数据库均会在tablet数据块所在的存储服务器上产生一条tablet日志,该日志用于记录对应tablet数据块分裂或者合并时的详细数据,包括tablet的边界、位置分布、校验值、索引等信息。有如下情况会产生tablet日志:
tablet复制:当某个tablet的副本数小于阀值时,oceanbase数据库会选择一台包含该tablet副本的存储服务器作为迁移源,另一台符合要求的存储服务器作为迁移目的地,当将该tablet副本从迁移源迁移到目的地时,必然会在目的地产生新的tablet副本,此时需要将新产生的tablet详细信息以tablet日志的方法详细记录到目的地的存储服务器日志中。
负载均衡:如果某台存储服务器包含的某个表的tablet个数超过某个阈值,则以这台存储服务器为迁移源,另一台符合要求的存储服务器为迁移目的地,将迁移源下该表的一些tablet迁移至目的地,此时也必然会在目的地产生新的tablet副本,也需要将新产生的tablet详细信息以tablet日志的方法详细记录到目的地的存储服务器日志中。
tablet分裂:每日合并时,如果某张表下属的某个tablet的空间无法装下新插入或者修改的数据,则需要将该tablet分裂为多个tablet,通过数据量来确定具体分裂为几个tablet,此时老tablet发生改变,同时产生了新tablet,需要将tablet详细信息以tablet日志的方法详细记录到目的地的存储服务器日志中。
tablet合并:每日合并时,如果某张表下属的某个tablet上的数据全部被删除,则为了最大限度的高效使用磁盘空间,该tablet会被oceanbase系统回收,此时该tablet将不再属于该表了,需要将tablet详细信息以tablet日志的方法详细记录到目的地的存储服务器日志中。
综上所述,与现有技术相比,本申请能够实时的获取携带有tablet数据块信息的日志,以使所述控制服务器根据所述日志中携带的tablet数据块信息与所述合并服务器的root table中的tablet数据块信息进行一致性识别和汇总存储,从而实现对tablet数据块状态的跟踪和准确校验。
实施例三
为了进一步阐述本申请的技术方案,现结合具体的应用场景,对本申请的技术方案进行说明,本实施例的具体的应用场景为在包括存储服务器、控制服务器和合并服务器的系统中,本实施例在存储服务器上部署一个存储服务器日志解析后台程序,如图4 a所示,为本申请存储服务器日志解析后台程序流程示意图;所述存储服务器日志解析后台程序流程如下:
步骤S401,日志解析后台程序启动后不断的轮询存储服务器产生的日志文件,读取日志数据;
步骤S402,所述日志解析后台程序判断存储服务器日志文件是否有新的日志数据产生;
如果是,执行步骤S403;如果不是,则返回继续执行步骤S401;
步骤S403,所述日志解析后台程序解析获取到新的日志数据,对新的日志数据进行解析;
步骤S404,所述日志解析后台程序判断所述新的日志数据中是否含有携带tablet数据块信息的日志;
步骤S405,所述日志解析后台程序将所述携带tablet数据块信息的日志上报给控制服务器,上报结束后所述日志解析后台程序继续返回读取存储服务器产生的日志数据。
进一步,所述日志解析后台程序将所述携带tablet数据块信息的日志上报给控制服务器后,所述控制服务器对所述日志进行处理,如图4b所示,所述控制服务器的处理流程如下:
步骤S406,控制服务器持续监听来自存储服务器上报的携带有tablet数据块信息的日志,所述tablet数据块信息包括但不限于以下信息中的一种或多种:tablet数据块对应的表名、tablet数据块对应的边界、tablet数据块的位置分布、tablet数据块的数据校验码、tablet数据块的索引等信息、tablet数据块的创建时间、tablet数据块的大小;
步骤S407,所述控制服务器判断是否有存储服务器上报的携带有tablet数据块信息的日志;
如果是,执行步骤S408;如果不是,则返回继续执行步骤S406;
步骤S408,所述控制服务器接收并解析所述存储服务器上报的携带有tablet数据块信息的日志,提取出该日志对应的tablet数据块信息,所述tablet数据块信息包括但不限于以下信息中的一种或多种:tablet数据块对应的表名、tablet数据块对应的边界、tablet数据块的位置分布、tablet数据块的数据校验码、tablet数据块的索引等信息、tablet数据块的创建时间、tablet数据块的大小;
步骤S409,所述控制服务器根据所述tablet数据块对应的表名通过在合并服务器上查询出root table的tablet数据块信息;其中,每接收到一条所述日志就查询一次root table中的tablet数据块信息;所述通过合并服务器到root table中查询tablet数据块信息,具体为:通过负载均衡的方式连接到该mergeserver服务器执行相关sql语句(结构化查询语言)获取root table中tablet数据块信息;
步骤S410,所述控制服务器校验所述日志中携带的tablet数据块与所述root table中的tablet数据块所对应的以下一项或多项信息是否一致:表名、边界、位置分布、数据校验码、索引等信息、创建时间、大小。
当所述校验结果中的任一项不一致时,所述控制服务器判断所述日志中携带的tablet数据块信息与所述root table中的tablet数据块信息不一致。
反之,当所述校验结果中的全部信息均一致时,所述控制服务器判断所述日志中携带的tablet数据块信息与所述root table中的tablet数据块信息一致。
在本申请所提出的实施例中,无论判断结果为何种情况,均需要执行步骤S413,并且,在判断结果为不一致时,还需要执行步骤S414。
步骤S411,所述控制服务器将所述日志中携带的tablet数据块信息和所述root table中的tablet数据块信息进行汇总存储。该步骤具体为:所述控制服务器将所述日志中携带的tablet数据块信息和所述root table中的tablet数据块信息进行汇总;所述控制服务器以tablet数据块对应的表名作为key值,将汇总后的tablet数据块信息持久化保存到磁盘上,从而方便后续查看oceanbase数据库下某一个表在其生存期内的tablet数据块变化状态;
步骤S412,所述控制服务器进行报警。通过报警进行数据块信息不一致的提醒,以便及时进行处理,并方便后续自动化的处理或者人肉处理。
综上所述,与现有技术相比,一方面,本申请克服了现有方式只能获取到tablet数据块的当前状态数据,不能持续跟踪tablet数据块状态变化的缺陷,本申请实时地获取tablet数据块变化时产生地携带有tablet数据块信息的日志,并对其进行实时地解析,得到tablet数据块信息,本实施例将获取到tablet数据块信息与查询得到tablet数据块信息汇合并持久化存储到磁盘中,由于对每次tablet数据块的状态发生变化时的tablet数据块信息进行持久化存储,从而能够持续跟踪tablet数据块状态变化;另一方面,本申请克服了现有技术通过人肉搜索进行校验效率低下,同时由于日志被定期清理,造成搜索得到日志数据不完整,从而可能导致校验结果不准确的缺陷。本申请实时的将得到的tablet数据块信息与root table中的tablet数据块信息进行了多维度地校验,并在校验结果不一致时进行了及时的预警,有利于在tablet数据块发生错乱与丢失时,进行及时的修正,校验效率高,校验结果准确,同时,由于本实施例还对得到地tablet数据块信息和查询得到的root table中的tablet数据块信息进行汇合并持久化存储,从而在后续的校验能够获得完整的数据,提高校验地准确度和效率。
实施例四
基于与上述数据块处理方法实现流程同样的申请构思,本申请实施例中还提供了一种数据库数据块的处理设备,应用于包括存储服务器、控制服务器和合并服务器的系统中,如图5所示,所述设备包括:
接收模块501,用于接收所述存储服务器发送的携带有tablet数据块信息的日志;
获取模块502,用于在所述接收模块接收到所述存储服务器发送的携带有tablet数据块信息的日志时,获取所述日志中携带的tablet数据块信息;
查询模块503,用于根据所述获取模块所获取到的所述日志中携带的tablet数据块信息,向所述合并服务器查询相对应的root table中的tablet数据块信息;
在本申请具体的实施例中,所述查询模块,具体用于:确定所述获取模块所获取到的所述日志中携带的tablet数据块信息所对应的表名;向所述合并服务器查询所述表名所对应的root table中的tablet数据块信息。
判断模块504,用于判断所述获取模块所获取到的所述日志中携带的tablet数据块信息与所述查询模块所查询到的所述root table中的tablet数据块信息是否一致;
在本申请具体的实施例中,所述判断模块,具体用于:校验所述获取模块所获取到的所述日志中携带的tablet数据块信息与所述查询模块所查询到的所述root table中的tablet数据块信息所对应的以下一项或多项信息是否一致:表名、边界、位置分布、数据校验码、索引等信息、创建时间、大小;
当所述校验结果中的任一项不一致时,判断所述获取模块所获取到的所述日志中携带的tablet数据块信息与所述查询模块所查询到的所述root table中的tablet数据块信息不一致。
处理模块505,用于所述获取模块所获取到的所述日志中携带的tablet数据块信息与所述查询模块所查询到的所述root table中的tablet数据块信息进行汇总存储,并在所述判断模块的判断结果为不一致时,进行报警。
在本申请具体的实施例中,所述处理模块,具体用于:
将所述获取模块所获取到的所述日志中携带的tablet数据块信息与所述查询模块所查询到的所述root table中的tablet数据块信息进行汇总;
以tablet数据块对应的表名作为key值,将汇总后的tablet数据块信息持久化保存到磁盘上;从而方便后续查看oceanbase数据库下某一个表在其生存期内的tablet数据块变化状态;方便后续自动化的处理或者人肉处理。
实施例五
基于与上述数据块处理方法实现流程同样的申请构思,本申请实施例中还提供了一种数据库数据块的处理设备,应用于包括存储服务器、控制服务器和合并服务器的系统中,如图6所示,所述设备包括:
轮询模块601,用于轮询所述存储服务器自身的日志;
识别模块602,用于当所述轮训模块确定所述日志出现新的数据信息时,识别所述新的数据信息是否为tablet数据块信息;
发送模块603,用于在所述识别模块的识别结果为是时,将携带有所述tablet数据块信息的日志发送给所述控制服务器,以使所述控制服务器根据所述日志中携带的tablet数据块信息与所述合并服务器的root table中的tablet数据块信息进行一致性识别和汇总存储,从而方便后续查看oceanbase数据库下某一个表在其生存期内的tablet数据块变化状态;方便后续自动化的处理或者人肉处理。
综上所述,与现有技术相比,本申请能够实时地获取tablet数据块变化时产生地携带有tablet数据块信息的日志,并对其进行实时地解析,得到tablet数据块信息,本实施例将获取到tablet数据块信息与查询得到tablet数据块信息汇合并持久化存储到磁盘中,持久化存储到磁盘中tablet各个状态地tablet数据块信息,所以达到了持续跟踪tablet数据块状态变化的效果;另一方面,本申请实时的将得到的tablet数据块信息与root table中的tablet数据块信息进行了多维度地校验,并在校验结果不一致时进行了及时的预警,有利于在tablet数据块发生错乱与丢失时,进行及时的修正,校验效率高,校验结果准确,同时,由于本实施例还对得到地tablet数据块信息和查询得到的root table中的tablet数据块信息进行汇合并持久化存储,从而在后续的校验能够获得完整的数据,提高校验地准确度和效率。
其中,本申请装置的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本申请所必须的。本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。以上公开的仅为本申请的几个具体实施例,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。

Claims (10)

1.一种数据块处理方法,其特征在于,应用于包括存储服务器、控制服务器和合并服务器的系统中,所述方法包括以下步骤:
当所述控制服务器接收到所述存储服务器发送的携带有逻辑数据块tablet数据块信息的日志时,所述控制服务器获取所述日志中携带的tablet数据块信息;
所述控制服务器根据所述日志中携带的tablet数据块信息,向所述合并服务器查询相对应的根表root table中的tablet数据块信息;
所述控制服务器判断所述日志中携带的tablet数据块信息与所述root table中的tablet数据块信息是否一致;
所述控制服务器将所述日志中携带的tablet数据块信息和所述root table中的tablet数据块信息进行汇总存储,并在所述判断结果为不一致时,进行报警。
2.如权利要求1所述的方法,其特征在于,所述控制服务器根据所述日志中携带的tablet数据块信息,向所述合并服务器查询相对应的root table中的tablet数据块信息,具体包括:
所述控制服务器确定所述日志中携带的tablet数据块信息所对应的表名;
所述控制服务器向所述合并服务器查询所述表名所对应的root table中的tablet数据块信息。
3.如权利要求1所述的方法,其特征在于,所述控制服务器判断所述日志中携带的tablet数据块信息与所述root table中的tablet数据块信息是否一致,具体包括:
所述控制服务器校验所述日志中携带的tablet数据块与所述root table中的tablet数据块所对应的以下一项或多项信息是否一致:
表名、边界、位置分布、数据校验码、索引等信息、创建时间、大小;
当所述校验结果中的任一项不一致时,所述控制服务器判断所述日志中携带的tablet数据块信息与所述root table中的tablet数据块信息不一致。
4.如权利要求1所述的方法,其特征在于,所述控制服务器将所述日志中携带的tablet数据块信息和所述root table中的tablet数据块信息进行汇总存储,具体包括:
所述控制服务器将所述日志中携带的tablet数据块信息和所述root table中的tablet数据块信息进行汇总;
所述控制服务器以tablet数据块对应的表名作为key值,将汇总后的tablet数据块信息持久化保存到磁盘上。
5.一种控制服务器,其特征在于,应用于包括存储服务器、控制服务器和合并服务器的系统中,所述控制服务器包括:
接收模块,用于接收所述存储服务器发送的携带有tablet数据块信息的日志;
获取模块,用于在所述接收模块接收到所述存储服务器发送的携带有tablet数据块信息的日志时,获取所述日志中携带的tablet数据块信息;
查询模块,用于根据所述获取模块所获取到的所述日志中携带的tablet数据块信息,向所述合并服务器查询相对应的root table中的tablet数据块信息;
判断模块,用于判断所述获取模块所获取到的所述日志中携带的tablet数据块信息与所述查询模块所查询到的所述root table中的tablet数据块信息是否一致;
处理模块,用于所述获取模块所获取到的所述日志中携带的tablet数据块信息与所述查询模块所查询到的所述root table中的tablet数据块信息进行汇总存储,并在所述判断模块的判断结果为不一致时,进行报警。
6.如权利要求5所述的控制服务器,其特征在于,所述查询模块,具体用于:
确定所述获取模块所获取到的所述日志中携带的tablet数据块信息所对应的表名;
向所述合并服务器查询所述表名所对应的root table中的tablet数据块信息。
7.如权利要求5所述的控制服务器,其特征在于,所述判断模块,具体包括:
校验所述获取模块所获取到的所述日志中携带的tablet数据块与所述查询模块所查询到的所述root table中的tablet数据块所对应的以下一项或多项信息是否一致:
表名、边界、位置分布、数据校验码、索引等信息、创建时间、大小;
当所述校验结果中的任一项不一致时,判断所述获取模块所获取到的所述日志中携带的tablet数据块信息与所述查询模块所查询到的所述root table中的tablet数据块信息不一致。
8.如权利要求5所述的控制服务器,其特征在于,所述处理模块,具体包括:
将所述获取模块所获取到的所述日志中携带的tablet数据块信息与所述查询模块所查询到的所述root table中的tablet数据块信息进行汇总;
以tablet数据块对应的表名作为key值,将汇总后的tablet数据块信息持久化保存到磁盘上。
9.一种数据块处理方法,其特征在于,应用于包括存储服务器、控制服务器和合并服务器的系统中,所述方法包括以下步骤:
所述存储服务器轮询自身的日志;
当所述存储服务器确定所述日志出现新的数据信息时,识别所述新的数据信息是否为tablet数据块信息;
如果是,所述存储服务器将携带有所述tablet数据块信息的日志发送给所述控制服务器,以使所述控制服务器根据所述日志中携带的tablet数据块信息与所述合并服务器的root table中的tablet数据块信息进行一致性识别和汇总存储。
10.一种存储服务器,其特征在于,应用于包括存储服务器、控制服务器和合并服务器的系统中,所述存储服务器包括:
轮询模块,用于轮询所述存储服务器自身的日志;
识别模块,用于当所述轮训模块确定所述日志出现新的数据信息时,识别所述新的数据信息是否为tablet数据块信息;
发送模块,用于在所述识别模块的识别结果为是时,将携带有所述tablet数据块信息的日志发送给所述控制服务器,以使所述控制服务器根据所述日志中携带的tablet数据块信息与所述合并服务器的root table中的tablet数据块信息进行一致性识别和汇总存储。
CN201510090139.4A 2015-02-27 2015-02-27 一种数据块处理方法和设备 Active CN105989140B (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN201510090139.4A CN105989140B (zh) 2015-02-27 2015-02-27 一种数据块处理方法和设备
JP2017544648A JP6633642B2 (ja) 2015-02-27 2016-02-05 分散データベースにおけるデータブロックを処理する方法およびデバイス
US15/553,050 US20180032567A1 (en) 2015-02-27 2016-02-05 Method and device for processing data blocks in a distributed database
EP16754748.8A EP3264291A4 (en) 2015-02-27 2016-02-05 Data block processing method and device
PCT/CN2016/073594 WO2016134639A1 (zh) 2015-02-27 2016-02-05 一种数据块处理方法和设备
JP2019224177A JP6996812B2 (ja) 2015-02-27 2019-12-12 分散データベースにおけるデータブロックを処理する方法、プログラム、およびデバイス

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510090139.4A CN105989140B (zh) 2015-02-27 2015-02-27 一种数据块处理方法和设备

Publications (2)

Publication Number Publication Date
CN105989140A true CN105989140A (zh) 2016-10-05
CN105989140B CN105989140B (zh) 2019-09-03

Family

ID=56787904

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510090139.4A Active CN105989140B (zh) 2015-02-27 2015-02-27 一种数据块处理方法和设备

Country Status (5)

Country Link
US (1) US20180032567A1 (zh)
EP (1) EP3264291A4 (zh)
JP (2) JP6633642B2 (zh)
CN (1) CN105989140B (zh)
WO (1) WO2016134639A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111061721A (zh) * 2018-10-16 2020-04-24 成都鼎桥通信技术有限公司 数据处理方法及装置
CN111290714A (zh) * 2020-02-06 2020-06-16 北京百度网讯科技有限公司 数据读取方法和装置

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10409768B2 (en) * 2016-09-30 2019-09-10 EMC IP Holding Company LLC Managing data inconsistencies in files of file systems
CN108549704B (zh) * 2018-04-18 2021-01-12 厦门市美亚柏科信息股份有限公司 数据包的分布式流式预处理方法、装置、设备及可读介质
CN110019247A (zh) * 2018-08-16 2019-07-16 比亚迪股份有限公司 数据存储以及查询方法、装置和监控系统
CN114168572A (zh) * 2022-02-10 2022-03-11 北京奥星贝斯科技有限公司 管理数据库的方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102156738A (zh) * 2011-04-13 2011-08-17 成都市华为赛门铁克科技有限公司 数据块处理方法、数据块存储设备及系统
CN102567445A (zh) * 2011-10-25 2012-07-11 无锡城市云计算中心有限公司 一种分布式文件系统中保证元数据一致性的方法
CN103778030A (zh) * 2013-12-30 2014-05-07 上海晨思电子科技有限公司 日志子系统写入方法、错误追踪方法及处理器
CN103929500A (zh) * 2014-05-06 2014-07-16 刘跃 一种分布式存储系统的数据分片方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3612449B2 (ja) 1999-07-27 2005-01-19 エヌイーシーシステムテクノロジー株式会社 分散データベースシステムにおける主従関係情報同期方式
JP4137391B2 (ja) 2001-02-19 2008-08-20 株式会社リコー データ管理装置、方法、プログラム、及び記録媒体
JP2007200029A (ja) * 2006-01-26 2007-08-09 Mitsubishi Electric Corp ファイル複製システム
JP2009140142A (ja) * 2007-12-05 2009-06-25 Hitachi Ltd ジャーナルファイルシステム及びその修復方法
US8732140B2 (en) * 2011-05-24 2014-05-20 Red Lambda, Inc. Methods for storing files in a distributed environment
CN104331478B (zh) * 2014-11-05 2017-09-22 浪潮电子信息产业股份有限公司 一种自精简存储系统数据一致性管理方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102156738A (zh) * 2011-04-13 2011-08-17 成都市华为赛门铁克科技有限公司 数据块处理方法、数据块存储设备及系统
CN102567445A (zh) * 2011-10-25 2012-07-11 无锡城市云计算中心有限公司 一种分布式文件系统中保证元数据一致性的方法
CN103778030A (zh) * 2013-12-30 2014-05-07 上海晨思电子科技有限公司 日志子系统写入方法、错误追踪方法及处理器
CN103929500A (zh) * 2014-05-06 2014-07-16 刘跃 一种分布式存储系统的数据分片方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KONSTANTIN SHVACHKO等: ""The Hadoop Distributed File System"", 《MASS STORAGE SYSTEMS AND TECHNOLOGIES(MSST),2010 IEEE 26TH SYMPOSIUM ON,IEEE,PISCATAWAY,NJ,USA》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111061721A (zh) * 2018-10-16 2020-04-24 成都鼎桥通信技术有限公司 数据处理方法及装置
CN111290714A (zh) * 2020-02-06 2020-06-16 北京百度网讯科技有限公司 数据读取方法和装置
CN111290714B (zh) * 2020-02-06 2023-09-05 北京百度网讯科技有限公司 数据读取方法和装置

Also Published As

Publication number Publication date
CN105989140B (zh) 2019-09-03
EP3264291A4 (en) 2018-10-03
EP3264291A1 (en) 2018-01-03
JP2018511861A (ja) 2018-04-26
JP6996812B2 (ja) 2022-01-17
US20180032567A1 (en) 2018-02-01
JP2020057416A (ja) 2020-04-09
WO2016134639A1 (zh) 2016-09-01
JP6633642B2 (ja) 2020-01-22

Similar Documents

Publication Publication Date Title
CN105989140A (zh) 一种数据块处理方法和设备
CN104756106B (zh) 表征数据存储系统中的数据源
CN104301360B (zh) 一种日志数据记录的方法、日志服务器及系统
CN102737127B (zh) 一种海量数据存储方法
CN110493025B (zh) 一种基于多层有向图的故障根因诊断的方法及装置
CN105631026A (zh) 一种安全数据分析系统
CN105095052B (zh) Soa环境下的故障检测方法及装置
CN101901242A (zh) 联合的配置数据管理
CN106254466B (zh) 基于局域网的hdfs分布式文件共享方法
CN109902130A (zh) 一种数据存储方法、数据查询方法和装置、存储介质
CN106682096A (zh) 一种日志数据的管理方法和装置
CN105808414A (zh) 一种日志处理方法及日志处理电子设备
CN104239377A (zh) 跨平台的数据检索方法及装置
CN105868521A (zh) 数据信息处理方法及装置
CN105917625A (zh) 使用附加数据的检测到的网络异常的分类
CN104391992B (zh) 针对资产数据的数据处理系统
CN114791846B (zh) 一种针对云原生混沌工程实验实现可观测性的方法
CN107766219A (zh) 自动化测试日志收集方法、系统、设备及计算机存储设备
CN105426375A (zh) 一种关系网络的计算方法及装置
CN103870549B (zh) 石油地质软件数据的清理方法及装置
CN110188015A (zh) 一种主机访问关系异常行为自适应检测装置及其监测方法
CN108073720A (zh) 应用于大数据系统的数据质量管理系统及方法
CN106326439B (zh) 一种实时视频存储、检索方法及装置
CN110175100A (zh) 一种存储盘故障预测方法及预测系统
CN103226501A (zh) 一种数据库的逻辑备份方法以及逻辑备份系统

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