A data management method, device, medium and equipment for a satellite cluster

By building a satellite alliance to achieve data sharing and business migration, the problem of mission interruption and data loss when the satellite and ground management center are disconnected is solved, and the autonomous operation and maintenance of satellite clusters and business continuity are achieved.

CN118984465BActive Publication Date: 2025-08-01ZHEJIANG LAB
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411470791.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-10-21
Publication Date
2025-08-01
Estimated Expiration
2044-10-21

AI Technical Summary

Technical Problem

In the prior art, when satellites are disconnected from the ground management center, the satellite mission execution is interrupted or data loss is caused, resulting in high computing delays and network bandwidth overhead.

Method used

Build a satellite alliance to realize the sharing of business data and status data of the computing unit through direct communication between satellites, and automatically select the migration unit for business migration when the computing unit is abnormal to achieve autonomous operation and maintenance.

Benefits of technology

Even when disconnected from the ground management center, satellite clusters can be automated to reduce computing delays and network resource usage, and ensure business continuity.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118984465B_ABST
    Figure CN118984465B_ABST
Patent Text Reader

Abstract

This specification provides a data management method, device, medium, and equipment for a satellite cluster. Each satellite in the satellite cluster constructs a satellite alliance and sends the service data required for the services executed by each computing unit it contains and / or the status data of each computing unit contained in the satellite as synchronization data to other satellites within the satellite alliance, while receiving the synchronization data sent by other satellites within the satellite alliance. When a computing unit on the satellite has an abnormality, a migration unit is selected from the computing units within the satellite alliance, and the service executed by the computing unit with the abnormality is migrated to the migration unit for execution. When a computing unit within the satellite alliance has an abnormality, other computing units can determine the migration unit based on the status data and achieve automatic service migration based on the shared service data, so that the satellites within the satellite alliance can perform automated operation and maintenance even when disconnected from the ground management center.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This specification relates to the field of satellite cloud computing, and in particular to a method, device, medium, and equipment for data management in a satellite cluster. Background Art

[0002] With the development of satellite technology and cloud computing, the integration of satellites, the ground, and cloud computing centers has been promoted. Taking advantage of the characteristics of wide satellite coverage and strong disaster resistance, building a space-ground integrated network and application architecture has become an important direction for current development. Among them, cloud computing centers have high demands for computing power resources, energy, etc., so cloud computing centers are often deployed on the ground. When a satellite needs to call the computing power of a cloud computing center to execute a task, it is necessary to transmit the data required for the execution of the task to the ground. The cloud computing center deployed on the ground executes the task according to the data and then returns the task data to the satellite.

[0003] In the prior art, in order to solve the problem of large latency in satellite task execution caused by the long distance between the cloud computing center and the data source, edge computing technology is usually applied in satellite clusters, that is, through an edge computing platform such as KubeEdge, the applications for executing tasks are deployed on the satellites, and computing resources are provided on the satellites for the satellites to execute tasks.

[0004] However, whether it is application deployment or data storage during the task execution process, the satellite depends on the instructions issued by the ground management platform. Due to the station layout limitations of the ground management platform, there will be long disconnection periods between the satellite and the ground. When the satellite is disconnected from the ground management platform, the satellite loses the guidance of instructions, and there will be situations where task execution is interrupted or fails and data is lost. Therefore, this specification provides a method, device, medium, and equipment for data management in a satellite cluster. Summary of the Invention

[0005] This specification provides a method, device, medium, and equipment for data management in a satellite cluster to partially solve the above problems existing in the prior art.

[0006] This specification adopts the following technical solutions:

[0007] The satellites in the satellite cluster include multiple computing units, including:

[0008] For each satellite in the satellite cluster, the satellite constructs a satellite alliance of the satellite based on other satellites in the satellite cluster that can directly communicate with the satellite;

[0009] Determine the services respectively executed by each computing unit included in the satellite, as well as the service data required for executing the services, and use the service data and / or the status data of each computing unit included in the satellite as synchronization data, and send it to other satellites in the satellite alliance, and receive the synchronization data sent by the other satellites;

[0010] When an exception occurs in a computing unit on the satellite, determine the service executed by the computing unit with the exception and the status data of each computing unit in the satellite alliance. According to the status data of each computing unit in the satellite alliance, select a migration unit from each computing unit in the satellite alliance, and migrate the service executed by the computing unit with the exception to the migration unit for execution.

[0011] Optionally, sending the service data and / or the status data of each computing unit as synchronization data to other satellites in the satellite alliance specifically includes:

[0012] Monitor the service data of the services respectively executed by each computing unit included in the satellite, and monitor the status data of each computing unit included in the satellite;

[0013] When it is determined that the monitored service data and / or status data has changed, determine the changed service data and / or the changed status data as synchronization data, and send it to other satellites in the satellite alliance.

[0014] Optionally, the method further includes:

[0015] Determine the service data of the other satellites and the status data of the computing units of the other satellites according to the synchronization data sent by the other satellites;

[0016] Use the service data of this satellite and the service data of the other satellites as first data;

[0017] Use the status data of the computing units of this satellite and the status data of the computing units of the other satellites as second data;

[0018] Store the first data and the second data separately.

[0019] Optionally, selecting a migration unit from each computing unit in the satellite alliance according to the status data of each computing unit in the satellite alliance specifically includes:

[0020] According to the status data of each computing unit included in this satellite, determine whether there are normal units among the computing units on this satellite;

[0021] If so, select a migration unit from the normal units of this satellite;

[0022] If not, select a migration unit from the computing units of the other satellites according to the status data of the computing units in the satellite alliance.

[0023] Optionally, selecting a migration unit from the computing units in the satellite alliance according to the status data of the computing units in the satellite alliance specifically includes:

[0024] Determine the normal units in the satellite alliance according to the status data of the computing units in the satellite alliance;

[0025] For each normal unit, determine the distance between the normal unit and the computing unit with an exception;

[0026] According to the status data of the normal unit and the distance, based on a preset standard, score the normal unit to determine the first score of the unit, where the distance is negatively correlated with the first score;

