CN114422537B - 多云存储系统、多云数据读写方法及电子设备 - Google Patents
多云存储系统、多云数据读写方法及电子设备 Download PDFInfo
- Publication number
- CN114422537B CN114422537B CN202210309821.8A CN202210309821A CN114422537B CN 114422537 B CN114422537 B CN 114422537B CN 202210309821 A CN202210309821 A CN 202210309821A CN 114422537 B CN114422537 B CN 114422537B
- Authority
- CN
- China
- Prior art keywords
- data
- cloud platform
- request
- target
- cloud
- 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
-
- 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
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/178—Techniques for file synchronisation in file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- 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/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开涉及一种多云存储系统、多云数据读写方法及电子设备,以解决跨云数据的数据强一致性问题和数据读写性能问题。所述系统包括第一云平台和至少一个第二云平台,其中,所述第一云平台设置有第一存储中间层,所述第二云平台设置有第二存储中间层;所述第一云平台用于全量存储第一数据,所述第一数据包括所述第一云平台存储的、目标数据对应的所有数据块和所述目标数据对应的元数据。
Description
技术领域
本公开涉及数据处理技术领域,具体地,涉及一种多云存储系统、多云数据读写方法及电子设备。
背景技术
多云是未来IT基础设施的主流发展方向,但是目前多云方案落地面临复杂的分布式数据同步与性能问题,而多云存储系统的跨云数据读写方法则是处理该问题的核心之一。
具体的,多云存储系统拥有复杂的数据存储环境,需要保证跨云数据的数据强一致性和数据读写性能。
发明内容
本公开的目的是提供一种多云存储系统、多云数据读写方法及电子设备,以解决跨云数据的数据强一致性问题和数据读写性能问题。
为了实现上述目的,本公开的第一方面提供一种多云存储系统,所述系统包括第一云平台和至少一个第二云平台,其中,所述第一云平台设置有第一存储中间层,所述第二云平台设置有第二存储中间层;
所述第一云平台用于全量存储第一数据,所述第一数据包括所述第一云平台存储的、目标数据对应的所有数据块和所述目标数据对应的元数据;
所述第一云平台用于通过所述第一存储中间层接收针对所述第一数据的多个数据操作请求,并通过所述第一存储中间层同步执行如下操作:当任一所述数据操作请求为针对所述第一数据的第一数据写入请求时,根据所述第一数据写入请求对所述第一数据进行目标同步写入操作,并在所述至少一个第二平台中,查找存储有与所述第一数据相同的第二数据的目标第二云平台,向所述目标第二云平台发送针对所述第二数据的第二数据写入请求,所述第二数据写入请求用于对所述第二数据执行与所述目标同步写入操作相同的同步写入操作;
所述目标第二云平台用于通过对应的所述第二存储中间层在接收到所述第二数据写入请求时,根据所述第二数据写入请求对所述第二数据进行同步写入操作。
可选地,所述第一云平台用于通过所述第一存储中间层响应于针对第三数据的数据操作请求,当在所述第一云平台存储的数据中未查找到所述第三数据时,在所述至少一个第二云平台中查找存储有所述第三数据的第二云平台,并向所述存储有所述第三数据的第二云平台发送数据同步请求,所述数据同步请求用于将所述第三数据同步至所述第一云平台;
所述存储有所述第三数据的第二云平台用于通过对应的所述第二存储中间层响应于所述数据同步请求,基于所述第三数据向所述第一云平台进行数据同步;
所述第一云平台还用于通过所述第一存储中间层接收所述第二云平台基于所述第三数据的同步的数据,并基于所述同步的数据,得到目标操作数据,并根据所述针对第三数据的数据操作请求对所述目标操作数据进行数据操作。
可选地,所述第一云平台还用于通过所述第一存储中间层创建空白副本;
所述存储有所述第三数据的第二云平台用于通过对应的所述第二存储中间层响应于所述数据同步请求,暂停执行针对所述第三数据的、除所述数据同步请求外的其他数据操作请求对应的数据操作,对所述第三数据创建数据快照,在对所述第三数据创建数据快照后,继续执行所述其他数据操作请求对应的数据操作,并开启后台进程将所述数据快照同步到所述第一云平台;
所述第一云平台用于通过所述第一存储中间层接收所述第三数据对应的所述数据快照,并将所述数据快照写入所述空白副本,得到目标操作数据,根据针对所述第三数据的数据操作请求对所述目标操作数据进行数据操作。
可选地,所述第一云平台还用于通过所述第一存储中间层在所述数据操作请求为数据读取请求时,根据所述数据读取请求对所述第一数据进行同步读取操作。
可选地,所述第一存储中间层设置有上层接口、中间层接口和下层接口,所述上层接口用于接收多个用户端发送的数据操作请求,所述中间层接口用于与所述第二云平台进行数据交互,所述下层接口用于对接所述第一云平台的数据接口,以将所述数据操作请求转换为所述第一云平台能够识别的数据操作请求。
本公开的第二方面还提供一种多云数据读写方法,所述方法应用于多云存储系统,所述系统包括第一云平台和至少一个第二云平台,其中,所述第一云平台设置有第一存储中间层,所述第二云平台设置有第二存储中间层,所述第一云平台全量存储第一数据,所述第一数据包括所述第一云平台存储的、目标数据对应的所有数据块和所述目标数据对应的元数据,所述方法包括:
所述第一云平台通过所述第一存储中间层接收针对所述第一数据的多个数据操作请求,并通过所述第一存储中间层同步执行如下操作:当任一所述数据操作请求为针对所述第一数据的第一数据写入请求时,根据所述第一数据写入请求对所述第一数据进行目标同步写入操作,并在所述至少一个第二平台中,查找存储有与所述第一数据相同的第二数据的目标第二云平台,向所述目标第二云平台发送针对所述第二数据的第二数据写入请求,所述第二数据写入请求用于对所述第二数据执行与所述目标同步写入操作相同的同步写入操作;
所述目标第二云平台通过对应的所述第二存储中间层在接收到所述第二数据写入请求时,根据所述第二数据写入请求对所述第二数据进行同步写入操作。
可选地,所述方法包括:
所述第一云平台通过所述第一存储中间层响应于针对第三数据的数据操作请求,当在所述第一云平台存储的数据中未查找到所述第三数据时,在所述至少一个第二云平台中查找存储有所述第三数据的第二云平台,并向所述存储有所述第三数据的第二云平台发送数据同步请求,所述数据同步请求用于将所述第三数据同步至所述第一云平台;
所述存储有所述第三数据的第二云平台通过对应的所述第二存储中间层响应于所述数据同步请求,基于所述第三数据向所述第一云平台进行数据同步;
所述第一云平台通过所述第一存储中间层接收所述第二云平台基于所述第三数据同步的数据,并基于所述同步的数据,得到目标操作数据,根据所述针对第三数据的数据操作请求对所述目标操作数据进行数据操作。
可选地,所述方法还包括:
所述第一云平台通过所述第一存储中间层创建空白副本;
所述存储有所述第三数据的第二云平台通过对应的所述第二存储中间层响应于所述数据同步请求,暂停执行针对所述第三数据的、除所述数据同步请求外的其他数据操作请求对应的数据操作,对所述第三数据创建数据快照,在对所述第三数据创建数据快照后,继续执行所述其他数据操作请求对应的数据操作,并开启后台进程将所述数据快照同步到所述第一云平台;
所述第一云平台通过所述第一存储中间层接收所述第三数据对应的所述数据快照,并将所述数据快照写入所述空白副本,得到目标操作数据,根据针对所述第三数据的数据操作请求对所述目标操作数据进行数据操作。
本公开的第三方面还提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现上述第二方面中所述第一云平台执行的步骤。
本公开的第四方面还提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现上述第二方面中所述第二云平台执行的步骤。
通过上述技术方案,首先通过将包括目标数据对应的所有数据块和目标数据对应的元数据的第一数据全量存储于第一云平台,实现目标数据和元数据的同步管理,对第一数据进行操作时无需跨云访问,提高数据读写性能。然后第一云平台通过第一存储中间层接收针对第一数据的多个数据操作请求,并当任一数据操作请求为针对第一数据的第一数据写入请求时,在第一云平台和存在与第一数据相同的第二数据的目标第二云平台上同步进行同步写入操作,以此保证跨云数据的数据强一致性。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是本公开实施例提供的一种多云存储系统的框图;
图2是本公开实施例提供的一种多云数据读写方法的流程示意图;
图3是本公开实施例提供的一种电子设备的框图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
需要说明的是,本公开中所有接收信号、信息或数据的动作都是在遵照所在地国家相应的数据保护法规政策的前提下,并获得由相应装置所有者给予授权的情况下进行的。
应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
多云是未来IT基础设施的主流发展方向,但是目前多云方案落地面临复杂的分布式数据同步与性能问题,而多云存储系统的跨云数据读写方法则是处理该问题的核心之一。
具体的,多云存储系统拥有复杂的数据存储环境,需要保证跨云数据的数据强一致性和数据读写性能。
具体来说,首先在多云存储系统中,不同云平台提供的数据访问接口不同,数据存储特性也不相同,也给用户端对不同云平台进行数据操作带来不便。其次,数据的多个数据块和数据的元数据分布在多云存储系统的不同云平台,在进行跨云读写时,需要频繁访问元数据造成操作延迟,数据读写性能较差,并且不同云平台存在相同数据需要进行数据写入操作时,也无法保证跨云数据的数据强一致性。此外,多云存储系统需要在不同云平台间进行跨云同步,如果通过对数据进行加锁的方式实现跨云数据同步,会导致数据频繁被锁,可用性较差。
有鉴于此,本公开提供一种多云存储系统、多云数据读写方法及电子设备,以解决上述技术问题。
下面结合具体实施例对本公开进行说明。
图1是根据一示例性实施例提供的一种多云存储系统的框图,参照图1,该系统10包括第一云平台101和至少一个第二云平台102,其中,第一云平台101设置有第一存储中间层103,第二云平台102设置有第二存储中间层104。
第一云平台用于全量存储第一数据,第一数据包括第一云平台存储的、目标数据对应的所有数据块和目标数据对应的元数据。第一云平台用于通过第一存储中间层接收针对第一数据的多个数据操作请求,并通过第一存储中间层同步执行如下操作:当任一数据操作请求为针对第一数据的第一数据写入请求时,根据第一数据写入请求对第一数据进行目标同步写入操作,并在至少一个第二平台中,查找存储有与第一数据相同的第二数据的目标第二云平台,向目标第二云平台发送针对第二数据的第二数据写入请求,第二数据写入请求用于对第二数据执行与目标同步写入操作相同的同步写入操作。目标第二云平台用于通过对应的第二存储中间层在接收到第二数据写入请求时,根据第二数据写入请求对第二数据进行同步写入操作。
也就是说,在用户端对第一云平台的第一数据进行数据写入操作时,第一存储中间层在接收到该数据写入操作对应的数据写入请求时,会在多云存储系统中查找是否存在存储有与第一数据相同数据的目标第二云平台,然后将数据写入请求发送给目标第二云平台,即将该数据写入请求并发到存在相同数据的云平台上并以同步方式进行数据写入操作,而对于不存在相同数据的云平台不会进行数据写入操作,从而最大限度的减少对多云场景下存储资源以及网络资源的浪费。
采用上述多云存储系统,首先通过将包括目标数据对应的所有数据块和目标数据对应的元数据的第一数据全量存储于第一云平台,实现目标数据和元数据的同步管理,对第一数据进行操作时无需跨云访问,提高数据读写性能。然后第一云平台通过第一存储中间层接收针对第一数据的多个数据操作请求,并当任一数据操作请求为针对第一数据的第一数据写入请求时,在第一云平台和存在与第一数据相同的第二数据的目标第二云平台上同步进行同步写入操作,以此保证跨云数据的数据强一致性。
在可能的方式中,第一云平台还用于通过第一存储中间层在数据操作请求为数据读取请求时,根据数据读取请求对第一数据进行同步读取操作。
示例地,在用户端对第一数据进行数据操作时,多云存储系统会尽可能的将数据操作请求发送到第一数据所在的第一云平台。由于第一数据的目标数据的数据块和目标数据的元数据是全量存储在第一云平台上,无需进行任何跨云数据操作,数据读写性能可以达到单一云平台的数据读写性能,提高数据的读写速度,并保证数据同步读写时的数据强一致性。
然而在某些特殊情况下,用户端需要在不存储目标操作数据的云平台上对目标操作数据进行数据操作,在可能的方式中,第一云平台用于通过第一存储中间层响应于针对第三数据的数据操作请求,当在第一云平台存储的数据中未查找到第三数据时,在至少一个第二云平台中查找存储有第三数据的第二云平台,并向存储有第三数据的第二云平台发送数据同步请求,数据同步请求用于将第三数据同步至第一云平台。存储有第三数据的第二云平台用于通过对应的第二存储中间层响应于数据同步请求,基于第三数据向第一云平台进行数据同步。第一云平台还用于通过第一存储中间层接收第二云平台基于第三数据的同步的数据,并基于同步的数据,得到目标操作数据,并根据针对第三数据的数据操作请求对目标操作数据进行数据操作。
示例地,当用户端需要在不存储第三数据的第一云平台上对第三数据进行数据操作,或者用户端进行数据操作的第三数据不存储于接收到数据操作请求的第一云平台时,第一存储中间层会在多云存储系统中查找存储有第三数据的第二云平台,并向该第二云平台发送数据同步请求。第二存储中间层在接收到该数据同步请求后,基于第三数据向第一云平台进行数据同步。第一存储中间层在接收到同步的数据后得到目标操作数据,从而响应用户端发送的针对第三数据的数据操作请求在第一云平台上对目标操作数据进行数据操作。通过先同步数据再读写数据的方式,避免数据的跨云读写操作,以此保证用户端在实际读写数据时的读写性能。
在可能的方式中,第一云平台还用于通过第一存储中间层创建空白副本。存储有第三数据的第二云平台用于通过对应的第二存储中间层响应于数据同步请求,暂停执行针对第三数据的、除数据同步请求外的其他数据操作请求对应的数据操作,对第三数据创建数据快照,在对第三数据创建数据快照后,继续执行其他数据操作请求对应的数据操作,并开启后台进程将数据快照同步到第一云平台。第一云平台用于通过第一存储中间层接收第三数据对应的数据快照,并将数据快照写入空白副本,得到目标操作数据,根据针对第三数据的数据操作请求对目标操作数据进行数据操作。
示例地,当需要将第二云平台的第三数据同步至第一云平台时,首先第一云平台通过第一存储中间层创建空白副本,此时可以将该空白副本设置为只写模式,作为待同步数据在第一云平台的存储空间。然后存储有第三数据的第二云平台通过对应的第二存储中间层响应于数据同步请求,先暂停执行针对第三数据的、除数据同步请求外的其他数据操作请求对应的数据操作,并且对第三数据创建数据快照,在对第三数据创建数据快照后,继续执行其他数据操作请求对应的数据操作,并开启后台进程将数据快照同步到第一云平台。
需说明的是,如果采用加锁的方式进行数据同步,其他用户端就无法在数据同步期间对第三数据进行操作,影响用户体验。而创建数据快照的时长小于直接备份数据的时长,也小于直接将第三数据加锁后同步到第一云平台的时长,如此尽可能的降低数据同步对其他用户端的影响。并且通过开启后台进程将数据快照同步到第一云平台,不影响第二云平台响应用户端的其他数据操作请求,提高多云存储系统资源的利用率。
进一步地,第一云平台通过第一存储中间层接收第三数据对应的数据快照,并将数据快照写入空白副本,得到目标操作数据,这时可以将目标操作数据设置为读写模式,然后根据针对第三数据的数据操作请求对目标操作数据进行数据操作。
值得说明的是,通过数据快照进行数据同步,由于创建数据快照的时间很短,对用户端对数据的其他数据操作影响很小,从而实现对数据不加锁也可以进行多用户端并发操作。此外,该方式可以应用于响应于用户端发送的数据同步请求,将待同步数据从存储有待同步数据的云平台同步至其他未存储待同步数据的云平台上,也可以是用户端在未存储待同步数据的云平台对待同步数据进行数据操作时,多云存储系统主动从其他存储有待同步数据的云平台同步至未存储待同步数据的云平台。
在可能的方式中,第一存储中间层设置有上层接口、中间层接口和下层接口,上层接口用于接收多个用户端发送的数据操作请求,中间层接口用于与第二云平台进行数据交互,下层接口用于对接第一云平台的数据接口,以将数据操作请求转换为第一云平台能够识别的数据操作请求。
示例地,由于在多云存储系统中,不同云平台提供的数据访问接口不同,数据存储特性也不相同,用户端对不同云平台进行数据操作时,需要知道不同云平台的数据访问接口和数据存储特性才能发送数据操作请求,给用户端对不同云平台进行数据操作带来不便。因此,不同云平台可以通过对应的中间存储层面向用户端提供统一的上层接口,用户端无需关心不同云平台的数据访问接口和数据存储特性,仅通过统一的上层接口就可以对多个云平台发送数据操作请求。并且,在存储中间层设置下层接口对接对应云平台的数据接口,通过下层接口将用户端发送的数据操作请求转换为对应云平台能够识别的数据操作请求。此外,在存储中间层上设置中间层接口,实现云平台之间的数据交互。通过在云平台上设置存储中间层,在面向用户端时,提供统一的数据访问接口和数据存储特性,方便用户端对不同云平台进行数据操作。
值得说明的是,上述多云存储系统中第一云平台所执行的操作均为示例性说明,在实际应用中,多云存储系统的任意一个云平台均可执行上述第一云平台所执行的操作。
基于同一发明构思,本公开还提供一种多云数据读写方法,该方法应用于多云存储系统,该系统包括第一云平台和至少一个第二云平台,其中,第一云平台设置有第一存储中间层,第二云平台设置有第二存储中间层,第一云平台全量存储第一数据,第一数据包括第一云平台存储的、目标数据对应的所有数据块和目标数据对应的元数据,该方法包括:
S201、第一云平台通过第一存储中间层接收针对第一数据的多个数据操作请求,并通过第一存储中间层同步执行如下操作:当任一数据操作请求为针对第一数据的第一数据写入请求时,根据第一数据写入请求对第一数据进行目标同步写入操作,并在至少一个第二平台中,查找存储有与第一数据相同的第二数据的目标第二云平台,向目标第二云平台发送针对第二数据的第二数据写入请求。
其中,第二数据写入请求用于对第二数据执行与目标同步写入操作相同的同步写入操作。
S202、目标第二云平台通过对应的第二存储中间层在接收到第二数据写入请求时,根据第二数据写入请求对第二数据进行同步写入操作。
采用上述方法,首先通过将包括目标数据对应的所有数据块和目标数据对应的元数据的第一数据全量存储于第一云平台,实现目标数据和元数据的同步管理,对第一数据进行操作时无需跨云访问,提高数据读写性能。然后第一云平台通过第一存储中间层接收针对第一数据的多个数据操作请求,并当任一数据操作请求为针对第一数据的第一数据写入请求时,在第一云平台和存在与第一数据相同的第二数据的目标第二云平台上同步进行同步写入操作,以此保证跨云数据的数据强一致性。
可选地,所述方法包括:
所述第一云平台通过所述第一存储中间层响应于针对第三数据的数据操作请求,当在所述第一云平台存储的数据中未查找到所述第三数据时,在所述至少一个第二云平台中查找存储有所述第三数据的第二云平台,并向所述存储有所述第三数据的第二云平台发送数据同步请求,所述数据同步请求用于将所述第三数据同步至所述第一云平台;
所述存储有所述第三数据的第二云平台通过对应的所述第二存储中间层响应于所述数据同步请求,基于所述第三数据向所述第一云平台进行数据同步;
所述第一云平台通过所述第一存储中间层接收所述第二云平台基于所述第三数据同步的数据,并基于所述同步的数据,得到目标操作数据,根据所述针对第三数据的数据操作请求对所述目标操作数据进行数据操作。
可选地,所述方法还包括:
所述第一云平台通过所述第一存储中间层创建空白副本;
所述存储有所述第三数据的第二云平台通过对应的所述第二存储中间层响应于所述数据同步请求,暂停执行针对所述第三数据的、除所述数据同步请求外的其他数据操作请求对应的数据操作,对所述第三数据创建数据快照,在对所述第三数据创建数据快照后,继续执行所述其他数据操作请求对应的数据操作,并开启后台进程将所述数据快照同步到所述第一云平台;
所述第一云平台通过所述第一存储中间层接收所述第三数据对应的所述数据快照,并将所述数据快照写入所述空白副本,得到目标操作数据,根据针对所述第三数据的数据操作请求对所述目标操作数据进行数据操作。
可选地,所述方法还包括:
所述第一云平台通过所述第一存储中间层在所述数据操作请求为数据读取请求时,根据所述数据读取请求对所述第一数据进行同步读取操作。
可选地,所述第一存储中间层设置有上层接口、中间层接口和下层接口所述方法还包括:
通过所述上层接口接收多个用户端发送的数据操作请求,通过所述中间层接口与所述第二云平台进行数据交互,通过所述下层接口对接所述第一云平台的数据接口,以将所述数据操作请求转换为所述第一云平台能够识别的数据操作请求。
关于上述实施例中的多云数据读写方法,已经在该方法所应用的多云存储系统的实施例中进行了详细描述,此处将不做详细阐述说明。
本公开实施例还提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现上述实施例提供的第一云平台执行的步骤。
本公开实施例还提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现上述实施例提供的第二云平台执行的步骤。
图3是根据一示例性实施例示出的一种电子设备300的框图。例如,电子设备300可以被提供为一服务器。参照图3,电子设备300包括处理器322,其数量可以为一个或多个,以及存储器332,用于存储可由处理器322执行的计算机程序。存储器332中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器322可以被配置为执行该计算机程序,以执行上述的第一云平台或第二云平台所执行的多云数据读写方法的步骤。
另外,电子设备300还可以包括电源组件326和通信组件350,该电源组件326可以被配置为执行电子设备300的电源管理,该通信组件350可以被配置为实现电子设备300的通信,例如,有线或无线通信。此外,该电子设备300还可以包括输入/输出(I/O)接口358。电子设备300可以操作基于存储在存储器332的操作系统,例如Windows ServerTM,Mac OSXTM,UnixTM,LinuxTM等等。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的第一云平台或第二云平台所执行的多云数据读写方法的步骤。例如,该非临时性计算机可读存储介质可以为上述包括程序指令的存储器332,上述程序指令可由电子设备300的处理器322执行以完成上述的第一云平台或第二云平台所执行的多云数据读写方法的步骤。
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的第一云平台或第二云平台所执行的多云数据读写方法的代码部分。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。
Claims (9)
1.一种多云存储系统,其特征在于,所述系统包括第一云平台和至少一个第二云平台,其中,所述第一云平台设置有第一存储中间层,所述第二云平台设置有第二存储中间层;
所述第一云平台用于全量存储第一数据,所述第一数据包括所述第一云平台存储的、目标数据对应的所有数据块和所述目标数据对应的元数据;
所述第一云平台用于通过所述第一存储中间层接收针对所述第一数据的多个数据操作请求,并通过所述第一存储中间层同步执行如下操作:当任一所述数据操作请求为针对所述第一数据的第一数据写入请求时,根据所述第一数据写入请求对所述第一数据进行目标同步写入操作,并在所述至少一个第二平台中,查找存储有与所述第一数据相同的第二数据的目标第二云平台,向所述目标第二云平台发送针对所述第二数据的第二数据写入请求,所述第二数据写入请求用于对所述第二数据执行与所述目标同步写入操作相同的同步写入操作;
所述目标第二云平台用于通过对应的所述第二存储中间层在接收到所述第二数据写入请求时,根据所述第二数据写入请求对所述第二数据进行同步写入操作。
2.根据权利要求1所述的系统,其特征在于,所述第一云平台用于通过所述第一存储中间层响应于针对第三数据的数据操作请求,当在所述第一云平台存储的数据中未查找到所述第三数据时,在所述至少一个第二云平台中查找存储有所述第三数据的第二云平台,并向所述存储有所述第三数据的第二云平台发送数据同步请求,所述数据同步请求用于将所述第三数据同步至所述第一云平台;
所述存储有所述第三数据的第二云平台用于通过对应的所述第二存储中间层响应于所述数据同步请求,基于所述第三数据向所述第一云平台进行数据同步;
所述第一云平台还用于通过所述第一存储中间层接收所述第二云平台基于所述第三数据同步的数据,并基于所述同步的数据,得到目标操作数据,根据所述针对第三数据的数据操作请求对所述目标操作数据进行数据操作。
3.根据权利要求2所述的系统,其特征在于,所述第一云平台还用于通过所述第一存储中间层创建空白副本;
所述存储有所述第三数据的第二云平台用于通过对应的所述第二存储中间层响应于所述数据同步请求,暂停执行针对所述第三数据的、除所述数据同步请求外的其他数据操作请求对应的数据操作,对所述第三数据创建数据快照,在对所述第三数据创建数据快照后,继续执行所述其他数据操作请求对应的数据操作,并开启后台进程将所述数据快照同步到所述第一云平台;
所述第一云平台用于通过所述第一存储中间层接收所述第三数据对应的所述数据快照,并将所述数据快照写入所述空白副本,得到目标操作数据,根据针对所述第三数据的数据操作请求对所述目标操作数据进行数据操作。
4.根据权利要求1所述的系统,其特征在于,所述第一云平台还用于通过所述第一存储中间层在所述数据操作请求为数据读取请求时,根据所述数据读取请求对所述第一数据进行同步读取操作。
5.根据权利要求1-4任一项所述的系统,其特征在于,所述第一存储中间层设置有上层接口、中间层接口和下层接口,所述上层接口用于接收多个用户端发送的数据操作请求,所述中间层接口用于与所述第二云平台进行数据交互,所述下层接口用于对接所述第一云平台的数据接口,以将所述数据操作请求转换为所述第一云平台能够识别的数据操作请求。
6.一种多云数据读写方法,其特征在于,所述方法应用于多云存储系统,所述系统包括第一云平台和至少一个第二云平台,其中,所述第一云平台设置有第一存储中间层,所述第二云平台设置有第二存储中间层,所述第一云平台全量存储第一数据,所述第一数据包括所述第一云平台存储的、目标数据对应的所有数据块和所述目标数据对应的元数据,所述方法包括:
所述第一云平台通过所述第一存储中间层接收针对所述第一数据的多个数据操作请求,并通过所述第一存储中间层同步执行如下操作:当任一所述数据操作请求为针对所述第一数据的第一数据写入请求时,根据所述第一数据写入请求对所述第一数据进行目标同步写入操作,并在所述至少一个第二平台中,查找存储有与所述第一数据相同的第二数据的目标第二云平台,向所述目标第二云平台发送针对所述第二数据的第二数据写入请求,所述第二数据写入请求用于对所述第二数据执行与所述目标同步写入操作相同的同步写入操作;
所述目标第二云平台通过对应的所述第二存储中间层在接收到所述第二数据写入请求时,根据所述第二数据写入请求对所述第二数据进行同步写入操作。
7.根据权利要求6所述的方法,其特征在于,所述方法包括:
所述第一云平台通过所述第一存储中间层响应于针对第三数据的数据操作请求,当在所述第一云平台存储的数据中未查找到所述第三数据时,在所述至少一个第二云平台中查找存储有所述第三数据的第二云平台,并向所述存储有所述第三数据的第二云平台发送数据同步请求,所述数据同步请求用于将所述第三数据同步至所述第一云平台;
所述存储有所述第三数据的第二云平台通过对应的所述第二存储中间层响应于所述数据同步请求,基于所述第三数据向所述第一云平台进行数据同步;
所述第一云平台通过所述第一存储中间层接收所述第二云平台基于所述第三数据同步的数据,并基于所述同步的数据,得到目标操作数据,根据所述针对第三数据的数据操作请求对所述目标操作数据进行数据操作。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
所述第一云平台通过所述第一存储中间层创建空白副本;
所述存储有所述第三数据的第二云平台通过对应的所述第二存储中间层响应于所述数据同步请求,暂停执行针对所述第三数据的、除所述数据同步请求外的其他数据操作请求对应的数据操作,对所述第三数据创建数据快照,在对所述第三数据创建数据快照后,继续执行所述其他数据操作请求对应的数据操作,并开启后台进程将所述数据快照同步到所述第一云平台;
所述第一云平台通过所述第一存储中间层接收所述第三数据对应的所述数据快照,并将所述数据快照写入所述空白副本,得到目标操作数据,根据针对所述第三数据的数据操作请求对所述目标操作数据进行数据操作。
9.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求6中多云存储系统执行的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210309821.8A CN114422537B (zh) | 2022-03-28 | 2022-03-28 | 多云存储系统、多云数据读写方法及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210309821.8A CN114422537B (zh) | 2022-03-28 | 2022-03-28 | 多云存储系统、多云数据读写方法及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114422537A CN114422537A (zh) | 2022-04-29 |
CN114422537B true CN114422537B (zh) | 2022-06-21 |
Family
ID=81263418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210309821.8A Active CN114422537B (zh) | 2022-03-28 | 2022-03-28 | 多云存储系统、多云数据读写方法及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114422537B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116055493B (zh) * | 2023-03-31 | 2023-06-23 | 北京比格大数据有限公司 | 一种跨架构的数据获取方法、网关节点及跨架构平台 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103530388A (zh) * | 2013-10-22 | 2014-01-22 | 浪潮电子信息产业股份有限公司 | 一种云存储系统中提升性能的数据处理方法 |
US10922304B1 (en) * | 2017-10-20 | 2021-02-16 | EMC IP Holding Company LLC | Distributed data protection management in multi-cloud computing environment |
CN113282564A (zh) * | 2021-07-24 | 2021-08-20 | 阿里云计算有限公司 | 数据存储方法、系统、节点和存储介质 |
CN113596128A (zh) * | 2021-07-21 | 2021-11-02 | 华云数据控股集团有限公司 | 一种多云平台的资源同步方法、系统及电子设备 |
CN113609075A (zh) * | 2021-08-18 | 2021-11-05 | 济南浪潮数据技术有限公司 | 一种创建快照的方法、系统、存储介质及设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10929051B2 (en) * | 2019-05-31 | 2021-02-23 | International Business Machines Corporation | Data storage across a plurality of cloud storage systems |
-
2022
- 2022-03-28 CN CN202210309821.8A patent/CN114422537B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103530388A (zh) * | 2013-10-22 | 2014-01-22 | 浪潮电子信息产业股份有限公司 | 一种云存储系统中提升性能的数据处理方法 |
US10922304B1 (en) * | 2017-10-20 | 2021-02-16 | EMC IP Holding Company LLC | Distributed data protection management in multi-cloud computing environment |
CN113596128A (zh) * | 2021-07-21 | 2021-11-02 | 华云数据控股集团有限公司 | 一种多云平台的资源同步方法、系统及电子设备 |
CN113282564A (zh) * | 2021-07-24 | 2021-08-20 | 阿里云计算有限公司 | 数据存储方法、系统、节点和存储介质 |
CN113609075A (zh) * | 2021-08-18 | 2021-11-05 | 济南浪潮数据技术有限公司 | 一种创建快照的方法、系统、存储介质及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN114422537A (zh) | 2022-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107943594B (zh) | 数据获取方法和装置 | |
US10831612B2 (en) | Primary node-standby node data transmission method, control node, and database system | |
CN102611745B (zh) | 文件在线迁移方法、装置和系统 | |
US9917884B2 (en) | File transmission method, apparatus, and distributed cluster file system | |
CN103714097A (zh) | 一种访问数据库的方法和装置 | |
US8996645B2 (en) | Transmitting data by means of storage area network | |
CN106817388B (zh) | 虚拟机、宿主机获取数据的方法、装置及访问数据的系统 | |
CN111399764B (zh) | 数据存储方法、读取方法、装置、设备及存储介质 | |
CN104488248A (zh) | 一种文件同步方法、服务器及终端 | |
CN107391033B (zh) | 数据迁移方法及装置、计算设备、计算机存储介质 | |
EP3786802A1 (en) | Method and device for failover in hbase system | |
CN105450759A (zh) | 一种系统镜像的管理方法和装置 | |
CN104980307A (zh) | 数据访问请求的处理方法、装置及数据库服务器 | |
CN113094430B (zh) | 一种数据处理方法、装置、设备以及存储介质 | |
CN102255866A (zh) | 一种数据下载方法及装置 | |
JP2018515850A (ja) | データ・コピー方法及びデバイス | |
CN114422537B (zh) | 多云存储系统、多云数据读写方法及电子设备 | |
CN113806301A (zh) | 数据同步方法、装置、服务器及存储介质 | |
CN102929958A (zh) | 元数据的处理方法,代理、转发设备,服务器及计算系统 | |
CN111225003B (zh) | 一种nfs节点配置方法和装置 | |
CN104517067A (zh) | 访问数据的方法、装置及系统 | |
CN108255434B (zh) | 标签管理方法、管理装置及计算机可读存储介质 | |
CN113992662A (zh) | 文件传输方法、装置及存储介质 | |
CN112000850B (zh) | 进行数据处理的方法、装置、系统及设备 | |
CN111147226B (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 |