Cloud game data management system
By adopting distributed block storage modules and game data snapshot mechanisms in the cloud gaming platform, game data is stored independently and synchronized quickly, the restart problem during cloud game updates is solved, the synchronization and mount speed of cloud disks is improved, and the waiting time of users is reduced.
Patent Information
- Application Number
- CN202510629012.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-15
- Publication Date
- 2025-08-01
AI Technical Summary
Cloud gaming platforms need to frequently restart cloud devices when updated, resulting in users waiting time for too long and affecting the gaming experience.
The distributed block storage module and game data snapshot mechanism are adopted to store game data independently in the small cloud disk, and the snapshot disk is generated through the distributed block storage module and synchronized to other nodes to avoid restarting the device.
It improves the synchronization and mount speed of cloud disk, reduces user waiting time, and improves the gaming experience.
Smart Images

Figure CN120393395A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of cloud data management, and more particularly, to a management system for cloud game data. Background Art
[0002] In the process of deploying game clients to the cloud, as the number of games increases, the local storage space of devices will gradually become insufficient. To solve this problem, some cloud game platforms introduce pre-mounted large-sized cloud disks for cloud devices. A large-sized cloud disk usually has a maximum of 2 - 3TB, and it is used to replace the local storage of cloud Android devices (i.e., the / data partition of the Android system). Approximately 300 mobile games can be installed on it. When the number of games reaches several thousand, the games have to be grouped according to a certain strategy. Each group has about 300 games. Several large cloud disks are pre-mounted on several cloud devices. When a cloud game session request arrives, the cloud device starts the corresponding game from the cloud disk.
[0003] In the above solution, when the games in the cloud disk need to be updated, each cloud device needs to be restarted one by one, and then the operations of mounting and unmounting the cloud disk can be performed for disk replacement. For each large-sized cloud disk, there are many games on it. The updates of many games will cause frequent operations on this cloud disk. Moreover, the number of devices mounted with each cloud disk is also very large. Batch restarting and disk replacement of many devices takes more than one hour, which requires users to wait for a long time and results in a poor game experience. Summary of the Invention
[0004] An object of an embodiment of the present disclosure is to provide a cloud game data management system to solve the problem that cloud disk updates require frequent restarts and take a long time.
[0005] According to a first aspect of the present disclosure, there is provided a management system for cloud game data, the system including:
[0006] Multiple cloud game devices deployed in multiple edge cloud nodes, the multiple cloud game devices including at least one first cloud game device, the first cloud game device being used to update a first game in a readable and writable first cloud disk, the first cloud disk only being used to store data information of the first game;
[0007] A distributed block storage module, the distributed block storage module including multiple block storage units, the multiple block storage units being respectively deployed in multiple edge cloud nodes, wherein, a first block storage unit is used to generate a second cloud disk when the update of the first cloud disk ends, and synchronize the second cloud disk to a second edge cloud node, so that a second block storage unit in the second edge cloud node generates a third cloud disk identical to the second cloud disk;
[0008] Among them, the first block storage unit is the block storage unit of the first edge cloud node, the first edge cloud node is the edge cloud node where the first cloud game device is located, the second cloud disk stores the snapshot data of the first cloud disk, and the third cloud disk in the second edge cloud node is used to run the first game.
[0009] Optionally, the second block storage unit stores third cloud disks of multiple game versions of the first game. The third cloud disks of the multiple game versions are associated in a single-chain structure, and the third cloud disks of the multiple game versions are sorted in the link of the third cloud disk in sequence based on the generation time. The synchronizing the second cloud disk to the second edge cloud node so that the second block storage unit in the second edge cloud node generates a third cloud disk identical to the second cloud disk includes:
[0010] Determine the incremental data block corresponding to the update of the first game in the second cloud disk;
[0011] Synchronize the incremental data block to the second block storage unit of the second edge cloud node, so that the second block storage unit generates a third cloud disk corresponding to the updated first game based on the incremental data block and the third cloud disk at the end of the link of the third cloud disk, and associate the third cloud disk corresponding to the updated first game to the end of the link of the third cloud disk.
[0012] Optionally, the first block storage unit stores second cloud disks of multiple game versions of the first game. The second cloud disks of the multiple game versions are associated in a single-chain structure, and the second cloud disks of the multiple game versions are sorted in the link of the second cloud disk in sequence based on the generation time. The determining the incremental data block corresponding to the update of the first game in the second cloud disk includes:
[0013] Compare the newly generated second cloud disk with the second cloud disk at the end of the link of the second cloud disk to determine the incremental data block;
[0014] Associate the newly generated second cloud disk to the end of the link of the second cloud disk.
[0015] Optionally, the cloud game device includes a second cloud game device, the second cloud game device is disposed in the second edge cloud node, and the second cloud game device is used to mount the third cloud disk in the second edge cloud node to run the first game.
[0016] Optionally, the second cloud game device is used to:
[0017] Receive the first data packet name of the game to be started sent by the user terminal, and determine the link of the third cloud disk corresponding to the game to be started,
[0018] Based on the device status of each third cloud disk in the link, determine the target third cloud disk to be mounted in the link of the third cloud disk corresponding to the game to be started;
[0019] Mount the target third cloud disk and run the game to be started.
[0020] Optionally, the second cloud disk and the third cloud disk are read-only cloud disks. The third cloud disk and the local storage unit of the second cloud game device form a game data unit, and the game data unit is used to run the first game. Among them, in the game data unit, the local storage unit is used to write the data information of the game.
[0021] Optionally, the game data unit includes a read-only layer, a writable layer, and a merged view layer. The read-only layer includes the third cloud disk and is used to provide the data information of the game. The writable layer includes the local storage unit and is used to write or read the data information of the game. The second cloud game device reads the data information of the game through the merged view layer in the read-only layer, or writes or reads the data information of the game in the writable layer.
[0022] Optionally, when the second cloud game device reads the first data information of the game, determine whether there is a first data file corresponding to the first data information in the writable layer;
[0023] When the first data file does not exist in the writable layer, obtain the first data information from the read-only layer.
[0024] Optionally, when the second cloud game device writes the second data information of the game, determine whether there is a second data file corresponding to the second data information in the writable layer;
[0025] When the second data file does not exist in the writable layer, copy the second data file in the read-only layer to the writable layer and write the second data information in the writable layer.
[0026] Optionally, the system further includes:
[0027] A status monitoring module, which is used to display and configure the device status of the first cloud disk and the second cloud disk. The device status includes the working status and activation status of the cloud disk.
[0028] One beneficial effect of the embodiments of the present disclosure is that each game is separately set in an independent "small" cloud disk. When the game is updated, it will not affect the cloud disk mounting of other games. Moreover, a new update mechanism is provided for this setting. Only one disk-making device is required to update the game in the writable first cloud disk. Then, through the distributed block storage module and the game data snapshot mechanism, a second cloud disk containing game snapshot data is obtained, and the snapshot disk is quickly synchronized to other nodes at the block level granularity. Since the data in the snapshot disk only contains game data, rather than the data of the / data partition of the entire Android system, the cloud device does not need to be restarted when mounting, which can effectively improve the synchronization and mounting speed of the cloud disk and reduce the user waiting time.
[0029] The features and advantages of the embodiments of the present specification will become clear through the following detailed description of the exemplary embodiments of the present specification with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0030] The drawings incorporated in the specification and constituting a part of the specification illustrate the embodiments of the present specification and, together with the description, are used to explain the principles of the embodiments of the present specification.
[0031] Figure 1 FIG. shows a schematic structural diagram of a cloud game data management system according to some embodiments;
[0032] Figure 2 FIG. shows a schematic diagram of a second cloud game device reading and writing game data information according to some embodiments. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0033] Various exemplary embodiments of the present specification will now be described in detail with reference to the accompanying drawings.
[0034] The following description of at least one exemplary embodiment is merely illustrative in nature and in no way limits the embodiments of the present specification and their application or use.
[0035] It should be noted that: Similar reference numerals and letters denote similar items in the following drawings. Therefore, once an item is defined in one drawing, it does not need to be further discussed in subsequent drawings.
[0036] It should be noted that all actions of obtaining signals, information, or data in the embodiments of the present disclosure are carried out on the premise of complying with the corresponding data protection regulations and policies of the country where the location is located and with the authorization given by the corresponding device owner.
[0037] <First Embodiment>
[0038] Figure 1A management system for cloud game data according to some embodiments is shown. The system includes: a plurality of cloud game devices deployed in a plurality of edge cloud nodes. The plurality of cloud game devices include at least one first cloud game device, which is used to update a first game in a readable and writable first cloud disk, and the first cloud disk is only used to store the data information of the first game; a distributed block storage module, which includes a plurality of block storage units respectively deployed in a plurality of edge cloud nodes. Among them, the first block storage unit is used to generate a second cloud disk when the update of the first cloud disk ends, and synchronize the second cloud disk to a second edge cloud node, so that the second block storage unit in the second edge cloud node generates a third cloud disk identical to the second cloud disk; wherein, the first block storage unit is the block storage unit of the first edge cloud node, the first edge cloud node is the edge cloud node where the first cloud game device is located, the second cloud disk stores the snapshot data of the first cloud disk, and the third cloud disk in the second edge cloud node is used to run the first game.
[0039] An edge cloud node is a distributed cloud computing infrastructure deployed near the user side. By sinking computing, storage, and network resources to a geographical location close to the game device, the data transmission path is significantly shortened. In the field of cloud games, it can reduce game latency and bandwidth costs, and during game hot updates, it can achieve regionalized gray release. In this example, cloud games are set up on the cloud in the form of edge cloud nodes.
[0040] In this embodiment, each edge cloud node may include at least one cloud game device, which may be a virtual device container. By mounting a cloud disk, it can run the game program in the cloud disk or perform updates. In the embodiments of the present application, each game is independently set in a cloud disk, and only the data information of the corresponding game is stored in the cloud disk. At least one of the multiple cloud game devices includes a first cloud game device for updating the game, that is, the disk-making device. The first cloud game device can mount the master disk of the game, that is, the first cloud disk, and then update the game in the first cloud disk to update its game data information to the corresponding version. In this embodiment, the first cloud disk is a cloud disk that can be read and written.
[0041] The distributed block storage module is a storage architecture that disperses data storage across multiple physical or virtual nodes. In each node, there is a corresponding block storage unit, which can be responsible for managing the storage space allocated to that node, and the management of the storage units allocated to that node can be precise to the block level. The first cloud disk can be a new empty cloud disk with read and write permissions generated by the block storage unit. When a new game is released or launched, after the first cloud game device mounts this cloud disk, it can directly install the corresponding game and store all the data information of the game. At the same time, the first block storage unit can generate a snapshot disk of the first cloud disk, that is, the second cloud disk, through the game snapshot technology, and then synchronize the second cloud disk to the block storage units of other edge cloud nodes, so that the corresponding block storage units generate a replicated disk of the second cloud disk in the corresponding cloud nodes, that is, the third cloud disk. When the game needs to be updated, that is, when the first cloud disk is updated, a new snapshot disk of the first cloud disk, that is, the second cloud disk corresponding to the new version, can be generated and synchronized to other edge cloud nodes.
[0042] In the embodiment of the present application, the first cloud disk is a readable and writable cloud disk that only stores the data information of the first game. The second cloud disk is a snapshot disk of the first cloud disk in the first edge cloud node. The third cloud disk is a snapshot disk in other edge cloud nodes. The cloud game devices of other edge cloud nodes can mount this cloud disk to run the corresponding cloud game.
[0043] In this example, a cloud game data management system is provided, which enables each cloud game to be separately set in an independent "small" cloud disk. When the game is updated, it will not affect the cloud disk mounting of other games. And for this setting, a new update mechanism is provided. It only requires a disk-making device to update the game in the writable first cloud disk, and then through the distributed block storage module and the game data snapshot mechanism, obtain the second cloud disk containing the game snapshot data, and quickly synchronize the snapshot disk to other nodes at the block level. Since the data in the snapshot disk only contains the game data, rather than the data of the / data partition of the entire Android system, the cloud device does not need to be restarted when mounting, which can effectively improve the synchronization and mounting speed of the cloud disk and reduce the user waiting time.
[0044] In an example of this embodiment, a third cloud disk storing multiple game versions of the first game is stored in the second storage unit. The third cloud disks of multiple game versions are associated in a single-chain structure, and the third cloud disks of multiple game versions are sorted in the link of the third cloud disk in sequence based on the generation time. Synchronizing the second cloud disk to the second edge cloud node, so that the second storage unit in the second edge cloud node generates a third cloud disk identical to the second cloud disk, includes: determining an incremental data block corresponding to the update of the first game in the second cloud disk; synchronizing the incremental data block to the second storage unit of the second edge cloud node, so that the second storage unit generates a third cloud disk corresponding to the updated first game based on the incremental data block and the third cloud disk at the end of the link of the third cloud disk, and associating the third cloud disk corresponding to the updated first game to the end of the link of the third cloud disk.
[0045] In one example, the block storage unit of each cloud node can retain snapshot disks corresponding to multiple game versions. These cloud disks of multiple versions are associated in a single-chain form and sorted in sequence according to the generation time of each cloud disk. In this example, the number of game versions can be set to 5 or 3. When a new version of the game cloud disk needs to be added to the link and the number of cloud disks in the link has reached the upper limit, the cloud disk of the earliest version in the link can be discarded to avoid wasting storage resources due to retaining too many cloud disks corresponding to game versions. At the same time, it is ensured that in case of problems with the new version of the game, the game can be rolled back to the previous version to avoid affecting the player experience.
[0046] In this example, after the second cloud disk corresponding to the new version of the game is generated, the first storage unit in the first edge cloud node can synchronize the incremental block corresponding to the data in the new version of the second cloud disk to other nodes. The incremental block refers to the data block that has changed. The second storage unit of other nodes can generate a third cloud disk after the game version is updated based on this incremental block and the last third cloud disk in the link, that is, the cloud disk before the game version is updated. At the same time, this cloud disk can be stored at the end of the link for the next update.
[0047] In an example of this embodiment, a second cloud disk storing multiple game versions of the first game is stored in the first storage unit. The second cloud disks of multiple game versions are associated in a single-chain structure, and the second cloud disks of multiple game versions are sorted in sequence in the link of the second cloud disk based on the generation time. Determining the incremental data block corresponding to the update of the first game in the second cloud disk includes: comparing the data of the second cloud disk generated this time with the second cloud disk at the end of the link of the second cloud disk to determine the incremental data block; associating the second cloud disk generated this time to the end of the link of the second cloud disk.
[0048] In one example, the first storage unit of the first edge cloud node can also retain snapshot disks corresponding to multiple game versions, that is, the second cloud disks. These cloud disks of multiple versions are also associated in a single-chain form and sorted in sequence according to the generation time of each cloud disk. In this example, the number of game versions can be set to 5 or 3. When the second cloud disk of a new version of the game needs to be added to the link and the number of cloud disks in the link has reached the upper limit, the second cloud disk of the earliest version in the link can be discarded to avoid waste of storage resources caused by retaining too many cloud disks corresponding to game versions. When the system adds edge cloud nodes or the cloud disks of some edge cloud nodes have problems, the first edge cloud node can also retain a backup of the snapshot disk for synchronization to nodes in need.
[0049] In this example, when there are second cloud disks corresponding to multiple game versions, the first storage unit can compare the snapshot disk generated this time with the second cloud disk at the end of the link, that is, the second cloud disk generated last time, at the block level granularity to determine the incremental data blocks that have changed, for synchronization to the block storage units of other edge cloud nodes. In another example, the first storage unit can also, based on the copy-on-write technology, create a copy of the incremental data blocks in real time when the first cloud disk is updated, so as to determine the incremental data blocks when the first cloud disk is updated. Then, either fuse the incremental blocks with the second cloud disks of previous versions and update the game data in the second cloud disks to the corresponding versions. In another example, a backup of the second cloud disk can be generated and fused with the incremental blocks. That is to say, a new game version corresponds to a new second cloud disk, and at the same time, the second cloud disks of historical version games are retained for rollback in case of problems during the update.
[0050] In an example of this embodiment, the cloud game device includes a second cloud game device, which is disposed in the second edge cloud node. The second cloud game device is used to mount the second cloud disk in the second edge cloud node to run the first game.
[0051] In this example, as Figure 1 shown, the second edge cloud node also has a second cloud game device. The second cloud game device is not used to produce the first cloud disk of the game but only to run cloud games. When the user terminal wants to run a cloud game, the second cloud game device can respond to the user's demand, mount the third cloud disk corresponding to the game, and run the corresponding cloud game.
[0052] In an example of this embodiment, the second cloud game device is used to: receive the first data packet name of the game to be started sent by the user terminal, determine the link of the third cloud disk corresponding to the game to be started, and based on the device status of each third cloud disk in the link, determine the target third cloud disk to be mounted in the link of the third cloud disk corresponding to the game to be started; mount the target third cloud disk and run the game to be started.
[0053] In this example, the data packet names of the games corresponding to the cloud disks in each cloud disk link are the same. That is to say, in this embodiment, the data packet name of the game is used as the specific identity ID of the game. For example, the data packet name of the first game is pkgA. Later, when the first cloud game device is updated, if it finds that the data packet name is pkgA, then it can determine that the updated game is the first game based on this data packet name. In one example, during the operation cycle of a game, the data packet name may change. When the first cloud game device finds that the data packet name has never appeared before, such as pkgB, at this time, the system can install the game on a newly generated first cloud disk in the block storage unit and create a new cloud disk link.
[0054] In this embodiment, when a user wants to start a game on the user side, they can send the data packet name of the game to the corresponding cloud game device. The second cloud game device determines the link of the third cloud disk corresponding to the game based on this data packet name and obtains the device status of the cloud disk in the link. In this example, the cloud disk of the game to be run can be set to the active state, and other cloud disks can be set to the inactive state. It is also possible to set the cloud disk at the end of the link to the active state, and then mount the active cloud disk to the device to run the game.
[0055] <Second Embodiment>
[0056] In one example of this embodiment, the second cloud disk and the third cloud disk are read-only cloud disks. The third cloud disk and the local storage unit of the second cloud game device form a game data unit, and the game data unit is used to run the first game. Among them, in the game data unit, the local storage unit is used to write the data information of the game.
[0057] In this embodiment, since the second cloud disk and the third cloud disk are read-only snapshot disks, data such as logs that need to be written during the game operation cannot be written into the cloud disk. Therefore, in order to enable the game to run, the third cloud disk and the local storage unit of the second game device can be combined as the data unit for game operation. When data needs to be written, it is written into the local storage unit, so that the cloud game can run normally.
[0058] In one example of this embodiment, the game data unit includes a read-only layer, a writable layer, and a merged view layer. The read-only layer includes the third cloud disk and is used to provide the data information of the game. The writable layer includes the local storage unit and is used to write or read the data information of the game. The second cloud game device reads the data information of the game in the read-only layer or writes or reads the data information of the game in the writable layer through the merged view layer.
[0059] In one example, such as Figure 2As shown, the merged view layer is a unified file system integrating the writable layer and the read-only layer that can be seen by the game programs running on the cloud gaming device. If the game program running on the second cloud gaming device needs to read data, it needs to access the merged view layer to extract files. In this example, the game data unit will provide the corresponding files from the writable layer or the read-only layer internally for the game program to read or write. The read-only layer is used to provide game data information, which can include the overlay of single or multiple directories. The writable layer can write data during game operation, such as logs, etc.
[0060] In an example of this embodiment, when the second cloud gaming device reads the first data information of the game, it is determined whether there is a first data file corresponding to the first data information in the writable layer; if there is no first data file in the writable layer, the first data information is obtained from the read-only layer.
[0061] In an example of this embodiment, when the second cloud gaming device writes the second data information of the game, it is determined whether there is a second data file corresponding to the second data information in the writable layer; if there is no second data file in the writable layer, the second data file in the read-only layer is copied to the writable layer, and the second data information is written in the writable layer.
[0062] In this example, when data information needs to be written, it can first be determined whether there is a corresponding data file in the writable layer. If there is no corresponding file in the writable layer, then the file needs to be copied from the read-only layer and then written in the writable layer. If there is also no corresponding file in the read-only layer, then the file can be directly generated in the writable layer and then the corresponding data information can be written.
[0063] When data information needs to be read, the game program first looks for the file in the writable layer because the files in the writable layer contain the data information written during the game operation, which is the latest data information of the game. If there is a corresponding data file in the writable layer, then the corresponding data information in the corresponding file in the writable layer is read. If there is no corresponding data file in the writable layer, then the file is read from the read-only layer.
[0064] In an example of this embodiment, the system further includes: a status monitoring module, which is used to display and configure the device status of the first cloud disk and the second cloud disk, and the device status includes the working status of the cloud disk and the activation status of the cloud disk.
[0065] In this embodiment, in order to facilitate the management of the game cloud disks of the block storage system, a status monitoring module may also be provided in the system. The status monitoring module can visually display the number and status of the cloud disks in each block storage unit. The status may include the activation or deactivation status of the second cloud disk and the third cloud disk. For example, for the cloud disk corresponding to the latest version of the game, it can be set to the activation status, and the cloud disks corresponding to other versions of the game are set to the corresponding deactivation status. The cloud disk status may also include the status of the cloud disk during update or generation. For example, when a new first cloud disk is created, an identity ID can be assigned to the newly created cloud disk, and its initial status is set to the ready status. When the cloud disk is mounted on the first cloud game device, its status can be set to the disk-making status. At this time, the corresponding game can be installed or the game can be updated in the cloud disk. Then it can be set to the cleaning status. In this status, some work of cleaning dirty data can be done. Then it is set to the storage status. The cloud game device can correspondingly unmount the cloud disk, and then take a snapshot of it to generate a second cloud disk. When the second cloud disk is synchronized to other nodes, it can be set to the corresponding replication status, etc.
[0066] The embodiments in this specification are all described in a progressive manner. For the same or similar parts among the embodiments, reference can be made to each other. Each embodiment focuses on the differences from other embodiments. In particular, for the device and equipment embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts can refer to the partial description of the method embodiments.
[0067] The specific embodiments of this specification are described above. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims can be performed in a different order from that in the embodiments and still achieve the desired results. In addition, the processes depicted in the drawings do not necessarily require the specific order or sequential order shown to achieve the desired results. In certain embodiments, multitasking and parallel processing are also possible or may be advantageous.
[0068] The embodiments of this specification can be devices, methods, and / or computer program products. The computer program product may include a computer-readable storage medium having computer-readable program instructions thereon for causing a processor to implement various aspects of the embodiments of this specification.
[0069] A computer-readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. A computer-readable storage medium can be, for example, but is not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer-readable storage medium include: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disc (DVD), a memory stick, a floppy disk, a mechanically encoded device such as a punched card or raised structures in grooves having instructions stored thereon, and any suitable combination of the foregoing. The computer-readable storage medium as used herein is not construed as being a transitory signal per se, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or other transmission medium (e.g., an optical pulse through an optical fiber cable), or an electrical signal transmitted through a wire.
[0070] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to respective computing / processing devices, or can be downloaded to an external computer or an external storage device through a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network can include a copper transmission cable, an optical fiber transmission, a wireless transmission, a router, a firewall, a switch, a gateway computer, and / or an edge server. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in each computing / processing device.
[0071] The computer program instructions for performing the operations of the embodiments of this specification may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine - related instructions, microcode, firmware instructions, state - setting data, or source code or object code written in any combination of one or more programming languages. The programming languages include object - oriented programming languages such as Smalltalk, C++, etc., and conventional procedural programming languages such as the "C" language or similar programming languages. The computer - readable program instructions may be executed entirely on the user's computer, partially on the user's computer, executed as a stand - alone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., by using an Internet service provider to connect through the Internet). In some embodiments, by using the state information of the computer - readable program instructions to customize an electronic circuit, such as a programmable logic circuit, a field - programmable gate array (FPGA), or a programmable logic array (PLA), the electronic circuit can execute the computer - readable program instructions to implement various aspects of the embodiments of this specification.
[0072] Aspects of the embodiments of this specification are described herein with reference to the flowcharts and / or block diagrams of methods, apparatus (devices), and computer program products according to the embodiments of this specification. It should be understood that each block of the flowcharts and / or block diagrams, and combinations of blocks in the flowcharts and / or block diagrams, can be implemented by computer - readable program instructions.
[0073] These computer - readable program instructions can be provided to a processor of a general - purpose computer, a special - purpose computer, or other programmable data - processing apparatus to produce a machine such that the instructions, when executed by the processor of the computer or other programmable data - processing apparatus, generate a device for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer - readable program instructions can also be stored in a computer - readable storage medium, and the instructions cause the computer, programmable data - processing apparatus, and / or other devices to operate in a specific manner. Thus, the computer - readable medium storing the instructions includes a manufacture, which includes instructions for implementing various aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.
[0074] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device, causing a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process such that the instructions executed on the computer, other programmable data processing apparatus, or other device implement the functions / acts specified in one or more boxes of the flowchart and / or block diagram.
[0075] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present specification. In this regard, each box in the flowchart or block diagram may represent a module, a segment of a program, or a part of an instruction, which contains one or more executable instructions for implementing the specified logical function. In some alternative implementations, the functions noted in the boxes may occur in a different order than noted in the figures. For example, two consecutive boxes may in fact be executed substantially in parallel, or they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flowchart, and combinations of boxes in the block diagram and / or flowchart, can be implemented by a dedicated hardware-based system that performs the specified functions or acts, or by a combination of dedicated hardware and computer instructions. As is well known to those skilled in the art, implementations through hardware, through software, and through a combination of software and hardware are equivalent.
[0076] The embodiments of the present specification have been described above. The above description is exemplary, not exhaustive, and is not limited to the disclosed embodiments. Many modifications and variations will be apparent to those of ordinary skill in the art in the technical field without departing from the scope of the described embodiments. The choice of terms used herein is intended to best explain the principles of the embodiments, the practical application, or the improvement of the technology in the market, or to enable other ordinary skilled persons in the technical field to understand the embodiments disclosed herein.
Claims
1. A management system for cloud game data, characterized in that, The system includes: Multiple cloud game devices, which are deployed in multiple edge cloud nodes. The multiple cloud game devices include at least one first cloud game device. The first cloud game device is used to update a first game in a readable and writable first cloud disk, and the first cloud disk is only used to store data information of the first game; A distributed block storage module. The distributed block storage module includes multiple block storage units, and the multiple block storage units are respectively deployed in multiple edge cloud nodes. Among them, the first block storage unit is used to generate a second cloud disk when the update of the first cloud disk is completed, and synchronize the second cloud disk to a second edge cloud node, so that the second block storage unit in the second edge cloud node generates a third cloud disk identical to the second cloud disk; Wherein, the first block storage unit is the block storage unit of the first edge cloud node, the first edge cloud node is the edge cloud node where the first cloud game device is located, the second cloud disk stores snapshot data of the first cloud disk, and the third cloud disk in the second edge cloud node is used to run the first game.
2. The system according to claim 1, characterized in that, The second block storage unit stores third cloud disks of multiple game versions of the first game. The third cloud disks of the multiple game versions are associated in a single-chain structure, and the third cloud disks of the multiple game versions are sorted in the link of the third cloud disk in sequence based on the generation time; the synchronizing the second cloud disk to the second edge cloud node so that the second block storage unit in the second edge cloud node generates a third cloud disk identical to the second cloud disk includes: Determining an incremental data block corresponding to the update of the first game in the second cloud disk; Synchronizing the incremental data block to the second block storage unit of the second edge cloud node, so that the second block storage unit generates a third cloud disk corresponding to the updated first game based on the incremental data block and the third cloud disk at the end of the link of the third cloud disk, and associates the third cloud disk corresponding to the updated first game to the end of the link of the third cloud disk.
3. The system according to claim 2, wherein The first block storage unit stores second cloud disks of multiple game versions of the first game. The second cloud disks of the multiple game versions are associated in a single-chain structure, and the second cloud disks of the multiple game versions are sorted in the link of the second cloud disk in sequence based on the generation time. The determining the incremental data block corresponding to the update of the first game in the second cloud disk includes: Comparing the newly generated second cloud disk with the second cloud disk at the end of the link of the second cloud disk to determine the incremental data block; Associating the newly generated second cloud disk to the end of the link of the second cloud disk.
4. The system according to claim 2, wherein The cloud game device includes a second cloud game device, and the second cloud game device is arranged in the second edge cloud node. The second cloud game device is used to mount the third cloud disk in the second edge cloud node to run the first game.
5. The system according to claim 4, characterized in that The second cloud game device is used for: Receiving a first data packet name of a game to be started sent by a user terminal, and determining the link of the third cloud disk corresponding to the game to be started; Based on the device status of each third cloud disk in the link, determine the target third cloud disk to be mounted in the link of the third cloud disk corresponding to the game to be started; Mount the target third cloud disk and run the game to be started.
6. The system according to claim 5, wherein The second cloud disk and the third cloud disk are read-only cloud disks. The third cloud disk and the local storage unit of the second cloud game device form a game data unit, and the game data unit is used to run the first game. Among them, in the game data unit, the local storage unit is used to write the data information of the game.
7. The system according to claim 6, wherein The game data unit includes a read-only layer, a writable layer, and a merged view layer. The read-only layer includes the third cloud disk and is used to provide the data information of the game. The writable layer includes the local storage unit and is used to write or read the data information of the game. The second cloud game device's view layer reads the data information of the game in the read-only layer, or writes or reads the data information of the game in the writable layer.
8. The system according to claim 7, wherein When the second cloud game device reads the first data information of the game, determine whether there is a first data file corresponding to the first data information in the writable layer; When the first data file does not exist in the writable layer, obtain the first data information from the read-only layer.
9. The system according to claim 8, characterized in that, When the second cloud game device writes the second data information of the game, determine whether there is a second data file corresponding to the second data information in the writable layer; When the second data file does not exist in the writable layer, copy the second data file in the read-only layer to the writable layer and write the second data information in the writable layer.
10. The system according to claim 1, wherein The system further includes: A status monitoring module, which is used to display and configure the device status of the first cloud disk and the second cloud disk. The device status includes the working status of the cloud disk and the activation status of the cloud disk.