[0027] According to the first scores of the normal units, determine the migration unit from the normal units with the first score greater than a first preset value.

[0028] Optionally, the method further includes:

[0029] For each computing unit, package the program and operating environment required for the computing unit to execute the service into a container, and run the container on the computing unit;

[0030] Migrate the service executed by the computing unit with an exception to the migration unit for execution, specifically including:

[0031] Migrate the container running on the computing unit with an exception to the migration unit, so that the migration unit runs the container based on the service data of the computing unit with an exception stored.

[0032] Optionally, the method further includes:

[0033] The satellite monitors in real time whether there is a lost satellite in the satellite alliance;

[0034] When there is a lost satellite in the satellite alliance, judge whether the lost satellite is executing a service according to the status data sent by the lost satellite;

[0035] If so, determine the service executed by the lost satellite, score the computing units in the satellite alliance according to the status data of the computing units in the satellite alliance and the distances between the computing units and the lost satellite, and according to the second scores, determine at least one target unit with the second score greater than a second preset value, and make the target unit execute the service of the lost satellite based on the service data synchronized by the lost satellite;

[0036] If not, determine the lost satellite, the services, service data, and corresponding status data executed by the lost satellite, and delete them, and delete the lost satellite from the satellite alliance.

[0037] This specification provides a data management device for a satellite cluster. The device is applied to each satellite in the satellite cluster, and each satellite includes a plurality of computing units, including:

[0038] An alliance module, configured to construct a satellite alliance of the satellite where the device is located based on other satellites in the satellite cluster that can directly communicate with the satellite where the device is located;

[0039] A storage module, configured to determine the services executed by each computing unit included in the satellite where the device is located, and the service data required for executing the services, and use the service data and / or the status data of each computing unit included in the satellite where the device is located as synchronization data, and send the synchronization data to other satellites in the satellite alliance, and receive the synchronization data sent by the other satellites;

[0040] An autonomous module, configured to, when a computing unit on the satellite where the device is located has an abnormality, determine the service executed by the abnormal computing unit, and the status data of each computing unit in the satellite alliance, select a migration unit from the computing units in the satellite alliance according to the status data of each computing unit, and migrate the service executed by the abnormal computing unit to the migration unit for execution. [[ID= 16]]

[0041] This specification provides a computer-readable storage medium storing a computer program, and when the computer program is executed by a processor, the data management method for the satellite cluster described above is implemented.

[0042] This specification provides an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes the program, the data management method for the satellite cluster described above is implemented.

[0043] At least one of the technical solutions adopted in this specification can achieve the following beneficial effects:

[0044] In a method for managing data of a satellite cluster described in this specification, each satellite in the satellite cluster constructs a satellite alliance by determining other satellites that directly communicate with itself. Then, the satellite sends the service data required for the services executed by each computing unit it contains and / or the status data of each computing unit it contains as synchronization data to other satellites within the satellite alliance, and at the same time receives the synchronization data sent by other satellites within the satellite alliance. When a computing unit on the satellite encounters an abnormality, a migration unit is selected from the computing units within the satellite alliance according to the status data of the computing units within the satellite alliance, and the service executed by the computing unit with the abnormality is migrated to the migration unit for execution.

[0045] As can be seen from the above method, by constructing a satellite alliance, the sharing of service data and status data generated by the computing units of each satellite within the satellite alliance is realized. When a computing unit within the satellite alliance encounters an abnormality, other computing units can determine the migration unit based on the status data and realize automatic service migration based on the shared service data, so that the satellites within the satellite alliance can be automatically operated and maintained even when disconnected from the ground management center. BRIEF DESCRIPTION OF THE DRAWINGS

[0046] The drawings described herein are used to provide a further understanding of this specification and form a part of this specification. The schematic embodiments of this specification and their descriptions are used to explain this specification and do not constitute an improper limitation to this specification. In the drawings:

[0047] Figure 1 is a schematic diagram of a satellite data processing flow provided by this specification;

[0048] Figure 2 is a schematic diagram of the flow of a method for managing data of a satellite cluster provided by this specification;

[0049] Figure 3 is a schematic diagram of a satellite alliance provided by this specification;

[0050] Figure 4 is a schematic diagram of the internal data sharing process of a satellite alliance provided by this specification;

[0051] Figure 5 is a schematic diagram of a device for managing data of a satellite cluster provided by this specification;

[0052] Figure 6 corresponding to that provided by this specification Figure 2 schematic diagram of an electronic device. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0053] To make the objectives, technical solutions, and advantages of this specification clearer, the technical solutions of this specification will be clearly and completely described below in conjunction with specific embodiments of this specification and the corresponding drawings. Obviously, the described embodiments are only a part of the embodiments of this specification, rather than all of them. Based on the embodiments in this specification, all other embodiments obtained by those of ordinary skill in the art without creative efforts belong to the scope of protection of the present invention.

[0054] With the development of satellite technology, satellites, due to their characteristics such as global coverage, flexible deployment, and strong resistance to natural disasters, provide important support and supplementation for terrestrial communication. With the development of cloud computing, cloud computing centers can also provide powerful and generalized computing power resources for different applications, supplementing the deficiencies of satellite-borne computing resources. Therefore, promoting the integration of satellites, the ground, and cloud computing centers and building a space-ground integrated network and application architecture has become an important direction for current development. However, in order to achieve powerful computing power resources, cloud computing centers have relatively high requirements for energy, equipment, etc. Therefore, cloud computing centers are often located on the ground, and the data generated by satellites is transmitted back to the ground cloud computing center for processing. After the ground cloud computing center processes the data, it then returns the processing results to the satellite. As Figure 1 shown, Figure 1 is a schematic diagram of a satellite data processing flow provided in this specification. Among them, the satellite returns the collected data to the signal receiving device on the ground, and then the signal transmission device transmits the data to the cloud computing center set on the ground. Then, under the control instruction of the ground management center, the cloud computing center returns the data to the satellite through the signal transmission device, and the satellite then returns the data to the user.

