CN111008233B - 一种kv数据库的访问方法、装置及设备 - Google Patents

一种kv数据库的访问方法、装置及设备 Download PDF

Info

Publication number
CN111008233B
CN111008233B CN201911161183.4A CN201911161183A CN111008233B CN 111008233 B CN111008233 B CN 111008233B CN 201911161183 A CN201911161183 A CN 201911161183A CN 111008233 B CN111008233 B CN 111008233B
Authority
CN
China
Prior art keywords
database
storage engine
record
target
writing
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
CN201911161183.4A
Other languages
English (en)
Other versions
CN111008233A (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.)
Inspur Electronic Information Industry Co Ltd
Original Assignee
Inspur Electronic Information Industry 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 Inspur Electronic Information Industry Co Ltd filed Critical Inspur Electronic Information Industry Co Ltd
Priority to CN201911161183.4A priority Critical patent/CN111008233B/zh
Publication of CN111008233A publication Critical patent/CN111008233A/zh
Application granted granted Critical
Publication of CN111008233B publication Critical patent/CN111008233B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种KV数据库的访问方法、装置、设备及可读存储介质,包括:根据用户对目标接口的调用操作,确定入参,其中,目标接口为在内核实现的驱动程序所提供的KV数据库的接口;在预先申请的内核内存中,利用KV存储引擎根据入参执行相应的数据库操作。可见,该方法以内核驱动程序的形式提供KV存储引擎,减少了IO调用路径,并降低了用户态到内核态的转换次数,KV存储引擎执行数据库操作时无需经过文件系统层,因此提高了KV存储引擎访问效率。

Description

