CN116821102B - 数据迁移方法、装置、计算机设备和存储介质 - Google Patents

数据迁移方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN116821102B
CN116821102B CN202311079590.7A CN202311079590A CN116821102B CN 116821102 B CN116821102 B CN 116821102B CN 202311079590 A CN202311079590 A CN 202311079590A CN 116821102 B CN116821102 B CN 116821102B
Authority
CN
China
Prior art keywords
cloud
data
file
identifier
target
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
CN202311079590.7A
Other languages
English (en)
Other versions
CN116821102A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202311079590.7A priority Critical patent/CN116821102B/zh
Publication of CN116821102A publication Critical patent/CN116821102A/zh
Application granted granted Critical
Publication of CN116821102B publication Critical patent/CN116821102B/zh
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/21Design, administration or maintenance of databases
    • G06F16/214Database migration support
    • 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/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • 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
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请涉及一种数据迁移方法、装置、计算机设备、存储介质和计算机程序产品。该方法包括:基于数据迁移请求获取待迁移的冷数据集;将冷数据集中的数据标识进行云数据标识转换,得到目标冷数据集;基于目标冷数据集进行对象数据转换,得到云对象数据文件,并确定云对象数据文件对应的目标元数据和目标索引信息;将目标元数据和目标索引信息关联保存,目标元数据和目标索引信息用于访问云对象数据存储空间中的云对象数据文件;将云对象数据文件、目标元数据和目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将冷数据集进行删除。采用本方法能够在保证访问性能的同时,极大的降低存储成本。

Description