[0055] However, the cloud computing center is far from the satellite, and the data transmission process is long, resulting in a relatively high data processing delay and a huge network bandwidth overhead. Therefore, the current technology of edge computing is adopted to solve the problem of high computing delay caused by the long distance, that is, a space-based edge computing system is constructed according to the ground management center, the cloud computing center, and the satellite cluster, and the computing resources are deployed at the place closest to where the data is generated. For example, some applications used to execute tasks are run in the satellite-borne computing unit, so that the satellite can process data on orbit, thereby executing tasks with low latency and further reducing the occupation of network resources between the satellite and the ground.

[0056] However, existing space-based edge computing systems generally adopt a control, operation and maintenance, and processing method mainly based on a ground management center. That is, the computing units on the satellite still need to run application execution tasks based on instructions issued by the ground control center. When problems occur in the operation of the computing units, it also depends on the instructions generated by the ground management center according to the repair strategy to handle the problems. However, the number of existing ground management centers is limited, and there may be interruptions in the information interaction between the satellite and the ground. Moreover, due to energy problems, the satellite is not always running, resulting in untimely management of the satellite by the ground management center, and the satellite cannot provide all-weather service requirements for the ground.

[0057] Therefore, this specification provides a data management method for a satellite cluster. This method is applied to each satellite in the satellite cluster. The satellite cluster is a system composed of multiple on-orbit satellites, and each satellite contains multiple computing units for performing computing tasks, application operations, and other services. In one or more embodiments of this specification, there is no limitation on which specific device executes this data management method. The specific device depends on the type of on-board device, such as an on-board computer, an on-board server, etc., which are devices responsible for business control scheduling and data sorting scheduling for on-board use. For the convenience of subsequent description, first, take the on-board server executing this data management method as an example for illustration.

[0058] The following will detail the technical solutions provided in each embodiment of this specification in conjunction with the accompanying drawings.

[0059] Figure 2 It is a schematic diagram of the process of a data management method for a satellite cluster provided in this specification. Specifically:

[0060] S200: For each satellite in the satellite cluster, the satellite constructs a satellite alliance of the satellite based on other satellites in the satellite cluster that can directly communicate with the satellite.

[0061] To facilitate the migration of services and data within the satellite cluster and achieve satellite cluster autonomy, the service data of each satellite and the status data of each computing unit within the satellite cluster can be shared. However, the number of satellites in the satellite cluster is large. If the service data of each satellite and the status data of each computing unit are all shared, it will also occupy a large inter-satellite transmission network. At the same time, it will also cause a large waste of the storage resources of each satellite. Therefore, for each satellite in the satellite cluster, the on-board server of the satellite can determine at least one other satellite that can directly communicate in the satellite cluster to construct a satellite alliance, thereby dividing the satellite cluster into multiple satellite alliances. The service data of each satellite and the status data of each computing unit within each satellite alliance are shared, thereby reducing the quantity of service data stored in each satellite and the status data of each computing unit.

[0062] Specifically, since communication between satellites may be affected by the distance between satellites and whether there are obstacles between satellites, not all satellites in the satellite cluster can communicate directly. Although satellites that cannot communicate directly can achieve communication through relay satellites, this also results in a relatively high data transmission delay. Therefore, when constructing a satellite alliance, the on-board server can first determine at least one other satellite in the satellite cluster that can communicate directly with this satellite, and then construct a satellite alliance based on this satellite and the satellites that can communicate directly with it.

[0063] It should be noted that in one or more embodiments of this specification, the above-mentioned direct communication refers to satellites that can communicate with the target satellite without the need for other relay means. In addition, there is no limitation on the specific method used by the on-board server to select other satellites for constructing the satellite alliance. When constructing the satellite alliance, the on-board server can construct the satellite alliance based on all satellites that can communicate directly with this satellite. It can also screen out other satellites with a distance less than a preset value from other satellites according to the distance between other satellites and this satellite, and then construct a satellite alliance based on the selected other satellites and the target satellite.

[0064] As Figure 3 shown, Figure 3 FIG. 11 is a schematic diagram of a satellite alliance provided in this specification. Among them, the middle circle represents the earth, and the three rings represent three orbits around the earth. Each satellite in the satellite cluster orbits the earth on the three orbits around the earth. Among them, satellites marked with the same identifier are in the same satellite alliance.

[0065] S202: Determine the services respectively executed by each computing unit included in this satellite, and the service data required for executing the services, and use the service data and / or the status data of each computing unit included in this satellite as synchronization data, and send it to other satellites in the satellite alliance, and receive the synchronization data sent by the other satellites.

[0066] After constructing the satellite alliance, in order to realize data sharing among satellites in the satellite alliance, the on-board server can synchronize the service data required for each computing unit included in this satellite to other satellites in the satellite alliance in real time, and also share the status data of each computing unit included in this satellite to other satellites in the satellite alliance.

[0067] Specifically, the on-board server determines the services respectively executed by each computing unit included in this satellite, and the service data required for executing the services. Then, the determined service data and the status data of each computing unit included in this satellite are used as synchronization data, and sent to other satellites in the satellite alliance. At the same time, the on-board server obtains the synchronization data sent by other satellites in the satellite alliance. Thus, data sharing of services within the satellite alliance is realized.

[0068] It should be noted that in one or more embodiments of this specification, there is no limitation on what specific target services are executed by each computing unit included in each satellite within the satellite cluster. It can be atmospheric data collection, positioning, environmental monitoring, etc. Nor is there a limitation on the number of services executed by each computing unit. One computing unit can execute one service, one computing unit can execute multiple services, or multiple computing units can execute one service.

[0069] As Figure 4 shown, Figure 4 FIG. is a schematic diagram of an internal data sharing process within a satellite alliance provided in this specification. Among them, there are 3 satellites in this satellite alliance. The computing unit α included in satellite A executes service a and service b. The computing unit β of satellite B executes service c. The computing unit γ of satellite C executes service d. The computing unit θ executes service e and service f. The three satellites share service data a', service data b', service data c', service data d', service data e', service data f', status data α', status data β', status data γ', and status data θ'.