一种KV数据库的访问方法、装置及设备
技术领域
本申请涉及计算机技术领域,特别涉及一种KV数据库的访问方法、装置、设备及可读存储介质。
背景技术
分布式存储系统中通常用KV存储引擎存储数据,实现元数据和对象数据的存储。常见的用来存储key-value非结构化数据的KV存储引擎有leveldb、rocksdb、mysql、LMDB、mongo-rocks等,这些KV存储引擎能够实现持久化存储KV数据对,通常使用文件的形式存储在文件系统上。但是,由于数据需要经过文件系统层,用户态和内核态之间的转换过程会导致KV存储引擎性能较低。
可见,由于数据需要经过文件系统层,导致KV存储引擎性能较低,如何解决该现象是亟待本领域技术人员解决的问题。
发明内容
本申请的目的是提供一种KV数据库的访问方法、装置、设备及可读存储介质,用以解决由于数据需要经过文件系统层,导致KV存储引擎性能较低的问题。其具体方案如下:
第一方面,本申请提供了一种KV数据库的访问方法,包括:
根据用户对目标接口的调用操作,确定入参;其中,所述目标接口为在内核实现的驱动程序所提供的KV数据库的接口;
在预先申请的内核内存中,利用KV存储引擎根据所述入参执行相应的数据库操作。
优选的,所述利用KV存储引擎根据所述入参执行相应的数据库操作,包括:
利用KV存储引擎根据所述入参确定操作类型,其中所述操作类型包括以下任意一项或多项:写入、读取、删除;
根据所述操作类型,利用KV存储引擎执行相应的数据库操作。
优选的,若所述操作类型为写入,所述利用KV存储引擎执行相应的数据库操作,包括:
利用KV存储引擎执行写入操作,得到在预先申请的内核内存中的KV记录,并将所述KV记录写入物理存储设备。
优选的,所述将所述KV记录写入物理存储设备,包括:
按照顺序写的方式,将所述KV记录写入物理存储设备。
优选的,所述将所述KV记录写入物理存储设备,包括:
将所述KV记录以日志的形式写入物理存储设备。
优选的,若所述操作类型为删除,则所述利用KV存储引擎根据所述入参执行相应的数据库操作,包括:
利用KV存储引擎根据所述入参确定目标KV记录,并为所述目标KV记录增加删除标记,以便于在预设条件下根据所述删除标记删除所述目标KV记录。
优选的,所述预设条件为执行数据库压缩操作,在所述为所述目标KV记录增加删除标记之后,还包括:
在执行数据库压缩操作时,根据所述删除标记删除所述目标KV记录。
第二方面,本申请提供了一种KV数据库的访问装置,包括:
入参确定模块:用于根据用户对目标接口的调用操作,确定入参;其中,所述目标接口为在内核实现的驱动程序所提供的KV数据库的接口;
操作执行模块:用于在预先申请的内核内存中,利用KV存储引擎根据所述入参执行相应的数据库操作。
第三方面,本申请提供了一种KV数据库的访问设备,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序,以实现如上所述的一种KV数据库的访问方法的步骤。
第四方面,本申请提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时用于实现如上所述的一种KV数据库的访问方法的步骤。
本申请所提供的一种KV数据库的访问方法,包括:根据用户对目标接口的调用操作,确定入参,其中,目标接口为在内核实现的驱动程序所提供的KV数据库的接口;在预先申请的内核内存中,利用KV存储引擎根据入参执行相应的数据库操作。可见,该方法以内核驱动程序的形式提供KV存储引擎,减少了IO调用路径,并降低了用户态到内核态的转换次数,KV存储引擎执行数据库操作时无需经过文件系统层,因此提高了KV存储引擎访问效率。
此外,本申请还提供了一种KV数据库的访问装置、设备及可读存储介质,其技术效果与上述方法的技术效果相对应,这里不再赘述。
附图说明
为了更清楚的说明本申请实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请所提供的一种KV数据库的访问方法实施例一的实现流程图;
图2为本申请所提供的一种KV数据库的访问方法实施例二的实现流程图;
图3为本申请所提供的一种KV数据库的访问装置实施例的功能框图;
图4为本申请所提供的一种KV数据库的访问设备实施例的结构示意图。
具体实施方式
本申请的核心是提供一种KV数据库的访问方法、装置、设备及可读存储介质,以内核驱动程序的形式提供KV存储引擎,因此KV存储引擎执行数据库操作时无需经过文件系统层,提高了KV存储引擎访问效率。
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面对本申请提供的一种KV数据库的访问方法实施例一进行介绍,参见图1,实施例一包括:
S101、根据用户对目标接口的调用操作,确定入参;其中,所述目标接口为在内核实现的驱动程序所提供的KV数据库的接口;
S102、在预先申请的内核内存中,利用KV存储引擎根据所述入参执行相应的数据库操作。
KV,即key value,KV数据库是一种以键值对存储数据的数据库。KV存储引擎是一种基于KV数据库实现的持久化存储系统。本实施例用于实现KV数据库的访问过程。
具体的,在linux系统内核上实现一个驱动程序,该驱动程序用于提供KV数据库的接口给用户程序,并申请一块内核内存用以缓存KV记录,KV记录无需经过文件系统层就可以被下刷到物理存储设备。作为一种具体的实施方式,可以按照顺序写的方式将KV记录写入物理存储设备,从而提升写入效率;且KV记录可以以日志的形式被写入物理存储设备,物理存储设备具体可以为SSD。
在实际应用中,上述入参具体可以包括操作类型和操作对象的标识信息,其中,操作类型包括以下任意一项或多项:写入、读取、删除,KV存储引擎可以根据所述标识信息确定目标KV记录。
当操作类型为删除时,KV存储引擎不会直接删除内核内存中的目标KV记录,而是先为目标KV记录增加删除标记,并在预设条件下根据删除标记确定哪些KV记录需要被删除,从而提升KV存储引擎的存储性能。例如,在执行数据库压缩操作的时候,再根据删除标记将相应的KV记录删除。
本实施例所提供一种KV数据库的访问方法,包括:根据用户对目标接口的调用操作,确定入参,其中,目标接口为在内核实现的驱动程序所提供的KV数据库的接口;在预先申请的内核内存中,利用KV存储引擎根据入参执行相应的数据库操作。可见,该方法以内核驱动程序的形式提供KV存储引擎,减少了IO调用路径,并降低了用户态到内核态的转换次数,KV存储引擎执行数据库操作时无需经过文件系统层,因此提高了KV存储引擎访问效率。
下面开始详细介绍本申请提供的一种KV数据库的访问方法实施例二,实施例二基于前述实施例一实现,并在实施例一的基础上进行了一定程度上的拓展。
参见图2,实施例二具体包括:
S201、根据用户对目标接口的调用操作,确定入参;其中,所述目标接口为在内核实现的驱动程序所提供的KV数据库的接口;
S202、在预先申请的内核内存中,利用KV存储引擎根据所述入参确定操作类型,其中所述操作类型包括以下任意一项或多项:写入、读取、删除;
S203、若所述操作类型为写入,利用KV存储引擎执行写入操作,得到在预先申请的内核内存中的KV记录;按照顺序写的方式,将所述KV记录以日志的形式写入物理存储设备;
S204、若所述操作类型为删除,利用KV存储引擎根据所述入参确定目标KV记录,并为所述目标KV记录增加删除标记,以便于后续在执行数据库压缩操作时根据所述删除标记删除所述目标KV记录。
具体的,本实施例在linux系统内核上实现一个驱动程序,根据内核驱动程序要求实现驱动程序相关接口,即使该驱动程序提供KV数据库的接口给用户程序。申请一块内核内存用来保存内存中的memtable,并将KV记录以log的形式写入下层SSD设备。
在执行KV数据库的写入、删除、读取操作时,将KV记录以顺序写的形式追加到SSD设备的log中,同时移动log末尾指针。追加写入log是对SSD设备的顺序写入,写入效率很高。可以理解的是,为避免重复写入,当一个KV记录写入log成功,则在memtable中为该KV记录增加已写入标记。
对于删除操作,本实施例的KV存储引擎不会真正去删除KV记录,而是为相应的KV记录增加删除标记,并在后台执行数据库压缩的时候删除带有删除标记的KV记录。
可见,本实施例提供的一种KV数据库的访问方法,通过在linux内核上实现一个驱动程序,由该驱动程序实现KV数据库的功能,KV记录持久化直接存储在SSD设备上。通过在内核层通过驱动程序的形式实现KV存储引擎,减少IO调用堆栈,跳过文件系统层,减少用户态和内核态转换,提高KV存储引擎性能。KV存储引擎跳过文件系统层直接访问SSD设备,提高KV存储引擎访问效率。
下面对本申请实施例提供的一种KV数据库的访问装置进行介绍,下文描述的一种KV数据库的访问装置与上文描述的一种KV数据库的访问方法可相互对应参照。
如图3所示,该装置包括:
入参确定模块301:用于根据用户对目标接口的调用操作,确定入参;其中,所述目标接口为在内核实现的驱动程序所提供的KV数据库的接口;
操作执行模块302:用于在预先申请的内核内存中,利用KV存储引擎根据所述入参执行相应的数据库操作。
本实施例的KV数据库的访问装置用于实现前述的KV数据库的访问方法,因此该装置中的具体实施方式可见前文中的KV数据库的访问方法的实施例部分,例如,入参确定模块301、操作执行模块302,分别用于实现上述KV数据库的访问方法中步骤S101,S102。所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再展开介绍。
另外,由于本实施例的KV数据库的访问装置用于实现前述的KV数据库的访问方法,因此其作用与上述方法的作用相对应,这里不再赘述。
此外,本申请还提供了一种KV数据库的访问设备,如图4所示,包括:
存储器100:用于存储计算机程序;
处理器200:用于执行所述计算机程序,以实现如上所述的一种KV数据库的访问方法的步骤。
最后,本申请提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时用于实现如上文所述的一种KV数据库的访问方法的步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的方案进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (6)