数据迁移方法、装置、计算机设备和存储介质
技术领域
本申请涉及计算机技术领域,特别是涉及一种数据迁移方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
随着计算机技术的发展,出现了数据库技术,通常使用数据库技术来存储业务数据,比如,通常将线上业务产生的数据使用高性能存储设备进行存储。该线上业务产生的数据通常包括有冷数据,冷数据是指不被频繁访问或者使用的数据,冷数据的数据状态不活跃。使用高性能存储设备来存储冷数据导致存储成本较高。目前,为了节省存储成本,通常使用低成本的存储设备将冷数据进行存储,然而,使用低成本的存储设备存储冷数据会导致冷数据的访问性能下降。
发明内容
基于此,有必要针对上述技术问题,提供一种能够保证访问性能的同时极大降低存储成本的数据迁移方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种数据迁移方法。所述方法包括:
获取数据迁移请求,基于数据迁移请求获取待迁移的冷数据集;
将冷数据集中的数据标识进行云数据标识转换,得到目标冷数据集;
基于目标冷数据集进行对象数据转换,得到云对象数据文件,并确定云对象数据文件对应的目标元数据和目标索引信息,目标元数据用于描述云对象数据文件对应的云数据标识范围,目标索引信息用于确定云对象数据文件在云对象数据存储空间中的位置;
将目标元数据和目标索引信息关联保存,目标元数据和目标索引信息用于访问云对象数据存储空间中的云对象数据文件;
将云对象数据文件、目标元数据和目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将冷数据集进行删除。
第二方面,本申请还提供了一种数据迁移装置。所述装置包括:
冷数据获取模块,用于获取数据迁移请求,基于数据迁移请求获取待迁移的冷数据集;
标识转换模块,用于将冷数据集中的数据标识进行云数据标识转换,得到目标冷数据集;
数据转换模块,用于基于目标冷数据集进行对象数据转换,得到云对象数据文件,并确定云对象数据文件对应的目标元数据和目标索引信息,目标元数据用于描述云对象数据文件对应的云数据标识范围,目标索引信息用于确定云对象数据文件在云对象数据存储空间中的位置;
信息保存模块,用于将目标元数据和目标索引信息关联保存,目标元数据和目标索引信息用于访问云对象数据存储空间中的云对象数据文件;
数据迁移模块,用于将云对象数据文件、目标元数据和目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将冷数据集进行删除。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取数据迁移请求,基于数据迁移请求获取待迁移的冷数据集;
将冷数据集中的数据标识进行云数据标识转换,得到目标冷数据集;
基于目标冷数据集进行对象数据转换,得到云对象数据文件,并确定云对象数据文件对应的目标元数据和目标索引信息,目标元数据用于描述云对象数据文件对应的云数据标识范围,目标索引信息用于确定云对象数据文件在云对象数据存储空间中的位置;
将目标元数据和目标索引信息关联保存,目标元数据和目标索引信息用于访问云对象数据存储空间中的云对象数据文件;
将云对象数据文件、目标元数据和目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将冷数据集进行删除。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取数据迁移请求,基于数据迁移请求获取待迁移的冷数据集;
将冷数据集中的数据标识进行云数据标识转换,得到目标冷数据集;
基于目标冷数据集进行对象数据转换,得到云对象数据文件,并确定云对象数据文件对应的目标元数据和目标索引信息,目标元数据用于描述云对象数据文件对应的云数据标识范围,目标索引信息用于确定云对象数据文件在云对象数据存储空间中的位置;
将目标元数据和目标索引信息关联保存,目标元数据和目标索引信息用于访问云对象数据存储空间中的云对象数据文件;
将云对象数据文件、目标元数据和目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将冷数据集进行删除。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取数据迁移请求,基于数据迁移请求获取待迁移的冷数据集;
将冷数据集中的数据标识进行云数据标识转换,得到目标冷数据集;
基于目标冷数据集进行对象数据转换,得到云对象数据文件,并确定云对象数据文件对应的目标元数据和目标索引信息,目标元数据用于描述云对象数据文件对应的云数据标识范围,目标索引信息用于确定云对象数据文件在云对象数据存储空间中的位置;
将目标元数据和目标索引信息关联保存,目标元数据和目标索引信息用于访问云对象数据存储空间中的云对象数据文件;
将云对象数据文件、目标元数据和目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将冷数据集进行删除。
上述数据迁移方法、装置、计算机设备、存储介质和计算机程序产品,通过获取待迁移的冷数据集;将冷数据集中的数据标识进行云数据标识转换,得到目标冷数据集;基于目标冷数据集进行对象数据转换,得到云对象数据文件,并确定云对象数据文件对应的目标元数据和目标索引信息,目标元数据用于描述云对象数据文件对应的云数据标识范围,目标索引信息用于确定云对象数据文件在云对象数据存储空间中的位置;将目标元数据和目标索引信息关联保存,目标元数据和目标索引信息用于访问云对象数据存储空间中的云对象数据文件;将云对象数据文件、目标元数据和目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将冷数据集进行删除。即在将冷数据集迁移到云对象数据存储空间,并使用保存的目标元数据和目标索引信息进行访问,从而可以在保证访问性能的同时极大降低存储成本。
附图说明
图1为一个实施例中数据迁移方法的应用环境图;
图2为一个实施例中数据迁移方法的流程示意图;
图3为一个具体实施例中信息文件的结构示意图;
图4为一个实施例中数据合并的流程示意图;
图5为一个具体实施例中数据迁移的框架示意图;
图6为一个具体实施例中数据迁移的流程示意图;
图7为一个实施例中数据查询的流程示意图;
图8为一个具体实施例中通过代理服务访问的架构示意图;
图9为一个具体实施例中数据查询的流程示意图;
图10为一个实施例中数据统计的流程示意图;
图11为一个实施例中数据删除的流程示意图;
图12为一个实施例中数据更新的流程示意图;
图13为另一个具体实施例中数据迁移的流程示意图;
图14为一个具体实施例中数据迁移应用场景的结构示意图;
图15为一个实施例中数据迁移装置的结构框图;
图16为一个实施例中计算机设备的内部结构图;
图17为另一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的数据迁移方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信,服务器104通过网络与云对象存储空间进行通信。数据存储***可以存储数据,数据存储***可以集成在服务器104上,也可以单独设置。服务器104获取终端102发送的数据迁移请求,基于数据迁移请求获取待迁移的冷数据集;服务器104将冷数据集中的数据标识进行云数据标识转换,得到目标冷数据集;服务器104基于目标冷数据集进行对象数据转换,得到云对象数据文件,并确定云对象数据文件对应的目标元数据和目标索引信息,目标元数据用于描述云对象数据文件对应的云数据标识范围,目标索引信息用于确定云对象数据文件在云对象数据存储空间中的位置;服务器104将目标元数据和目标索引信息关联保存,目标元数据和目标索引信息用于访问云对象数据存储空间中的云对象数据文件;服务器104将云对象数据文件、目标元数据和目标索引信息向云对象数据存储空间106进行数据迁移,并当数据迁移完成时,将冷数据集进行删除。其中,终端102可以但不限于是各种台式计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。云对象存储空间106可以是提供云计算服务的云服务器。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
在一个实施例中,如图2所示,提供了一种数据迁移方法,以该方法应用于图1中的服务器为例进行说明,可以理解的是,该方法也可以应用于终端,还可以应用于包括终端和服务器的***,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:
S202,获取数据迁移请求,基于数据迁移请求获取待迁移的冷数据集。
其中,数据迁移请求是指将冷数据进行迁移的请求。待迁移的冷数据集是指需要迁移的冷数据的集合,该冷数据可以是各种类型的数据,比如,图像类型数据、文本类型数据、语音类型数据以及数值类型数据等等。该冷数据也可以是各种业务场景中的数据,该业务场景可以是即时通讯业务场景、直播业务场景、网络交易业务场景以及视频分享业务场景等等。该冷数据还可以是不同语言的数据,该语言可以是不同国家的真实语言,比如中文、日文、英文、俄文等等。 该冷数据还可以是不同存储格式的数据等。
具体地,服务器可以获取到终端上传的数据迁移请求,然后根据数据迁移请求按照预先设置好的冷数据的范围来获取待迁移的冷数据集。服务器也可以解析数据迁移请求,根据数据迁移请求中携带的要迁移的冷数据标识范围来获取待迁移的冷数据集。在一个实施例中,服务器可以直接从数据库中存储的数据中按照要迁移的冷数据标识范围来查找到待迁移的冷数据集。在一个实施例中,数据可以是分布式存储的,则服务器可以从分布式节点中获取待迁移的冷数据集,该分布式节点可以是服务器。
在一个实施例中,服务器可以根据触发事件触发数据迁移指令,根据数据迁移指令获取待迁移的冷数据集。其中,触发事件是指预先设置好的用于进行冷数据迁移的事件,比如,服务器检测到当前时间点是预先设置好的冷数据迁移时间点时,触发数据迁移指令。服务器检测到当前数据存储空间达到预先设置好的已使用阈值时,触发数据迁移指令。服务器检测到数据量达到预先设置好的上限时,触发数据迁移指令。
S204,将冷数据集中的数据标识进行云数据标识转换,得到目标冷数据集。
其中,数据标识用于标识冷数据集中对应的冷数据。不同冷数据对应数据标识的类型可以不同,比如,冷数据对应数据标识的类型可以是数值类型,也可以是字符串类型等。云数据标识用于唯一标识对应的冷数据,所有冷数据的云数据标识类型是一致的。
具体地,服务器将冷数据集中冷数据的数据标识进行转换,其中,将数据标识的类型进行转换,即将数据标识的类型转换为云数据标识的类型,比如,可以将不同类型的数据标识都转换成字符串类型。服务器也可以将数据标识本身进行转换,即可以将类型转换后的数据标识进行唯一性转换,比如,可以通过添加唯一性字符串的形式来得到转换后的云数据标识,该唯一性字符串可以是预先设置好的序列信息、时间信息等等,可以根据需要设置唯一性字符串的具体内容。最后服务器通过转换得到冷数据对应的云数据标识,根据云数据标识和对应的冷数据得到目标冷数据集。
S206,基于目标冷数据集进行对象数据转换,得到云对象数据文件,并确定云对象数据文件对应的目标元数据和目标索引信息,目标元数据用于描述云对象数据文件对应的云数据标识范围,目标索引信息用于确定云对象数据文件在云对象数据存储空间中的位置。
其中,云对象数据文件是指冷数据按照对象存储的数据格式转换后得到的云对象数据的文件,云对象数据是可以存储在云对象存储空间中的对象数据。云对象数据文件中存储有各个云对象数据和每个云对象数据对应的云数据标识。云对象数据是冷数据集中的冷数据通过对象数据转换得到的。对象存储是指一种以非结构化格式(称为对象)存储和管理数据的技术。目标元数据是指用于描述云对象数据文件对应的云数据标识范围,即该目标云数据中保存有云对象数据文件中存储的云对象数据的云数据标识范围,该云数据标识范围可以通过云对象数据文件中云数据标识的上限值和下限值来表示。目标索引信息用于确定云对象数据文件在云对象数据存储空间中的位置。云对象数据文件在云对象数据存储空间中的位置可以包括大小和偏移。
具体地,服务器将目标冷数据集中的每个冷数据都转换为对应的云对象数据,然后服务器根据转换后的云对象数据来得到云对象数据文件。服务器可以根据预先设置好的文件大小来确定云对象数据文件中存储的云对象数据的数量,然后按照预先设置好的文件大小将所有的云对象数据进行分配,得到各个云对象数据文件,该各个云对象数据文件中的云对象数据是按照云数据标识的顺序排列的。然后根据各个云对象数据文件对应的云数据标识范围来生成目标元数据,并根据云对象数据文件中云数据标识的顺序和文件大小来确定云对象数据文件在云对象数据存储空间中的位置,进而生成所有云对象数据文件对应的目标索引信息。
S208,将目标元数据和目标索引信息关联保存,目标元数据和目标索引信息用于访问云对象数据存储空间中的云对象数据文件。
具体地,服务器将云对象数据文件对应的目标元数据和目标索引信息关联保存,然后服务器可以使用目标元数据和目标索引信息访问云对象数据存储空间中的云对象数据文件,比如,使用目标元数据和目标索引信息查找云对象数据存储空间中存储的云对象数据文件,使用目标元数据和目标索引信息对云对象数据存储空间中存储的云对象数据进行统计,使用目标元数据和目标索引信息对云对象数据存储空间中存储的云对象数据进行更新和删除等等。
S210,将云对象数据文件、目标元数据和目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将冷数据集进行删除。
具体地,服务器将云对象数据文件、目标元数据和目标索引信息上传到云对象数据存储空间中,云对象数据存储空间获取到云对象数据文件、目标元数据和目标索引信息并进行保存。然后服务器检测到当数据迁移完成时,可以将数据库中存储的冷数据集进行删除。服务器也可以将分布式节点存储的冷数据集进行删除。在一个实施例中,当有至少两个云对象数据文件时,服务器可以在所有云对象数据文件都进行数据迁移完成后,将冷数据集进行删除。服务器也可以在任意一个云对象数据文件进行数据迁移完成后,将数据迁移完成的云对象数据文件中云对象数据对应的冷数据进行删除。
上述数据迁移方法,通过获取待迁移的冷数据集;将冷数据集中的数据标识进行云数据标识转换,得到目标冷数据集;基于目标冷数据集进行对象数据转换,得到云对象数据文件,并确定云对象数据文件对应的目标元数据和目标索引信息,目标元数据用于描述云对象数据文件对应的云数据标识范围,目标索引信息用于确定云对象数据文件在云对象数据存储空间中的位置;将目标元数据和目标索引信息关联保存,目标元数据和目标索引信息用于访问云对象数据存储空间中的云对象数据文件;将云对象数据文件、目标元数据和目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将冷数据集进行删除。即在将冷数据集迁移到云对象数据存储空间,并使用保存的目标元数据和目标索引信息进行访问,从而可以在保证访问性能的同时极大降低存储成本。
在一个实施例中,S204,将冷数据集中的数据标识进行云数据标识转换,得到目标冷数据集,包括步骤:
将冷数据集中数据标识对应的数据类型进行转换,得到目标数据类型的数据标识;获取序列标识,将序列标识与目标数据类型的数据标识进行组合,得到云数据标识;将冷数据集中的数据标识更新为云数据标识,得到目标冷数据集。
其中,目标数据类型是指预先设置好的云数据标识的数据类型,比如,可以是字符串类型,也可以是数值类型,也可以是二进制类型等等。序列标识用于唯一标识按照顺序排列的云对象数据,是根据云对象数据在云对象数据文件中的排列顺序确定的。
具体地,服务器将冷数据集中数据标识对应的数据类型进行转换,得到目标数据类型的数据标识,即服务器可以将数据标识对应的所有数据类型都归一化为string(字符串)类型,比如,有两条存储冷数据的文档,一个文档中的数据标识为double类型,另一个文档中的数据标识是string类型,此时,可以都转换为string类型。然后服务器可以获取序列标识,将序列标识与目标数据类型的数据标识进行组合,其中,可以是将目标数据类型的数据标识与序列标识进行首尾拼接,得到云数据标识。最后服务器将冷数据集中的数据标识更新为云数据标识,得到目标冷数据集。在一个实施例中,服务器还可以获取到标识信息,比如,该标识信息可以是时间信息、冷数据的属性信息,该属性信息可以是冷数据大小、冷数据数量以及冷数据的最大值和最小值等等。然后将获取到标识信息与目标数据类型的数据标识以及序列标识进行首尾拼接,得到目标云数据标识。
在一个具体的实施例中,服务器获取到的double类型的数据标识可以包括:uuid(通用唯一标识符)为“1”的冷数据、uuid为“2”的冷数据,然后将数据标识的类型进行转换,得到字符串类型的数据标识包括uuid“1”对应的“+\u002\u004”,uuid为“2”对应的“+\u004\u004”。然后可以获取到string类型的数据标识可以包括:uuid为“1”的冷数据、uuid为“CMongo”的冷数据。然后将数据标识的类型进行转换,得到的数据标识包括然后将数据标识进行转换,得到字符串类型的数据标识包括uuid“1”对应的“<1\u000\u004”,uuid“CMongo”对应的“<CMongo\u000\u004”。
在上述实施例中,通过将数据标识对应的数据类型进行转换,并与序列标识组合,得到云数据标识,然后将冷数据集中的数据标识更新为云数据标识,得到目标冷数据集,从而保证生成的云数据标识的唯一性。
在一个实施例中,S206,确定云对象数据文件对应的目标元数据和目标索引信息,包括步骤:
获取云对象数据文件中云数据标识上限值和云数据标识下限值,基于云数据标识上限值和云数据标识下限值确定云对象数据文件对应的目标元数据;获取云对象数据文件在云对象数据存储空间中的位置信息,基于位置信息确定云对象数据文件对应的目标索引信息。
其中,云数据标识上限值用于表征云对象数据文件中最大的云数据标识。云数据标识下限值用于表征云对象数据文件中最小的云数据标识。
具体地,服务器可以直接从云对象数据文件中查找到云数据标识上限值和云数据标识下限值,其中,云对象数据文件是按照云数据标识顺序排列的,可以直接获取到云对象数据文件中的起始云数据标识和终止云数据标识,从而得到云数据标识上限值和云数据标识下限值。然后根据数据标识上限值和云数据标识下限值确定云对象数据文件对应的目标元数据。在一个实施例中,服务器还可以获取到云对象数据文件的文件属性信息,比如,文件中冷数据数量、文件总大小等等,将该文件属性信息也作为对象数据文件对应的目标元数据。然后服务器获取云对象数据文件在云对象数据存储空间中的位置信息,其中,也可以获取到云对象数据文件在云对象数据存储空间中的偏移和大小,从而得到云对象数据文件的位置信息,然后将云对象数据文件的位置信息作为云对象数据文件对应的目标索引信息。在一个实施例中,还可以获取到云数据标识在云对象数据文件中的偏移和大小,从而得到云对象数据的位置信息,也可以将云对象数据的位置信息作为索引信息。
在上述实施例中,通过获取云对象数据文件中云数据标识上限值和云数据标识下限值,基于云数据标识上限值和云数据标识下限值确定云对象数据文件对应的目标元数据;获取云对象数据文件在云对象数据存储空间中的位置信息,基于位置信息确定云对象数据文件对应的目标索引信息,从而保证得到的目标元数据和目标索引信息的准确性。
在一个实施例中,数据迁移方法,还包括步骤:
将云对象数据文件中的云数据标识进行哈希映射,得到云数据标识对应的各个哈希值;基于各个哈希值生成云数据标识对应的目标位数组,基于目标位数组确定云对象数据文件对应的标识存在检测信息;将标识存在检测信息、目标元数据和目标索引信息关联保存。
其中,哈希映射是指使用哈希函数进行映射。使用不同的哈希函数对同一云数据标识进行哈希映射,可以得到各个不同的哈希值。标识存在检测信息用于表征云数据标识在对应的云对象数据文件中。通过该标识存在检测信息可以检测任意一个云数据标识是否在云对象数据文件中,可以用来过滤未在云对象数据文件中的云数据标识。哈希函数是指将哈希表中元素的关键键值映射为元素存储位置的函数。
具体地,服务器使用预先设置好的各个哈希函数对云对象数据文件中的云数据标识进行哈希映射,得到云数据标识对应的各个哈希值。比如,可以将云数据标识转化为一个整数,然后将整数对10取余,得到哈希值,可以将云数据标识中的每个字符的ASCII(一种字符编码标准)码值相加,然后将和对10取余,得到哈希值,可以将字符串翻转,然后将翻转后的字符串转化为一个整数,然后将整数对10取余,得到哈希值。然后使用各个哈希值生成云数据标识对应的目标位数组,其中,可以先获取到初始化的位数组,然后在得到各个哈希值后,根据各个哈希值确定位数组中的初始元素位置,然后将初始元素位置中的初始元素修改为目标元素,从而得到目标位数组。最后服务器可以生成云对象数据文件中每个云数据标识对应的目标位数组,将所有的目标位数组作为云对象数据文件对应的标识存在检测信息。最后服务器将标识存在检测信息、目标元数据和目标索引信息关联保存。
在上述实施例中,通过将云对象数据文件中的云数据标识进行哈希映射,得到云数据标识对应的各个哈希值,然后基于各个哈希值生成云数据标识对应的目标位数组,基于目标位数组确定云对象数据文件对应的标识存在检测信息,最后将标识存在检测信息、目标元数据和目标索引信息关联保存,即可以通过标识存在检测信息、目标元数据和目标索引信息访问云对象存储空间中存储的数据,从而提高了访问性能。
在一个具体的实施例中,将冷数据集进行对象数据转换后,得到四类文件,包括云对象数据文件、目标元数据文件、目标索引信息文件以及标识存在检测信息文件。如图3所示,为对象数据转换后得到的信息文件的结构示意图,其中,将存储冷数据的数据表进行转换,得到云对象数据文件即Data(数据)文件、目标元数据文件即Meta(元数据)文件、目标索引信息文件即Index(索引)文件以及标识存在检测信息文件即BloomFilter(布隆过滤器)文件。该Data文件是BSON文件,BSON是一种计算机数据交换格式,主要被用作MongoDB(一个基于分布式文件存储的数据库)数据库中的数据存储和网络传输格式。该Data文件中存储按照顺序排列的BSON格式的冷数据,包括bson.0(冷数据0),bson.1(冷数据1),…,bson.n(冷数据n),每个bson(冷数据)存储有具体的对象数据bsonraw。Meta文件是通过BSON格式的存储内功Data文件中元数据标识的最小值和最大值,同时也可以存储冷数据的数量、冷数据的总大小、以及元数据标识的索引等。BloomFilter文件用于判断元数据标识是否在Data文件中,包括各个元数据标识对应的布隆过滤器信息,即bf.0(过滤0),bf.1(过滤1),…,bf.n(过滤n)。Index文件是SST格式的文件,SST是一种存储数据的文件格式,它是基于LSM树(Log-Structured Merge Tree)的存储引擎所采用的文件格式。该Index文件中存储有各个元数据标识对应的在Data文件中的位置,包括sst.0(索引0),sst.1(索引1),…,sst.n(索引n)。Index文件中的每个sst都是由键值对key和value组成,key是具体的元数据标识,value是具体的位置,包括偏移(offset)和大小(length)。通过Index文件可以查找到云数据标识在Data文件中的位置。通过使用Data文件、Meta文件、Index文件以及BloomFilter文件可以快速访问云存储空间存储的冷数据。
在一个实施例中,S210,将冷数据集进行删除,包括步骤:
对冷数据集中的冷数据进行更新校验,当冷数据集中的冷数据未更新时,通过并行异步线程将冷数据集进行删除。
其中,更新校验是指校验冷数据是否发生了变化。并行异步线程是指预先设置好的删除冷数据的线程,通过并行和异步的方式将冷数据进行删除。
具体地,服务器对冷数据集中的冷数据进行更新校验,比如,服务器可以检测获取到的冷数据与数据库中的存储的同一数据标识的冷数据是否相同,当不相同的,说明该冷数据进行了更新,其中,对冷数据进行更新可以是对冷数据进行了修改、删除以及使用等操作。当冷数据集中存在冷数据发生了更新时,服务器可以将发生了更新的冷数据作为非冷数据,即该非冷数据不会进行数据迁移。当冷数据集中的冷数据未更新时,通过并行异步线程将冷数据集进行删除,即服务器同时生成多个删除任务对不同的冷数据进行删除。其中,也可以通过批量删除的方式对冷数据集进行删除,比如,可以通过MONGODB批量删除。
在上述实施例中,对冷数据集中的冷数据进行更新校验,通过更新校验将未更新的冷数据进行删除,避免将非冷数据进行删除,然后通过当冷数据集中的冷数据未更新时,通过并行异步线程将冷数据集进行删除,提高了冷数据删除的效率。
在一个实施例中,云对象数据文件包括至少两个;
如图4所示,在S210之后,在将云对象数据文件、目标元数据和目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将冷数据集进行删除之后,还包括:
S402,检测至少两个云对象数据文件对应的目标元数据,当目标元数据中云数据标识范围重合时,基于至少两个云对象数据文件对应的目标元数据和至少两个云对象数据文件对应的目标索引信息从云对象数据存储空间中获取各个范围重合文件。
其中,云数据标识范围重合是指云对象数据文件对应的云数据标识范围存在重复,即不同的云对象数据文件中有相同的云数据标识,可以是有部分的云数据标识相同,也可以是全部的云数据标识相同。范围重合文件是指存在云数据标识与其他云对象数据文件中的云数据标识相同的云对象数据文件。即该各个范围重回文件中都有相同的云数据标识。
具体地,服务器检测至少两个云对象数据文件对应的目标元数据,当目标元数据中云数据标识范围重合时,此时,服务器就需要对云数据标识范围重合的云对象数据文件进行去重处理。即服务器使用至少两个云对象数据文件对应的目标元数据和至少两个云对象数据文件对应的目标索引信息从云对象数据存储空间中获取各个范围重合文件。即服务器从各个云对象数据文件中按照目标元数据中的云数据标识范围确定各个范围重合文件标识,然后根据各个范围重合文件标识对应的目标元数据和目标索引信息从云对象数据存储空间中获取各个范围重合文件。比如,云对象数据文件A对应的云数据标识范围的上限值为1,下限值为100,云对象数据文件B对应的云数据标识范围的上限值为150,下限值为50,此时,云对象数据文件A和云对象数据文件B出现云数据标识范围重合,重回的范围为50到100,此时,云对象数据文件A和云对象数据文件B就为范围重回文件。
S404,将各个范围重合文件进行合并,得到合并文件,并确定合并文件对应的合并元数据和合并索引信息。
其中,合并文件是指将各个范围重合文件进行合并后得到的云对象数据文件,该合并文件中的云数据标识是将重复的云数据标识进行去重后得到的。合并元数据是指合并文件对应的目标云数据,该合并元数据中的云数据标识上限值是各个范围重合文件中最大的云数据标识,该合并元数据中的云数据标识下限值是各个范围重合文件中最小的云数据标识。合并索引信息是指
具体地,服务器将各个范围重合文件进行合并,其中,将相同云数据标识的云对象数据进行去重,保留单个相同云数据标识的云对象数据,然后将所有的云对象数据按照云数据标识的顺序进行排列,从而得到合并文件。然后服务器生成合并文件对应的合并元数据和合并索引信息。在一个实施例中,将各个范围重合文件进行合并,得到至少两个合并文件,其中,预先设置好合并文件中的数据大小,然后在合并时,按照合并文件的数据大小来依次得到各个合并文件。比如,合并后的数据大小为10GB(存储单位,吉字节)。每个合并文件可以存储的数据大小位1GB,则此时,将各个范围重合文件进行合并回得到10个合并文件。该10个合并文件中的云数据标识范围不会重合。
S406,将合并元数据和合并索引信息关联保存,并将合并文件向云对象数据存储空间进行数据迁移。
具体地,服务器将合并元数据和合并索引信息关联保存,通过合并元数据和合并索引信息可以访问云对象数据存储空间中存储的合并文件。同时服务器将合并文件向云对象数据存储空间进行数据迁移,即可以将合并文件上传到云对象数据存储空间中进行保存。
在上述实施例中,通过检测至少两个云对象数据文件对应的目标元数据,当目标元数据中云数据标识范围重合时,基于至少两个云对象数据文件对应的目标元数据和至少两个云对象数据文件对应的目标索引信息从云对象数据存储空间中获取各个范围重合文件。然后将各个范围重合文件进行合并,得到合并文件,将合并文件向云对象数据存储空间进行数据迁移同时保存合并元数据和合并索引信息,可以节省存储空间,并可以提高查询效率,从而提高访问性能。
在一个具体的实施例中,如图5所示,提供一种数据迁移的框架示意图,具体来说:服务器先从数据集群中按照预先设置好的冷数据规则来获取冷数据集,然后生成冷数据集对应的Data(对象数据)文件、Meta(元数据)文件、Index(索引信息)文件以及BloomFilter(布隆过滤器)文件,然后将Meta文件、Index文件以及BloomFilter文件保存,并将Data文件、Meta文件、Index文件以及BloomFilter文件上传到云对象数据存储空间中,该云对象数据存储空间可以是云服务器,同时,服务器在数据迁移的过程中可以生成冷数据的待删除队列,即当一条冷数据迁移完成时,将该条冷数据的数据标识写入待删除队列中。然后当数据迁移完成后,服务器可以按照待删除队列将数据集群中的冷数据进行删除,可以批量删除提高删除效率,即通过降冷服务即数据迁移实现了将数据集群中的冷热数据分层。然后服务器可以定期检测保存的目标元数据,当发现目标元数据中存在云数据标识范围重合时,服务器从云服务器中获取出现云数据标识范围重合的原始Data文件,然后将云数据标识范围重合的原始Data文件进行合并,从而得到新的云数据标识范围未重合的新Data文件,并生成云数据标识范围未重合的新Data文件对应的新Meta文件、新Index文件以及新BloomFilter文件,然后将新Meta文件、新Index文件以及新BloomFilter文件进行保存,并将新Data文件、新Meta文件、新Index文件以及新BloomFilter文件上传到云服务器中。在一个具体的实施例中,如图6所示,提供一种数据迁移的流程示意图,其中:服务器按照预先设置好的冷数据范围从数据库中获取到冷数据集,然后将冷数据集中的数据标识的类型转换为字符串类型,得到云数据标识。然后来生成该冷数据集对应的文件,包括:Data文件、Meta文件、Index文件以及BloomFilter文件,将Data文件、Meta文件、Index文件以及BloomFilter文件向云服务器进行数据迁移,同时将Meta文件、Index文件以及BloomFilter文件保存到服务器自身的内存或者缓存中。然后服务器在将数据迁移完成后,并发批量从数据库中删除已经进行数据迁移的数据,然后删除服务器中的本地文件,比如,冷数据集,Data文件等,从而可以节省服务器自身的存储空间,节省存储成本,同时使用Meta文件、Index文件以及BloomFilter文件进行数据访问,保证数据的访问性能。
在一个实施例中,云对象数据文件包括至少两个;
如图7所示,在S210之后,即在将云对象数据文件、目标元数据和目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将冷数据集进行删除之后,还包括:
S702,获取数据查询请求,数据查询请求携带查询数据标识,将查询数据标识进行云数据标识转换,得到云查询标识。
其中,查询数据标识是指要查询的数据的标识,云查询标识是指将查询数据标识按照云数据标识的类型进行转换后得到的。
具体地,服务器可以从请求端获取到数据查询请求,然后解析该数据查询请求,得到携带的查询数据标识。在一个实施例中,数据查询请求可以携带至少两个查询数据标识,也可以携带要查询的数据标识范围。然后服务器将查询数据标识进行云数据标识转换,得到云查询标识。比如,查询数据标识是数值型的标识,可以将数值型的标识转换为二进制字符串的标识,得到云查询标识。
S704,基于至少两个云对象数据文件对应的目标云数据从至少两个云对象数据文件中确定云查询标识对应的云查询文件标识。
其中,云查询文件标识是指云查询文件的标识,用于唯一标识对应的云查询文件,该云查询文件标识可以是数字、字符串等等。
具体地,服务器按照保存的目标云数据来确定云查询标识对应的云查询文件标识。即将云查询文件标识与各个目标云数据中的云查询文件标识进行比较,当目标云数据中存在与云查询文件标识一致的云数据标识时,说明要查询的数据在该目标云数据对应的云对象数据文件中,此时,服务器将该目标云数据对应的云对象数据文件标识作为云查询标识对应的云查询文件标识。
S706,基于云查询文件标识对应的目标索引信息从云对象数据存储空间中获取云查询文件,基于云查询标识在云查询文件中查询对应的目标云对象数据。
其中,云查询文件是指查询得到的存在有云查询标识的云对象数据文件。目标云对象数据是指云查询文件中云查询标识对应的以对象存储格式存储的数据。
具体地,服务器使用保存的云查询文件标识对应的目标索引信息从云对象数据存储空间中获取云查询文件,即根据云查询文件的位置信息从云对象数据存储空间中下载得到云查询文件。然后从云查询文件中查询得到云查询标识对应的目标云对象数据。在一个实施例中,当有多个查询数据标识时,服务器可以确定每个查询数据标识对应的云查询文件标识。然后从云对象存储空间中获取到每个云查询文件标识对应的云查询文件,并从云查询文件中查询到每个查询数据标识对应的以对象存储格式存储的数据。
S708,将目标云对象数据进行还原,得到查询数据标识对应的目标查询数据,将目标查询数据返回数据查询请求对应的请求端。
其中,目标查询数据是指查询得到的查询数据标识对应的数据。数据查询请求对应的请求端是指请求数据查询的服务端,该服务端可以是终端,也可以服务器。
具体地,服务器将目标云对象数据进行还原,即将目标云对象数据的存储格式还原为查询数据的存储格式,从而得到查询数据标识对应的目标查询数据。最后服务器将查询得到的目标查询数据返回数据查询请求对应的请求端,并在请求端中展示该目标查询数据。
在一个实施例中,服务器也可以直接将目标云对象数据返回数据查询请求对应的请求端,不需要进行还原,进一步提高数据查询的效率。
在上述实施例中,通过在获取到数据查询请求后,使用目标云数据和目标索引信息能够快速查询得到云查询文件标识,进而直接从云对象存储空间中获取云查询文件标识对应的云查询文件,在从云查询文件中获取到查询数据标识对应的目标查询数据,从而不需要在云对象存储空间中进行扫描,提高了数据查询的效率,保证了访问性能,
在一个实施例中,数据迁移方法,还包括步骤:
当查询数据标识为云存储的数据标识时,通过预设代理服务将查询数据标识进行云数据标识转换,得到云查询标识;通过预设代理服务使用至少两个云对象数据文件对应的目标云数据从至少两个云对象数据文件中确定云查询标识对应的云查询文件标识;通过预设代理服务使用云查询文件标识对应的目标索引信息从云对象数据存储空间中获取云查询文件。
其中,预设代理服务是指预先设置好的用于访问云对象存储空间的代理服务。
具体地,服务器在接收到数据查询请求时,判断数据查询请求中携带的查询数据标识是云对象存储空间中存储的数据标识时,通过预设代理服务来进行数据查询。即通过该预设代理服务将查询数据标识进行云数据标识转换,得到云查询标识;通过预设代理服务使用至少两个云对象数据文件对应的目标云数据从至少两个云对象数据文件中确定云查询标识对应的云查询文件标识。通过预设代理服务使用云查询文件标识对应的目标索引信息从云对象数据存储空间中获取云查询文件,然后从云查询文件中获取到云查询标识对应的目标对象数据,将目标对象数据进行还原,得到目标查询数据,将目标查询数据返回请求端。该预设代理服务可以通过代理集群来实现。
在上述实施例中,通过当查询数据标识为云存储的数据标识时,通过预设代理服务将查询数据标识进行云数据标识转换,得到云查询标识;通过预设代理服务使用至少两个云对象数据文件对应的目标云数据从至少两个云对象数据文件中确定云查询标识对应的云查询文件;通过预设代理服务使用云查询文件对应的目标索引信息从云对象数据存储空间中获取云查询文件,即通过代理服务来访问云服务器,避免对云服务器进行访问扫描,从而在节省存储成本的基础上保证了数据的访问性能,避免了访问性能的下降。
在一个具体的实施例中,如图8所示,为通过代理服务访问的架构示意图,其中,服务器中部署有分布式文件存储的数据库MongoDB,并且可以通过兼容MongoDB协议的代理服务访问云服务器中存储的数据。当服务器通过命令接口获取到访问命令,比如,可以是数据查询请求、数据统计请求、数据删除请求显示所有数据库请求,显示所有集合的请求等等。然后根据访问命令携带的访问数据标识来判断是否要访问的数据存储在云服务器中,云服务器中保存了云对象数据文件、目标元数据、目标索引信息以及布隆过滤器文件。当要访问的数据未存储在云服务器中时,服务器可以通过MongoDB的默认存储引擎(WiredTiger引擎)在分布式文件存储的数据库MongoDB查询要访问数据标识对应的数据。当要访问的数据存储在云服务器中时,服务器需要通过云服务存储引擎来查询数据,即需要通过兼容MongoDB协议的代理服务访问云服务器中的数据。即代理服务先将要访问的数据标识进行转换,得到云数据标识,然后通过云数据标识使用服务器中保存的云服务器存储数据中的目标元数据查询到要访问的云对象数据文件标识,然后根据服务器中保存的云服务器存储数据中的目标索引信息确定要访问的云对象数据文件标识在云服务器中的位置。然后根据该位置通过线程池中的线程来实现从云服务器中获取到要访问的云对象数据文件即Data文件,并从云对象数据文件中获取到要访问的云对象数据,然后代理服务将云对象数据进行还原,得到要访问的目标数据。最后服务器将通过代理服务查询到的目标数据返回给请求端,即通过代理服务来访问云服务器,避免对云服务器进行访问扫描,从而在节省存储成本的基础上保证了数据的访问性能,避免了访问性能的下降。其中,服务器还可以通过刷新定时任务来检测保存的云服务器存储数据,比如,Meta文件等等,还提供对象存储SDK(软件工具包)。
在一个实施例中,S702,即基于至少两个云对象数据文件对应的目标云数据从至少两个云对象数据文件中确定云查询标识对应的云查询文件标识,包括步骤:
从至少两个云对象数据文件中查找云查询标识在云对象数据文件对应的云数据标识范围内的各个候选云对象数据文件标识;获取至少两个云对象数据文件对应的标识存在检测信息,基于标识存在检测信息通过云查询标识将各个候选云对象数据文件标识进行过滤,得到云查询标识对应的云查询文件标识。
其中,候选云对象数据文件标识是指需要进一步筛选的云对象数据文件标识,云对象数据文件标识用于唯一标识对应的云对象数据文件。
具体地,服务器中可以将每个云对象数据文件的标识与对应的目标元数据、对应的目标索引信息以及对应的标识存在检测信息进行关联保存。服务器根据每个云对象数据文件对应的目标元数据中的云数据标识范围来确定包含有云查询标识的各个目标元数据,然后将各个目标元数据对应的云对象数据文件标识作为各个候选云对象数据文件标识。然后服务器获取到各个候选云对象数据文件标识对应的标识存在检测信息,然后计算云查询标识对应的标识存在检测信息,使用云查询标识对应的标识存在检测信息与各个候选云对象数据文件标识对应的标识存在检测信息进行比较,将标识存在检测信息不一致的候选云对象数据文件标识进行过滤,从而得到过滤后的候选云对象数据文件标识,然后将过滤后的候选云对象数据文件标识作为云查询标识对应的云查询文件标识。
在上述实施例中,通过云对象数据文件对应的云数据标识范围确定各个候选云对象数据文件标识,然后通过标识存在检测信息从各个候选云对象数据文件标识中进行过滤,从而得到云查询标识对应的云查询文件标识,提高了得到云查询文件标识的效率。
在一个实施例中,S706,基于云查询文件标识对应的目标索引信息从云对象数据存储空间中获取云查询文件,基于云查询标识在云查询文件中查询对应的目标云对象数据,包括步骤:
基于云查询文件标识对应的目标索引信息从云对象数据存储空间中获取云查询文件标识对应的文件索引信息,文件索引信息包括各个云数据标识和各个云数据标识对应的对象数据存储位置;从文件索引信息中查找云查询标识对应的查询对象数据存储位置,基于查询对象数据存储位置从云对象数据存储空间中获取云查询标识对应的目标云对象数据。
其中,文件索引信息是指云对象数据文件中云对象数据的索引信息,该文件索引信息是以键值对形式存储的。该文件索引信息包括各个云数据标识和各个云数据标识对应的对象数据存储位置,该对象数据存储位置可以包括对象数据在云对象数据文件中的偏移和大小。查询对象数据存储位置是指要查询的对象数据的存储位置。
具体地,服务器可以使用云查询文件标识对应的目标索引信息从云对象数据存储空间中获取云查询文件标识对应的文件索引信息。该文件索引信息包括各个云数据标识和各个云数据标识对应的对象数据存储位置。然后服务器从文件索引信息中查找云查询标识对应的查询对象数据存储位置,即将云查询标识与文件索引信息中的云数据标识进行比较,查找到一致的云数据标识,然后将一致的云数据标识对应的对象数据存储位置作为云查询标识对应的查询对象数据存储位置。然后服务器使用云查询标识和查询对象数据存储位置从云对象数据存储空间中获取云查询标识对应的目标云对象数据。
在上述实施例中,通过目标索引信息从云对象数据存储空间中获取云查询文件标识对应的文件索引信息,然后从文件索引信息中查找云查询标识对应的查询对象数据存储位置,基于查询对象数据存储位置从云对象数据存储空间中获取云查询标识对应的目标云对象数据,从而可以直接从云对象数据存储空间中获取云查询标识对应的目标云对象数据,可以不需要获取云对象数据文件,直接获取云对象数据文件中存储的云对象数据,从而提高了数据查询的效率。
在一个具体的实施例中,如图9所示,提供一种数据查询的流程示意图,具体来说:服务器获取到数据查询请求,该数据查询请求携带的数据标识可以是UUID为100。此时,服务器将UUID为100转换为云数据标识。然后通过内存的Map(键值对容器)来获取文件标识列表,即通过存储的Meta表中的云数据标识的最大值和最小值来获取云对象数据文件标识列表,然后再通过BloomFilter文件来进行过滤,即计算要查询的云数据标识对应的布隆过滤器信息,然后与BloomFilter文件中的布隆过滤器信息进行比较,将未一致的布隆过滤器信息对应的云对象数据文件标识从云对象数据文件标识列表中进行过滤,得到过滤后的云对象数据文件标识,然后获取到过滤后的云对象数据文件标识对应的目标索引信息,即Index文件,通过Footer(脚注)数据表来获取Index文件,该Index文件中的IndexBlock(索引块)存储了每个DataBlock(数据块)在云服务器的偏移和大小,根据Index文件和云数据标识从云服务器下载对应的DataBlock,即文件索引信息,DataBlock是键值对的集合,其中,键是具体的元数据标识,值是指对象数据在Data文件中的偏移和大小。服务器根据要查询的云数据标识从DataBlock中获取到对象数据在Data文件中的偏移和大小,然后云服务器根据对象数据在Data文件中的偏移和大小下载得到要查询的云数据标识对应的对象数据,该对象数据Bson格式的文件。服务器可以直接将该对象数据返回给要查询的请求端,还可以使用delete(删除)数据将查询得到的对象数据Bson格式的文件进行过滤,即将已删除的文件进行过滤,最后将过滤后的文件返回查询的请求端。即通过服务器中存储的Meta文件、BloomFilter文件以及index文件来查询云服务器中存储的对象数据,从而可以提高数据查询的效率。
在一个实施例中,如图10所示,在S210之后,在将云对象数据文件、目标元数据和目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将冷数据集进行删除之后,还包括:
S1002,获取数据统计请求,数据统计请求携带待统计数据标识,将待统计数据标识进行云数据标识转换,得到云统计标识.
其中,待统计数据标识是指进行统计计算的数据的标识。云统计标识是指待统计数据标识对应的云数据标识。
具体地,服务器可以从请求端获取到数据统计请求,然后解析数据统计请求得到携带的待统计数据标识,该待统计数据标识可以包括至少两个,然后将每个待统计数据标识都进行云数据标识转换,可以将数据类型和数据存储格式都进行转换,得到对应的云统计标识。
S1004,基于云对象数据文件对应的目标云数据确定云统计标识对应的云统计文件标识。
S1006,基于云统计文件标识对应的目标索引信息从云对象数据存储空间中获取云统计文件,并在云统计文件查找云统计标识对应的云对象数据。
其中,云统计文件标识是指云统计标识所在的云统计文件的标识。云统计文件是指包含有云统计标识的云对象数据文件。
具体地,服务器根据保存的云对象数据文件的目标元数据确定云统计标识对应的目标元数据,可以根据目标元数据中保存的云数据标识范围来确定云统计标识所在的云数据标识范围,从而得到云统计标识对应的目标元数据。然后将云统计标识所在的目标元数据对应的云对象数据文件标识作为云统计文件标识。然后使用云统计文件标识对应的目标索引信息从云对象数据存储空间中获取云统计文件,并在云统计文件查找云统计标识对应的云对象数据。
S1008,将云统计标识对应的云对象数据进行还原,得到云统计标识对应的待统计数据,基于待统计数据进行统计计算,得到统计结果,将统计结果返回数据统计请求对应的请求端。
具体地,将云统计标识对应的云对象数据进行还原,将云对象数据的数据格式还原为服务器存储数据的数据格式,得到待统计数据。然后使用待统计数据进行统计计算,得到统计结果,其中,统计计算可以包括计数,计算均值、中位数、众数、方差和标准查等。在一个实施例中,服务器也可以直接使用云对象数据进行统计计算,得到统计结构。最后服务器将统计结果返回数据统计请求对应的请求端。在一个实施例中,服务器在获取到数据统计请求后,可以通过预设代理服务按照数据统计请求从云对象数据存储空间中获取云统计文件,并在云统计文件查找云统计标识对应的云对象数据。
在上述实施例中,通过获取数据统计请求,然后使用目标云数据和目标索引信息能够快速从云对象存储空间中获取到云对象数据,然后使用云对象数据进行数据统计,得到统计结果,将统计结果返回数据统计请求对应的请求端,从而提高了数据统计的效率。
在一个实施例中,如图11所示,在S210之后,即在将云对象数据文件、目标元数据和目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将冷数据集进行删除之后,还包括:
S1102,获取数据删除请求,数据删除请求携带待删除数据标识,将待删除数据标识进行云数据标识转换,得到云删除标识。
S1104,基于云对象数据文件对应的目标云数据确定云删除标识对应的云删除文件标识,并基于云删除文件标识对应的目标索引信息从云对象数据存储空间中获取云删除文件。
其中,待删除数据标识是指需要进行删除的数据的标识。云删除标识是指待删除数据标识对应的云数据标识。云删除文件标识是指云删除标识所在的云删除文件的标识。云删除文件是指包括有云删除标识的云对象数据文件。
具体地,服务器获取数据删除请求,解析数据删除请求,得到待删除数据标识,当判断该待删除数据标识是已经存储在云对象数据存储空间的数据标识时,服务器将待删除数据标识进行云数据标识转换,得到云删除标识,其中,按照预先设置好的冷数据的标识范围来判断待删除数据标识是否为冷数据的标识。然后服务器判断云删除标识对应的目标云数据,根据目标云数据中的云数据标识范围来判断云删除标识是否在范围内。然后获取到将该目标云数据对应的云对象数据文件标识作为云删除标识对应的云删除文件标识,并按照云删除文件标识对应的目标索引信息中的偏移和大小从云对象数据存储空间中下载到云删除文件。
S1106,将云删除文件中云删除标识对应的云对象数据进行删除,得到云更新文件,并确定云更新文件对应的更新元数据和更新索引信息。
其中,云更新文件是指将云删除文件中云删除标识对应的云对象数据进行删除后得到的云对象数据文件。更新元数据是指云更新文件对应的目标元数据,更新索引信息是指云更新文件对应的目标索引信息。
具体地,服务器将云删除文件中云删除标识对应的云对象数据进行删除,得到云更新文件,并确定云更新文件对应的更新元数据和更新索引信息。
在一个实施例中,服务器可以获取到多个待删除数据标识,然后将多个待删除数据标识对应的云对象数据进行删除,其中,当该多个待删除数据标识对应的云数据标识在同一个云删除文件中时,直接在该云删除文件中进行删除,当多个待删除数据标识对应的云数据标识在不同的云删除文件中时,获取到各种对应的云删除文件并进行删除。在一个实施例中,服务器可以将要删除的各个对象数据保存在待删除文件中,然后获取到云对象存储空间中对应的云对象文数据件,然后将云对象数据文件与待删除文件进行合并,从而得到更新对象数据文件,该更新对象数据文件是将待删除文件中的各个对象数据从云对象数据文件中进行删除后得到的。
S1108,将更新元数据和更新索引信息关联保存,并将云更新文件向云对象数据存储空间进行数据迁移。
具体地,服务器将该云更新文件的标识、更新元数据和更新索引信息进行关联保存,然后将云更新文件向云对象数据存储空间进行数据迁移。
在上述实施例中,通过获取数据删除请求,然后使用目标云数据和目标索引信息能够快速从云对象存储空间中获取到云删除文件,然后将云删除文件中云删除标识对应的云对象数据进行删除,得到云更新文件,并确定云更新文件对应的更新元数据和更新索引信息。最后将更新元数据和更新索引信息关联保存,并将云更新文件向云对象数据存储空间进行数据迁移,从而提高了数据删除的效率。
在一个实施例中,如图12所示,在S210之后,即在将云对象数据文件、目标元数据和目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将冷数据集进行删除之后,还包括:
S1202,获取数据更新请求,数据更新请求携带待更新数据标识和更新数据,将待更新数据标识进行云数据标识转换,得到云更新标识,并将更新数据进行对象数据转换,得到云更新文件。
其中,待更新数据标识是指需要更新的已保存数据的标识,更新数据是指需要将待更新数据标识对应的待更新数据进行替换的数据。云更新标识是指待更新数据标识对应的云数据标识。云更新文件是指存储更新数据对应的对象数据的文件。
具体地,服务器可以从请求端获取到数据更新请求,然后解析数据更新请求,得到携带的待更新数据标识和更新数据。服务器判断待更新数据标识是已经存储在云对象数据存储空间中的数据标识时,将待更新数据标识进行云数据标识转换,得到云更新标识,并将更新数据进行对象数据转换,得到云更新文件。
S1204,基于云对象数据文件对应的目标云数据确定云更新标识对应的云存储文件标识,并基于云存储文件标识对应的目标索引信息从云对象数据存储空间中获取云存储文件。
其中,云存储文件标识是指云更新标识所在的云存储文件的标识,云存储文件是指包含有云更新标识的云对象数据文件。
具体地,服务器根据保存的目标元数据中的云数据标识范围来确定云更新标识所在的云数据标识范围,从而得到云更新标识所在的目标元数据。然后将云更新标识所在的目标元数据对应的云对象数据文件标识作为云存储文件标识。然后使用云存储文件标识对应的目标索引信息从云对象数据存储空间中获取云存储计文件。
S1206,将云更新文件和云存储文件进行合并,得到目标更新文件,并确定目标更新文件对应的目标更新元数据和目标更新索引信息;
S1208,将目标更新元数据和目标更新索引信息关联保存,并将目标更新文件向云对象数据存储空间进行数据迁移。
其中,目标更新文件是指将云存储文件中云更新标识对应的对象数据使用更新数据对应的对象数据进行替换后得到的云对象数据存储文件。目标更新元数据是指目标更新文件对应的目标元数据,目标更新索引信息是指目标更新文件对应的目标索引信息。
具体地,服务器将云更新文件和云存储文件进行合并,可以是将云存储文件中云更新标识对应的对象数据使用云更新文件中的对象数据进行替换,得到目标更新文件,然后确定目标更新文件对应的目标更新元数据和目标更新索引信息,并将目标更新文件的标识、目标更新元数据和目标更新索引信息关联保存。然后服务器将目标更新文件向云对象数据存储空间进行数据迁移。
在上述实施例中,通过获取数据更新请求,然后使用目标云数据和目标索引信息能够快速从云对象存储空间中获取到云存储文件,再将云更新文件和云存储文件进行合并,得到目标更新文件,提高了得到目标更新文件的效率,最后将目标更新元数据和目标更新索引信息关联保存,并将目标更新文件向云对象数据存储空间进行数据迁移,从而提高了数据更新的效率。
在一个具体的实施例中,如图13所示,提供一种数据迁移方法,具体包括以下步骤:
S1302,获取数据迁移请求,基于数据迁移请求获取待迁移的冷数据集,将冷数据集中数据标识对应的数据类型进行转换,得到目标数据类型的数据标识,获取序列标识,将序列标识与目标数据类型的数据标识进行组合,得到云数据标识,将冷数据集中的数据标识更新为云数据标识,得到目标冷数据集。
S1304,基于目标冷数据集进行对象数据转换,得到云对象数据文件,并获取云对象数据文件中云数据标识上限值和云数据标识下限值,基于云数据标识上限值和云数据标识下限值确定云对象数据文件对应的目标元数据。
S1306,获取云对象数据文件在云对象数据存储空间中的位置信息,基于位置信息确定云对象数据文件对应的目标索引信息,将云对象数据文件中的云数据标识进行哈希映射,得到云数据标识对应的各个哈希值,基于各个哈希值生成云数据标识对应的目标位数组,基于目标位数组确定云对象数据文件对应的标识存在检测信息。
S1308,将标识存在检测信息、目标元数据和目标索引信息关联保存,并将云对象数据文件、目标元数据和目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将冷数据集进行删除。
S1310,获取数据查询请求,数据查询请求携带查询数据标识,当查询数据标识为云存储的数据标识时,通过预设代理服务将查询数据标识进行云数据标识转换,得到云查询标识。
S1312,通过预设代理服务从至少两个云对象数据文件中查找云查询标识在云对象数据文件对应的云数据标识范围内的各个候选云对象数据文件标识,获取至少两个云对象数据文件对应的标识存在检测信息,基于标识存在检测信息通过云查询标识将各个候选云对象数据文件标识进行过滤,得到云查询标识对应的云查询文件标识。
S1314,通过预设代理服务基于云查询文件标识对应的目标索引信息从云对象数据存储空间中获取云查询文件标识对应的文件索引信息,从文件索引信息中查找云查询标识对应的查询对象数据存储位置。
S1316,通过预设代理服务基于查询对象数据存储位置从云对象数据存储空间中获取云查询标识对应的目标云对象数据。将目标云对象数据进行还原,得到查询数据标识对应的目标查询数据,将目标查询数据返回数据查询请求对应的请求端。
在上述实施例中,通过在数据迁移时保存标识存在检测信息、目标元数据和目标索引信息,并在数据查询时,使用保存的标识存在检测信息、目标元数据和目标索引信息从云对象存储空间中获取查询的数据,从而能够在保证访问性能的同时,极大的降低了存储成本。
在一个具体的实施例中,该数据迁移方法应用在数据库服务平台的场景中,如图14所示,为应用场景的整体结构示意图,具体来说:使用者可以通过数据库服务平台的管控***管理元数据,即通过元数据管理模块可以实现对降冷规则管理以及标识的转换。该降冷规则管理可以是管理降冷规则,该降冷规则是用于从数据集群中存储的数据中确定冷数据集。该降冷规则可以是预先设置好的冷数据的范围,可以根据数据的标识来确定冷数据的范围,比如,将数据的标识从1到100的数据确认为冷数据。然后通过降冷服务来进行冷数据的迁移以及在冷数据迁移后将数据重复的云对象数据文件进行合并。该降冷服务根据降冷规则从分布式的数据集群中获取到冷数据集,然后将冷数据集的数据标识进行转换,得到云数据标识。然后生成冷数据集对应的Data文件、Meta文件、Index文件以及BloomFilter文件,将Meta文件、Index文件以及BloomFilter文件保存,并将Data文件、Meta文件、Index文件以及BloomFilter文件上传到云服务器中。然后在进行数据查询时,可以进行单个数据标识的查询,该数据标识可以是键值对中的键,要查询的数据可以是键值对中的值。然后通过代理集群兼容MongoDB协议从云服务器中拉取到要查询的对象数据,即通过对数据标识进行转换,得到云数据标识,然后根据云数据标识从保存的Meta文件、Index文件以及BloomFilter文件中查询到要查询的对象数据位置,然后使用对象数据位置从云服务器中获取到查询的对象数据,然后将查询得到的对象数据返回给查询端。数据库服务平台也可以通过代理集群从云服务器中进行全量数据的下载,即数据库服务平台获取到全量对象数据下载请求时,可以将云服务器中保存的所有对象数据进行下载。
然后可以进行访问性能的测试,在测试时,采用YCSB(一种主要用于云端或者服务器端的数据库性能测试工具)测试工具进行性能测试,测试模型使用YCSB随机读,测试数据为16TB(太字节),元数据为2.8GB。将测试数据迁移后只保存了2.8GB的元数据,节省了存储空间,然后对访问性能进行测试,得到的测试结果如下表1所示。
表1 性能对比表
其中,通过调节并发度,记录QPS(Querys per second,每秒查询率,用于衡量服务的吞吐能力),平均延迟和P99(用于衡量99%的情况下的最差响应延迟)延迟。并发度在200到400之间时,平均延迟在100毫秒左右,即该访问性能并没有明显的下降,保证了访问性能。然后通过长时间接口的压测来看,长时间的压测接口的成功率为99.999969%,即可用性能达到6个9。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的数据迁移方法的数据迁移装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个数据迁移装置实施例中的具体限定可以参见上文中对于数据迁移方法的限定,在此不再赘述。
在一个实施例中,如图15所示,提供了一种数据迁移装置1500,包括冷数据获取模块1502、标识转换模块1504、数据转换模块1506、信息保存模块1508和数据迁移模块1510,其中:
冷数据获取模块1502,用于获取数据迁移请求,基于数据迁移请求获取待迁移的冷数据集;
标识转换模块1504,用于将冷数据集中的数据标识进行云数据标识转换,得到目标冷数据集;
数据转换模块1506,用于基于目标冷数据集进行对象数据转换,得到云对象数据文件,并确定云对象数据文件对应的目标元数据和目标索引信息,目标元数据用于描述云对象数据文件对应的云数据标识范围,目标索引信息用于确定云对象数据文件在云对象数据存储空间中的位置;
信息保存模块1508,用于将目标元数据和目标索引信息关联保存,目标元数据和目标索引信息用于访问云对象数据存储空间中的云对象数据文件;
数据迁移模块1510,用于将云对象数据文件、目标元数据和目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将冷数据集进行删除。
在一个实施例中,标识转换模块1504还用于将冷数据集中数据标识对应的数据类型进行转换,得到目标数据类型的数据标识;获取序列标识,将序列标识与目标数据类型的数据标识进行组合,得到云数据标识;将冷数据集中的数据标识更新为云数据标识,得到目标冷数据集。
在一个实施例中,数据转换模块1506还用于获取云对象数据文件中云数据标识上限值和云数据标识下限值,基于云数据标识上限值和云数据标识下限值确定云对象数据文件对应的目标元数据 ;获取云对象数据文件在云对象数据存储空间中的位置信息,基于位置信息确定云对象数据文件对应的目标索引信息 。
在一个实施例中,数据迁移装置1500,还包括:
检测信息确定模块,用于将云对象数据文件中的云数据标识进行哈希映射,得到云数据标识对应的各个哈希值;基于各个哈希值生成云数据标识对应的目标位数组,基于目标位数组确定云对象数据文件对应的标识存在检测信息 ;将标识存在检测信息、目标元数据和目标索引信息关联保存。
在一个实施例中,数据迁移模块1510还用于对冷数据集中的冷数据进行更新校验,当冷数据集中的冷数据未更新时,通过并行异步线程将冷数据集进行删除。
在一个实施例中,云对象数据文件包括至少两个;数据迁移装置1500,还包括:
合并模块,用于检测至少两个云对象数据文件对应的目标元数据,当目标元数据中云数据标识范围重合时,基于至少两个云对象数据文件对应的目标元数据和至少两个云对象数据文件对应的目标索引信息从云对象数据存储空间中获取各个范围重合文件;将各个范围重合文件进行合并,得到合并文件,并确定合并文件对应的合并元数据和合并索引信息;将合并元数据和合并索引信息关联保存,并将合并文件向云对象数据存储空间进行数据迁移。
在一个实施例中,云对象数据文件包括至少两个;数据迁移装置1500,还包括:
查询模块,用于获取数据查询请求,数据查询请求携带查询数据标识,将查询数据标识进行云数据标识转换,得到云查询标识;基于至少两个云对象数据文件对应的目标云数据从至少两个云对象数据文件中确定云查询标识对应的云查询文件标识;基于云查询文件标识对应的目标索引信息从云对象数据存储空间中获取云查询文件,基于云查询标识在云查询文件中查询对应的目标云对象数据;将目标云对象数据进行还原,得到查询数据标识对应的目标查询数据,将目标查询数据返回数据查询请求对应的请求端。
在一个实施例中,数据迁移装置1500,还包括:
代理模块,用于当查询数据标识为云存储的数据标识时,通过预设代理服务将查询数据标识进行云数据标识转换,得到云查询标识;通过预设代理服务使用至少两个云对象数据文件对应的目标云数据从至少两个云对象数据文件中确定云查询标识对应的云查询文件标识;通过预设代理服务使用云查询文件标识对应的目标索引信息从云对象数据存储空间中获取云查询文件。
在一个实施例中,查询模块,还用于从至少两个云对象数据文件中查找云查询标识在云对象数据文件对应的云数据标识范围内的各个候选云对象数据文件标识;获取至少两个云对象数据文件对应的标识存在检测信息,基于标识存在检测信息通过云查询标识将各个候选云对象数据文件标识进行过滤,得到云查询标识对应的云查询文件标识。
在一个实施例中,查询模块,还用于基于云查询文件标识对应的目标索引信息从云对象数据存储空间中获取云查询文件标识对应的文件索引信息,文件索引信息包括各个云数据标识和各个云数据标识对应的对象数据存储位置;从文件索引信息中查找云查询标识对应的查询对象数据存储位置,基于查询对象数据存储位置从云对象数据存储空间中获取云查询标识对应的目标云对象数据。
在一个实施例中,数据迁移装置1500,还包括:
统计模块,用于获取数据统计请求,数据统计请求携带待统计数据标识,将待统计数据标识进行云数据标识转换,得到云统计标识;基于云对象数据文件对应的目标云数据确定云统计标识对应的云统计文件标识;基于云统计文件标识对应的目标索引信息从云对象数据存储空间中获取云统计文件,并在云统计文件查找云统计标识对应的云对象数据;将云统计标识对应的云对象数据进行还原,得到云统计标识对应的待统计数据,基于待统计数据进行统计计算,得到统计结果,将统计结果返回数据统计请求对应的请求端。
在一个实施例中,数据迁移装置1500,还包括:
删除模块,用于获取数据删除请求,数据删除请求携带待删除数据标识,将待删除数据标识进行云数据标识转换,得到云删除标识;基于云对象数据文件对应的目标云数据确定云删除标识对应的云删除文件标识,并基于云删除文件标识对应的目标索引信息从云对象数据存储空间中获取云删除文件;将云删除文件中云删除标识对应的云对象数据进行删除,得到云更新文件,并确定云更新文件对应的更新元数据和更新索引信息;将更新元数据和更新索引信息关联保存,并将云更新文件向云对象数据存储空间进行数据迁移。
在一个实施例中,数据迁移装置1500,还包括:
更新模块,用于获取数据更新请求,数据更新请求携带待更新数据标识和更新数据,将待更新数据标识进行云数据标识转换,得到云更新标识,并将更新数据进行对象数据转换,得到云更新文件;基于云对象数据文件对应的目标云数据确定云更新标识对应的云存储文件标识,并基于云存储文件标识对应的目标索引信息从云对象数据存储空间中获取云存储文件;将云更新文件和云存储文件进行合并,得到目标更新文件,并确定目标更新文件对应的目标更新元数据和目标更新索引信息;将目标更新元数据和目标更新索引信息关联保存,并将目标更新文件向云对象数据存储空间进行数据迁移。
上述数据迁移装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图16所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过***总线连接,通信接口通过输入/输出接口连接到***总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的数据库用于存储目标索引信息、目标元数据以及热数据等。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据迁移方法。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图17所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过***总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到***总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***和计算机程序。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种数据迁移方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置,显示屏可以是液晶显示屏或电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图16或者图17中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random AccessMemory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (26)