[0070] In addition, the data required for each computing unit within the satellite cluster to execute services at least includes the programs, operating environment data, etc. required to execute the service. Of course, it can also include intermediate data during the execution of the service. For example, if the service being executed is atmospheric data collection and transmission, the service data for this service also includes the collected atmospheric data. The status data of each computing unit at least includes the services executed by each computing unit, the number of the computing unit, the satellite, configuration information, remaining computing resources, communication protocol, secret key, etc.

[0071] In addition, in one or more embodiments of this specification, there is no limitation on what specific communication encryption protocol each satellite uses to achieve data transmission. It can be based on the interaction interface of the HTTPS communication encryption protocol, or communication encryption protocols such as AES and RSA can be used. This specification does not make any limitations in this regard.

[0072] S204: When an abnormality occurs in the computing unit on the satellite, determine the service executed by the computing unit with the abnormality and the status data of each computing unit within the satellite alliance. According to the status data of each computing unit within the satellite alliance, select a migration unit from each computing unit within the satellite alliance, and migrate the service executed by the computing unit with the abnormality to the migration unit for execution.

[0073] When an abnormality occurs in the computing unit of a satellite within a general satellite cluster, the usual approach to handling the abnormal computing unit is to send information such as the cause of the abnormality to the ground management center. Then, based on the abnormal handling strategy returned by the ground management center, the abnormal computing unit is processed. However, satellites are not always able to communicate with the ground management center. Therefore, when the on-board server is unable to communicate with the ground management center, it can independently process the abnormal computing unit by using the service data shared within the satellite alliance and the status data of each computing unit.

[0074] Specifically, when the on-board server detects an abnormality in the computing unit of the satellite, it can first determine the service executed by the abnormal computing unit. Then, based on the status data of each computing unit within the satellite alliance, a migration unit is selected from the computing units within the satellite alliance, so that the service executed by the abnormal computing unit can be migrated to the migration unit, and the migration unit can execute the service on behalf of the abnormal unit based on the service data of the abnormal computing unit stored in advance.

[0075] It should be noted that when the on-board server determines that there is an abnormal computing unit on the satellite, it can directly migrate the service executed by the abnormal computing unit as described above, or it can first restart the abnormal computing unit or let the abnormal computing unit retry the service. If the restart or retry is successful, the service executed by the abnormal computing unit will not be migrated, reducing the occupancy of the inter-satellite network due to service migration and at the same time reducing the impact on the services executed by other computing units within the satellite alliance. Of course, the on-board server can also adopt other abnormal handling strategies, such as judging the cause of the abnormality of the abnormal computing unit and then calling the corresponding recovery script according to the determined cause of the abnormality. This specification does not limit this.

[0076] Based on Figure 2 In a data management method for a satellite cluster, each satellite in the satellite cluster constructs a satellite alliance by determining other satellites that communicate directly with itself. Then, the satellite sends the service data required for the services executed by each computing unit it contains and / or the status data of each computing unit it contains as synchronization data to other satellites within the satellite alliance, and at the same time receives the synchronization data sent by other satellites within the satellite alliance. When an abnormality occurs in the computing unit of the satellite, based on the status data of each computing unit within the satellite alliance, a migration unit is selected from the computing units within the satellite alliance, and the service executed by the abnormal computing unit is migrated to the migration unit for execution.

[0077] As can be seen from the above method, by constructing a satellite alliance, the sharing of service data and status data generated by the computing units of each satellite within the satellite alliance is realized. When an abnormality occurs in the computing units within the satellite alliance, other computing units can determine the migration unit based on the status data and achieve automatic service migration based on the shared service data. Even when the satellites within the satellite alliance are disconnected from the ground management center, they can still be automatically operated and maintained.

[0078] In addition, since the status data of each computing unit within the satellite cluster often varies with the progress of service execution, while the service data may not change during the service execution process. That is to say, the change frequency of the status data of each computing unit within the satellite cluster is different from the change frequency of the service data. Then, when the on-board server synchronizes data to other satellites within the alliance, the data synchronized each time may also be different.

[0079] Specifically, the on-board server can monitor the service data of the services implemented by each of its computing units and monitor the status data of each of its computing units. When it detects a change in the service data or status data, it uses the changed service data or status data as the synchronization data and sends it to other satellites within the satellite alliance. That is, when only a change in the service data is detected, only the changed service data is used as the synchronization data and sent to other satellites within the satellite alliance. When a change in both the service data and status data is detected, the changed service data and status data are used as the synchronization data and sent to other satellites within the satellite alliance. When only a change in the status data is detected, only the changed status data is used as the synchronization data and sent to other satellites within the satellite alliance.

[0080] In addition, the on-board server can also periodically check whether the service data required for the services implemented by each computing unit included in the satellite and the status data of each computing unit included in the satellite have changed according to a preset monitoring period, and then use the changed status data and / or service data as the synchronization data and send it to other satellites within the satellite alliance.

[0081] After the on-board server sends the synchronization data of each computing unit included in the satellite to other satellites within the satellite alliance, in order to achieve data sharing within the satellite alliance, the on-board server can also receive the synchronization data sent by other satellites within the satellite alliance. However, since the update frequencies of the service data and status data are different, in order to reduce the update frequencies of the service data and status data, the on-board server can store the service data and status data separately.

[0082] Specifically, the on-board server uses the service data of each computing unit included in the satellite and the service data of each computing unit included in other satellites in the synchronization data sent by other satellites within the alliance as the first data, and uses the status data of each computing unit included in the satellite and the status data of each computing unit included in other satellites in the synchronization data sent by other satellites within the alliance as the second data. Then, the first data and the second data are stored separately, and when updating the first data and the second data, it is determined that the first data and the second data are updated separately.

[0083] In addition, in step S204, when determining the migration unit, in order to improve the migration efficiency of the service and reduce the impact of computing unit anomalies on service execution, the on-board server may preferentially select a migration unit within the satellite. When there is no normal unit within the satellite, a migration unit is then selected from other computing units within the satellite alliance according to the status data of each computing unit.