1.一种KV数据库的访问方法,其特征在于,包括:
根据用户对目标接口的调用操作,确定入参;其中,所述目标接口为在内核实现的驱动程序所提供的KV数据库的接口;
在预先申请的内核内存中,利用KV存储引擎根据所述入参执行相应的数据库操作;
其中,所述利用KV存储引擎根据所述入参执行相应的数据库操作,包括:
利用KV存储引擎根据所述入参确定操作类型,其中所述操作类型包括以下任意一项或多项:写入、读取、删除;
根据所述操作类型,利用KV存储引擎执行相应的数据库操作;
其中,若所述操作类型为写入,所述利用KV存储引擎执行相应的数据库操作,包括:
利用KV存储引擎执行写入操作,得到在预先申请的内核内存中的KV记录,并将所述KV记录写入物理存储设备;
其中,若所述操作类型为删除,则所述利用KV存储引擎根据所述入参执行相应的数据库操作,包括:
利用KV存储引擎根据所述入参确定目标KV记录,并为所述目标KV记录增加删除标记,以便于在预设条件下根据所述删除标记删除所述目标KV记录;
其中,所述预设条件为执行数据库压缩操作,在所述为所述目标KV记录增加删除标记之后,还包括:
在执行数据库压缩操作时,根据所述删除标记删除所述目标KV记录。
2.如权利要求1所述的方法,其特征在于,所述将所述KV记录写入物理存储设备,包括:
按照顺序写的方式,将所述KV记录写入物理存储设备。
3.如权利要求1所述的方法,其特征在于,所述将所述KV记录写入物理存储设备,包括:
将所述KV记录以日志的形式写入物理存储设备。
4.一种KV数据库的访问装置,其特征在于,包括:
入参确定模块:用于根据用户对目标接口的调用操作,确定入参;其中,所述目标接口为在内核实现的驱动程序所提供的KV数据库的接口;
操作执行模块:用于在预先申请的内核内存中,利用KV存储引擎根据所述入参执行相应的数据库操作;
其中,所述操作执行模块:具体用于利用KV存储引擎根据所述入参确定操作类型,其中所述操作类型包括以下任意一项或多项:写入、读取、删除;
根据所述操作类型,利用KV存储引擎执行相应的数据库操作;
其中,若所述操作类型为写入,所述操作执行模块:具体用于利用KV存储引擎执行写入操作,得到在预先申请的内核内存中的KV记录,并将所述KV记录写入物理存储设备;
其中,若所述操作类型为删除,则所述操作执行模块:具体用于利用KV存储引擎根据所述入参确定目标KV记录,并为所述目标KV记录增加删除标记,以便于在预设条件下根据所述删除标记删除所述目标KV记录;
其中,所述预设条件为执行数据库压缩操作,所述操作执行模块:具体用于在执行数据库压缩操作时,根据所述删除标记删除所述目标KV记录。
5.一种KV数据库的访问设备,其特征在于,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序,以实现如权利要求1-3任意一项所述的一种KV数据库的访问方法的步骤。
6.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时用于实现如权利要求1-3任意一项所述的一种KV数据库的访问方法的步骤。
CN201911161183.4A 2019-11-24 2019-11-24 一种kv数据库的访问方法、装置及设备 Active CN111008233B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911161183.4A CN111008233B (zh) 2019-11-24 2019-11-24 一种kv数据库的访问方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911161183.4A CN111008233B (zh) 2019-11-24 2019-11-24 一种kv数据库的访问方法、装置及设备

