CN110012087A - 数据处理系统及数据处理方法 - Google Patents
数据处理系统及数据处理方法 Download PDFInfo
- Publication number
- CN110012087A CN110012087A CN201910242398.2A CN201910242398A CN110012087A CN 110012087 A CN110012087 A CN 110012087A CN 201910242398 A CN201910242398 A CN 201910242398A CN 110012087 A CN110012087 A CN 110012087A
- Authority
- CN
- China
- Prior art keywords
- container
- host
- request
- storage subsystem
- access key
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45575—Starting, stopping, suspending or resuming virtual machine instances
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种数据处理系统及数据处理方法,该数据处理系统包括分布式对象存储子系统、包含第一容器的第一宿主机,及第二容器。在进行跨容器数据恢复时,第一宿主机将第一容器发起的针对第二容器的容器端文件路径下目标文件的容器端恢复请求先转换为包括相同数据桶的访问密钥的对象下载请求,分布式对象存储子系统在访问密钥验证通过后根据对象下载请求读取相同数据桶中与目标文件对应的对象,将读取到的对象发送至第一宿主机,第一宿主机继而将对象转换成文件后映射至第一容器。鉴于本发明中第一容器和第二容器为不同的容器,且分别挂载有相同数据桶的容器端文件路径,可以有效实现跨容器的数据恢复。
Description
技术领域
本发明涉及分布式技术领域,尤其涉及数据处理系统及数据处理方法。
背景技术
本部分旨在为权利要求书中陈述的本发明实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
随着数据中心业务处理需求、数据量的海量增长,基础系统和应用环境等快速部署需求的不断增长,原来集中式主机系统越来越不能满足需求。
分布式系统由于其可扩展性强,计算成本低,越来越被广泛应用。比如分布式虚拟化的容器技术。但是,在通常情况下容器比较适合无状态化部署,而在某些特定业务需求场景下,当容器中部署数据库时,其产生的数据需要进行周期性恢复。目前常用的容器数据恢复方法,难以应对跨宿主机容器的数据恢复。如何解决跨容器数据恢复无疑是十分关键和必要的问题。
因此,现有的容器数据恢复方法,存在不能实现跨容器数据恢复的问题。
发明内容
本发明实施例提供一种数据处理系统,用以实现跨容器的数据恢复,该数据处理系统包括:
分布式对象存储子系统、包含第一容器的第一宿主机,及第二容器;其中,第一容器和第二容器分别挂载有相同数据桶的容器端文件路径,且第一容器和第二容器为不同的容器;
第一宿主机,用于将第一容器发起的针对第二容器的容器端文件路径下目标文件的容器端恢复请求转换为对象下载请求,发送对象下载请求至分布式对象存储子系统;其中,对象下载请求包括相同数据桶的访问密钥;
分布式对象存储子系统,用于对访问密钥进行验证,在访问密钥验证通过后根据对象下载请求读取相同数据桶中与目标文件对应的对象,将读取到的对象发送至第一宿主机;
第一宿主机,还用于将对象转换成文件后映射至第一容器。
本发明实施例还提供一种数据处理方法,用以实现跨容器的数据恢复,该数据处理方法包括:
第一宿主机将第一容器发起的针对第二容器的容器端文件路径下目标文件的容器端恢复请求转换为对象下载请求,发送对象下载请求至分布式对象存储子系统;
分布式对象存储子系统对访问密钥进行验证,在访问密钥验证通过后根据对象下载请求读取相同数据桶中与目标文件对应的对象,将读取到的对象发送至第一宿主机;
第一宿主机将对象转换成文件后映射至第一容器。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述数据处理方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述数据处理方法的计算机程序。
本发明实施例中,数据处理系统包括分布式对象存储子系统、包含第一容器的第一宿主机,及第二容器。在进行跨容器数据恢复时,第一宿主机将第一容器发起的针对第二容器的容器端文件路径下目标文件的容器端恢复请求先转换为包括相同数据桶的访问密钥的对象下载请求,分布式对象存储子系统在访问密钥验证通过后根据对象下载请求读取相同数据桶中与目标文件对应的对象,将读取到的对象发送至第一宿主机,第一宿主机继而将对象转换成文件后映射至第一容器。鉴于第一容器和第二容器为不同的容器,且分别挂载有相同数据桶的容器端文件路径,因此,本发明实施例可以有效实现跨容器的数据恢复。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本发明实施例提供的数据处理系统的功能分层示意图;
图2为本发明实施例提供的数据处理方法的实现流程图;
图3为本发明实施例提供的数据处理方法中步骤201的实现流程图;
图4为本发明实施例提供的数据处理方法的另一实现流程图;
图5为本发明实施例提供的数据处理方法的再一实现流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
虽然本发明提供了如下述实施例或附图所示的方法操作步骤或装置结构,但基于常规或者无需创造性的劳动在所述方法或装置中可以包括更多或者更少的操作步骤或模块单元。在逻辑性上不存在必要因果关系的步骤或结构中,这些步骤的执行顺序或装置的模块结构不限于本发明实施例或附图所示的执行顺序或模块结构。所述的方法或模块结构的在实际中的装置或终端产品应用时,可以按照实施例或者附图所示的方法或模块结构进行顺序执行或者并行执行。
针对现有技术中不能有效实现跨容器的数据恢复的缺陷,本发明的申请人提出了一种数据处理系统及数据处理方法,其包括分布式对象存储子系统、包含第一容器的第一宿主机,及第二容器。在进行跨容器数据恢复时,第一宿主机将第一容器发起的针对第二容器的容器端文件路径下目标文件的容器端恢复请求先转换为包括相同数据桶的访问密钥的对象下载请求,分布式对象存储子系统在访问密钥验证通过后根据对象下载请求读取相同数据桶中与目标文件对应的对象,将读取到的对象发送至第一宿主机,第一宿主机继而将对象转换成文件后映射至第一容器。鉴于本发明实施例中第一容器和第二容器为不同的容器,且分别挂载有相同数据桶的容器端文件路径,达到了可以有效实现跨容器的数据恢复的目的。
图1示出了本发明实施例提供的数据处理系统的功能分层示意,为便于描述,仅示出了与本发明实施例相关的部分,详述如下:
如图1所示,按照数据处理系统的功能进行划分,数据处理系统可以分为四层,分别是数据存储层、接口转换层、宿主机访问层及容器访问层。
首先定义如下,第一容器对应的宿主机为第一宿主机,第二容器对应的宿主机为第二宿主机。在本发明的一实施例中,第一容器和第二容器对应同一个宿主机,即第一宿主机和第二宿主机可以相同。在本发明的其他实施例中,第一容器和第二容器对应不同的宿主机,即第一宿主机和第二宿主机也可以不同。
各功能层分别接介绍如下:
数据存储层:
分布式对象存储子系统包括分布式对象存储集群,分布式对象存储集群主要包括对象存储设备(Object-based Storage device,简称OSD)节点和对象网关(RADOSGateway,简称RGW)。其中,对象存储设备为实际进行数据存储的存储节点。对于分布式对象存储集群本身而言,对象存储设备的节点数量并无特殊限制,可以选择一个或多个。在实际使用过程中,对象存储设备的节点数量需要结合用户的数据安全性与性能要求(与数据副本有关)、故障域需求等综合考虑。例如,使用三副本进行数据存储,故障域为host时,则建议对象存储设备的节点数量不少于三个。对象网关接收客户端(本发明实施例中是指宿主机,例如第一宿主机或第二宿主机等)的HTTP请求,并将宿主机端的HTTP请求转换为分布式对象存储集群的对象请求,同时也可以把分布式对象存储集群的对象请求转换为HTTP请求结果返回至宿主机端。
分布式对象存储集群,以数据桶(例如数据桶1、数据桶2···数据桶N)的形式提供给分布式对象存储集群的客户端(本发明实施例中是指宿主机的接口转换模块),宿主机的接口转换模块对外提供兼容S3协议的接口,可以进行对象存储数据的存取和管理。如图1所示,由若干节点组成的分布式对象存储集群,创建了N(N为大于1的正整数)个数据桶,用户通过数据桶进行数据读写等操作。
接口转换层:
由部署在宿主机端的接口转换模块组成,接口转换模块将S3对象访问接口转换成文件路径访问接口。通过配置分布式对象存储集群数据桶的访问密钥,将对象存储的数据桶以宿主机端文件路径的形式挂载到宿主机端。例如,如图1所示,接口转换模块将分布式对象存储集群的数据桶1挂载到第一宿主机上,挂载点为第一宿主机的一宿主机端文件路径;接口转换模块将数据桶2分别挂载在第一宿主机和第二宿主机上,挂载点分别为第一宿主机的又一宿主机端文件路径和第二宿主机的宿主机端文件路径;接口转换模块将分布式对象存储集群的数据桶N挂载到第二宿主机上,挂载点为第二宿主机的又一宿主机端文件路径。
宿主机访问层:
宿主机访问层,主要是指宿主机端可访问的文件系统。本发明实施例中是指接口转换模块将分布式对象存储集群的数据桶挂载处理后呈现给宿主机端可访问的文件系统,即宿主机端文件路径。当第一宿主机和第二宿主机挂载相同的数据通2时,可使用数据桶2对应的访问密钥对数据桶2进行读写等操作,进而实现不同宿主机之间的数据处理,例如数据恢复。例如,第一宿主机和第二宿主机使用数据桶2的访问密钥,将数据桶2分别挂载到第一宿主机和第二宿主机的宿主机端文件路径/dock_share,则第一宿主机和第二宿主机中宿主机端文件路径/dock_share下的数据即为数据桶2中的数据,为第一宿主机和第二宿主机共享使用。具体跨容器的数据恢复可以参见下述相关实施例的描述,此处不在赘言。
容器端访问层:
容器端访问层,主要是指容器端可访问的文件系统,本发明实施例中是指宿主机端访问层通过容器的数据持久化设置,将宿主机端文件路径映射为容器端可访问的文件系统,即容器端文件路径。例如,如图1所示,将第一宿主机的宿主机端文件路径映射为第一容器的容器端文件路径,将第二宿主机的宿主机端文件路径映射为第二容器的容器端文件路径。写入容器访问层的数据,实际将写入对应的分布式对象存储集群的数据桶。此外,将宿主机端挂载了相同数据桶的宿主机端文件路径映射到不同容器的容器端文件路径,即可在后续实现跨容器的数据恢复。例如,将挂载了相同数据桶2的第一宿主机和第二宿主机的宿主机端文件路径/dock_share分别映射到第一容器和第二容器,体现为第一容器和第二容器的容器端共享路径/backup,之后即可实现跨容器的数据恢复,跨容器的数据恢复具体可参见下述相关实施例。
本发明实施例提供的数据处理系统,包括:
分布式对象存储子系统、包含第一容器的第一宿主机,及第二容器;其中,第一容器和第二容器分别挂载有相同数据桶的容器端文件路径,且第一容器和第二容器为不同的容器;
第一宿主机,用于将第一容器发起的针对第二容器的容器端文件路径下目标文件的容器端恢复请求转换为对象下载请求,发送对象下载请求至分布式对象存储子系统;其中,对象下载请求包括相同数据桶的访问密钥;
分布式对象存储子系统,用于对访问密钥进行验证,在访问密钥验证通过后根据对象下载请求读取相同数据桶中与目标文件对应的对象,将读取到的对象发送至第一宿主机;
第一宿主机,还用于将对象转换成文件后映射至第一容器。
虚拟化容器技术,是一种被大家广泛认可的服务器资源共享方式。容器(LinuxContainer,简称LXC),它是一种内核轻量级的操作系统层虚拟化技术,具有易移植,一次构建随处部署,以及非常强大的弹性管理能力等特点。宿主机,是指其上安装有虚拟机的软件的物理计算机。在某台物理计算机上构建虚拟的容器后,该物理计算机即成为该容器的宿主机。宿主机可以包含多个容器。
分布式对象存储子系统,为本发明的海量存储后端,包括由若干服务器组成的分布式对象存储集群,具有较好的规模可扩展性。分布式对象存储集群包含有若干数据桶。
另外,为实现跨容器的数据恢复,在进行跨容器的数据恢复之前,第一容器和第二容器分别挂载有分布式对象存储集群中相同数据桶的容器端文件路径。分布式对象存储集群将相同数据桶挂载至第一容器和第二容器的过程如下:
首先,分布式对象存储集群将该相同数据桶分别挂载至第一宿主机和第二宿主机,在宿主机端分别对应的体现为第一宿主机的宿主机端文件路径和第二宿主机的宿主机端文件路径。
通过提前对第一容器第二容器的数据持久化配置,即根据持久化配置命令或者持久化配置文件配置第一宿主机的宿主机端文件路径和第一容器的容器端文件路径的对应关系,预先配置第二宿主机的宿主机端文件路径和第二容器的容器端文件路径的对应关系。
进而第一宿主机根据对应关系将该相同数据桶对应的宿主机端文件路径映射为第一容器的容器端文件路径,第二宿主机根据对应关系将该相同数据桶对应的宿主机端文件路径映射为第二容器的容器端文件路径,至此将相同数据通分别挂载至第一容器和第二容器,在第一容器和第二容器分别体现为第一容器的容器端文件路径和第二容器的容器端文件路径。此时,对第一容器或第二容器的容器端文件路径下的数据进行读写,即为对后端分布式对象存储集群的该相同数据桶进行数据读写。第一容器的容器端文件路径和第二容器的容器端文件路径均对应分布式对象存储子系统中的相同数据桶,该数据桶中的数据为两个容器所共享,在第一容器的容器端文件路径下和第二容器的容器端文件路径下的内容相同。
在本发明实施例中,数据处理系统包括分布式对象存储子系统、包含第一容器的第一宿主机,及第二容器。在进行跨容器数据恢复时,第一宿主机将第一容器发起的针对第二容器的容器端文件路径下目标文件的容器端恢复请求先转换为包括相同数据桶的访问密钥的对象下载请求,分布式对象存储子系统在访问密钥验证通过后根据对象下载请求读取相同数据桶中与目标文件对应的对象,将读取到的对象发送至第一宿主机,第一宿主机继而将对象转换成文件后映射至第一容器。鉴于第一容器和第二容器为不同的容器,且分别挂载有相同数据桶的容器端文件路径,因此,本发明实施例可以有效实现跨容器的数据恢复。
在本发明的一实施例中,第一宿主机将第一容器发起的针对第二容器的容器端文件路径下目标文件的容器端恢复请求转换为对象下载请求,发送对象下载请求至分布式对象存储子系统,具体为:
第一宿主机,还用于将第一容器发起的针对第二容器的容器端文件路径下目标文件的容器端恢复请求映射为宿主机端恢复请求;
第一宿主机,还用于将宿主机端恢复请求转换为对象下载请求,发送对象下载请求至分布式对象存储子系统。具体的,第一宿主机通过其接口转换模块将宿主机端恢复请求转换为对象下载请求。
在本发明的一实施例中,分布式对象存储子系统在访问密钥验证通过后,还用于检查相同数据桶中与目标文件对应的对象是否存在,在相同数据桶中与目标文件对应的对象存在时根据对象下载请求读取相同数据桶中与目标文件对应的对象,将读取到的对象发送至第一宿主机。
在本发明的一实施例中,分布式对象存储子系统,还用于在访问密钥验证不通过时,提示访问密钥不合法。
在本发明的一实施例中,分布式对象存储子系统,还用于在相同数据桶中与目标文件对应的对象不存在时,提示请求的对象不存在。
本发明实施例提供的数据处理系统还可以实现容器自身数据的备份,具体可参见后续数据处理方法中对容器数据备份部分相关实施例的描述,此处不再赘言。在本发明的一实施例中:
第一宿主机,还用于将第一容器发起的针对第一容器的容器端文件路径下目标文件的容器端备份请求转换为对象上传请求,发送对象上传请求至分布式对象存储子系统;对象上传请求包括相同数据桶的访问密钥;
分布式对象存储子系统,还用于对访问密钥进行验证,在访问密钥验证通过后根据对象上传请求将目标文件以对象的形式写入相同数据桶中,发送对象上传结束至第一宿主机;
第一宿主机,还用于将对象上传结束转换为文件写入结束后映射至第一容器。
在本发明的一实施例中,第一宿主机将第一容器发起的针对第一容器的容器端文件路径下目标文件的容器端备份请求转换为对象上传请求,发送对象上传请求至分布式对象存储子系统,具体为:
第一宿主机,还用于将第一容器发起的针对第一容器的容器端文件路径下目标文件的容器端备份请求映射为宿主机端备份请求;
第一宿主机,还用于将宿主机端备份请求转换为对象上传请求,发送对象上传请求至分布式对象存储子系统。
在本发明的一实施例中,分布式对象存储子系统在访问密钥验证通过后根据对象上传请求将目标文件以对象的形式写入相同数据桶中,发送对象上传结束至第一宿主机,包括:
分布式对象存储子系统在访问密钥验证通过后检查存储空间,在存储空间充足时根据对象上传请求将目标文件以对象的形式写入相同数据桶中,发送对象上传结束至第一宿主机。
在本发明的一实施例中,分布式对象存储子系统,还用于在访问密钥验证不通过时,提示访问密钥不合法。
在本发明的一实施例中,分布式对象存储子系统,还用于在存储空间不足时,提示存储空间不足。
本发明实施例提供的数据处理系统还可以实现容器自身数据的查询,具体可参见后续数据处理方法中对容器数据查询部分相关实施例的描述,此处不再赘言。在本发明的一实施例中:
第一宿主机,还用于将第一容器发起的针对第一容器的容器端文件路径下目标文件的容器端查询请求转换为对象查询请求,发送对象查询请求至分布式对象存储子系统;对象查询请求包括相同数据桶的访问密钥;
分布式对象存储子系统,还用于对访问密钥进行验证,在访问密钥验证通过后根据对象查询请求查询目标文件对应的对象清单,发送查询到的对象清单至第一宿主机;
第一宿主机,还用于将对象清单转换为文件列表后映射至第一容器。
在本发明的一实施例中,第一宿主机将第一容器发起的针对第一容器的容器端文件路径下目标文件的容器端查询请求转换为对象查询请求,发送对象查询请求至分布式对象存储子系统,具体为:
第一宿主机,还用于将第一容器发起的针对第一容器的容器端文件路径下目标文件的容器端查询请求映射为宿主机端查询请求;
第一宿主机,还用于将宿主机端查询请求转换为对象查询请求,发送对象查询请求至分布式对象存储子系统。
在本发明的一实施例中,分布式对象存储子系统在访问密钥验证通过后根据对象查询请求查询目标文件对应的对象清单,发送查询到的对象清单至第一宿主机,包括:
分布式对象存储子系统在访问密钥验证通过后检查相同数据桶中与目标文件对应的对象清单是否存在,在相同数据桶中与目标文件对应的对象清单存在时根据对象查询请求查询目标文件对应的对象清单,发送查询到的对象清单至第一宿主机。
在本发明的一实施例中,分布式对象存储子系统,还用于在访问密钥验证不通过时,提示访问密钥不合法。
在本发明的一实施例中,分布式对象存储子系统,还用于在相同数据桶中与目标文件对应的对象清单不存在时,提示请求的对象清单不存在。
本发明实施例中还提供了一种数据处理方法,如下面的实施例所述。鉴于数据处理方法应用于上述实施例所述的数据处理系统,因此这些数据处理方法的实施可以参见数据处理系统的实施,重复之处不再赘述。
图2示出了本发明实施例提供的数据处理方法的实现流程,为便于描述,仅示出了与本发明实施例相关的部分,详述如下:
如图2所示,数据处理方法,其包括:
步骤201,第一宿主机将第一容器发起的针对第二容器的容器端文件路径下目标文件的容器端恢复请求转换为对象下载请求,发送对象下载请求至分布式对象存储子系统;
步骤202,分布式对象存储子系统对访问密钥进行验证,在访问密钥验证通过后根据对象下载请求读取相同数据桶中与目标文件对应的对象,将读取到的对象发送至第一宿主机;
步骤203,第一宿主机将对象转换成文件后映射至第一容器。
在本发明的实施例中,在进行跨容器数据恢复时,第一宿主机将第一容器发起的针对第二容器的容器端文件路径下目标文件的容器端恢复请求先转换为包括相同数据桶的访问密钥的对象下载请求,分布式对象存储子系统在访问密钥验证通过后根据对象下载请求读取相同数据桶中与目标文件对应的对象,将读取到的对象发送至第一宿主机,第一宿主机继而将对象转换成文件后映射至第一容器。鉴于第一容器和第二容器为不同的容器,且分别挂载有相同数据桶的容器端文件路径,因此,本发明实施例可以有效实现跨容器的数据恢复。
图3示出了本发明实施例提供的数据处理方法中步骤201的实现流程,为便于描述,仅示出了与本发明实施例相关的部分,详述如下:
在本发明的一实施例中,如图3所示,步骤201,第一宿主机将第一容器发起的针对第二容器的容器端文件路径下目标文件的容器端恢复请求转换为对象下载请求,发送对象下载请求至分布式对象存储子系统,包括:
步骤301,第一宿主机将第一容器发起的针对第二容器的容器端文件路径下目标文件的容器端恢复请求映射为宿主机端恢复请求;
步骤302,第一宿主机将宿主机端恢复请求转换为对象下载请求,发送对象下载请求至分布式对象存储子系统。其中,第一宿主机通过其接口转换模块将宿主机端恢复请求转换为对象下载请求。
在本发明的一实施例中,步骤202,分布式对象存储子系统对访问密钥进行验证,在访问密钥验证通过后根据对象下载请求读取相同数据桶中与目标文件对应的对象,将读取到的对象发送至第一宿主机,包括:
分布式对象存储子系统在访问密钥验证通过后,还用于检查相同数据桶中与目标文件对应的对象是否存在,在相同数据桶中与目标文件对应的对象存在时根据对象下载请求读取相同数据桶中与目标文件对应的对象,将读取到的对象发送至第一宿主机。
在本发明的一实施例中,在上述的基础上,数据处理方法还包括:
步骤:分布式对象存储子系统在访问密钥验证不通过时,提示访问密钥不合法。
在本发明的一实施例中,在上述的基础上,数据处理方法还包括:
步骤:分布式对象存储子系统在相同数据桶中与目标文件对应的对象不存在时,提示请求的对象不存在。
图4示出了本发明实施例提供的数据处理方法的另一实现流程,为便于描述,仅示出了与本发明实施例相关的部分,详述如下:
在本发明的一实施例中,如图4所示,在上述图2所示方法步骤的基础上,数据处理方法,还包括:
步骤401,第一宿主机将第一容器发起的针对第一容器的容器端文件路径下目标文件的容器端备份请求转换为对象上传请求,发送对象上传请求至分布式对象存储子系统;对象上传请求包括相同数据桶的访问密钥;
步骤402,分布式对象存储子系统对访问密钥进行验证,在访问密钥验证通过后根据对象上传请求将目标文件以对象的形式写入相同数据桶中,发送对象上传结束至第一宿主机;
步骤403,第一宿主机将对象上传结束转换为文件写入结束后映射至第一容器。
在本发明实施例中,第一宿主机将第一容器发起的针对第一容器的容器端文件路径下目标文件的容器端备份请求转换为对象上传请求,发送对象上传请求至分布式对象存储子系统;对象上传请求包括相同数据桶的访问密钥,分布式对象存储子系统对访问密钥进行验证,在访问密钥验证通过后根据对象上传请求将目标文件以对象的形式写入相同数据桶中,发送对象上传结束至第一宿主机,第一宿主机将对象上传结束转换为文件写入结束后映射至第一容器,可以有效实现容器自身数据备份,扩展和丰富了数据处理系统的功能。
在本发明的一实施例中,步骤401,第一宿主机将第一容器发起的针对第一容器的容器端文件路径下目标文件的容器端备份请求转换为对象上传请求,发送对象上传请求至分布式对象存储子系统,包括:
步骤:第一宿主机将第一容器发起的针对第一容器的容器端文件路径下目标文件的容器端备份请求映射为宿主机端备份请求;
步骤:第一宿主机将宿主机端备份请求转换为对象上传请求,发送对象上传请求至分布式对象存储子系统。
在本发明的一实施例中,步骤402,分布式对象存储子系统对访问密钥进行验证,在访问密钥验证通过后根据对象上传请求将目标文件以对象的形式写入相同数据桶中,发送对象上传结束至第一宿主机,包括:
分布式对象存储子系统在访问密钥验证通过后检查存储空间,在存储空间充足时根据对象上传请求将目标文件以对象的形式写入相同数据桶中,发送对象上传结束至第一宿主机。
在本发明的一实施例中,在上述的基础上,数据处理方法还包括:
步骤:分布式对象存储子系统在访问密钥验证不通过时,提示访问密钥不合法。
在本发明的一实施例中,在上述的基础上,数据处理方法还包括:
步骤:分布式对象存储子系统在存储空间不足时,提示存储空间不足。
图5示出了本发明实施例提供的数据处理方法的再一实现流程,为便于描述,仅示出了与本发明实施例相关的部分,详述如下:
在本发明的一实施例中,如图5所示,在上述图2所示方法步骤的基础上,数据处理方法,还包括:
步骤501,第一宿主机将第一容器发起的针对第一容器的容器端文件路径下目标文件的容器端查询请求转换为对象查询请求,发送对象查询请求至分布式对象存储子系统;对象查询请求包括相同数据桶的访问密钥;
步骤502,分布式对象存储子系统对访问密钥进行验证,在访问密钥验证通过后根据对象查询请求查询目标文件对应的对象清单,发送查询到的对象清单至第一宿主机;
步骤503,第一宿主机将对象清单转换为文件列表后映射至第一容器。
在本发明实施例中,第一宿主机将第一容器发起的针对第一容器的容器端文件路径下目标文件的容器端查询请求转换为对象查询请求,发送对象查询请求至分布式对象存储子系统;对象查询请求包括相同数据桶的访问密钥,分布式对象存储子系统对访问密钥进行验证,在访问密钥验证通过后根据对象查询请求查询目标文件对应的对象清单,发送查询到的对象清单至第一宿主机,第一宿主机将对象清单转换为文件列表后映射至第一容器,可以有效实现容器自身数据备份,扩展和丰富了数据处理系统的功能。
在本发明的一实施例中,步骤501,第一宿主机将第一容器发起的针对第一容器的容器端文件路径下目标文件的容器端查询请求转换为对象查询请求,发送对象查询请求至分布式对象存储子系统,包括:
步骤:第一宿主机将第一容器发起的针对第一容器的容器端文件路径下目标文件的容器端查询请求映射为宿主机端查询请求;
步骤:第一宿主机将宿主机端查询请求转换为对象查询请求,发送对象查询请求至分布式对象存储子系统。
在本发明的一实施例中,步骤502,分布式对象存储子系统对访问密钥进行验证,在访问密钥验证通过后根据对象查询请求查询目标文件对应的对象清单,发送查询到的对象清单至第一宿主机,包括:
步骤:分布式对象存储子系统在访问密钥验证通过后检查相同数据桶中与目标文件对应的对象清单是否存在,在相同数据桶中与目标文件对应的对象清单存在时根据对象查询请求查询目标文件对应的对象清单,发送查询到的对象清单至第一宿主机。
在本发明的一实施例中,在上述的基础上,数据处理方法还包括:
步骤:分布式对象存储子系统在访问密钥验证不通过时,提示访问密钥不合法。
在本发明的一实施例中,在上述的基础上,数据处理方法还包括:
步骤:分布式对象存储子系统在相同数据桶中与目标文件对应的对象清单不存在时,提示请求的对象清单不存在。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述数据处理方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述数据处理方法的计算机程序。
综上所述,本发明实施例中,数据处理系统包括分布式对象存储子系统、包含第一容器的第一宿主机,及第二容器。在进行跨容器数据恢复时,第一宿主机将第一容器发起的针对第二容器的容器端文件路径下目标文件的容器端恢复请求先转换为包括相同数据桶的访问密钥的对象下载请求,分布式对象存储子系统在访问密钥验证通过后根据对象下载请求读取相同数据桶中与目标文件对应的对象,将读取到的对象发送至第一宿主机,第一宿主机继而将对象转换成文件后映射至第一容器。鉴于第一容器和第二容器为不同的容器,且分别挂载有相同数据桶的容器端文件路径,因此,本发明实施例可以有效实现跨容器的数据恢复。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种数据处理系统,其特征在于,包括:
分布式对象存储子系统、包含第一容器的第一宿主机,及第二容器;其中,第一容器和第二容器分别挂载有相同数据桶的容器端文件路径,且第一容器和第二容器为不同的容器;
第一宿主机,用于将第一容器发起的针对第二容器的容器端文件路径下目标文件的容器端恢复请求转换为对象下载请求,发送对象下载请求至分布式对象存储子系统;其中,对象下载请求包括相同数据桶的访问密钥;
分布式对象存储子系统,用于对访问密钥进行验证,在访问密钥验证通过后根据对象下载请求读取相同数据桶中与目标文件对应的对象,将读取到的对象发送至第一宿主机;
第一宿主机,还用于将对象转换成文件后映射至第一容器。
2.如权利要求1所述的数据处理系统,其特征在于,
第一宿主机,还用于将第一容器发起的针对第二容器的容器端文件路径下目标文件的容器端恢复请求映射为宿主机端恢复请求;
第一宿主机,还用于将宿主机端恢复请求转换为对象下载请求,发送对象下载请求至分布式对象存储子系统。
3.如权利要求1所述的数据处理系统,其特征在于,分布式对象存储子系统在访问密钥验证通过后,还用于检查相同数据桶中与目标文件对应的对象是否存在,在相同数据桶中与目标文件对应的对象存在时,根据对象下载请求读取相同数据桶中与目标文件对应的对象,将读取到的对象发送至第一宿主机。
4.一种应用于如权利要求1至3任一项所述的数据处理系统的数据处理方法,其特征在于,包括:
第一宿主机将第一容器发起的针对第二容器的容器端文件路径下目标文件的容器端恢复请求转换为对象下载请求,发送对象下载请求至分布式对象存储子系统;
分布式对象存储子系统对访问密钥进行验证,在访问密钥验证通过后根据对象下载请求读取相同数据桶中与目标文件对应的对象,将读取到的对象发送至第一宿主机;
第一宿主机将对象转换成文件后映射至第一容器。
5.如权利要求4所述的数据处理方法,其特征在于,第一宿主机将第一容器发起的针对第二容器的容器端文件路径下目标文件的容器端恢复请求转换为对象下载请求,发送对象下载请求至分布式对象存储子系统,包括:
第一宿主机将第一容器发起的针对第二容器的容器端文件路径下目标文件的容器端恢复请求映射为宿主机端恢复请求;
第一宿主机将宿主机端恢复请求转换为对象下载请求,发送对象下载请求至分布式对象存储子系统。
6.如权利要求4所述的数据处理方法,其特征在于,分布式对象存储子系统在访问密钥验证通过后根据对象下载请求读取相同数据桶中与目标文件对应的对象,将读取到的对象发送至第一宿主机,包括:
分布式对象存储子系统在访问密钥验证通过后检查相同数据桶中与目标文件对应的对象是否存在,在相同数据桶中与目标文件对应的对象存在时,根据对象下载请求读取相同数据桶中与目标文件对应的对象,将读取到的对象发送至第一宿主机。
7.如权利要求4所述的数据处理方法,其特征在于,还包括:
第一宿主机将第一容器发起的针对第一容器的容器端文件路径下目标文件的容器端备份请求转换为对象上传请求,发送对象上传请求至分布式对象存储子系统;对象上传请求包括相同数据桶的访问密钥;
分布式对象存储子系统对访问密钥进行验证,在访问密钥验证通过后根据对象上传请求将目标文件以对象的形式写入相同数据桶中,发送对象上传结束至第一宿主机;
第一宿主机将对象上传结束转换为文件写入结束后映射至第一容器。
8.如权利要求4所述的数据处理方法,其特征在于,还包括:
第一宿主机将第一容器发起的针对第一容器的容器端文件路径下目标文件的容器端查询请求转换为对象查询请求,发送对象查询请求至分布式对象存储子系统;对象查询请求包括相同数据桶的访问密钥;
分布式对象存储子系统对访问密钥进行验证,在访问密钥验证通过后根据对象查询请求查询目标文件对应的对象清单,发送查询到的对象清单至第一宿主机;
第一宿主机将对象清单转换为文件列表后映射至第一容器。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求4至8任一所述方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求4至8任一所述方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910242398.2A CN110012087B (zh) | 2019-03-28 | 2019-03-28 | 数据处理系统及数据处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910242398.2A CN110012087B (zh) | 2019-03-28 | 2019-03-28 | 数据处理系统及数据处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110012087A true CN110012087A (zh) | 2019-07-12 |
CN110012087B CN110012087B (zh) | 2022-02-01 |
Family
ID=67168588
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910242398.2A Active CN110012087B (zh) | 2019-03-28 | 2019-03-28 | 数据处理系统及数据处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110012087B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112732403A (zh) * | 2021-01-04 | 2021-04-30 | 烽火通信科技股份有限公司 | 一种基于容器的文件管理方法和电子设备 |
CN112905537A (zh) * | 2021-02-20 | 2021-06-04 | 北京百度网讯科技有限公司 | 文件处理方法、装置、电子设备和存储介质 |
CN113691624A (zh) * | 2021-08-24 | 2021-11-23 | 湖北亿咖通科技有限公司 | 基于容器的数据传输方法及设备 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104123359A (zh) * | 2014-07-17 | 2014-10-29 | 江苏省邮电规划设计院有限责任公司 | 一种分布式对象存储系统的资源管理方法 |
US20160162320A1 (en) * | 2014-11-11 | 2016-06-09 | Amazon Technologies, Inc. | System for managing and scheduling containers |
US20170068472A1 (en) * | 2015-09-09 | 2017-03-09 | Netapp, Inc. | Systems, methods and devices for compressing snapshot data and for block sharing across volumes |
CN107508795A (zh) * | 2017-07-26 | 2017-12-22 | 中国联合网络通信集团有限公司 | 跨容器集群的访问处理装置及方法 |
CN108052373A (zh) * | 2017-12-22 | 2018-05-18 | 福建星网智慧科技股份有限公司 | 基于runC实现带网络的容器生成与恢复的方法 |
CN108304270A (zh) * | 2017-12-12 | 2018-07-20 | 中国电子科技集团公司电子科学研究院 | 一种通信方法、设备及计算机可读存储介质 |
CN108574705A (zh) * | 2017-03-09 | 2018-09-25 | 中国移动通信集团湖北有限公司 | 一种容器间的通信方法、装置及系统 |
US20180307537A1 (en) * | 2017-04-20 | 2018-10-25 | Red Hat, Inc. | Instantiating containers with a unified data volume |
CN109274722A (zh) * | 2018-08-24 | 2019-01-25 | 北京北信源信息安全技术有限公司 | 数据共享方法、装置以及电子设备 |
-
2019
- 2019-03-28 CN CN201910242398.2A patent/CN110012087B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104123359A (zh) * | 2014-07-17 | 2014-10-29 | 江苏省邮电规划设计院有限责任公司 | 一种分布式对象存储系统的资源管理方法 |
US20160162320A1 (en) * | 2014-11-11 | 2016-06-09 | Amazon Technologies, Inc. | System for managing and scheduling containers |
US20170068472A1 (en) * | 2015-09-09 | 2017-03-09 | Netapp, Inc. | Systems, methods and devices for compressing snapshot data and for block sharing across volumes |
CN108574705A (zh) * | 2017-03-09 | 2018-09-25 | 中国移动通信集团湖北有限公司 | 一种容器间的通信方法、装置及系统 |
US20180307537A1 (en) * | 2017-04-20 | 2018-10-25 | Red Hat, Inc. | Instantiating containers with a unified data volume |
CN107508795A (zh) * | 2017-07-26 | 2017-12-22 | 中国联合网络通信集团有限公司 | 跨容器集群的访问处理装置及方法 |
CN108304270A (zh) * | 2017-12-12 | 2018-07-20 | 中国电子科技集团公司电子科学研究院 | 一种通信方法、设备及计算机可读存储介质 |
CN108052373A (zh) * | 2017-12-22 | 2018-05-18 | 福建星网智慧科技股份有限公司 | 基于runC实现带网络的容器生成与恢复的方法 |
CN109274722A (zh) * | 2018-08-24 | 2019-01-25 | 北京北信源信息安全技术有限公司 | 数据共享方法、装置以及电子设备 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112732403A (zh) * | 2021-01-04 | 2021-04-30 | 烽火通信科技股份有限公司 | 一种基于容器的文件管理方法和电子设备 |
CN112905537A (zh) * | 2021-02-20 | 2021-06-04 | 北京百度网讯科技有限公司 | 文件处理方法、装置、电子设备和存储介质 |
CN112905537B (zh) * | 2021-02-20 | 2022-09-02 | 北京百度网讯科技有限公司 | 文件处理方法、装置、电子设备和存储介质 |
CN113691624A (zh) * | 2021-08-24 | 2021-11-23 | 湖北亿咖通科技有限公司 | 基于容器的数据传输方法及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110012087B (zh) | 2022-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200264939A1 (en) | Container based service management | |
US11249834B2 (en) | Storage system with coordinated recovery across multiple input-output journals of different types | |
US20190245911A1 (en) | Address space management with respect to a coherent accelerator processor interface architecture | |
US11188499B2 (en) | Storing and retrieving restricted datasets to and from a cloud network with non-restricted datasets | |
US8838529B2 (en) | Applying replication rules to determine whether to replicate objects | |
US20150363419A1 (en) | Placement of data fragments generated by an erasure code in distributed computational devices based on a deduplication factor | |
US10558568B2 (en) | Restriction of validation to active tracks in non-volatile storage during a warmstart recovery | |
US11308223B2 (en) | Blockchain-based file handling | |
CN110012087A (zh) | 数据处理系统及数据处理方法 | |
US10936208B2 (en) | Point-in-time backups via a storage controller to an object storage cloud | |
US10747458B2 (en) | Methods and systems for improving efficiency in cloud-as-backup tier | |
US10838641B2 (en) | Defragmenting backup objects | |
US10528431B2 (en) | Providing integrity for data sets backed-up from client systems to objects in a network storage | |
US11093477B1 (en) | Multiple source database system consolidation | |
US9767010B2 (en) | Performing dynamic data generation and verification for functional validation of data manipulation programs | |
US10698631B2 (en) | Point-in-time copy with target write optimization | |
US11287982B2 (en) | Associating data management policies to portions of data using connection information | |
US11157192B2 (en) | Recall of previously migrated data from a cloud storage to a storage controller by using parallel writers for the data | |
US11544387B2 (en) | Hash protection within an object storage library | |
US11687416B2 (en) | Data backup optimization | |
US20230409716A1 (en) | Shared library customization | |
US20240020389A1 (en) | Fuzzing guided binary hardening | |
US20200264798A1 (en) | Migration of data from a storage controller to cloud storage by using parallel readers for the data | |
Das | Distributed File Systems Implementation on an Edge Router using GlusterFS for Cloud Applications |
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 |