[0084] Specifically, according to the status data of each computing unit within the satellite alliance, it is determined whether there is a normal unit among the computing units on the satellite. If there is, a migration unit is selected from the normal units of the satellite. If not, a migration unit is selected from other computing units within the satellite alliance.

[0085] Furthermore, since the computing resources, configuration performance, etc. included in each computing unit are different, the execution efficiency of different computing units for different services is different, and after the service is migrated, the migrated service may also affect the service executed by the migration unit itself. Therefore, other factors may also be considered when determining the migration unit.

[0086] Specifically, when determining the migration unit, the on-board server may first determine the normal units within the satellite alliance. Then, for each normal unit, based on the status data of each computing unit within the satellite alliance, it determines the normal units in the satellite alliance. Next, it determines the distances between each normal unit and the computing unit with anomalies. Then, based on the status data of the normal unit and the determined distances, and according to a preset standard, it scores the computing unit to determine the first score of the computing unit. Then, the on-board server determines the migration unit from the normal units whose first scores are greater than the first preset value according to the first scores of each normal unit. That is, it determines information such as the distances from each normal unit to the computing unit with anomalies, the computing resources of each normal unit, the performance of the Central Processing Unit (CPU), the storage size of the satellite where each normal unit is located, the memory size of the CPU, the applicable scenarios, etc. Then, based on the determined information, it scores each normal unit according to a preset weight, and then determines the migration unit according to the scores of each normal unit. For example, it takes the normal unit with the highest score as the migration unit, or among the normal units whose scores reach the preset value, it selects the normal unit closest to the computing unit with anomalies as the migration unit. Since there are many methods for determining the migration unit, it can be specifically set based on actual requirements, and this specification does not limit it.

[0087] It should be noted that when determining the migration unit, at least one migration unit is determined. When the computing resources of one migration unit are insufficient to support the services executed by the computing unit with anomalies, multiple migration units can also be determined to execute the services executed by the computing unit with anomalies. And when determining multiple migration units, the multiple migration units can belong to the same satellite or multiple satellites.

[0088] In addition, due to the different environmental configurations of different computing units, to facilitate the migration of services, the on-board server can, based on container technology, package the programs and operating environments required for executing each service into containers respectively, so as to convert the migration of services into the migration of containers and improve the migratability of on-board services.

[0089] Specifically, the on-board server can determine the programs and operating environments required for the services to be executed, and then, through container construction technology such as KubeEdge, package the programs and operating environments required for executing the services into containers and run them on each computing unit included in the satellite. Then, it updates the information of the containers in the database. When there is a computing unit with anomalies, it determines the information of the containers according to the status data of each computing unit. When migrating services, it directly copies or migrates the containers. Of course, when each computing unit executes services by running containers, one computing unit can run one or more containers, but one service cannot be executed by multiple computing units.

[0090] In addition, since the satellites in the satellite cluster are at different orbital altitudes, their orbital velocities around the Earth are also different. Therefore, the satellites are often in relative motion. The satellites may lose connection due to excessive distance or due to power-off for dormancy, faults, etc. As a result, the determined satellite alliance is often dynamically updated. To further save the storage resources in each satellite, the on-board server can dynamically update the data stored in the database according to the dynamically updated satellite alliance.

[0091] Specifically, for each satellite in the satellite alliance, the on-board server determines in real time the communication status of the satellite with other satellites, monitors whether there are any satellites that have lost connection in the satellite alliance. When a satellite that has lost connection appears, it determines whether the satellite that has lost connection is performing a service according to the status data of each computing unit. If so, it means that the satellite that has lost connection has suddenly lost connection. The on-board server can determine the service executed by the satellite that has lost connection, and based on the status data of each computing unit in the satellite alliance and the distances between each computing unit and the satellite that has lost connection, it gives a second score to each computing unit in the satellite alliance. According to the second score, it determines at least one target unit whose second score is greater than a second preset value, and enables the target unit to execute the service of the satellite that has lost connection based on the service data synchronized by the satellite that has lost connection, thus realizing service migration.

[0092] It should be noted that the determined target unit is also at least one. When the computing resources of one target unit are not sufficient to support the service executed by the satellite that has lost connection, multiple migration units can also be determined to execute the service of the computing unit that has encountered an abnormality. When determining multiple target units, the determined target units can belong to the same satellite or to multiple satellites. They can be selected according to the second score or set according to actual requirements. This specification does not limit this.

[0093] In addition, whether the migration unit and the target unit are different, among them, the target unit can only be the computing units on other satellites in the satellite alliance that are different from the satellite where the computing unit with an abnormality is located, while the migration unit can be any normal unit in the satellite alliance.

[0094] If not, it means that the satellite that has lost connection may have lost connection due to being determined to be too far away from other satellites in the satellite alliance or due to predictable reasons for losing power such as reaching a preset power-off. Therefore, the service is migrated in advance. Therefore, the on-board server can directly delete the synchronization data sent by the satellite that has lost connection and remove the satellite that has lost connection from the satellite alliance. Of course, if the satellite that has lost connection is powered on again or can communicate with the satellite again, the satellite that has lost connection can be regarded as a newly added satellite in the satellite alliance.

[0095] It should be noted that when each computing unit of each satellite generates service data and shares it with other satellites within the satellite alliance, it is carried out simultaneously. However, due to the different distances between satellites, it may lead to different service data shared among the satellites within the satellite alliance at the same moment. Therefore, when an abnormality occurs in a certain computing unit and it is necessary to migrate the service executed by the abnormal computing unit, the migration unit can execute the service only based on the service data of the abnormal computing unit received by itself, or it can determine the normal unit closest to the abnormal computing unit and obtain more service data of the abnormal computing unit from this normal unit.