Publications (2)

Publication Number Publication Date
CN111008233A CN111008233A (zh) 2020-04-14
CN111008233B true CN111008233B (zh) 2023-02-28

Family

ID=70113803

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911161183.4A Active CN111008233B (zh) 2019-11-24 2019-11-24 一种kv数据库的访问方法、装置及设备

Country Status (1)

Country Link
CN (1) CN111008233B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112052291A (zh) * 2020-09-03 2020-12-08 苏宁云计算有限公司 一种用户态访问分布式块存储系统的方法及系统
CN112039999A (zh) * 2020-09-03 2020-12-04 苏宁云计算有限公司 一种内核态访问分布式块存储系统的方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106503173A (zh) * 2016-10-24 2017-03-15 上海携程商务有限公司 Kv数据库访问方法及装置
CN107291399A (zh) * 2017-06-30 2017-10-24 郑州云海信息技术有限公司 一种基于spdk的后端存储方法、装置及系统
CN107479991A (zh) * 2017-08-25 2017-12-15 郑州云海信息技术有限公司 基于内核文件系统的对象存储操作方法、装置及系统
CN109271110A (zh) * 2018-09-25 2019-01-25 郑州云海信息技术有限公司 存储系统中存储数据的写入方法、写入系统及相关装置
CN109446258A (zh) * 2018-10-22 2019-03-08 郑州云海信息技术有限公司 一种分布式数据存储方法及系统
CN110457261A (zh) * 2019-08-06 2019-11-15 深圳市腾讯计算机系统有限公司 数据访问方法、装置及服务器

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1976320B (zh) * 2006-12-22 2010-05-26 中国建设银行股份有限公司 数据访问控制方法及系统
CN104283906B (zh) * 2013-07-02 2018-06-19 华为技术有限公司 分布式存储系统、集群节点及其区间管理方法
US20170220656A1 (en) * 2016-02-03 2017-08-03 Adp, Llc Information Access System
CN106021335A (zh) * 2016-05-06 2016-10-12 北京奇虎科技有限公司 访问数据库的方法及装置
US11016932B2 (en) * 2017-09-21 2021-05-25 Alibaba Group Holding Limited Systems, methods, and apparatuses for simplifying filesystem operations utilizing a key-value storage system
CN109491618A (zh) * 2018-11-20 2019-03-19 上海科技大学 基于混合存储的数据管理系统、方法、终端及介质
CN110377436B (zh) * 2019-07-12 2021-04-27 清华大学 持久性内存的数据存储访问方法、设备及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106503173A (zh) * 2016-10-24 2017-03-15 上海携程商务有限公司 Kv数据库访问方法及装置
CN107291399A (zh) * 2017-06-30 2017-10-24 郑州云海信息技术有限公司 一种基于spdk的后端存储方法、装置及系统
CN107479991A (zh) * 2017-08-25 2017-12-15 郑州云海信息技术有限公司 基于内核文件系统的对象存储操作方法、装置及系统
CN109271110A (zh) * 2018-09-25 2019-01-25 郑州云海信息技术有限公司 存储系统中存储数据的写入方法、写入系统及相关装置
CN109446258A (zh) * 2018-10-22 2019-03-08 郑州云海信息技术有限公司 一种分布式数据存储方法及系统
CN110457261A (zh) * 2019-08-06 2019-11-15 深圳市腾讯计算机系统有限公司 数据访问方法、装置及服务器

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
一个基于日志结构的非易失性内存键值存储系统;游理通等;《计算机研究与发展》;20180915;第55卷(第09期);第2038-2049页 *