1.一种数据迁移方法,其特征在于,所述方法包括:
获取数据迁移请求,基于所述数据迁移请求获取待迁移的冷数据集;
将所述冷数据集中的数据标识的类型转换为云数据标识的类型,并将类型转换后的数据标识进行唯一性转换,得到目标冷数据集;
基于所述目标冷数据集进行对象数据转换,得到云对象数据文件,并确定所述云对象数据文件对应的目标元数据和目标索引信息,所述目标元数据用于描述所述云对象数据文件对应的云数据标识范围,所述目标索引信息用于确定所述云对象数据文件在所述云对象数据存储空间中的位置;
将所述目标元数据和目标索引信息关联保存,所述目标元数据和所述目标索引信息用于访问所述云对象数据存储空间中的云对象数据文件;
将所述云对象数据文件、所述目标元数据和所述目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将所述冷数据集进行删除;
获取数据查询请求,所述数据查询请求携带查询数据标识,将所述查询数据标识进行云数据标识转换,得到云查询标识;
基于至少两个云对象数据文件对应的目标云数据从所述至少两个云对象数据文件中所述确定所述云查询标识对应的云查询文件标识;
基于所述云查询文件标识对应的目标索引信息从所述云对象数据存储空间中获取所述云查询文件,基于所述云查询标识在所述云查询文件中查询对应的目标云对象数据;
将所述目标云对象数据进行还原,得到所述查询数据标识对应的目标查询数据,将所述目标查询数据返回所述数据查询请求对应的请求端。
2.根据权利要求1所述的方法,其特征在于,所述将所述冷数据集中的数据标识的类型转换为云数据标识的类型,并将类型转换后的数据标识进行唯一性转换,得到目标冷数据集,包括:
将所述冷数据集中数据标识对应的数据类型进行转换,得到目标数据类型的数据标识;
获取序列标识,将所述序列标识与所述目标数据类型的数据标识进行组合,得到云数据标识;
将所述冷数据集中的数据标识更新为所述云数据标识,得到所述目标冷数据集。
3.根据权利要求1所述的方法,其特征在于,所述确定所述云对象数据文件对应的目标元数据和目标索引信息,包括:
获取所述云对象数据文件中云数据标识上限值和云数据标识下限值,基于所述云数据标识上限值和云数据标识下限值确定所述云对象数据文件对应的目标元数据;
获取所述云对象数据文件在所述云对象数据存储空间中的位置信息,基于所述位置信息确定所述云对象数据文件对应的目标索引信息。
4.根据权利要求1所述的方法,其特征在于,所述方法,还包括:
将所述云对象数据文件中的云数据标识进行哈希映射,得到所述云数据标识对应的各个哈希值;
基于所述各个哈希值生成所述云数据标识对应的目标位数组,基于所述目标位数组确定所述云对象数据文件对应的标识存在检测信息;
将所述标识存在检测信息、所述目标元数据和所述目标索引信息关联保存。
5.根据权利要求1所述的方法,其特征在于,所述将所述冷数据集进行删除,包括:
对所述冷数据集中的冷数据进行更新校验,当所述冷数据集中的冷数据未更新时,通过并行异步线程将所述冷数据集进行删除。
6.根据权利要求1所述的方法,其特征在于,所述云对象数据文件包括至少两个;
在所述将所述云对象数据文件、所述目标元数据和所述目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将所述冷数据集进行删除之后,还包括:
检测所述至少两个云对象数据文件对应的目标元数据,当所述目标元数据中云数据标识范围重合时,基于所述至少两个云对象数据文件对应的目标元数据和所述至少两个云对象数据文件对应的目标索引信息从所述云对象数据存储空间中获取各个范围重合文件;
将所述各个范围重合文件进行合并,得到合并文件,并确定所述合并文件对应的合并元数据和合并索引信息;
将所述合并元数据和所述合并索引信息关联保存,并将所述合并文件向所述云对象数据存储空间进行数据迁移。
7.根据权利要求1所述的方法,其特征在于,所述方法,还包括:
当所述查询数据标识为云存储的数据标识时,通过预设代理服务将所述查询数据标识进行云数据标识转换,得到云查询标识;
通过预设代理服务使用所述至少两个云对象数据文件对应的目标云数据从至少两个云对象数据文件中所述确定所述云查询标识对应的云查询文件标识;
通过预设代理服务使用所述云查询文件标识对应的目标索引信息从所述云对象数据存储空间中获取所述云查询文件。
8.根据权利要求1所述的方法,其特征在于,所述基于所述至少两个云对象数据文件对应的目标云数据从至少两个云对象数据文件中所述确定所述云查询标识对应的云查询文件标识,包括:
从所述至少两个云对象数据文件中查找所述云查询标识在所述云对象数据文件对应的云数据标识范围内的各个候选云对象数据文件标识;
获取所述至少两个云对象数据文件对应的标识存在检测信息,基于所述标识存在检测信息通过所述云查询标识将所述各个候选云对象数据文件标识进行过滤,得到所述云查询标识对应的云查询文件标识。
9.根据权利要求1所述的方法,其特征在于,所述基于所述云查询文件标识对应的目标索引信息从所述云对象数据存储空间中获取所述云查询文件,基于所述云查询标识在所述云查询文件中查询对应的目标云对象数据,包括:
基于所述云查询文件标识对应的目标索引信息从所述云对象数据存储空间中获取所述云查询文件标识对应的文件索引信息,所述文件索引信息包括各个云数据标识和所述各个云数据标识对应的对象数据存储位置;
从所述文件索引信息中查找所述云查询标识对应的查询对象数据存储位置,基于所述查询对象数据存储位置从所述云对象数据存储空间中获取所述云查询标识对应的目标云对象数据。
10.根据权利要求1所述的方法,其特征在于,在所述将所述云对象数据文件、所述目标元数据和所述目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将所述冷数据集进行删除之后,还包括:
获取数据统计请求,所述数据统计请求携带待统计数据标识,将所述待统计数据标识进行云数据标识转换,得到云统计标识;
基于所述云对象数据文件对应的目标云数据确定所述云统计标识对应的云统计文件标识;
基于所述云统计文件标识对应的目标索引信息从所述云对象数据存储空间中获取所述云统计文件,并在所述云统计文件查找所述云统计标识对应的云对象数据;
将所述云统计标识对应的云对象数据进行还原,得到所述云统计标识对应的待统计数据,基于所述待统计数据进行统计计算,得到统计结果,将所述统计结果返回所述数据统计请求对应的请求端。
11.根据权利要求1所述的方法,其特征在于,在所述将所述云对象数据文件、所述目标元数据和所述目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将所述冷数据集进行删除之后,还包括:
获取数据删除请求,所述数据删除请求携带待删除数据标识,将所述待删除数据标识进行云数据标识转换,得到云删除标识;
基于所述云对象数据文件对应的目标云数据确定所述云删除标识对应的云删除文件标识,并基于所述云删除文件标识对应的目标索引信息从所述云对象数据存储空间中获取所述云删除文件;
将所述云删除文件中云删除标识对应的云对象数据进行删除,得到云更新文件,并确定所述云更新文件对应的更新元数据和更新索引信息;
将所述更新元数据和所述更新索引信息关联保存,并将所述云更新文件向所述云对象数据存储空间进行数据迁移。
12.根据权利要求1所述的方法,其特征在于,在所述将所述云对象数据文件、所述目标元数据和所述目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将所述冷数据集进行删除之后,还包括:
获取数据更新请求,所述数据更新请求携带待更新数据标识和更新数据,将所述待更新数据标识进行云数据标识转换,得到云更新标识,并将所述更新数据进行对象数据转换,得到云更新文件;
基于所述云对象数据文件对应的目标云数据确定所述云更新标识对应的云存储文件标识,并基于所述云存储文件标识对应的目标索引信息从所述云对象数据存储空间中获取所述云存储文件;
将所述云更新文件和所述云存储文件进行合并,得到目标更新文件,并确定所述目标更新文件对应的目标更新元数据和目标更新索引信息;
将所述目标更新元数据和所述目标更新索引信息关联保存,并将所述目标更新文件向所述云对象数据存储空间进行数据迁移。
13.一种数据迁移装置,其特征在于,所述装置包括:
冷数据获取模块,用于获取数据迁移请求,基于所述数据迁移请求获取待迁移的冷数据集;
标识转换模块,用于将所述冷数据集中的数据标识的类型转换为云数据标识的类型,并将类型转换后的数据标识进行唯一性转换,得到目标冷数据集;
数据转换模块,用于基于所述目标冷数据集进行对象数据转换,得到云对象数据文件,并确定所述云对象数据文件对应的目标元数据和目标索引信息,所述目标元数据用于描述所述云对象数据文件对应的云数据标识范围,所述目标索引信息用于确定所述云对象数据文件在所述云对象数据存储空间中的位置;
信息保存模块,用于将所述目标元数据和目标索引信息关联保存,所述目标元数据和所述目标索引信息用于访问所述云对象数据存储空间中的云对象数据文件;
数据迁移模块,用于将所述云对象数据文件、所述目标元数据和所述目标索引信息向云对象数据存储空间进行数据迁移,并当数据迁移完成时,将所述冷数据集进行删除;
查询模块,用于获取数据查询请求,所述数据查询请求携带查询数据标识,将所述查询数据标识进行云数据标识转换,得到云查询标识;基于至少两个云对象数据文件对应的目标云数据从所述至少两个云对象数据文件中所述确定所述云查询标识对应的云查询文件标识;基于所述云查询文件标识对应的目标索引信息从所述云对象数据存储空间中获取所述云查询文件,基于所述云查询标识在所述云查询文件中查询对应的目标云对象数据;将所述目标云对象数据进行还原,得到所述查询数据标识对应的目标查询数据,将所述目标查询数据返回所述数据查询请求对应的请求端。
14.根据权利要求13所述的装置,其特征在于,所述标识转换模块还用于将所述冷数据集中数据标识对应的数据类型进行转换,得到目标数据类型的数据标识;获取序列标识,将所述序列标识与所述目标数据类型的数据标识进行组合,得到云数据标识;将所述冷数据集中的数据标识更新为所述云数据标识,得到所述目标冷数据集。
15.根据权利要求13所述的装置,其特征在于,所述数据转换模块还用于获取所述云对象数据文件中云数据标识上限值和云数据标识下限值,基于所述云数据标识上限值和云数据标识下限值确定所述云对象数据文件对应的目标元数据;获取所述云对象数据文件在所述云对象数据存储空间中的位置信息,基于所述位置信息确定所述云对象数据文件对应的目标索引信息。
16.根据权利要求13所述的装置,其特征在于,所述装置,还包括:
检测信息确定模块,用于将所述云对象数据文件中的云数据标识进行哈希映射,得到所述云数据标识对应的各个哈希值;基于所述各个哈希值生成所述云数据标识对应的目标位数组,基于所述目标位数组确定所述云对象数据文件对应的标识存在检测信息;
将所述标识存在检测信息、所述目标元数据和所述目标索引信息关联保存。
17.根据权利要求13所述的装置,其特征在于,所述数据迁移模块还用于对所述冷数据集中的冷数据进行更新校验,当所述冷数据集中的冷数据未更新时,通过并行异步线程将所述冷数据集进行删除。
18.根据权利要求13所述的装置,其特征在于,所述云对象数据文件包括至少两个;
所述装置,还包括:
合并模块,用于检测所述至少两个云对象数据文件对应的目标元数据,当所述目标元数据中云数据标识范围重合时,基于所述至少两个云对象数据文件对应的目标元数据和所述至少两个云对象数据文件对应的目标索引信息从所述云对象数据存储空间中获取各个范围重合文件;将所述各个范围重合文件进行合并,得到合并文件,并确定所述合并文件对应的合并元数据和合并索引信息;将所述合并元数据和所述合并索引信息关联保存,并将所述合并文件向所述云对象数据存储空间进行数据迁移。
19.根据权利要求13所述的装置,其特征在于,所述装置,还包括:
代理模块,用于当所述查询数据标识为云存储的数据标识时,通过预设代理服务将所述查询数据标识进行云数据标识转换,得到云查询标识;通过预设代理服务使用所述至少两个云对象数据文件对应的目标云数据从至少两个云对象数据文件中所述确定所述云查询标识对应的云查询文件标识;通过预设代理服务使用所述云查询文件标识对应的目标索引信息从所述云对象数据存储空间中获取所述云查询文件。
20.根据权利要求13所述的装置,其特征在于,所述查询模块还用于从所述至少两个云对象数据文件中查找所述云查询标识在所述云对象数据文件对应的云数据标识范围内的各个候选云对象数据文件标识;获取所述至少两个云对象数据文件对应的标识存在检测信息,基于所述标识存在检测信息通过所述云查询标识将所述各个候选云对象数据文件标识进行过滤,得到所述云查询标识对应的云查询文件标识。
21.根据权利要求13所述的装置,其特征在于,所述查询模块还用于基于所述云查询文件标识对应的目标索引信息从所述云对象数据存储空间中获取所述云查询文件标识对应的文件索引信息,所述文件索引信息包括各个云数据标识和所述各个云数据标识对应的对象数据存储位置;从所述文件索引信息中查找所述云查询标识对应的查询对象数据存储位置,基于所述查询对象数据存储位置从所述云对象数据存储空间中获取所述云查询标识对应的目标云对象数据。
22.根据权利要求13所述的装置,其特征在于,所述装置,还包括:
统计模块,用于获取数据统计请求,所述数据统计请求携带待统计数据标识,将所述待统计数据标识进行云数据标识转换,得到云统计标识;基于所述云对象数据文件对应的目标云数据确定所述云统计标识对应的云统计文件标识;基于所述云统计文件标识对应的目标索引信息从所述云对象数据存储空间中获取所述云统计文件,并在所述云统计文件查找所述云统计标识对应的云对象数据;将所述云统计标识对应的云对象数据进行还原,得到所述云统计标识对应的待统计数据,基于所述待统计数据进行统计计算,得到统计结果,将所述统计结果返回所述数据统计请求对应的请求端。
23.根据权利要求13所述的装置,其特征在于,所述装置,还包括:
删除模块,用于获取数据删除请求,所述数据删除请求携带待删除数据标识,将所述待删除数据标识进行云数据标识转换,得到云删除标识;基于所述云对象数据文件对应的目标云数据确定所述云删除标识对应的云删除文件标识,并基于所述云删除文件标识对应的目标索引信息从所述云对象数据存储空间中获取所述云删除文件;将所述云删除文件中云删除标识对应的云对象数据进行删除,得到云更新文件,并确定所述云更新文件对应的更新元数据和更新索引信息;将所述更新元数据和所述更新索引信息关联保存,并将所述云更新文件向所述云对象数据存储空间进行数据迁移。
24.根据权利要求13所述的装置,其特征在于,所述装置,还包括:
更新模块,用于获取数据更新请求,所述数据更新请求携带待更新数据标识和更新数据,将所述待更新数据标识进行云数据标识转换,得到云更新标识,并将所述更新数据进行对象数据转换,得到云更新文件;基于所述云对象数据文件对应的目标云数据确定所述云更新标识对应的云存储文件标识,并基于所述云存储文件标识对应的目标索引信息从所述云对象数据存储空间中获取所述云存储文件;将所述云更新文件和所述云存储文件进行合并,得到目标更新文件,并确定所述目标更新文件对应的目标更新元数据和目标更新索引信息;将所述目标更新元数据和所述目标更新索引信息关联保存,并将所述目标更新文件向所述云对象数据存储空间进行数据迁移。
25.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至12中任一项所述的方法的步骤。
26.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至12中任一项所述的方法的步骤。
CN202311079590.7A 2023-08-25 2023-08-25 数据迁移方法、装置、计算机设备和存储介质 Active CN116821102B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311079590.7A CN116821102B (zh) 2023-08-25 2023-08-25 数据迁移方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311079590.7A CN116821102B (zh) 2023-08-25 2023-08-25 数据迁移方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN116821102A CN116821102A (zh) 2023-09-29
CN116821102B true CN116821102B (zh) 2023-11-17