[0096] In addition, when the on-board server executes the above steps, the on-board server can also be divided into three modules, namely, a status data synchronization module, a service data synchronization module, and a migration module. The status data synchronization module is used to monitor the update status of the status data of each computing unit included in the satellite and synchronize it to other satellites within the satellite alliance. Then, it receives the status data of other satellites sent by other satellites within the satellite alliance and updates it to the storage of this satellite. The service data synchronization module is used to monitor the update status of the service data of each computing unit included in the satellite and synchronize it to other satellites within the satellite alliance. Then, it receives the service data of other satellites sent by other satellites within the satellite alliance and updates it to the storage of this satellite. The migration module is used to monitor the operation status of each computing unit on this satellite and determine the operation status of each computing unit of other satellites within the satellite alliance. When there is an abnormal computing unit, it determines the migration unit.

[0097] In addition, when the satellite can communicate with the ground management center, in order to implement a sky-earth-cloud integrated system, the service data of the migration unit and the corresponding metadata after the last service migration can be updated to the ground management center to achieve satellite-ground data sharing.

[0098] Furthermore, the following is an embodiment of the data management method for a satellite cluster based on KubeEdge provided by this application.

[0099] Specifically, first build a ground control system through Kubernetes, then set the edge controller (EdgeCore) of KubeEdge on the on-board server of the satellite, and control the communication between the satellite and the ground management center through the EdgeHub of EdgeCore, that is, establish and maintain a long connection channel between the on-board server and the ground management center, and exchange commands and status data between the on-board server where the EdgeHub is located and the ground management center. Manage the status data stored in the satellite where the MetaManager is located through the data management center (MetaManager). Manage operations such as creation, start, stop, and deletion of containers running on each computing unit of the satellite where Edged is located through Edged. At the same time, according to the instructions received from the ground management center and the status data of each computing unit on the satellite where it is located, ensure that each container on the satellite runs in the expected state, including container creation, scheduling, status update, and fault recovery, etc.

[0100] Then, through the anomaly unit monitor (ServerWatcher), continuously monitor the status of each computing unit within the satellite consortium. When it is identified that there is an anomaly in a computing unit within the satellite consortium, obtain the information of the services executed on the computing unit with the anomaly, screen the containers running on the computing unit with the anomaly, and delete the clearly unnecessary containers to be migrated.

[0101] Finally, implement container migration through the scheduling component (SatelliteScheduler), that is, obtain the status information of each computing unit within the satellite consortium, determine information such as the unit name, on-board computing power unit IP, CPU capacity, memory size, number of GPU cores, CPU margin, memory margin, GPU margin, label, applicable scenario information, etc. of each computing unit, and determine the resource utilization rate, container resource requirements, computing unit affinity, container affinity, and taint tolerance of each computing unit, etc., to ensure that the container is scheduled to the optimal on-board computing power unit. That is, in the above method, each computing unit is scored, and the target migration unit is selected according to the score.

[0102] During the container migration process, the on-board server can first push the containers running on the computing unit with the anomaly to the queue through ServerWatcher, and then the container control unit (PodController) regularly obtains the containers to be migrated from the queue based on the target migration unit determined by SatelliteScheduler.

[0103] The above is the data management method provided by the embodiments of this specification. Based on the same idea, this specification also provides a corresponding data management device for the satellite cluster, as Figure 5 shown.

[0104] The alliance module 400 is used to construct a satellite alliance of the satellite where the device is located based on other satellites in the satellite cluster that can directly communicate with the satellite where the device is located.

[0105] The storage module 401 is used to determine the services respectively executed by each computing unit included in the satellite where the device is located, as well as the service data required for executing the services, and send the service data and / or the status data of each computing unit included in the satellite where the device is located as synchronization data to other satellites in the satellite alliance, and receive the synchronization data sent by the other satellites.

[0106] The autonomous module 402 is used to, when a computing unit on the satellite where the device is located has an abnormality, determine the service executed by the abnormal computing unit, as well as the status data of each computing unit in the satellite alliance, select a migration unit from the computing units in the satellite alliance according to the status data of each computing unit, and migrate the service executed by the abnormal computing unit to the migration unit for execution.

[0107] Optionally, the storage module 401 is used to monitor the service data of the services respectively executed by each computing unit included in the satellite where the device is located, as well as monitor the status data of each computing unit included in the satellite where the device is located; when it is determined that the monitored service data and / or status data change, determine the changed service data and / or the changed status data as synchronization data and send them to other satellites in the satellite alliance.

[0108] Optionally, the storage module 401 is used to determine the service data of the other satellites and the status data of the computing units of the other satellites according to the synchronization data sent by the other satellites; use the service data of the satellite where the device is located and the service data of the other satellites as first data; use the status data of the computing units of the satellite where the device is located and the status data of the computing units of the other satellites as second data; store the first data and the second data separately.

[0109] Optionally, the autonomous module 402 is used to judge whether there are normal units among the computing units on the satellite where the device is located according to the status data of each computing unit; if so, select a migration unit from the normal units of the satellite where the device is located; if not, select a migration unit from the computing units of the other satellites.

[0110] Optionally, the autonomous module 402 is configured to determine normal units in the satellite alliance according to the status data of each computing unit; for each normal unit, determine the distance between the normal unit and the computing unit with an anomaly; based on the status data of the normal unit and the distance, score the normal unit according to a preset criterion to determine the first score of the unit, where the distance is negatively correlated with the first score; and determine migrating units from the normal units with the first score greater than a first preset value according to the first scores of the normal units.

[0111] Optionally, the alliance module 400 is configured to, for each computing unit, package the program and the running environment required for the computing unit to execute the service into a container, and run the container on the computing unit; migrate the container running on the computing unit with an anomaly to the migrating unit, so that the migrating unit runs the container based on the service data of the computing unit with an anomaly stored.

[0112] Optionally, the autonomous module 402 is configured to monitor in real time whether a lost satellite appears in the satellite alliance where the device is located; when a lost satellite appears in the satellite alliance, determine whether the lost satellite is executing a service according to the status data sent by the lost satellite; if so, determine the service executed by the lost satellite, score the computing units in the satellite alliance according to the status data of each computing unit in the satellite alliance and the distances between the computing units and the lost satellite, and determine target units with at least one second score greater than a second preset value according to the second scores, so that the target units execute the service of the lost satellite based on the service data synchronized by the lost satellite; if not, determine the lost satellite, the service executed by the lost satellite, the service data, and the corresponding status data and delete them, and delete the lost satellite from the satellite alliance.

