CN111488379A - 一种优化Hbase大数据查询的方法 - Google Patents
一种优化Hbase大数据查询的方法 Download PDFInfo
- Publication number
- CN111488379A CN111488379A CN202010305095.3A CN202010305095A CN111488379A CN 111488379 A CN111488379 A CN 111488379A CN 202010305095 A CN202010305095 A CN 202010305095A CN 111488379 A CN111488379 A CN 111488379A
- Authority
- CN
- China
- Prior art keywords
- data
- hbase
- query
- rowkey
- database
- 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
Links
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/221—Column-oriented storage; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/26—Visual data mining; Browsing structured data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种优化Hbase大数据查询的方法,其特征在于:包括数据库存储Hbase的rowKey和更新记录,数据库存储Hbase中列的基本信息,基于Lucene建立查询索引,自定义查询视图,数据标签管理和***化的查询页面的步骤。本发明旨在解决一般Hbase存储大量数据,难以实现高效便捷的复杂查询的问题。
Description
技术领域
本发明涉及大数据搜索技术领域,特别是涉及一种优化Hbase大数据查询的方法。
背景技术
随着互联网的发展,互联网企业的数据也是呈指数级上升,利用hadoop生态体系存储数据成为了多数企业的首选,而其中被称为分布式数据库的Hbase也是其中最常用的一种存储方式。
Hbase由于其存储原理限制,虽然对于rowKey查询能够很好的支持,但是对于复杂条件的过滤查询,效率十分低下。那么如何优化Hbase大数据查询的方法,就是不得不考虑的一个问题。
业界一般的解决方法就是在Hbase中新建表来实现二级索引,建立列数据和rowKey的对应关系,加快数据的定位速度。但是随着请求复杂度的提升,新建的索引表会越来越多,数据冗余越发严重,存储压力越来越大,市面上也有相应的优化方案,但是也或多或少存在一些问题。
发明内容
本发明所要解决的技术问题是提升Hbase复杂查询的性能,降低Hbase的存储和计算压力,提供一种优化Hbase大数据查询的方法。
为解决上述技术问题,本发明提供一种优化Hbase大数据查询的方法,其特征在于:包括数据库存储Hbase的rowKey和更新记录,在数据库存储Hbase中列的基本信息,基于Lucene建立查询索引,自定义查询视图,数据标签管理和***化的查询页面的步骤,具体为:
S1,数据库存储Hbase的rowKey和更新记录:
在往Hbase中添加或删除数据之前,将数据rowKey和相关操作信息在数据库中存储一份,内容包括以下字段:rowKey、Hbase表名、逻辑删除标志、添加时间、更新时间,用于为建立lucene查询索引提供基础数据支撑;
当Hbase中查询条件列数据发生变更时,往数据库中回写流水记录信息,包括字段:rowKey、Hbase表名、是否删除标志以及添加时间,用于为lucene索引增量更新或增量删除提供基础数据支撑;
S2,在数据库存储Hbase中列的基本信息:在数据库中存一份定义关系,包括Hbase数据的表名、列簇和列名,并维护其对应的中文释义,用于查询页面展示;
S3,基于Lucene建立查询索引:日终应用通过S1中rowKey和更新记录,以及S2中列的基本信息,从Hbase中取出相应的数据,提交给基于lucene的搜索引擎更新索引,所述搜索引擎对外提供类sql语句方式的查询接口;
S4,自定义查询视图:所述自定义查询视图包括视图定义和条件配置两个部分,所述视图定义用于确认查询的字段范围,所述条件配置用于约束查询的数据范围,视图与条件为一对多关系,存储在数据库中;所述自定义查询视图采用类sql语句的方式进行配置,与所述S3中搜索引擎的查询接口一致;
S5,数据标签管理:对查询出来的结果数据,批量打上用户自定义的标签,并将关系存储在数据库中;打上标签的数据,可以通过标签直接过滤查询出来,或者与查询条件组合查询结果;
S6,***化的查询页面:建立一个web服务应用,将S1、S2和S3中的数据以及S4、S5中的功能进行集成和展示,形成***化的查询功能页面。
所述S1中,数据库存储Hbase所有rowKey信息,记录rowKey的增删时间,用于日终应用查出增删的数据提交给lucene索引;记录Hbase中Lucene索引相关数据的更新流水记录,用于日终应用查出更新数据提交给lucene索引;
所述S2中,在数据库中存储了Hbase相关表和列的配置信息,根据所述配置信息对所有进入Hbase的数据进行权限控制和范围校验。
所述S3中,基于Lucene建立查询索引中,日终应用接收到提交的数据后,开始处理逻辑,具体包括如下步骤:
S3-1:在数据库hbase_rowkey_info表中,按规则查询对应rowkey是否存在,存在则返回rowkey;不存在则按规则生成rowkey,并添加到hbase_rowkey_info表中;
S3-2:针对提交的数据字段,在hbase_column_info表中进行写入权限校验,预先配置过的字段可以进行数据提交;
S3-3:将获取到的rowkey和提交数据组合后,写入到Hbase对应表中;
S3-4:数据写入hbase成功后,如果更新数据涉及到lucene查询要的字段,则在数据库hbase_update_record表中进行流水记录,便于增量获取待更新到lucene索引中的数据;
S3-5:日终应用定时从数据库hbase_rowkey_info表中获取新增的rowkey记录,从hbase_update_record表中获取更新或删除的rowkey记录;
S3-6:从数据库hbase_column_info中获取lucene查询使用到的字段信息,区分查询字段和数据字段;
S3-7:结合S3-5和S3-6获取的信息,从hbase中查询出需要提交给lucene进行索引更新的数据;将待更新数据提交给Lucene进行索引更新。
本发明所达到的有益效果:
(1)本发明建立了基于Lucene的查询索引,提升Hbase复杂条件查询的性能;
(2)本发明避免Hbase直接进行复杂查询,减少Hbase的存储和计算压力,间接提升rowKey查询的性能;
(3)本发明支持标签管理查询功能,大大丰富了复杂的查询场景;
(4)本发明提供一套功能完整的查询界面,优化用户体验。
附图说明
图1为本发明的示例性实施例中的方法流程示意图;
图2为本发明的示例性实施例中的数据写入索引详细步骤示意图;
图3为本发明的示例性实施例中查询页面总览示意图;
图4为本发明的示例性实施例中查询页面-视图定义模块示意图;
图5为本发明的示例性实施例中查询页面-字段展示模块示意图;
图6为本发明的示例性实施例中查询页面-标签管理模块示意图;
图7为本发明的示例性实施例中查询页面-索引数据展示模块示意图;
图8为本发明的示例性实施例中查询页面-Hbase数据展示模块示意图;
具体实施方式
下面结合附图和示例性实施例对本发明作进一步的说明:
如图1所示的本发明的示例性实施例中的数据写入查询示意图,具体流程描述如下:
从数据写入Hbase开始;
S1,数据库存储Hbase的rowKey和更新记录:
在往Hbase中添加或删除数据之前,将数据rowKey和相关操作信息在数据库中存储一份,使数据量直观可控;内容包括以下字段:rowKey、Hbase表名、逻辑删除标志、添加时间、更新时间,用于为建立lucene查询索引提供基础数据支撑;
当Hbase中查询条件列数据发生变更时,往数据库中回写流水记录信息,包括字段:rowKey、Hbase表名、是否删除标志以及添加时间,用于为lucene索引增量更新或增量删除提供基础数据支撑;便于日终应用查出更新数据提交给lucene索引;进而保证索引查询的实时性和数据完整性;
S2,在数据库存储Hbase中列的基本信息:在数据库中存一份定义关系,包括Hbase数据的表名、列簇和列名,并维护其对应的中文释义,用于查询页面展示;在数据库中存储了Hbase相关表和列的配置信息,所有进入Hbase的数据会根据这些配置信息进行权限控制和范围校验,让Hbase中数据变得更加透明,范围可控,为优化查询方法提供基础支撑;
S3,基于Lucene建立查询索引:日终应用通过S1中rowKey增删记录和更新流水记录以及S2中列相关配置信息,从Hbase中取出相应的数据,提交给基于lucene的搜索引擎更新索引,简单高效,只提取查询条件相关的数据提交入索引,减少搜索引擎的压力;该搜索引擎对外提供类sql语句方式的查询接口,能够更好识别用户请求,灵活方便;
S4,自定义查询视图:所述自定义查询视图包括视图定义和条件配置两个部分,视图定义用于确认查询的字段范围,条件配置用于约束查询的数据范围,视图与条件为一对多关系,存储在数据库中;所述自定义查询视图采用类sql语句的方式进行配置,与所述S3中搜索引擎查询接口一致;提出了查询字段和查询条件分离的视图定义模式,用户可以将常用的查询字段和表信息以类sql的方式保存成视图,在此视图基础上,将常用的查询条件以类sql的方式保存成条件配置,便于用户快捷高效的进行查询请求拼接和修改;
S5,数据标签管理:对查询出来的结果数据,批量打上用户自定义的标签,并将关系存储在数据库中;打上标签的数据,可以通过标签直接过滤查询出来,或者与查询条件组合查询结果;提出了数据标签机制,用户可以针对指定的数据批量打上自定义标签,多个标签可组合使用,标签和查询视图也可组合使用,帮助用户快速定位到需要查询的数据,灵活方便;
S6,***化查询页面:建立一个web服务应用,将S1、S2和S3的数据以及S4、S5的功能进行集成和展示,形成***化的查询功能页面,便于用户操作。将所有的数据和功能集成到一个***化的功能页面上,使用户能够快速连贯的完成全部的查询操作,减少页面切换次数和点击次数,提升用户体验;
至此,数据从写入到查询流程结束。
图2为本发明的示例性实施例中的数据写入索引详细步骤示意图,图2在图1写入数据流程基础上进行展开,图2中箭头表示步骤顺序,具体说明如下:
开始:应用接收到提交的数据后,开始处理逻辑;
P1:拿到数据后,在数据库hbase_rowkey_info表中,按规则查询对应rowkey是否存在,存在则返回rowkey;不存在则按规则生成rowkey,并添加到hbase_rowkey_info表中;
P2:针对提交的数据字段,在hbase_column_info表中进行写入权限校验,只有预先配置过的字段,才可以进行数据提交,以确保数据的可控和查询的便利性;
P3:将获取到的rowkey和提交数据组合后,写入到Hbase对应表中;
P4:数据写入hbase成功后,如果更新数据涉及到lucene查询要的字段,则在数据库hbase_update_record表中进行流水记录,便于增量获取待更新到lucene索引中的数据;
P5:应用定时从数据库hbase_rowkey_info表中获取新增的rowkey记录,从hbase_update_record表中获取更新/删除的rowkey记录;
P6:从数据库hbase_column_info中获取lucene查询使用到的字段信息,该处区分查询字段和数据字段,主要是因为存储使用的数据字段,量往往是查询条件的多倍,全部建入索引代价很大,因此摒弃数据字段,减少资源和压力;
P7:结合P5和P6获取的信息,从hbase中查询出需要提交给lucene进行索引更新的数据;
结束:拿到待更新数据后,提交给Lucene进行索引更新;
图3为本发明的示例性实施例中查询页面总览示意图,是在图1的查询数据流程基础上形成的查询功能界面,图4~图8则是对图4的界面模块的详细示意图;
如图4所示的视图定义模块,点击“创建视图”按钮,通过类sql的语法配置视图定义并保存,用以确认待查询的字段是哪些,如图中举例:“select c.pid,p.gender,p.telephone,p.name,p.email,p.mobile_active_flag,p.mail_flag,p.country fromcommon|c#personal|p”,其中“|”代表别名,“#”代表关联表查询;如果有预置视图定义,可直接在下拉框中勾选即可;在查询条件输入框中,输入本次查询的条件,如图中举例:“pid=1or gender=0”,由于此处是查询lucene索引,所以不需要指定别名;如果希望保存本次查询条件,点击条件输入框上方的“保存”按钮即可;如果有预置查询条件,点击条件输入框上方的“历史”按钮,即可浏览选中;点击条件输入框上方的“查询”按钮,即可在D模块中展示索引查询出来的相关数据。
如图5所示的字段展示模块,待视图定义勾选完毕后,后台根据视图定义,从数据库中查询相关字段的信息,以表格形式分页展示;如果希望查看的数据字段和视图定义存在出入,可手动进行展示字段的勾选,默认是全选。
如图6所示的标签管理模块,下拉输入框中选择已有的数据标签,图中举例:“演示标签1”,点击下拉输入框右边的“标签过滤”按钮,会结合A模块的搜索条件,触发lucene索引的二次过滤查询,结果在索引数据展示模块(图8)中进行展示;下拉输入框中选择已有的的数据标签或者是输入自定义的标签名称,在索引数据展示模块(图8)中勾选需要打上标签的Hbase的rowKey记录,点击标签管理模块(图7)下拉输入框右边的“保存标签”按钮,即可保存数据标签和Hbase的rowKey的对应关系;其中,如果数据标签不存在,会自动进行创建并保存到数据库。
如图7所示的索引数据展示模块,触发lucene索引查询后,Hbase的rowKey(UID)、查询条件相关的字段和数据标签会以表格的形式分页进行展示,其中rowKey上附有超链接,点击后可触发Hbase的查询,结果会在E模块中展示。
如图8所示的Hbase数据展示模块,在索引数据展示模块(图8)中点击rowKey的超链接之后,后台会查询Hbase,然后会以表格的形式进行分页展示;至此,查询流程结束。
本发明主要用于提供一种优化Hbase大数据查询的方法及***,其有益效果是:
(1)本发明建立了基于Lucene的查询索引,提升Hbase复杂条件查询的性能;
(2)本发明避免Hbase直接进行复杂查询,减少Hbase的存储和计算压力,间接提升rowKey查询的性能;
(3)本发明支持标签管理查询功能,大大丰富了复杂的查询场景;
(4)本发明提供一套功能完整的***化查询界面,精简查询操作流程,优化用户体验。
以上实施例不以任何方式限定本发明,凡是对以上实施例以等效变换方式做出的其它改进与应用,都属于本发明的保护范围。
Claims (4)
1.一种优化Hbase大数据查询的方法,其特征在于:包括数据库存储Hbase的rowKey和更新记录,在数据库存储Hbase中列的基本信息,基于Lucene建立查询索引,自定义查询视图,数据标签管理和***化的查询页面的步骤,具体为:
S1,数据库存储Hbase的rowKey和更新记录:
在往Hbase中添加或删除数据之前,将数据rowKey和相关操作信息在数据库中存储一份,内容包括以下字段:rowKey、Hbase表名、逻辑删除标志、添加时间、更新时间,用于为建立lucene查询索引提供基础数据支撑;
当Hbase中查询条件列数据发生变更时,往数据库中回写流水记录信息,包括字段:rowKey、Hbase表名、是否删除标志以及添加时间,用于为lucene索引增量更新或增量删除提供基础数据支撑;
S2,在数据库存储Hbase中列的基本信息:在数据库中存一份定义关系,包括Hbase数据的表名、列簇和列名,并维护其对应的中文释义,用于查询页面展示;
S3,基于Lucene建立查询索引:日终应用通过S1中rowKey和更新记录,以及S2中列的基本信息,从Hbase中取出相应的数据,提交给基于lucene的搜索引擎更新索引,所述搜索引擎对外提供类sql语句方式的查询接口;
S4,自定义查询视图:所述自定义查询视图包括视图定义和条件配置两个部分,所述视图定义用于确认查询的字段范围,所述条件配置用于约束查询的数据范围,视图与条件为一对多关系,存储在数据库中;所述自定义查询视图采用类sql语句的方式进行配置,与所述S3中搜索引擎的查询接口一致;
S5,数据标签管理:对查询出来的结果数据,批量打上用户自定义的标签,并将关系存储在数据库中;打上标签的数据,可以通过标签直接过滤查询出来,或者与查询条件组合查询结果;
S6,***化的查询页面:建立一个web服务应用,将S1、S2和S3中的数据以及S4、S5中的功能进行集成和展示,形成***化的查询功能页面。
2.如权利要求1所述的一种优化Hbase大数据查询的方法,其特征在于:所述S1中,数据库存储Hbase所有rowKey信息,记录rowKey的增删时间,用于日终应用查出增删的数据提交给lucene索引;记录Hbase中Lucene索引相关数据的更新流水记录,用于日终应用查出更新数据提交给lucene索引。
3.如权利要求2所述的一种优化Hbase大数据查询的方法,其特征在于:所述S2中,在数据库中存储了Hbase相关表和列的配置信息,根据所述配置信息对所有进入Hbase的数据进行权限控制和范围校验。
4.如权利要求3所述的一种优化Hbase大数据查询的方法,其特征在于:所述S3中,基于Lucene建立查询索引中,日终应用接收到提交的数据后,开始处理逻辑,具体包括如下步骤:
S3-1:在数据库hbase_rowkey_info表中,按规则查询对应rowkey是否存在,存在则返回rowkey;不存在则按规则生成rowkey,并添加到hbase_rowkey_info表中;
S3-2:针对提交的数据字段,在hbase_column_info表中进行写入权限校验,预先配置过的字段可以进行数据提交;
S3-3:将获取到的rowkey和提交数据组合后,写入到Hbase对应表中;
S3-4:数据写入hbase成功后,如果更新数据涉及到lucene查询要的字段,则在数据库hbase_update_record表中进行流水记录,便于增量获取待更新到lucene索引中的数据;
S3-5:日终应用定时从数据库hbase_rowkey_info表中获取新增的rowkey记录,从hbase_update_record表中获取更新或删除的rowkey记录;
S3-6:从数据库hbase_column_info中获取lucene查询使用到的字段信息,区分查询字段和数据字段;
S3-7:结合S3-5和S3-6获取的信息,从hbase中查询出需要提交给lucene进行索引更新的数据;将待更新数据提交给Lucene进行索引更新。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010305095.3A CN111488379B (zh) | 2020-04-17 | 2020-04-17 | 一种优化Hbase大数据查询的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010305095.3A CN111488379B (zh) | 2020-04-17 | 2020-04-17 | 一种优化Hbase大数据查询的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111488379A true CN111488379A (zh) | 2020-08-04 |
CN111488379B CN111488379B (zh) | 2022-07-19 |
Family
ID=71812831
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010305095.3A Active CN111488379B (zh) | 2020-04-17 | 2020-04-17 | 一种优化Hbase大数据查询的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111488379B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112000849A (zh) * | 2020-08-21 | 2020-11-27 | 河南中原消费金融股份有限公司 | 统一标签库管理方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104636389A (zh) * | 2013-11-14 | 2015-05-20 | 博雅网络游戏开发(深圳)有限公司 | 实现Hbase数据库实时查询的方法和*** |
CN106227788A (zh) * | 2016-07-20 | 2016-12-14 | 浪潮软件集团有限公司 | 一种以Lucene为基础的数据库查询方法 |
CN106326429A (zh) * | 2016-08-25 | 2017-01-11 | 武汉光谷信息技术股份有限公司 | 一种基于solr的Hbase秒级查询方案 |
-
2020
- 2020-04-17 CN CN202010305095.3A patent/CN111488379B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104636389A (zh) * | 2013-11-14 | 2015-05-20 | 博雅网络游戏开发(深圳)有限公司 | 实现Hbase数据库实时查询的方法和*** |
CN106227788A (zh) * | 2016-07-20 | 2016-12-14 | 浪潮软件集团有限公司 | 一种以Lucene为基础的数据库查询方法 |
CN106326429A (zh) * | 2016-08-25 | 2017-01-11 | 武汉光谷信息技术股份有限公司 | 一种基于solr的Hbase秒级查询方案 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112000849A (zh) * | 2020-08-21 | 2020-11-27 | 河南中原消费金融股份有限公司 | 统一标签库管理方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111488379B (zh) | 2022-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8914414B2 (en) | Integrated repository of structured and unstructured data | |
US8442982B2 (en) | Extended database search | |
US8429519B2 (en) | Presentation generator | |
US8086592B2 (en) | Apparatus and method for associating unstructured text with structured data | |
US10671671B2 (en) | Supporting tuples in log-based representations of graph databases | |
EP2874077B1 (en) | Stateless database cache | |
US9659054B2 (en) | Database browsing system and method | |
US20140089338A1 (en) | Query translation for searching complex structures of objects | |
US20150127634A1 (en) | Electronic document retrieval and reporting | |
CN111400323A (zh) | 数据检索方法、***、设备及存储介质 | |
US9990407B2 (en) | Stand-alone database browsing system and method | |
US7895337B2 (en) | Systems and methods of generating a content aware interface | |
US20180357328A1 (en) | Functional equivalence of tuples and edges in graph databases | |
CN111488379B (zh) | 一种优化Hbase大数据查询的方法 | |
US20240037325A1 (en) | Ability to add non-direct ancestor columns in child spreadsheets | |
CN112988796B (zh) | 一种***数据检索的***与方法 | |
CN113515504B (zh) | 数据管理方法、装置、电子设备以及存储介质 | |
CN113626004A (zh) | 一种基于配置模式的快速开发*** | |
US20190171747A1 (en) | Simplified access for core business with enterprise search | |
CN114154072A (zh) | 检索方法、装置、电子设备以及存储介质 | |
Zhu et al. | Description and representation model of spatial object incremental update | |
CN114356957A (zh) | 报表的形成方法及装置、电子设备、计算机可读存储介质 | |
CN112882693A (zh) | 一种数据管理***设计方法 | |
JP2000067073A (ja) | 文書管理装置および文書管理方法 | |
Chiu et al. | Approach Version 2.0. |
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 |