Family

ID=88118718

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311079590.7A Active CN116821102B (zh) 2023-08-25 2023-08-25 数据迁移方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN116821102B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105893542A (zh) * 2016-03-31 2016-08-24 华中科技大学 一种云存储***中的冷数据文件重分布方法及***
CN111427969A (zh) * 2020-03-18 2020-07-17 清华大学 一种分级存储***的数据替换方法
CN111949629A (zh) * 2020-07-22 2020-11-17 金钱猫科技股份有限公司 一种面向边缘云的文件存储方法及终端
CN113225390A (zh) * 2021-04-26 2021-08-06 杭州当虹科技股份有限公司 基于对象存储的代理方法及***
CN113645287A (zh) * 2021-07-29 2021-11-12 腾讯科技(深圳)有限公司 汽车报文存储方法及装置、汽车报文存储***
CN114155497A (zh) * 2021-09-24 2022-03-08 智道网联科技(北京)有限公司 一种对象识别方法、装置及存储介质
CN115114344A (zh) * 2021-11-05 2022-09-27 腾讯科技(深圳)有限公司 事务处理方法、装置、计算设备及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170315875A1 (en) * 2016-04-29 2017-11-02 Netapp, Inc. Namespace policy based deduplication indexes

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105893542A (zh) * 2016-03-31 2016-08-24 华中科技大学 一种云存储***中的冷数据文件重分布方法及***
CN111427969A (zh) * 2020-03-18 2020-07-17 清华大学 一种分级存储***的数据替换方法
CN111949629A (zh) * 2020-07-22 2020-11-17 金钱猫科技股份有限公司 一种面向边缘云的文件存储方法及终端
CN113225390A (zh) * 2021-04-26 2021-08-06 杭州当虹科技股份有限公司 基于对象存储的代理方法及***
CN113645287A (zh) * 2021-07-29 2021-11-12 腾讯科技(深圳)有限公司 汽车报文存储方法及装置、汽车报文存储***
CN114155497A (zh) * 2021-09-24 2022-03-08 智道网联科技(北京)有限公司 一种对象识别方法、装置及存储介质
CN115114344A (zh) * 2021-11-05 2022-09-27 腾讯科技(深圳)有限公司 事务处理方法、装置、计算设备及存储介质