Also Published As

Publication number Publication date
CN111008233A (zh) 2020-04-14

Similar Documents

Publication Publication Date Title
CN108647151B (zh) 一种全闪系统元数据落盘方法、装置、设备及存储介质
US8856469B2 (en) Apparatus and method for logging optimization using non-volatile memory
CN107729558B (zh) 文件系统碎片整理的方法、系统、装置及计算机存储介质
CN113064859B (zh) 一种元数据处理方法、装置及电子设备和存储介质
CN111008233B (zh) 一种kv数据库的访问方法、装置及设备
CN107391544B (zh) 列式存储数据的处理方法、装置、设备及计算机储存介质
CN109213432B (zh) 利用日志结构合并树将数据写入的存储设备及其方法
CN105094695A (zh) 一种存储方法和系统
CN109213450B (zh) 一种基于闪存阵列的关联元数据删除方法、装置及设备
CN111897493B (zh) 存储空间管理方法、装置及电子设备、存储介质
CN107766067B (zh) 一种提升压缩镜像烧录速度的方法、存储介质及计算机
CN107423425B (zh) 一种对k/v格式的数据快速存储和查询方法
CN115114232A (zh) 一种历史版本对象列举方法、装置及其介质
CN110851434B (zh) 一种数据存储方法、装置及设备
CN113608695A (zh) 一种数据处理方法、系统、设备以及介质
CN114936010B (zh) 数据处理方法、装置、设备及介质
US20220083522A1 (en) Data processing method, apparatus, electronic device, and computer storage medium
CN110837338A (zh) 一种存储索引处理方法及装置
CN111625500B (zh) 文件快照方法及装置、电子设备和存储介质
CN109241011B (zh) 一种虚拟机文件处理方法及装置
CN103246611A (zh) 一种文件处理方法及系统
CN110515751B (zh) 一种加载运行VxWorks实时保护进程的方法及系统
CN110795389A (zh) 基于存储快照的拷贝方法、用户设备、存储介质及装置
CN114238419B (zh) 基于多租户SaaS应用系统的数据缓存方法及装置
JPWO2020065778A1 (ja) 情報処理装置、制御方法、及びプログラム

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