CN108334596B - 一种面向大数据平台的海量关系数据高效并行迁移方法 - Google Patents
一种面向大数据平台的海量关系数据高效并行迁移方法 Download PDFInfo
- Publication number
- CN108334596B CN108334596B CN201810095569.9A CN201810095569A CN108334596B CN 108334596 B CN108334596 B CN 108334596B CN 201810095569 A CN201810095569 A CN 201810095569A CN 108334596 B CN108334596 B CN 108334596B
- Authority
- CN
- China
- Prior art keywords
- data
- partition
- migration
- partitions
- division
- 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
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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种面向大数据平台的海量关系数据高效并行迁移方法,包括以下步骤:输入迁移表名、划分列、并行度;迁移任务决策器从RDBMS中获取迁移表的元数据;根据迁移表的元数据对迁移表进行分区划分;计算划分的各分区的数据密度;判断各分区划分是否均匀;若分区划分均匀则将划分结果发送至Hadoop;若分区划分不均匀,则迁移任务决策器对分区进行重划分,并将新划分结果发送至Hadoop;Hadoop根据接收信息创建、执行数据迁移作业,实现数据从RDBMS高效并行迁移至HDFS、HBase。本发明提供的一种面向大数据平台的海量关系数据高效并行迁移方法设计科学合理,既能保证数据的高效抽取,又避免了数据抽取过程中的数据倾斜问题;还解决了数据迁移至HDFS后数据分布不均的问题。
Description
技术领域
本发明涉及大数据迁移传输领域,具体来说,是一种面向大数据平台的海量关系数据高效并行迁移方法。
背景技术
近年来,随着互联网技术的迅猛发展,越来越多的数据正呈爆炸性的增长,人类进入了大数据时代。在大数据时代,数据的价值日益凸显,如何利用现有技术,将数据全面汇总并快速返回分析结果,挖掘数据背后隐藏的价值已成为大数据分析迫切需要解决的问题。大数据分析的前提是海量数据存储问题,而传统关系型数据库对海量数据存储、查询和分析表现得越发的力不从心。面对海量数据,传统关系型数据库存在扩展性差、查询效率低以及难以应对高并发请求等缺点。而分布式文件系统以及NoSQL数据库很好的解决了海量数据存储的问题,但现在企业或机构中仍有大量数据是存储于传统数据库或传统文件系统中的,故存在把数据从关系型数据库迁移到大数据平台的需求。
由于Hadoop生态系统具有开源、功能多样、灵活、可扩展性强、稳定性好等诸多优点,现以成为众多企业面临大数据问题的优先解决方案。故研究海量数据迁移至大数据平台具有重大的实际意义。
现有大数据迁移工具有Sqoop、DataX、Kettle、Talend等,但每一种工具或方案都有较大的不足之处。例如,Kettle和Talend与Hadoop存在版本兼容问题;Sqoop存在学习成本高、迁移时易出现数据倾斜、安全机制不够完善等问题;DataX采用多线程并发实现数据抽取,但性能比基于MapReduce实现的Sqoop低。海量数据迁移对迁移性能非常注重,提高大数据迁移工具性能,不仅能节省海量数据迁移时间、减少数据迁移成本,还能降低数据迁移风险。
虽然最近几年在大数据迁移开展了不少研究工作,然而,大部分研究工作都集中在传统关系型数据库与NoSQL之间的数据模式转换上,而对大数据迁移工具性能研究较少。
发明内容
鉴于上述现有技术存在的不足,本发明目的是提供一种面向大数据平台的海量关系数据高效并行迁移方法,能根据关系大表的数据分布情况合理划分Map对应数据迁移范围,节省了数据迁移时间,减少了数据迁移风险。
为了实现上述目的,本发明所采用的一种面向大数据平台的海量关系数据高效并行迁移方法,包括以下步骤:
本发明一种面向大数据平台的海量关系数据高效并行迁移方法,该方法基于数据源、Hadoop集群、数据迁移服务器组成的数据迁移系统,所述数据迁移服务器中包括迁移任务决策器,该方法具体包括下述步骤:
S1、用户输入待迁移数据的表名、划分列和并行度参数,创建数据迁移作业;
S2、迁移任务决策器通过JDBC、ODBC从RDBMS中获取待迁移表的元数据;
S3、迁移任务决策器根据所接收待迁移表的元数据对待迁移表进行迁移分区范围划分;
S4、迁移任务决策器计算划分的各个分区实际记录数及待迁移表总记录数,判断分区范围划分是否均匀;
S5、如果步骤S4中迁移任务决策器判断分区范围划分是否均匀;
若划分均匀则将划分结果发送至Hadoop集群主节点;
若划分不均匀,则迁移任务决策器对分区进行重划分,并将重划分结果发送至Hadoop集群主节点;
S6、Hadoop集群主节点根据接收信息创建数据迁移作业,并执行数据迁移作业实现数据从RDBMS抽取至HDFS、HBase中存储。
作为优选的技术方案,所述步骤S1中,所述划分列为关系表主键或唯一键;所述并行度为MapReduce执行迁移作业MAP个数,所述MAP个数用N表示。
作为优选的技术方案,所述步骤S3中,对待迁移表进行迁移分区范围划分的具体方法为:
根据待迁移表的元数据,通过SELECT获取划分列的最小值MIN(id)和最大值MAX(id),基于并行度N,求步长I=[MAX(id)-MIN(id)]/N,根据步长I计算每个分区范围的上下界。
作为优选的技术方案,所述步骤S4中,迁移任务决策器计算划分的各个分区实际记录数及待迁移表总记录数为:
作为优选的技术方案,步骤S4中,所述迁移任务决策器的分区范围划分均匀判断方法为:
S41、根据待迁移表总记录数SUM和并行度N计算分区平均记录数AVG=SUM/N;
作为优选的技术方案,步骤S5中,所述迁移任务决策器的分区重划分步骤为:
S5.1、分区重划分预处理:根据总记录数和分区实际记录数计算分区数据密度,各个分区数据密度之和为1;在数据量情况比较大和分区实际记录数较小情况下,分区数据密度为0;对于分区数据密度为0的分区,直接与其相邻分区合并;对于连续多个分区密度为0情况,直接合并这些分区,再与相邻分区合并;
S5.2、根据分区数据密度和并行度计算各个分区对应迁移作业的Map个数,根据各个分区对应Map个数进行取整,对分区对应Map个数大于1的分区进行分裂操作,即通过SQL语句探测分区数据记录分布情况,寻找分割点切分分区;分区进行分裂操作后会形成一些小的分区,这些小的分区对应Map个数都大于0且小于1;
S5.3、统计已经成功分配Map的分区个数,然后基于并行度N计算剩下未分配Map个数,将步骤S5.2中数据密度小的分区合并分配给未分配分区的Map。
作为优选的技术方案,步骤S6中,所述执行数据迁移作业为:
基于MapReduce利用Map函数进行并行数据抽取,Map输出即将数据写入HDFS,每个Map抽取数据范围为权利要求3划分的关系表范围,表划分均匀,各个Map负载相近,Map输出到每个节点的数据量也相近。
作为优选的技术方案,步骤S6中,所述执行数据迁移作业为:
基于MapReduce利用Map函数进行并行数据抽取,每个Map抽取数据范围为权利要求6所划分的关系表范围,表划分相对均匀,各个Map负载相近,Map输出到每个节点的数据量也相近。
本发明与现有大数据迁移工具相比,具有如下优点:
1、本发明操作简单,学习成本低,无需复杂命令行操作,用户通过WEB页面输入必要信息,创建、启动迁移作业即可。
2、本发明提出的一种面向大数据平台的海量关系数据高效并行迁移方法基于MapReduce实现,利用MapReduce的并行特性,数据抽取效率高。
3、本发明提出的数据划分方法,解决了数据抽取过程中可能存在的数据倾斜问题。
4、本发明提出的数据划分方法,能将数据相对均匀的迁移至Hadoop的各个数据节点,避免了后续大数据处理过程中由于节点数据分布不均导致的单点读/写负载过重问题。
5、本发明提出的数据划分方法,能将数据相对均匀的迁移至Hadoop的各个数据节点,迁移至HDFS的数据可以通过预生成HFile文件方式导入到HBase数据库,该方式相较于HBase自身的数据导入方式更加高效。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图:
图1为本发明方法的流程图。
图2为本发明面向大数据平台的海量关系数据高效并行迁移方法实施示意图。
具体实施方式
下面结合附图对本发明作进一步的详细描述,但本发明的实施和保护范围不限于此。
如图1所示,本实施例一种面向大数据平台的海量关系数据高效并行迁移方法,包括下述步骤:
用户通过WEB页面输入待迁移表名、划分列、并行度等相关参数创建数据迁移作业;迁移任务决策器收到用户输入后,通过JDBC、ODBC接口从RDBMS中获取待迁移表的元数据;然后,迁移任务决策器根据所接收待迁移表的元数据对待迁移表进行迁移分区范围划分,划分的每一个分区内的数据记录分配给一个Map负责数据抽取;随后,迁移任务决策器计算划分的各个分区实际记录数及待迁移表总记录数,判断分区范围划分是否均匀;若迁移表分区划分均匀则将划分结果,即每个分区上下界值发送给Hadoop集群的主节点;若迁移表分区划分不均匀,则计算各分区数据密度,将数据密度大的分区进行裂变,然后将小的未分配Map的分区进行合并以达到基本均匀划分的效果,将最终重划分结果发送给Hadoop集群的主节点;Hadoop集群的主节点根据接收到的划分分区创建数据迁移Job,并响应用户创建迁移作业成功;用户选择执行创建的数据迁移Job,Hadoop集群启动执行数据迁移Job。
如图2所示,给出了一种面向大数据平台的海量关系数据高效并行迁移方法的实施方式,该迁移系统由数据源、Hadoop集群、数据迁移服务器三部分组成,其中迁移任务决策器位于数据迁移服务器。用户通过前端WEB页面录入数据迁移作业必要参数——迁移表名(TABLENAME)、划分列(PRIMARY KEY or UNIQUE KEY)、并行度(迁移作业MAP个数),并创建数据迁移作业。迁移任务决策器收到用户输入后,通过JDBC、ODBC接口从RDBMS中获取待迁移表的元数据(表列属性、主外键等)。然后,迁移任务决策器根据所接收待迁移表元数据对待迁移表进行迁移分区范围划分。分区范围划分为:
通过SQL语句查询待迁移表划分列(id)最大值MAX(id)和最小值MIN(id):SELECTMAX(id),MIN(id)FROM<TABLENAME>;
假设并行度为N,则分区步长I=(MAX(id)-MIN(id))/N;第i个分区的范围为PR(i)∈[R(i)left,R(i)right],(1≤i≤N),
其中,R(i)left=MIN(id)+I×(i-1),
当i≠N时,R(i)right=MIN(id)+I×i,
当i=N时,R(i)right=MAX(id);
迁移任务决策器判断分区范围划分是否均匀:通过聚集函数COUNT获取第i个分区实际记录数Ci,例如:
SELECT COUNT(*)FROM<TABLENAME>WHERE id≥R(i)left AND id≤R(i)right;
则迁移表总记录数分区平均记录数AVG=SUM/N,那么分区实际记录数方差分区理想记录数IDEAL=I,则分区理想记录数方差计算分区实际记录数方差与分区理想记录数方差之差的绝对值判断绝对值是否大于系统设定的阈值,若大于则认为分区划分不均匀,否则认为分区划分均匀。若划分均匀,则将划分分区范围结果发送至Hadoop集群节点并创建、执行数据迁移作业;否则,执行分区重划分,分区重划分包括:
计算分区数据密度ρi=Ci/SUM,那么存在ρ1+…+ρi+…ρN=1,(1≤i≤N)。另外,不难发现对于大表且分区实际数据记录较小情况ρi值为0。
分区重划分前预处理工作:将分区数据密度为0的分区分别与相邻数据密度非0分区进行合并(默认与左分区合并);对于连续多个分区数据密度都为0情况,则将这些连续分区先合并,再与相邻数据密度非0分区进行合并。
若Mi代表第i个分区对应Map个数,则Mi=ρi*N。若Mi>1,则该分区需要进行分裂操作。对于分裂操作,可以利用SQL语句查询划分列高低位分布情况以探测数据记录实际分布情况,寻找INT(Mi)(向下取整)个分割点,从而确定新分区范围的上下界值。分区经过分割后,会存在Mi=1或Mi<1情况,对Mi=1的分区则认为已经分配好Map。而对于Mi<1的分区,将它们合并成个分区。对于这些小分区的合并,是逻辑上的合并。至此,分区划分完毕,迁移任务决策器将分区范围划分结果发送至Hadoop集群主节点。
Hadoop集群主节点根据接收信息创建数据迁移作业,并执行数据迁移作业实现数据从RDBMS并行迁移至HDFS、HBase中存储。利用MapReduce的并行特性,通过Map过程从关系型表抽取数据直接输出至HDFS存储。由于数据迁移作业的每个Map负载相对均衡,故数据迁移效率更高,同时,Map输出的数据也可相对均匀分布在不同的节点,这有利于后续的大数据处理工作。另外,若需要迁移关系数据至HBase,可以通过先将数据迁移至HDFS,再建立相应HBase表,最后利用HBase API的PUT方法(数据量较小情况)或Bulkload方式将HDFS中数据迁入至HBase。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (7)
1.一种面向大数据平台的海量关系数据高效并行迁移方法,其特征在于,该方法基于数据源、Hadoop集群、数据迁移服务器组成的数据迁移系统,所述数据迁移服务器中包括迁移任务决策器,该方法具体包括下述步骤:
S1、用户输入待迁移数据的表名、划分列和并行度参数,创建数据迁移作业;
S2、迁移任务决策器通过JDBC、ODBC从RDBMS中获取待迁移表的元数据;
S3、迁移任务决策器根据所接收待迁移表的元数据对待迁移表进行迁移分区范围划分;
S4、迁移任务决策器计算划分的各个分区实际记录数及待迁移表总记录数,判断分区范围划分是否均匀;
S5、如果步骤S4中迁移任务决策器判断分区范围划分是否均匀;
若划分均匀则将划分结果发送至Hadoop集群主节点;
若划分不均匀,则迁移任务决策器对分区进行重划分,并将重划分结果发送至Hadoop集群主节点;
所述迁移任务决策器对分区重划分步骤为:
S5.1、分区重划分预处理:根据总记录数和分区实际记录数计算分区数据密度ρi,分区数据密度ρi=Ci/SUM,那么存在ρ1+…+ρi+…ρN=1,1≤i≤N,各个分区数据密度之和为1,其中Ci为分区实际记录数,N为并行度;在数据量情况比较大和分区实际记录数较小情况下,分区数据密度为0;对于分区数据密度为0的分区,直接与其相邻分区合并;对于连续多个分区密度为0情况,直接合并这些分区,再与相邻分区合并;
S5.2、根据分区数据密度和并行度计算各个分区对应迁移作业的Map个数,根据各个分区对应Map个数进行取整,对分区对应Map个数大于1的分区进行分裂操作,即通过SQL语句探测分区数据记录分布情况,寻找分割点切分分区;分区进行分裂操作后会形成一些小的分区,这些小的分区对应Map个数都大于0且小于1;
S5.3、统计已经成功分配Map的分区个数,然后基于并行度N计算剩下未分配Map个数,将步骤S5.2中数据密度小的分区合并分配给未分配分区的Map;
S6、Hadoop集群主节点根据接收信息创建数据迁移作业,并执行数据迁移作业实现数据从RDBMS抽取至HDFS、HBase中存储。
2.根据权利要求1所述的一种面向大数据平台的海量关系数据高效并行迁移方法,其特征在于:所述步骤S1中,所述划分列为关系表主键或唯一键;所述并行度为MapReduce执行迁移作业MAP个数,所述MAP个数用N表示。
3.根据权利要求2所述的一种面向大数据平台的海量关系数据高效并行迁移方法,其特征在于:所述步骤S3中,对待迁移表进行迁移分区范围划分的具体方法为:
根据待迁移表的元数据,通过SELECT获取划分列的最小值MIN(id)和最大值MAX(id),基于并行度N,求步长I=[MAX(id)-MIN(id)]/N,根据步长I计算每个分区范围的上下界。
6.根据权利要求3所述的一种面向大数据平台的海量关系数据高效并行迁移方法,其特征在于:步骤S6中,所述执行数据迁移作业为:
基于MapReduce利用Map函数进行并行数据抽取,Map输出即将数据写入HDFS,每个Map抽取数据范围为权利要求3划分的关系表范围,表划分均匀,各个Map负载相近,Map输出到每个节点的数据量也相近。
7.根据权利要求1所述的一种面向大数据平台的海量关系数据高效并行迁移方法,其特征在于:步骤S6中,所述执行数据迁移作业为:
基于MapReduce利用Map函数进行并行数据抽取,每个Map抽取数据范围为权利要求6所划分的关系表范围,表划分相对均匀,各个Map负载相近,Map输出到每个节点的数据量也相近。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810095569.9A CN108334596B (zh) | 2018-01-31 | 2018-01-31 | 一种面向大数据平台的海量关系数据高效并行迁移方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810095569.9A CN108334596B (zh) | 2018-01-31 | 2018-01-31 | 一种面向大数据平台的海量关系数据高效并行迁移方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108334596A CN108334596A (zh) | 2018-07-27 |
CN108334596B true CN108334596B (zh) | 2020-08-18 |
Family
ID=62927469
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810095569.9A Active CN108334596B (zh) | 2018-01-31 | 2018-01-31 | 一种面向大数据平台的海量关系数据高效并行迁移方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108334596B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110399418B (zh) * | 2019-07-26 | 2022-04-12 | 北京明略软件系统有限公司 | 数据处理方法及装置、存储介质、电子装置 |
CN110489301B (zh) * | 2019-08-22 | 2023-03-10 | 上海中通吉网络技术有限公司 | mapreduce任务性能的分析方法、装置及设备 |
CN110502505A (zh) * | 2019-08-29 | 2019-11-26 | 中国农业银行股份有限公司 | 一种数据迁移方法及装置 |
CN111258985A (zh) * | 2020-01-17 | 2020-06-09 | 中国工商银行股份有限公司 | 数据集群迁移方法及装置 |
CN113238993B (zh) * | 2021-05-14 | 2023-12-05 | 中国人民银行数字货币研究所 | 一种数据处理方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102799486A (zh) * | 2012-06-18 | 2012-11-28 | 北京大学 | 一种MapReduce系统中的数据采样和划分方法 |
CN104239529A (zh) * | 2014-09-19 | 2014-12-24 | 浪潮(北京)电子信息产业有限公司 | 防止Hive数据倾斜的方法和装置 |
CN106970929A (zh) * | 2016-09-08 | 2017-07-21 | 阿里巴巴集团控股有限公司 | 数据导入方法及装置 |
-
2018
- 2018-01-31 CN CN201810095569.9A patent/CN108334596B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102799486A (zh) * | 2012-06-18 | 2012-11-28 | 北京大学 | 一种MapReduce系统中的数据采样和划分方法 |
CN104239529A (zh) * | 2014-09-19 | 2014-12-24 | 浪潮(北京)电子信息产业有限公司 | 防止Hive数据倾斜的方法和装置 |
CN106970929A (zh) * | 2016-09-08 | 2017-07-21 | 阿里巴巴集团控股有限公司 | 数据导入方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108334596A (zh) | 2018-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108334596B (zh) | 一种面向大数据平台的海量关系数据高效并行迁移方法 | |
EP3120261B1 (en) | Dependency-aware transaction batching for data replication | |
CN110019218B (zh) | 数据存储与查询方法及设备 | |
US11030196B2 (en) | Method and apparatus for processing join query | |
US9639542B2 (en) | Dynamic mapping of extensible datasets to relational database schemas | |
US20170083573A1 (en) | Multi-query optimization | |
EP2891994A1 (en) | Method for achieving automatic synchronization of multisource heterogeneous data resources | |
US11163724B2 (en) | Data pruning based on metadata | |
WO2017096892A1 (zh) | 索引构建方法、查询方法及对应装置、设备、计算机存储介质 | |
KR101653776B1 (ko) | 데이터 분할 방법 및 장치 | |
US10565201B2 (en) | Query processing management in a database management system | |
JP2017512338A (ja) | 第一クラスデータベース要素としての半構造データの実装 | |
US20180150536A1 (en) | Instance-based distributed data recovery method and apparatus | |
CN106294695A (zh) | 一种面向实时大数据搜索引擎的实现方法 | |
US9734177B2 (en) | Index merge ordering | |
US11455302B2 (en) | Distributed histogram computation framework using data stream sketches and samples | |
CN111723161A (zh) | 一种数据处理方法、装置及设备 | |
Kang et al. | Reducing i/o cost in olap query processing with mapreduce | |
US11886404B2 (en) | Automated database modeling | |
CN115292285A (zh) | 一种基于分布式架构的数据专题管理方法及系统 | |
CN113297252A (zh) | 一种模式无感知的数据查询服务方法 | |
WO2017019883A1 (en) | Locality-sensitive hashing for algebraic expressions | |
JP2017010376A (ja) | マートレス検証支援システムおよびマートレス検証支援方法 | |
CN105022743A (zh) | 一种管理索引的方法及装置 | |
WO2024119980A1 (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 |