Also Published As

Publication number Publication date
CN116821102A (zh) 2023-09-29

Similar Documents

Publication Publication Date Title
CN107911461B (zh) 云存储***中的对象处理方法、存储服务器及云存储***
CN109885577B (zh) 数据处理方法、装置、终端及存储介质
CN107103011B (zh) 终端数据搜索的实现方法和装置
CN111400334B (zh) 数据处理方法、装置、存储介质及电子装置
US10007692B2 (en) Partition filtering using smart index in memory
CN109947730A (zh) 元数据恢复方法、装置、分布式文件***及可读存储介质
CN112286457B (zh) 对象重删方法、装置、电子设备及机器可读存储介质
WO2024022330A1 (zh) 一种基于文件***的元数据管理方法及其相关设备
CN111753141B (zh) 一种数据管理方法及相关设备
CN116821102B (zh) 数据迁移方法、装置、计算机设备和存储介质
CN112052259A (zh) 数据处理方法、装置、设备及计算机存储介质
CN116991800A (zh) 文件获取***、方法、装置、计算机设备和存储介质
CN115576947A (zh) 一种数据管理方法、装置、组合库、电子设备及存储介质
CN109857719B (zh) 分布式文件处理方法、装置、计算机设备以及存储介质
CN113342813A (zh) 键值数据处理方法、装置、计算机设备及可读存储介质
CN117493284B (zh) 文件存储方法、文件读取方法、文件存储和读取***
CN114647630A (zh) 文件同步、信息生成方法、装置、计算机设备和存储介质
CN112948376B (zh) 一种ip地理位置信息查询方法、终端设备及存储介质
CN117290302B (zh) 目录分离方法、装置、计算机设备和存储介质
CN117354389A (zh) 数据上报方法、装置、计算机设备和存储介质
CN114610688A (zh) 日志聚合方法、装置、计算机设备和存储介质
CN116760844A (zh) 数字孪生模型的数据同步方法、装置、设备和存储介质
CN117097714A (zh) 资源下载方法、装置、计算机设备、存储介质
CN115705353A (zh) 一种基于全文检索的索引处理方法和相关装置
CN115357559A (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