[0113] It should also be noted that the term "comprising", "including" or any other variant thereof is intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements not only includes those elements, but also includes other elements not expressly listed, or further includes elements inherent to such process, method, commodity or device. Without further limitation, an element defined by the statement "including a..." does not exclude the existence of additional identical elements in the process, method, commodity or device including the element.

[0114] Each embodiment in this specification is described in a progressive manner. For the same or similar parts among the embodiments, reference can be made to each other, and the differences between each embodiment and other embodiments are emphasized. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and for the relevant parts, reference can be made to the partial description of the method embodiment.

[0115] This specification also provides a computer-readable storage medium that stores a computer program, and the computer program can be used to execute the above Figure 2 data management method.

[0116] This specification also provides Figure 6 a schematic structural diagram of the electronic device shown. As shown in FIG. 6, at the hardware level, the electronic device includes a processor, an internal bus, a network interface, a memory, and a non-volatile memory. Of course, it may also include other hardware required for other services. The processor reads the corresponding computer program from the non-volatile memory into the memory and then runs it to implement the above Figure 2 data management method of the satellite cluster. Of course, in addition to the software implementation method, this specification does not exclude other implementation methods, such as logical devices or a combination of software and hardware. That is to say, the execution subject of the following processing flow is not limited to each logical unit, and can also be hardware or a logical device.

[0117] In the 1990s, it was obvious to distinguish whether an improvement in a technology was an improvement in hardware (e.g., improvement in circuit structures such as diodes, transistors, switches, etc.) or an improvement in software (improvement in method flows). However, with the development of technology, many improvements in method flows today can be regarded as direct improvements in hardware circuit structures. Almost all designers obtain the corresponding hardware circuit structures by programming the improved method flows into the hardware circuits. Therefore, it cannot be said that an improvement in a method flow cannot be implemented with a hardware entity module. For example, a programmable logic device (PLD) (e.g., a field programmable gate array (FPGA)) is such an integrated circuit whose logical function is determined by the user programming the device. The designer can program by himself to "integrate" a digital system on a PLD, without having to ask a chip manufacturer to design and fabricate a dedicated integrated circuit chip. Moreover, today, instead of manually fabricating integrated circuit chips, this programming is mostly implemented using "logic compiler" software, which is similar to the software compiler used in program development and writing. The original code before compilation also has to be written in a specific programming language, which is called a hardware description language (HDL), and there is not only one kind of HDL, but many kinds, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description Language), etc. Currently, the most commonly used are VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art should also be clear that as long as the method flow is slightly logically programmed with the above-mentioned several hardware description languages and programmed into the integrated circuit, it is easy to obtain the hardware circuit that implements the logical method flow.

[0118] The controller can be implemented in any suitable manner. For example, the controller can take the form of, for example, a microprocessor or a processor and a computer-readable medium storing computer-readable program code (such as software or firmware) executable by the (micro)processor, logic gates, switches, an application specific integrated circuit (ASIC), a programmable logic controller, and an embedded microcontroller. Examples of the controller include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicone Labs C8051F320. The memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art also know that, in addition to implementing the controller in the form of pure computer-readable program code, it is entirely possible to logically program the method steps to enable the controller to be implemented in the form of logic gates, switches, application specific integrated circuits, programmable logic controllers, embedded microcontrollers, etc. to achieve the same function. Therefore, such a controller can be considered a hardware component, and the devices included therein for implementing various functions can also be regarded as structures within the hardware component. Or even, the devices for implementing various functions can be regarded as either software modules for implementing the method or structures within the hardware component.

[0119] The systems, devices, modules, or units illustrated in the above embodiments can be specifically implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, the computer can be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or any combination of these devices.

[0120] For the convenience of description, when describing the above devices, they are described separately as various units according to their functions. Of course, when implementing this specification, the functions of each unit can be implemented in the same or multiple software and / or hardware.

[0121] Those skilled in the art should understand that the embodiments of the present invention can be provided as a method, a system, or a computer program product. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present invention can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk memories, CD-ROMs, optical memories, etc.) containing computer-usable program code.

[0122] The present invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It should be understood that each flow and / or block of the flowchart illustrations and / or block diagrams, and combinations of flows and / or blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions executed by the processor of the computer or other programmable data processing apparatus create means for implementing the functions specified in the flowchart Figure 1 for one or more flows and / or blocks Figure 1 for one or more blocks.

[0123] These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means that implement the functions specified in the flowchart Figure 1 for one or more flows and / or blocks Figure 1 for one or more blocks.

[0124] These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process, such that the instructions executed on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart Figure 1 for one or more flows and / or blocks Figure 1 for one or more blocks.

[0125] In a typical configuration, a computing device includes one or more processors (CPUs), an input / output interface, a network interface, and memory.

[0126] The memory may include non-permanent memory in the form of computer-readable media, random access memory (RAM), and / or non-volatile memory, such as read-only memory (ROM) or flash memory (flash RAM). The memory is an example of computer-readable media.

[0127] Computer-readable media includes permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. The information can be computer-readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer-readable media does not include transitory computer-readable media (transitory media), such as modulated data signals and carrier waves.

[0128] It should also be noted that the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, commodity, or apparatus that includes a series of elements includes not only those elements but also other elements not explicitly listed, or includes elements inherent to such process, method, commodity, or apparatus. In the absence of further limitations, an element defined by the phrase "comprises a ..." does not exclude the presence of other identical elements in the process, method, commodity, or apparatus that includes the element.

[0129] Those skilled in the art will appreciate that the embodiments of this specification may be provided as methods, systems, or computer program products. Therefore, this specification may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware. Furthermore, this specification may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0130] This specification may be described in the general context of computer-executable instructions, such as program modules, executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, and the like that perform specific tasks or implement specific abstract data types. This specification may also be practiced in distributed computing environments where tasks are performed by remote processing devices connected through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media, including storage devices.

[0131] Each embodiment in this specification is described in a progressive manner. For the same or similar parts among the embodiments, reference can be made to each other, and the differences between each embodiment and other embodiments are emphasized. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and for the relevant parts, reference can be made to the description of the method embodiment.

[0132] The above description is only for the embodiments of this specification and is not intended to limit this specification. For those skilled in the art, various changes and modifications can be made to this specification. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of this specification shall be included within the scope of the claims of this application.

Claims

1. A data management method for a satellite cluster, characterized in that, The satellites in the satellite cluster include multiple computing units, including: For each satellite in the satellite cluster, the satellite dynamically constructs a satellite alliance of the satellite based on other satellites in the satellite cluster that can communicate directly with the satellite. Determine the services respectively executed by each computing unit included in the satellite, and the service data required for executing the services, and use the service data and / or the status data of each computing unit included in the satellite as synchronization data, and send the synchronization data to other satellites in the satellite alliance, and receive the synchronization data sent by the other satellites. When an abnormality occurs in a computing unit on the satellite, obtain the synchronization data sent by the computing unit with the abnormality from the unit in the satellite alliance that is closest to the computing unit with the abnormality, and determine the service executed by the computing unit with the abnormality and the status data of each computing unit in the satellite alliance according to the synchronization data sent by the computing unit with the abnormality. According to the status data of each computing unit in the satellite alliance, select a migration unit from each computing unit in the satellite alliance, and migrate the service executed by the computing unit with the abnormality to the migration unit for execution.

2. The method according to claim 1, wherein Using the service data and / or the status data of each computing unit as synchronization data and sending the synchronization data to other satellites in the satellite alliance specifically includes: Monitor the service data of the services respectively executed by each computing unit included in the satellite, and monitor the status data of each computing unit included in the satellite. When it is determined that the monitored service data and / or status data change, determine the changed service data and / or the changed status data as synchronization data and send the synchronization data to other satellites in the satellite alliance.

3. The method according to claim 2, wherein The method further includes: Determine the service data of the other satellites and the status data of the computing units of the other satellites according to the synchronization data sent by the other satellites. Use the service data of the satellite and the service data of the other satellites as first data. Use the status data of the computing units of the satellite and the status data of the computing units of the other satellites as second data. Separate and store the first data and the second data.

4. The method according to claim 1, wherein Selecting a migration unit from each computing unit in the satellite alliance according to the status data of each computing unit in the satellite alliance specifically includes: According to the status data of each computing unit included in the satellite, determine whether there are normal units among the computing units on the satellite. If so, select a migration unit from the normal units of the satellite. If not, select a migration unit from the computing units of the other satellites according to the status data of each computing unit in the satellite alliance.

5. The method according to claim 1, characterized in that Selecting a migration unit from each computing unit in the satellite alliance according to the status data of each computing unit in the satellite alliance specifically includes: Determine the normal units in the satellite alliance according to the status data of each computing unit in the satellite alliance. For each normal unit, determine the distance between the normal unit and the computing unit with the abnormality. Based on the status data of the normal unit and the distance, score the normal unit according to a preset standard to determine the first score of the unit, where the distance is negatively correlated with the first score; According to the first scores of each normal unit, determine the migration units from the normal units whose first scores are greater than a first preset value.

6. The method according to claim 1, wherein The method further includes: For each computing unit, package the program and operating environment required for the computing unit to execute the service into a container, and run the container on the computing unit; Migrate the service executed by the computing unit with an exception to the migration unit, specifically including: Migrate the container running on the computing unit with an exception to the migration unit, so that the migration unit runs the container based on the service data of the computing unit with an exception stored.

7. The method according to claim 1, wherein The method further includes: The satellite monitors in real time whether there is a lost satellite in the satellite alliance; When there is a lost satellite in the satellite alliance, judge whether the lost satellite is executing a service according to the status data sent by the lost satellite; If so, determine the service executed by the lost satellite, score the computing units in the satellite alliance according to the status data of each computing unit in the satellite alliance and the distance between each computing unit and the lost satellite, and according to the second score, determine at least one target unit whose second score is greater than a second preset value, so that the target unit executes the service of the lost satellite based on the service data synchronized by the lost satellite; If not, determine the lost satellite and the service, service data and corresponding status data executed by the lost satellite and delete them, and delete the lost satellite from the satellite alliance.

8. A data management device for a satellite cluster, characterized in that, The device is applied to each satellite in the satellite cluster, and each satellite includes a plurality of computing units, including: An alliance module, configured to dynamically construct a satellite alliance of the satellite where the device is located based on other satellites in the satellite cluster that can directly communicate with the satellite where the device is located; A storage module, configured to determine the services respectively executed by each computing unit included in the satellite where the device is located, and the service data required for executing the services, and use the service data and / or the status data of each computing unit included in the satellite where the device is located as synchronization data, send the synchronization data to other satellites in the satellite alliance, and receive the synchronization data sent by the other satellites; An autonomous module, configured to, when a computing unit on the satellite where the device is located has an exception, obtain the synchronization data sent by the computing unit with an exception from the units in the satellite alliance that are closest to the computing unit with an exception, determine the service executed by the computing unit with an exception and the status data of each computing unit in the satellite alliance according to the synchronization data sent by the computing unit with an exception, select a migration unit from the computing units in the satellite alliance according to the status data of each computing unit, and migrate the service executed by the computing unit with an exception to the migration unit for execution.

9. A computer-readable storage medium, characterized in that, The storage medium stores a computer program, and when the computer program is executed by a processor, the method described in any one of claims 1 to 7 above is implemented.

10. An electronic device, characterized in that, It includes a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes the program, the method described in any one of claims 1 to 7 above is implemented.

Citation Information

Patent Citations

  • Group switching method and device of satellite-ground fusion network

    CN115278803A

  • Satellite cluster autonomous method based on KubeEdge and satellite-ground cooperative computing system

    CN118426914A