A Fast Processing Method for Raster Image Data Based on Memory Cache Optimization
By dynamically mapping raster image processing tasks and cache states, and optimizing cache resource allocation, the problem of insufficient efficiency and real-time processing of raster image data in the existing technology is solved, efficient and stable data processing is achieved, and high-concurrency environments are adapted to high-concurrency environments.
Patent Information
- Application Number
- CN202510443787.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-10
- Publication Date
- 2025-06-27
- Estimated Expiration
- 2045-04-10
AI Technical Summary
When processing raster image data, the prior art has problems such as insufficient processing efficiency and real-time balance, especially in high-frequency access scenarios, and memory caching technology has caused dynamic resource scheduling and persistence guarantee bottlenecks due to device capacity limitations and insufficient scalability.
By obtaining raster image processing tasks and cache running status data, a dynamic mapping between task requirements and cache status is established, cache resource allocation is dynamically optimized based on comprehensive analysis, cache configuration is dynamically updated to perform processing tasks, making full use of memory resources, and providing an efficient computing and data exchange environment.
It improves resource scheduling efficiency and processing adaptability, avoids performance bottlenecks caused by fixed cache configuration, improves task execution efficiency, alleviates storage pressure, enhances system stability and reliability, and meets the needs of high-concurrency environments.
Smart Images

Figure CN119961011B_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of satellite networks, and specifically relates to a fast processing method for raster image data based on memory cache optimization, a satellite network system, a device, a storage medium, a device, and a computer program product. Background Art
[0002] Satellite remote sensing technology has been widely used in fields such as environmental monitoring, disaster warning, and Geographic Information System (GIS). Raster image data has become the core data source in these applications due to its high resolution and large scale characteristics.
[0003] Currently, the storage and processing of raster image data mainly rely on distributed file systems and memory cache technologies. In distributed file systems, the scalability and fault tolerance of the storage system are improved through data sharding and multi-copy mechanisms. Memory cache technology improves the data access speed by virtualizing memory resources into high-speed storage.
[0004] However, distributed systems have problems with insufficient real-time performance in high-frequency access scenarios, while existing memory cache technologies still have bottlenecks in dynamic resource scheduling and persistence guarantee due to issues such as device capacity limitations or insufficient memory scalability. Summary of the Invention
[0005] This application aims to provide a fast processing method for raster image data based on memory cache optimization, a satellite network system, a device, a storage medium, a device, and a computer program product, which at least solves the problem of insufficient balance between the processing efficiency and real-time performance of raster image data.
[0006] In a first aspect, an embodiment of this application discloses a fast processing method for raster image data based on memory cache optimization, which is applied to a satellite for mission management, and includes:
[0007] Obtain raster image processing tasks to be distributed and cache operation status data sent from each satellite for mission execution;
[0008] Determine a target satellite for mission execution and configuration update data for updating the cache configuration of the target satellite for mission execution according to all the cache operation status data and / or the raster image processing tasks; the cache configuration is used to represent the size of the dynamic cache of the satellite for mission execution when performing raster image processing tasks;
[0009] Send the configuration update data and the raster image processing tasks to the target satellite for mission execution.
[0010] Second aspect, embodiments of the present application also disclose a fast processing method for raster image data based on memory cache optimization, which is applied to a satellite for mission execution and includes:
[0011] Sending the cache operation status data of the local satellite for mission execution to the satellite for mission management;
[0012] In response to the configuration update data and raster image processing tasks sent from the satellite for mission management, after updating the cache configuration according to the configuration update data, executing the raster image processing tasks; the cache configuration is used to represent the size of the dynamic cache of the satellite for mission execution when executing the raster image processing tasks.
[0013] Third aspect, embodiments of the present application also disclose a satellite network system for fast processing of raster image data based on memory cache optimization, including:
[0014] A satellite for mission management, and multiple satellites for mission execution communicatively connected to the satellite for mission management;
[0015] The satellite for mission execution is used to send its respective cache operation status data to the satellite for mission management, and in response to the configuration update data and raster image processing tasks sent from the satellite for mission management, after updating the cache configuration according to the configuration update data, execute the raster image processing tasks; the cache configuration is used to represent the size of the dynamic cache of the satellite for mission execution when executing the raster image processing tasks;
[0016] The satellite for mission management is used to obtain the raster image processing tasks to be distributed and the cache operation status data sent from each satellite for mission execution, and determine the target satellite for mission execution, as well as the configuration update data for updating the cache configuration of the target satellite for mission execution, according to all the cache operation status data and / or the raster image processing tasks, and send the configuration update data and the raster image processing tasks to the target satellite for mission execution.
[0017] Fourth aspect, embodiments of the present application also disclose a fast processing device for raster image data based on memory cache optimization, which is applied to a satellite for mission execution and includes:
[0018] A data upload module, configured to send the cache operation status data of the local satellite for mission execution to the satellite for mission management;
[0019] A task execution module, configured to, in response to the configuration update data and raster image processing tasks sent from the satellite for mission management, after updating the cache configuration according to the configuration update data, execute the raster image processing tasks; the cache configuration is used to represent the size of the dynamic cache of the satellite for mission execution when executing the raster image processing tasks.
[0020] In a fifth aspect, an embodiment of the present application further discloses a fast processing device for raster image data based on memory cache optimization, which is applied to a satellite mission management satellite and includes:
[0021] A data acquisition module, configured to acquire raster image processing tasks to be distributed and cache operation status data sent from each satellite mission execution satellite;
[0022] A policy calculation module, configured to determine a target satellite mission execution satellite according to all the cache operation status data and the raster image processing tasks, and configuration update data for updating the cache configuration of the target satellite mission execution satellite; the cache configuration is used to characterize the size of the dynamic cache of the satellite mission execution satellite when executing raster image processing tasks;
[0023] An update and release module, configured to send the configuration update data and the raster image processing tasks to the target satellite mission execution satellite.
[0024] In a sixth aspect, an embodiment of the present application further discloses a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps described in the first aspect or the second aspect are implemented.
[0025] In a seventh aspect, an embodiment of the present application further discloses an electronic device, including a processor, a memory, and a computer program stored on the memory and executable on the processor, and when the computer program is executed by the processor, the steps described in the first aspect or the second aspect are implemented.
[0026] In an eighth aspect, an embodiment of the present application further discloses a computer program product, on which a computer program is stored, and when the computer program is executed by a processor, the steps described in the first aspect or the second aspect are implemented.
[0027] In summary, in the embodiments of the present application, by obtaining the raster image processing task and the cache running state data, a dynamic mapping between the task requirements and the cache state is effectively established; furthermore, based on the comprehensive analysis of the cache running state data and the raster image processing task, the cache resources are dynamically and optimally allocated according to the task requirements, avoiding the performance bottleneck caused by the fixed cache configuration, thereby improving the scheduling efficiency of resources and the adaptability of processing; enabling the satellite for mission execution to dynamically update its cache configuration and execute the corresponding raster image processing task after receiving the configuration update data, making full use of the memory resources of the satellite for mission execution, providing an efficient computing and data exchange environment during the task processing, not only improving the task execution efficiency, but also enhancing the stability of the system by alleviating the storage pressure, meeting the requirements of the high-concurrency environment. Thus, based on the method of the embodiments of the present application, by using the task-driven dynamic cache optimization technology and through the collaborative management among satellites, the problems of low resource allocation efficiency and insufficient real-time performance in the prior art are fundamentally solved, while achieving fast processing, the stability and reliability of the system are also taken into account. BRIEF DESCRIPTION OF THE DRAWINGS
[0028] In the drawings:
[0029] Figure 1 is a flowchart of the steps of a method for fast processing of raster image data based on memory cache optimization provided by an embodiment of the present application;
[0030] Figure 2 is a flowchart of the steps of another method for fast processing of raster image data based on memory cache optimization provided by an embodiment of the present application;
[0031] Figure 3 is a system architecture designed based on the method provided by the embodiments of the present application;
[0032] Figure 4 is a service application process designed based on the method provided by the embodiments of the present application;
[0033] Figure 5 is a block diagram of a satellite network system for fast processing of raster image data based on memory cache optimization provided by an embodiment of the present application;
[0034] Figure 6 is a block diagram of a device for fast processing of raster image data based on memory cache optimization provided by an embodiment of the present application;
[0035] Figure 7 is a block diagram of another device for fast processing of raster image data based on memory cache optimization provided by an embodiment of the present application;
[0036] Figure 8It is a block diagram of an electronic device according to an embodiment provided by an embodiment of the present application;
[0037] Figure 9 It is a block diagram of an electronic device according to another embodiment provided by an embodiment of the present application. Detailed implementation manners
[0038] Next, the technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application.
[0039] The terms "first", "second", etc. in the specification and claims of the present application are used to distinguish similar objects, rather than to describe a specific order or sequence. It should be understood that such data can be interchanged under appropriate circumstances so that the embodiments of the present application can be implemented in an order other than those illustrated or described herein, and the objects distinguished by "first", "second", etc. are usually of the same category, and the number of objects is not limited. For example, the first object can be one or multiple. In addition, "and / or" in the specification and claims means at least one of the connected objects, and the character " / " generally means an "or" relationship between the associated objects before and after.
[0040] Table 1 shows the performance improvement of the memory caching scheme compared with traditional storage in scenarios of 8GB, 5GB, and 12GB file sizes.
[0041] Table 1 Comparison of read and write speeds
[0042]
[0043] As can be seen from Table 1, when processing different file sizes, the memory caching scheme significantly shortens the processing time compared with traditional disk storage. Especially when processing large files (such as 12GB), the advantage of memory caching is more obvious. The processing time is shortened from 297 seconds of traditional disk storage to 246 seconds, with a promotion rate of up to 17%. These results indicate that the memory caching scheme can significantly improve the data processing efficiency in high-concurrency or real-time processing scenarios.
[0044] Table 2 compares the differences in multiple performance metrics among memory caching, solid state disk (SSD), and hard disk drive (HDD), including read operation time, write operation time, throughput, and latency. The experiment covers four file sizes of 1GB, 5GB, 10GB, and 20GB, and comprehensively analyzes the performance of each storage medium in different scenarios.
[0045] Table 2 Comparison of Read and Write Performance
[0046]
[0047] As can be seen from Table 2, the memory cache solution is superior to HDD and SSD in all performance metrics. Especially in terms of read and write time, throughput, and latency, the memory cache shows obvious advantages. In the processing of 1GB files, the read operation time of the memory cache is 0.389 seconds, and the write operation time is 0.585 seconds, far lower than the read and write times of SSD and HDD. As the file size increases, the performance advantage of the memory cache is still significant. Especially in terms of throughput, the read and write throughputs of the memory cache are 2800MB / s and 1800MB / s respectively, significantly higher than those of SSD and HDD. In addition, the latency of the memory cache is only 0.009 milliseconds, far lower than that of SSD (0.11 milliseconds) and HDD (0.88 milliseconds), highlighting its superiority in high-concurrency and low-latency data processing.
[0048] It can be known from this that in the process of processing raster image data processing tasks, the more data is stored in the memory cache, the more the processing speed of the task can be improved. However, due to the capacity limitation of the memory cache on the device, the memory cache data cannot be occupied endlessly. Therefore, as Figure 1 shown, this is a fast processing method for raster image data based on memory cache optimization provided by an embodiment of the present application, including the following steps:
[0049] Among them, step 101 and step 105 are respectively applied to the on-orbit execution satellite, and step 102, step 103, and step 104 are respectively applied to the on-orbit management satellite.
[0050] Step 101, send the cache operation status data of the local on-orbit execution satellite to the on-orbit management satellite.
[0051] In some embodiments of the present application, in order to provide the on-orbit management satellite with the cache operation status data of the current on-orbit execution satellite and provide a real-time basis for the dynamic allocation of tasks and cache optimization configuration, the cache operation status data of the local on-orbit execution satellite will be sent to the on-orbit management satellite. The cache operation status data describes the current memory resource usage and operation parameters of the on-orbit execution satellite, including the utilization rate of the dynamic cache, the available memory size, etc. In this way, the on-orbit management satellite can comprehensively analyze the operation status of each on-orbit execution satellite based on the received data, provide an accurate judgment basis for subsequent task allocation and cache configuration, and thus improve the efficiency of task scheduling and the overall performance of the system.
[0052] In a specific example, a satellite for mission execution can, after receiving a cache status reporting instruction issued by the satellite for mission management, or periodically upload the usage information of local memory resources. For example, it can include parameters such as recording the memory usage rate, dynamic cache size, and cache hit rate. Subsequently, the above data is packaged and sent to the satellite for mission management through the communication module. The satellite for mission management can analyze the resource utilization efficiency of the satellite for mission execution based on the received cache operation status data, and determine whether it is appropriate to allocate the upcoming raster image processing task in combination with the operation data of other satellites.
[0053] Step 102: Obtain the raster image processing task to be distributed and the cache operation status data sent from each satellite for mission execution.
[0054] In some embodiments of the present application, in order to enable the satellite for mission management to fully understand the current cache status of the satellite for mission execution before task distribution, and combine the actual task requirements to scientifically formulate a task allocation plan, the raster image processing task to be distributed and the cache operation status data sent from each satellite for mission execution will be obtained. The raster image processing task refers to the task of performing specific algorithm processing on remote sensing images, and the cache operation status data includes information such as the current cache capacity, cache hit rate, and dynamic cache utilization rate of each satellite for mission execution. In this way, the satellite for mission management can efficiently select the target satellite and optimize the resource allocation on the basis of fully grasping the task requirements and resource status, thereby improving the task processing efficiency and real-time response ability of the entire satellite network.
[0055] In a specific example, the satellite for mission management needs to allocate a suitable satellite for mission execution for the upcoming raster image processing task. The execution process includes the satellite for mission management receiving the cache operation status data uploaded by multiple satellites for mission execution through the communication module, and at the same time combining the raster image processing task description file sent by the ground station, and uniformly recording and storing it in the task scheduling module. After executing according to the execution process of this example, after the satellite for mission management collects the complete cache status data and task requirements, it can provide an accurate basis for subsequent target satellite selection and task scheduling, thereby ensuring the processing efficiency and the reliability of task completion.
[0056] Step 103: Determine the target satellite for mission execution and the configuration update data for updating the cache configuration of the target satellite for mission execution according to all the cache operation status data and / or the raster image processing task.
[0057] Among them, the cache configuration is used to represent the size of the dynamic cache of the satellite for mission execution when performing the raster image processing task.
[0058] In some embodiments of the present application, in order to ensure that the satellite mission management satellite can scientifically select the target satellite for mission execution and formulate the best cache configuration scheme to meet the requirements of the raster image processing task, the target satellite for mission execution and the configuration update data for updating the cache configuration of the target satellite for mission execution will be determined according to all the cache operation status data and / or the raster image processing task. The cache configuration is used to describe the size of the dynamic cache of the satellite for mission execution, and the size of this dynamic cache is determined by the memory resource requirements of the satellite for mission execution when performing the raster image processing task. In this way, the target satellite for mission execution can efficiently complete the task processing by updating the cache configuration, while optimizing the resource allocation and improving the overall task processing efficiency and resource utilization rate.
[0059] In a specific example, the satellite mission management satellite receives a new raster image processing task and simultaneously collects the cache operation status data of each satellite for mission execution, including information such as the dynamic cache size, memory occupancy rate, and cache hit rate. The execution process includes the satellite mission management satellite selecting the satellite with the best resource conditions as the target satellite for mission execution by comprehensively analyzing the requirements of the raster image task and the status of each satellite for mission execution, and generating the relevant configuration update data. After receiving the configuration update data, the target satellite for mission execution can dynamically adjust the cache configuration, reasonably allocate the cache resources to meet the task requirements, while reducing the latency during task processing and ensuring the real-time performance and stability of the task.
[0060] Step 104: Send the configuration update data and the raster image processing task to the target satellite for mission execution.
[0061] In some embodiments of the present application, in order to accurately deliver the optimized cache configuration and task requirements to the target satellite for mission execution so that it can efficiently execute the task, the configuration update data and the raster image processing task will be sent to the target satellite for mission execution. The configuration update data defines the size and allocation method of the dynamic cache when performing the raster image processing task, ensuring that the resources match the task requirements. In this way, the target satellite for mission execution can update the cache configuration in a timely manner and start the task processing after receiving the configuration, significantly improving the efficiency and adaptability of task execution.
[0062] In a specific example, the satellite mission management satellite receives a new raster image processing task and analyzes the cache operation status of each satellite for mission execution. The execution process includes generating the configuration update data suitable for the target satellite for mission execution (such as the dynamic cache size being the optimal value required for the task), and packaging the configuration update data and the processing task and transmitting them to the target satellite for mission execution through a high-speed communication link. After that, the target satellite for mission execution can quickly complete the cache configuration update and enter the task execution state, so as to complete the processing requirements of the image data in a short time, while avoiding delays or failures caused by insufficient or mismatched resource configurations.
[0063] Step 105: In response to the configuration update data and the raster image processing task sent from the satellite mission management satellite, after updating the cache configuration according to the configuration update data, execute the raster image processing task.
[0064] In some embodiments of the present application, in order to ensure that the target satellite for mission execution can timely adjust its cache configuration, so as to provide an efficient computing and storage environment for the raster image processing task, it will respond to the configuration update data and the raster image processing task sent from the satellite mission management satellite, and after updating the cache configuration according to the configuration update data, execute the raster image processing task. The cache configuration is used to characterize the memory allocation strategy dynamically adjusted by the satellite for mission execution. Based on the guidance of the configuration update data, ensure that the resources required for the task are reasonably allocated. After executing this step, the raster image data can be efficiently processed, while improving the real-time performance of task completion and the overall resource utilization rate, meeting the requirements of high-concurrency processing scenarios.
[0065] In a specific example, the satellite mission management satellite selects a satellite for mission execution with a relatively high cache utilization rate as the target satellite, and sends instructions for the configuration update data and the raster image processing task for the current task requirements. The execution process includes that after the target satellite for mission execution receives the configuration update data, it adjusts the local dynamic cache size to match the task requirements, and then starts the raster image processing task, including the sharding processing of image data and the execution of fast algorithms. In this way, the target satellite for mission execution can optimize the memory resource allocation, while quickly completing the task, ensuring the reasonable scheduling of resources while the system is efficiently processed.
[0066] In summary, in the embodiments of the present application, by obtaining the raster image processing task and the cache running state data, a dynamic mapping between the task requirements and the cache state is effectively established; furthermore, based on the comprehensive analysis of the cache running state data and the raster image processing task, the cache resources are dynamically and optimally allocated according to the task requirements, avoiding performance bottlenecks caused by fixed cache configurations, thereby improving the resource scheduling efficiency and processing adaptability; enabling the satellite for mission execution to dynamically update its cache configuration and execute the corresponding raster image processing task after receiving the configuration update data, making full use of the memory resources of the satellite for mission execution, providing an efficient computing and data exchange environment during task processing, not only improving the task execution efficiency, but also enhancing the system stability by alleviating the storage pressure, meeting the requirements of the high-concurrency environment. Thus, based on the method of the embodiments of the present application, using the task-driven dynamic cache optimization technology, through the collaborative management between satellites, the problems of low resource allocation efficiency and insufficient real-time performance in the prior art are fundamentally solved, while achieving fast processing, taking into account the stability and reliability of the system.
[0067] Figure 2 Another fast processing method for raster image data based on memory cache optimization provided by an embodiment of this application includes the following steps:
[0068] Among them, step 201, step 205, and step 206 are respectively applied to the on-board mission execution satellite, and step 202, step 203, and step 204 are respectively applied to the on-board mission management satellite.
[0069] Step 201: Send the cache operation status data of the on-board mission execution satellite locally to the on-board mission management satellite.
[0070] The method shown in this step has been described in step 101 and will not be elaborated here.
[0071] Step 202: Obtain the raster image processing tasks to be distributed and the cache operation status data sent from each on-board mission execution satellite.
[0072] The method shown in this step has been described in step 102 and will not be elaborated here.
[0073] Step 203: Determine the target on-board mission execution satellite and the configuration update data for updating the cache configuration of the target on-board mission execution satellite according to all the cache operation status data and / or raster image processing tasks.
[0074] Among them, the cache configuration is used to characterize the size of the dynamic cache of the on-board mission execution satellite when performing raster image processing tasks.
[0075] The method shown in this step has been described in step 103 and will not be elaborated here.
[0076] Optionally, the usage frequency information of each target data block corresponding to the raster image processing task is recorded in the cache operation status data. In this case, step 203 specifically includes the following sub-steps:
[0077] Sub-step 2031: When the usage frequency of the same target data block called by more than a preset number of on-board mission execution satellites is greater than the preset frequency threshold, determine the target data block as a hot data block.
[0078] Among them, the hot data block is used to indicate that the on-board mission execution satellite pre-calls the hot data block or delays the release of the data stored in the hot data block after completing the raster image processing task.
[0079] In some embodiments of the present application, in order to identify hot data blocks in raster image processing tasks and optimize the scheduling and utilization efficiency of resources in scenarios with high-frequency calls, when the usage frequency of the same target data block by more than a preset number of on-orbit service execution satellites exceeds a preset frequency threshold, the target data block is determined as a hot data block. The usage frequency refers to the number of times the target data block is requested or used by on-orbit service execution satellites within a period of time, which is used to reflect the call activity of the data block. In this way, the hot data block can be marked as a critical resource to guide the on-orbit service execution satellites to pre-call or delay the release of it, thereby reducing the data scheduling delay in task execution and improving the processing efficiency.
[0080] In a specific example, the on-orbit service management satellite monitors the cache operation status data of multiple on-orbit service execution satellites. Among them, a certain raster image target data block is called by more than five on-orbit service execution satellites in the past minute, and its usage frequency exceeds the set frequency threshold (for example, the threshold is set to no less than three calls per minute). The on-orbit service management satellite marks the target data block as a hot data block according to the frequency statistics result, and notifies the relevant on-orbit service execution satellites to pre-call the hot data block or delay the release of its cache after completing the task. In this way, the relevant on-orbit service execution satellites can preferentially process the hot data block, reduce the delay when accessing the data block, and thus achieve a balance between resource scheduling and task processing speed.
[0081] Sub-step 2032: When the usage frequency of the target data block called by the on-orbit service execution satellite is less than or equal to the preset frequency threshold, determine the target data block as a cold data block.
[0082] Among them, the cold data block is used to instruct the on-orbit service execution satellite to transfer the cold data block to a storage space outside the dynamic cache and record the storage location of the transferred cold data block.
[0083] In some embodiments of the present application, in order to improve the utilization efficiency of the dynamic cache, identify target data blocks with low usage frequency as cold data blocks and perform appropriate processing to avoid waste of cache space. When the usage frequency of the target data block called by the on-orbit service execution satellite is less than or equal to the preset frequency threshold, the target data block is determined as a cold data block. The cold data block refers to a data block with a low call frequency, and its determination basis is that the number of calls of the target data block within a period of time is lower than the set frequency threshold. In this way, the on-orbit service execution satellite will transfer the cold data block to a storage space outside the dynamic cache and record its storage location to ensure that the data can still be quickly retrieved when needed, while freeing up more dynamic cache space for other high-frequency tasks.
[0084] In a specific example, a satellite for on-orbit mission execution needs to process a batch of raster image data. Among them, a certain target data block has been called only once in the last five minutes, and its usage frequency is lower than the frequency threshold (for example, the preset threshold is no more than two calls within every five minutes). The execution process includes the satellite for on-orbit mission execution confirming that the target data block is a cold data block through the cache monitoring module, then using the transfer mechanism to move it to the local SSD storage, and recording the specific storage path of the data transfer. In this way, the storage space in the dynamic cache is released, enabling data blocks with high-frequency access to obtain preferential memory resources, while the storage location of the cold data blocks is recorded to ensure data security and availability.
[0085] Optionally, in the above process, hot data blocks and cold data blocks can be determined through algorithms such as Least Recently Used (LRU), First In First Out (FIFO), Least Frequently Used (LFU), and Random Replacement (RR). The following will briefly explain these algorithms:
[0086] The LRU algorithm sorts data blocks according to their recent usage time, preferentially eliminating the data blocks that have not been accessed for the longest time, and it has a data access pattern of temporal locality. For example, in the raster image processing task, the hot data blocks that have been recently used are preferentially retained to improve the cache hit rate.
[0087] The FIFO algorithm arranges data blocks in the order of their entry into the cache and preferentially eliminates the data blocks that entered the cache earliest. It is applicable to scenarios with relatively low requirements for the order of data access and can be applied in simple cache management.
[0088] The LFU algorithm determines the hot or cold state of target data blocks based on the usage frequency of data blocks and preferentially eliminates the data blocks with the fewest usage times. By determining hot data, it is suitable for situations where hot or cold data blocks need to be judged according to frequency.
[0089] Randomly select a data block for replacement without considering the usage frequency or access time. It is applicable to scenarios with limited cache resources and low requirements for the hit rate and is usually used as a simple and fast replacement strategy.
[0090] At the same time, the present application can also be based on a custom hybrid strategy according to actual needs, combining the characteristics of the LRU and LFU algorithms, and comprehensively judging the cold and hot states of target data blocks based on the access frequency and recent access time to handle high-performance scenarios with complex data access patterns. For example, in the raster image task, both time and frequency factors are considered to dynamically optimize resource scheduling.
[0091] Step 204: Send the configuration update data and the raster image processing task to the target satellite for on-orbit service execution.
[0092] The method described in this step has been explained in step 104 and will not be elaborated here.
[0093] Step 205: In response to the configuration update data and the raster image processing task sent from the satellite for on-orbit service management, after updating the cache configuration according to the configuration update data, execute the raster image processing task.
[0094] The method described in this step has been explained in step 105 and will not be elaborated here.
[0095] Optionally, in order to execute the raster image processing task after updating the cache configuration according to the configuration update data, step 205 includes the following sub-steps:
[0096] Sub-step 2051: According to the configuration update data, divide a virtualized storage pool in the memory space of the satellite for on-orbit service execution.
[0097] In some embodiments of the present application, in order to provide optimized memory resource management for the execution of the raster image processing task, by dividing the virtualized storage pool, the efficient utilization of the memory space is realized. According to the configuration update data, a virtualized storage pool will be divided in the memory space of the satellite for on-orbit service execution. The virtualized storage pool is based on memory virtualization technology, which divides the physical memory into multiple logical storage units to provide more efficient data access capabilities for upper-layer service applications. In this way, the virtualized storage pool can be used as a dynamic cache to provide higher access efficiency for subsequent task data loading and processing, while reducing the storage latency in the overall operation of the system.
[0098] In a specific example, a certain satellite for on-orbit service execution receives configuration update data, which indicates that a virtualized storage pool needs to be divided for the upcoming raster image processing task. The execution process includes that the satellite for on-orbit service execution, according to the configuration update data, calls the system resource management instruction through the memory virtualization module, divides 20 GB of physical memory into logical storage units, and marks them as a virtualized storage pool. After the execution process of this example is completed, the virtualized storage pool is successfully created, providing a cache area with high-speed reading and writing for the raster image processing task, and effectively reducing the storage latency during the data processing process.
[0099] Sub-step 2052: According to the sizes of multiple data blocks corresponding to the raster image processing task, determine multiple target data blocks among the multiple data blocks, and respectively allocate corresponding memory address spaces for each target data block in the virtualized storage pool.
[0100] In some embodiments of the present application, in order to reasonably allocate memory resources for data blocks in raster image processing tasks, improve data processing efficiency and utilization rate of memory space, multiple target data blocks will be determined among multiple data blocks according to the sizes of the multiple data blocks corresponding to the raster image processing tasks, and a corresponding memory address space will be allocated for each target data block in the virtualized storage pool respectively. The virtualized storage pool is a logical storage area constructed based on memory virtualization technology, with efficient memory access capabilities and flexible allocation methods. In this way, the target data blocks can be accurately mapped to the memory address spaces in the virtualized storage pool, thereby ensuring the efficiency of data processing and reducing latency phenomena in data reading and writing.
[0101] In a specific example, a satellite mission execution satellite receives a task of processing a batch of raster image data. This task involves multiple data blocks of different sizes, and some of the data blocks are selected as target data blocks. The execution process includes the satellite mission execution satellite screening the target data blocks through a scheduling module according to the sizes of the data blocks and task requirements, and sequentially allocating memory address spaces for each target data block in the virtualized storage pool. For example, an address space of 0xA000 - 0xA320 is allocated for a data block with a size of 5GB, and an address space of 0xA400 - 0xAB00 is allocated for a data block with a size of 10GB. In this way, all target data blocks are successfully loaded into the virtualized storage pool, providing efficient memory support and access paths for subsequent image data processing.
[0102] Sub-step 2053: Load each target data block into the memory address space corresponding to the target data block to execute the raster image processing task.
[0103] In some embodiments of the present application, in order to ensure that the target data blocks can be efficiently loaded into their corresponding memory address spaces, thereby quickly executing the raster image processing task, each target data block will be loaded into the memory address space corresponding to the target data block to execute the raster image processing task. The target data block is the core unit for processing in raster image data, and its loading process relies on the memory address mapping mechanism of the virtualized storage pool, enabling the data block to be quickly located and loaded in the logical storage unit. In this way, the raster image data blocks can be called and processed in memory with high real-time performance, reducing data reading and writing latency during task execution and improving the overall task execution efficiency.
[0104] In a specific example, a satellite for mission execution needs to process three sets of target data blocks in a raster image processing task, and the sizes of these data blocks are 3GB, 5GB, and 10GB respectively. The execution process includes the satellite for mission execution sequentially loading these three sets of target data blocks into the memory address space of the virtualized storage pool through the task scheduling module. For example, the 3GB data block is loaded into the address 0xB000 - 0xB1E0, the 5GB data block is loaded into the address 0xB200 - 0xB5F0, and the 10GB data block is loaded into the address 0xB600 - 0xBF00. In this way, the target data blocks are successfully loaded into the memory address space, providing efficient computing resource support for the raster image processing task and significantly reducing the time required for data loading.
[0105] Step 206, in the case of an interruption during the execution of the raster image processing task, persist the intermediate data stored in the memory address space corresponding to the raster image processing task, and generate recovery metadata for the intermediate data.
[0106] In some embodiments of the present application, in order to address the risk of data loss when the raster image processing task is interrupted and ensure that the intermediate data can be stored for a long time and support subsequent recovery operations of the task, in the case of an interruption during the execution of the raster image processing task, the intermediate data stored in the memory address space corresponding to the raster image processing task will be persisted, and recovery metadata for the intermediate data will be generated. Persistence synchronizes the intermediate data in the memory to a persistent storage device, and the recovery metadata is used to describe the storage address, structure information, and recovery method of these persistent data. After executing this step, subsequent recovery of the task can be efficiently started directly based on the persistent data, thereby improving the fault tolerance of the system and the reliability of the data.
[0107] In a specific example, when a satellite for mission execution encounters a hardware failure and causes an interruption during the raster image processing task, it will export the task intermediate data from the dynamic memory space to an SSD storage device, and at the same time generate a recovery metadata file to record the storage path of the data and the processing information required for recovery. After executing according to the execution process of this example, experimenters can quickly reload the task intermediate data based on the recovery metadata, thereby restoring the task to the state at the time of interruption and ensuring the continuity of subsequent processing and the integrity of the data.
[0108] In some embodiments of the present application, the method in the present application can be implemented by recording one or more of the memory resource occupancy rate, cache hit rate, load status data, and computing unit load data of the satellite for mission execution corresponding to the cache operation status data in the cache operation status data.
[0109] To further verify the performance of the memory caching scheme, this application also made a comparison with the highly fault-tolerant (Hadoop Distributed File System, HDFS) distributed storage system. Table 3 shows the comparison results of the two in terms of read and write speeds and latency:
[0110] Table 3 Comparison between the memory caching scheme and the HDFS distributed storage scheme
[0111]
[0112] As can be seen from Table 3, the memory caching scheme is superior to HDFS in terms of write speed, read speed, and latency. Especially in terms of read and write speeds, the performance advantage of the memory caching is significant. The write speed of the memory caching is 1400MB / s, and the read speed is 2300MB / s, while the write speed and read speed of HDFS are 981MB / s and 997MB / s respectively, and the latency is also significantly higher, usually at the millisecond level. Therefore, the memory caching scheme provides more efficient and reliable support in high-concurrency, large-scale data processing, and real-time application scenarios.
[0113] As Figure 3 shown, it is a system architecture designed based on the method provided in the embodiments of this application, and the data flow process implemented under the Figure 3 architecture:
[0114] Step S1, service configuration management: This step is responsible for the configuration and management of services in the system, including the registration of computing nodes, the management of memory resources, and the coordination between nodes. Through the configuration management module, the parameters of services and nodes can be dynamically adjusted, such as registering new computing nodes, setting the upper limit of memory resource usage, and adjusting the load balancing strategy between computing nodes. The execution of this step provides basic support for subsequent virtualized storage and data persistence operations.
[0115] Step S2, node memory virtualized storage: This step aims to use memory virtualization technology to divide the physical memory of computing nodes into virtualized storage pools, providing high-speed and transparent file access capabilities for upper-layer services. Specifically, the system creates logical storage units through memory virtualization technology for business software to call. This step ensures the fast access of raster image data during high-concurrency processing and improves the utilization efficiency of memory resources.
[0116] Step S3, Business Software Invocation: This step involves the direct invocation of the business software for raster image processing tasks. Through the Application Programming Interface (API) configured in the service architecture, the business software can efficiently access the data resources of the virtualized storage pool and execute tasks related to image processing, such as radiometric correction, tile stitching, and geometric correction. The business software invocation step is an important link in implementing image data processing in the entire architecture.
[0117] Step S4, Cache Monitoring and Management: In this step, the system monitors and manages the usage of cache resources in real time, including the dynamic usage of the memory disk, cache hit rate, and operation audit records. The cache monitoring module displays the memory status and cache usage of the computing nodes through a visual interface and supports lifecycle management functions, such as cleaning cache data and manually triggering persistence operations, thus ensuring the stability and efficiency of the system.
[0118] Step S5, Cache Data Persistence: This step is responsible for synchronizing the data in the cache to the persistent storage device to ensure data security and long-term storage requirements. When the system detects that the memory usage rate reaches the preset threshold or the cache data needs to be saved, the persistence module automatically writes the specified data to the SSD or network storage. Through asynchronous writing, this step can achieve reliable data preservation while maintaining the real-time nature of system tasks.
[0119] As Figure 4 shown, it is the process of service application in a typical remote sensing image processing flow according to the method provided by the embodiments of the present application:
[0120] Step R1, Auxiliary Cataloging Process Invocation: In this step, the auxiliary cataloging process passes the path information of the level 0 raster image file and the GPU node information to the raster image memory service by invoking the Restful API interface of the raster image memory service. The purpose of this step is to establish a connection between the business process and the memory service, enabling the raster image file to be loaded into the memory service and providing basic data resources for subsequent processing.
[0121] Step R2, Image Product Production: It mainly includes the following three key operations:
[0122] Radiometric Correction: Read the level 0 raster image file and perform radiometric correction on it;
[0123] Inter-tile Stitching: Stitch the radiometrically corrected images to generate a complete image product;
[0124] Geometric correction: Perform geometric correction on the stitched images to ensure the accuracy of their geographic location. These operations access temporary files stored in memory through the raster image memory service, ensuring efficient flow of data during processing and efficient execution of algorithms.
[0125] Step R3, raster image memory service (auxiliary cataloging process side): This step is mainly responsible for completing the memory processing of raster image data in the auxiliary cataloging process, and returning the memory path information to the cataloging process for subsequent data management and processing operations.
[0126] Step R4, raster image memory service (image product production side): This step is responsible for supporting image data processing in the image product production process, ensuring that the memorized files can be quickly called and participate in specific algorithm processing tasks. In addition, through service receipts, this step also enhances the controllability of data processing and the traceability of the process.
[0127] Step R5, raster data memorization: This step uses memorization technology to load raster image data into the virtualized storage pool and provide a mapping path for the memory address. After the step is executed, the image data is placed in an efficient dynamic memory area, allowing the business process to quickly read and write data during processing, while avoiding delays caused by frequent calls to hard disk storage.
[0128] In summary, in the embodiment of the present application, by acquiring the raster image processing task and the cache operation status data, a dynamic mapping between the task requirements and the cache status is effectively established; then based on the comprehensive analysis of the cache operation status data and the raster image processing task, the cache resources are dynamically optimized and allocated according to the task requirements, avoiding the performance bottleneck caused by the fixed cache configuration, thereby improving the resource scheduling efficiency and processing adaptability; after receiving the configuration update data, the satellite service execution satellite can dynamically update its cache configuration and execute the corresponding raster image processing task, making full use of the memory resources of the satellite service execution satellite, and providing an efficient computing and data exchange environment during task processing, which not only improves the task execution efficiency, but also enhances the stability of the system by alleviating the storage pressure, and meets the needs of a high-concurrency environment. Therefore, based on the method of the embodiment of the present application, the task-driven dynamic cache optimization technology is used, and through collaborative management between satellites, the problems of low resource allocation efficiency and insufficient real-time performance in the prior art are fundamentally solved, and the stability and reliability of the system are taken into account while achieving fast processing.
[0129] refer to Figure 5 , which shows a satellite network system 30 for rapid processing of raster image data based on memory cache optimization provided by an embodiment of the present application, including:
[0130] The satellite mission management satellite 301, and a plurality of satellite mission execution satellites 302 communicatively connected to the satellite mission management satellite;
[0131] The satellite mission management satellite 301 is used to obtain the raster image processing tasks to be distributed and the cache operation status data sent from each satellite mission execution satellite, and determine the target satellite mission execution satellite according to all the cache operation status data and / or raster image processing tasks, as well as the configuration update data for updating the cache configuration of the target satellite mission execution satellite, and send the configuration update data and the raster image processing tasks to the target satellite mission execution satellite;
[0132] The satellite mission execution satellite 302 is used to send its own cache operation status data to the satellite mission management satellite, and in response to the configuration update data and raster image processing tasks sent from the satellite mission management satellite, after updating the cache configuration according to the configuration update data, execute the raster image processing tasks; the cache configuration is used to characterize the size of the dynamic cache of the satellite mission execution satellite when executing the raster image processing tasks.
[0133] Reference Figure 6 , which shows a fast raster image data processing device 40 provided by an embodiment of the present application, applied to a satellite mission management satellite, including:
[0134] A data acquisition module 401, configured to acquire the raster image processing tasks to be distributed and the cache operation status data sent from each satellite mission execution satellite;
[0135] A policy calculation module 402, configured to determine the target satellite mission execution satellite according to all the cache operation status data and raster image processing tasks, as well as the configuration update data for updating the cache configuration of the target satellite mission execution satellite; the cache configuration is used to characterize the size of the dynamic cache of the satellite mission execution satellite when executing the raster image processing tasks;
[0136] An update and release module 403, configured to send the configuration update data and the raster image processing tasks to the target satellite mission execution satellite.
[0137] Optionally, the cache operation status data records the usage frequency information of each target data block corresponding to the raster image processing task, and the policy calculation module 402 includes:
[0138] A hot data sub-module, configured to determine the target data block as a hot data block when the usage frequency of the same target data block called by more than a preset number of satellite mission execution satellites is greater than a preset frequency threshold; the hot data block is used to instruct the satellite mission execution satellite to pre-call the hot data block, or delay the release of the data stored in the hot data block after executing the raster image processing task;
[0139] The cold data sub-module is used to determine the target data block as a cold data block when the usage frequency of the target data block called by the satellite for on-orbit mission execution is less than or equal to a preset frequency threshold; the cold data block is used to instruct the satellite for on-orbit mission execution to transfer the cold data block to a storage space outside the dynamic cache and record the storage location of the transferred cold data block.
[0140] Reference Figure 7 , which shows a fast processing device 41 for raster image data based on memory cache optimization provided by an embodiment of the present application, applied to a satellite for on-orbit mission execution, including:
[0141] The data upload module 411 is used to send the cache running state data of the local satellite for on-orbit mission execution to the satellite for on-orbit mission management;
[0142] The task execution module 412 is used to respond to the configuration update data and raster image processing tasks sent from the satellite for on-orbit mission management, and after updating the cache configuration according to the configuration update data, execute the raster image processing tasks; the cache configuration is used to characterize the size of the dynamic cache of the satellite for on-orbit mission execution when executing the raster image processing tasks.
[0143] Optionally, the task execution module 412 includes:
[0144] The reconfiguration sub-module is used to divide a virtualized storage pool in the memory space of the satellite for on-orbit mission execution according to the configuration update data;
[0145] The cache allocation sub-module is used to determine multiple target data blocks from multiple data blocks according to the sizes of the multiple data blocks corresponding to the raster image processing tasks, and respectively allocate corresponding memory address spaces for each target data block in the virtualized storage pool;
[0146] The loading and execution sub-module is used to load each target data block into the memory address space corresponding to the target data block to execute the raster image processing tasks.
[0147] Optionally, the fast processing device 41 for raster image data based on memory cache optimization further includes:
[0148] The task freeze module is used to persist the intermediate data stored in the memory address space corresponding to the raster image processing task and generate recovery metadata for the intermediate data in the case of an interruption in the process of executing the raster image processing task.
[0149] In summary, in the embodiments of the present application, by obtaining the raster image processing task and the cache running state data, a dynamic mapping between the task requirements and the cache state is effectively established. Furthermore, based on the comprehensive analysis of the cache running state data and the raster image processing task, the cache resources are dynamically and optimally allocated according to the task requirements, avoiding the performance bottleneck caused by the fixed cache configuration, thereby improving the scheduling efficiency of resources and the adaptability of processing. When receiving the configuration update data, the satellite for on-orbit mission execution can dynamically update its cache configuration and execute the corresponding raster image processing task, making full use of the memory resources of the satellite for on-orbit mission execution to provide an efficient computing and data exchange environment during the task processing, not only improving the task execution efficiency, but also enhancing the system stability by alleviating the storage pressure, meeting the requirements of the high-concurrency environment. Thus, based on the method of the embodiments of the present application, by using the task-driven dynamic cache optimization technology and through the collaborative management among satellites, the problems of low resource allocation efficiency and insufficient real-time performance in the prior art are fundamentally solved, while taking into account the stability and reliability of the system during fast processing.
[0150] Referring to Figure 8 , the electronic device 500 may include one or more of the following components: a processing component 502, a memory 504, a power component 506, a multimedia component 508, an audio component 510, an input / output (I / O) interface 512, a sensor component 514, and a communication component 516.
[0151] The processing component 502 generally controls the overall operation of the electronic device 500, such as operations associated with display, telephone calls, data communication, camera operations, and recording operations. The processing component 502 may include one or more processors 520 to execute instructions to complete all or part of the steps of the above method. In addition, the processing component 502 may include one or more modules to facilitate the interaction between the processing component 502 and other components. For example, the processing component 502 may include a multimedia module to facilitate the interaction between the multimedia component 508 and the processing component 502.
[0152] The memory 504 is used to store various types of data to support the operation of the electronic device 500. Examples of these data include instructions for any application or method operating on the electronic device 500, contact data, phone book data, messages, pictures, multimedia, etc. The memory 504 may be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, a magnetic disk, or an optical disk.
[0153] The power supply component 506 provides power for various components of the electronic device 500. The power supply component 506 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power for the electronic device 500.
[0154] The multimedia component 508 includes an interface that provides an output interface between the electronic device 500 and the user. In some embodiments, the interface may include a liquid crystal display (LCD) and a touch panel (TP). If the interface includes a touch panel, the interface can be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors can not only sense the boundaries of touch or swipe actions, but also detect the duration and pressure associated with the touch or swipe operations. In some embodiments, the multimedia component 508 includes a front camera and / or a rear camera. When the electronic device 500 is in an operating mode, such as a shooting mode or a multimedia mode, the front camera and / or the rear camera can receive external multimedia data. Each of the front camera and the rear camera can be a fixed optical lens system or have a focal length and optical zoom capabilities.
[0155] The audio component 510 is used to output and / or input audio signals. For example, the audio component 510 includes a microphone (MIC) that is used to receive external audio signals when the electronic device 500 is in an operating mode, such as a call mode, a recording mode, and a voice recognition mode. The received audio signals can be further stored in the memory 504 or transmitted via the communication component 516. In some embodiments, the audio component 510 further includes a speaker for outputting audio signals.
[0156] The input / output (I / O) interface 512 provides an interface between the processing component 502 and a peripheral interface module, and the peripheral interface module can be a keyboard, a click wheel, buttons, etc. These buttons can include, but are not limited to: a home button, a volume button, a power-on button, and a lock button.
[0157] The sensor assembly 514 includes one or more sensors for providing status assessments of various aspects for the electronic device 500. For example, the sensor assembly 514 can detect the on / off state of the electronic device 500, the relative positioning of components, such as components for the display and keypad of the electronic device 500. The sensor assembly 514 can also detect a change in the position of the electronic device 500 or a component of the electronic device 500, the presence or absence of user contact with the electronic device 500, the orientation or acceleration / deceleration of the electronic device 500, and a change in the temperature of the electronic device 500. The sensor assembly 514 can include a proximity sensor configured to detect the presence of nearby objects without any physical contact. The sensor assembly 514 can also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 514 can also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.
[0158] The communication component 516 is used to facilitate communication between the electronic device 500 and other devices in a wired or wireless manner. The electronic device 500 can access a wireless network based on communication standards, such as WiFi, a carrier network (such as 2G, 3G, 4G, or 5G), or a combination thereof. In an exemplary embodiment, the communication component 516 receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 516 further includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
[0159] In an exemplary embodiment, the electronic device 500 can be implemented by one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components for implementing the methods provided in the embodiments of the present application.
[0160] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 504 including instructions, and the above instructions can be executed by the processor 520 of the electronic device 500 to complete the above method. For example, the non-transitory storage medium can be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, and an optical data storage device, etc.
[0161] Figure 9It is a block diagram of an electronic device 600 according to another embodiment of the present invention. For example, the electronic device 600 can be provided as a server.
[0162] Referring to Figure 9 , the electronic device 600 includes a processing component 622, which further includes one or more processors, and memory resources represented by a memory 632 for storing instructions executable by the processing component 622, such as application programs. The application programs stored in the memory 632 may include one or more modules each corresponding to a set of instructions. In addition, the processing component 622 is configured to execute instructions to perform the methods provided by the embodiments of the present application.
[0163] The electronic device 600 may also include a power component 626 configured to perform power management of the electronic device 600, a wired or wireless network interface 650 configured to connect the electronic device 600 to a network, and an input / output (I / O) interface 658. The electronic device 600 may operate based on an operating system stored in the memory 632, such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSD TM or the like.
[0164] The embodiments of the present application also provide a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, it implements each process of the above-mentioned network interaction method embodiment and can achieve the same technical effect. To avoid repetition, it will not be elaborated here. Among them, the computer-readable storage medium is, for example, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disc, etc.
[0165] It should be noted that for the method embodiments of the present application, for simplicity of description, they are all expressed as a series of action combinations. However, those skilled in the art should know that the embodiments of the present application are not limited by the described action sequence, because according to the embodiments of the present application, certain steps can be performed in other sequences or simultaneously. Secondly, those skilled in the art should also know that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily essential for the embodiments of the present application.
[0166] Other embodiments of the present application will be readily contemplated by those skilled in the art after considering the specification and practicing the application disclosed herein. The present application is intended to cover any variations, uses, or adaptations of the present application, which follow the general principles of the present application and include known common knowledge or conventional technical means in the technical field not disclosed in the present disclosure. The specification and examples are only illustrative, and the true scope and spirit of the present application are pointed out by the following claims.
[0167] It should be understood that the present application is not limited to the exact structures described above and shown in the drawings, and various modifications and changes can be made without departing from its scope. The scope of the present application is only limited by the appended claims.
[0168] Each embodiment in this specification is described in a progressive manner. The key point of each embodiment is to illustrate the differences from other embodiments. The same or similar parts among the embodiments can be referred to each other.
[0169] It is easy for those skilled in the art to think that any combination application of the above embodiments is feasible. Therefore, any combination among the above embodiments is an embodiment of the present application. However, due to space limitations, the details are not described one by one in this specification.
[0170] The fast processing method of raster image data based on memory cache optimization provided herein is not inherently related to any specific computer, virtual system, or other device. Various general-purpose systems can also be used in conjunction with the teachings herein. Based on the above description, the structure required to construct a system with the solution of the present application is obvious. In addition, the present application is not directed to any specific programming language. It should be understood that the content of the present application described herein can be implemented using various programming languages, and the description of the specific language above is to disclose the best implementation mode of the present application.
[0171] In the specification provided herein, a large number of specific details are set forth. However, it can be understood that the embodiments of the present application can be practiced without these specific details. In some instances, well-known methods, structures, and technologies are not shown in detail so as not to obscure the understanding of this specification.
[0172] Similarly, it should be understood that, for the purpose of streamlining the present application and facilitating the understanding of one or more of the various aspects of the application, in the foregoing description of the exemplary embodiments of the present application, the various features of the present application are sometimes grouped together into a single embodiment, figure, or description thereof. However, the disclosed method should not be construed as reflecting an intention that the claimed application requires more features than are expressly recited in each claim. Rather, as reflected by the claims, the aspects of the application lie in less than all of the features of the single foregoing disclosed embodiment. Thus, the claims following the detailed description are hereby expressly incorporated into the detailed description, with each claim standing on its own as a separate embodiment of the present application.
[0173] Those skilled in the art can understand that the modules in the devices in the embodiments can be adaptively changed and disposed in one or more devices different from the embodiments. The modules or units or components in the embodiments can be combined into a module or unit or component, and in addition, they can be divided into multiple sub-modules or sub-units or sub-components. Except that at least some of such features and / or processes or units are mutually exclusive, any combination can be used to combine all the features disclosed in this specification (including the accompanying claims, abstract, and drawings) and all the processes or units of any method or device so disclosed. Unless otherwise expressly stated, each feature disclosed in this specification (including the accompanying claims, abstract, and drawings) can be replaced by an alternative feature that provides the same, equivalent, or similar purpose.
[0174] In addition, those skilled in the art can understand that although some of the embodiments described herein include certain features included in other embodiments rather than other features, the combination of the features of different embodiments means that it is within the scope of the present application and forms different embodiments. For example, in the claims, any one of the claimed embodiments can be used in any combination.
[0175] Each component embodiment of the present application can be implemented in hardware, or in software modules running on one or more processors, or in a combination thereof. Those skilled in the art should understand that a microprocessor or a digital signal processor (DSP) can be used in practice to implement some or all of the functions of some or all of the components in the method for rapidly processing raster image data based on memory cache optimization according to the embodiments of the present application. The present application can also be implemented as a device or apparatus program (such as a computer program and a computer program product) for executing part or all of the methods described herein. Such a program implementing the present application can be stored on a computer-readable medium, or can be in the form of one or more signals. Such signals can be downloaded from an Internet website, or provided on a carrier signal, or provided in any other form.
[0176] In yet another embodiment provided by the present invention, there is also provided a computer program product containing instructions, which when run on a computer, causes the computer to execute the method for rapidly processing raster image data based on memory cache optimization according to the embodiments of the present application.
[0177] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the processes or functions described according to the embodiments of the present invention are generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center by wire (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wirelessly (such as infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that the computer can access, or a data storage device such as a server or a data center that includes one or more integrated available media. The available medium can be a magnetic medium (such as a floppy disk, a hard disk, a magnetic tape), an optical medium (such as a DVD), or a semiconductor medium (such as a solid state disk (SSD)).
[0178] It should be noted that the above embodiments are illustrative of the present application rather than restrictive thereof, and those skilled in the art can design alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. The word "comprising" does not exclude the presence of elements or steps not listed in the claim. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The present application can be implemented by means of hardware including several different elements and by means of a suitably programmed computer. In a unit claim listing several devices, several of these devices may be embodied by the same item of hardware. The use of the words first, second, and third, etc. does not denote any order. These words may be interpreted as names.
[0179] It should be noted that, for the method embodiments of the present application, for the sake of simple description, they are all expressed as a series of action combinations. However, those skilled in the art should be aware that the embodiments of the present application are not limited by the described order of actions, because according to the embodiments of the present application, certain steps may be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily essential to the embodiments of the present application.
[0180] Each embodiment in this specification is described in a related 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 embodiments of the system or device, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts can be referred to the description of the method embodiments.
[0181] The above are only the preferred embodiments of the present invention and are not intended to limit the protection scope of the present invention. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principle of the present invention are included in the protection scope of the present invention.
Claims
1. A method for rapid processing of raster image data based on memory cache optimization, characterized in that: Applied to satellite management, including: Obtain the raster image processing tasks to be distributed and the cache operation status data sent from each satellite execution satellite; Determine a target satellite for executing satellite services and configuration update data for updating a cache configuration of the target satellite for executing satellite services according to all of the cache operation status data and the raster image processing task; the cache configuration is used to characterize the size of the dynamic cache of the satellite for executing satellite services when executing the raster image processing task; Sending the configuration update data and the raster image processing task to the target satellite service execution satellite; The cache operation status data records the usage frequency information of each target data block corresponding to the raster image processing task. The target satellite execution satellite is determined based on all the cache operation status data and the raster image processing task, and the configuration update data for updating the cache configuration of the target satellite execution satellite includes: When the usage frequency of calling the same target data block by more than a preset number of satellite service execution satellites is greater than a preset frequency threshold, the target data block is determined as a hot data block; the hot data block is used to instruct the satellite service execution satellite to pre-call the hot data block, or to delay the release of the data stored in the hot data block after executing the raster image processing task; When the usage frequency of the target data block called by the satellite service execution satellite is less than or equal to a preset frequency threshold, the target data block is determined as a cold data block; the cold data block is used to instruct the satellite service execution satellite to transfer the cold data block to a storage space outside the dynamic cache, and record the storage location of the transferred cold data block.
2. A method for rapid processing of raster image data based on memory cache optimization, characterized in that: Applied to satellites for space mission execution, including: Sending the cached operation status data of the local satellite execution satellite to the satellite management satellite; In response to configuration update data and raster image processing tasks sent from a satellite administration satellite, after updating the cache configuration according to the configuration update data, the raster image processing task is executed; the cache configuration is used to characterize the size of the dynamic cache of the satellite administration satellite when executing the raster image processing task; the configuration update data is determined by the satellite administration satellite according to the cache operation status data sent from all satellite administration satellites and the raster image processing tasks to be distributed; The cache operation status data records the usage frequency information of each target data block corresponding to the raster image processing task; the satellite management satellite determines the target satellite execution satellite according to all the cache operation status data and the raster image processing task, and the process of updating the configuration data for updating the cache configuration of the target satellite execution satellite includes: When the usage frequency of calling the same target data block by more than a preset number of satellite service execution satellites is greater than a preset frequency threshold, the target data block is determined as a hot data block; the hot data block is used to instruct the satellite service execution satellite to pre-call the hot data block, or to delay the release of the data stored in the hot data block after executing the raster image processing task; When the usage frequency of the target data block called by the satellite service execution satellite is less than or equal to a preset frequency threshold, the target data block is determined as a cold data block; the cold data block is used to instruct the satellite service execution satellite to transfer the cold data block to a storage space outside the dynamic cache, and record the storage location of the transferred cold data block.
3. The method for rapid processing of raster image data based on memory cache optimization according to claim 2, characterized in that: After the cache configuration is updated according to the configuration update data, the raster image processing task is executed, including: According to the configuration update data, a virtualized storage pool is divided in the memory space of the satellite service execution satellite; According to the sizes of the multiple data blocks corresponding to the raster image processing task, multiple target data blocks are determined from the multiple data blocks, and a corresponding memory address space is respectively allocated in the virtualized storage pool for each of the target data blocks; Each of the target data blocks is loaded into a memory address space corresponding to the target data block to execute the raster image processing task.
4. The method for rapid processing of raster image data based on memory cache optimization according to claim 2, characterized in that: The method for rapidly processing raster image data based on memory cache optimization also includes: In the case that the process of executing the raster image processing task is interrupted, the intermediate data stored in the memory address space corresponding to the raster image processing task is persisted, and recovery metadata of the intermediate data is generated.
5. A satellite network system for rapid processing of raster image data based on memory cache optimization, characterized in that: include: A satellite management satellite, and a plurality of satellite execution satellites communicatively connected to the satellite management satellite; The satellite execution satellite is used to send its own cache operation status data to the satellite management satellite, and in response to the configuration update data and raster image processing task sent from the satellite management satellite, after updating the cache configuration according to the configuration update data, execute the raster image processing task; the cache configuration is used to characterize the size of the dynamic cache of the satellite execution satellite when executing the raster image processing task; the cache operation status data records the use frequency information of each target data block corresponding to the raster image processing task; The satellite management satellite is used to obtain the raster image processing tasks to be distributed and the cache operation status data sent from each of the satellite execution satellites, and determine the target satellite execution satellite according to all the cache operation status data and the raster image processing tasks, and the configuration update data for updating the cache configuration of the target satellite execution satellite, and send the configuration update data and the raster image processing tasks to the target satellite execution satellite; The satellite management satellite determines the target satellite execution satellite according to all the cache operation status data and the raster image processing task, and the configuration update data for updating the cache configuration of the target satellite execution satellite. Specifically, when the usage frequency of calling the same target data block by more than a preset number of satellite execution satellites is greater than a preset frequency threshold, the target data block is determined as a hot data block, and when the usage frequency of the target data block called by the satellite execution satellite is less than or equal to the preset frequency threshold, the target data block is determined as a cold data block; the hot data block is used to instruct the satellite execution satellite to pre-call the hot data block, or to delay the release of the data stored in the hot data block after executing the raster image processing task; the cold data block is used to instruct the satellite execution satellite to transfer the cold data block to a storage space outside the dynamic cache, and record the storage location of the transferred cold data block.
6. A fast processing device for raster image data based on memory cache optimization, characterized in that: Applied to satellites for space mission execution, including: The data upload module is used to send the cached operation status data of the local satellite execution satellite to the satellite management satellite; A task execution module, for responding to configuration update data and raster image processing tasks sent from a satellite administration satellite, and executing the raster image processing tasks after updating the cache configuration according to the configuration update data; the cache configuration is used to characterize the size of the dynamic cache of the satellite administration satellite when executing the raster image processing tasks; the configuration update data is determined by the satellite administration satellite according to the cache operation status data sent from all satellite administration satellites and the raster image processing tasks to be distributed; The cache operation status data records the usage frequency information of each target data block corresponding to the raster image processing task; the satellite management satellite determines the target satellite execution satellite according to all the cache operation status data and the raster image processing task, and the process of updating the configuration data for updating the cache configuration of the target satellite execution satellite includes: When the usage frequency of calling the same target data block by more than a preset number of satellite service execution satellites is greater than a preset frequency threshold, the target data block is determined as a hot data block; the hot data block is used to instruct the satellite service execution satellite to pre-call the hot data block, or to delay the release of the data stored in the hot data block after executing the raster image processing task; When the usage frequency of the target data block called by the satellite service execution satellite is less than or equal to a preset frequency threshold, the target data block is determined as a cold data block; the cold data block is used to instruct the satellite service execution satellite to transfer the cold data block to a storage space outside the dynamic cache, and record the storage location of the transferred cold data block.
7. A fast processing device for raster image data based on memory cache optimization, characterized in that: Applied to satellite management, including: A data acquisition module is used to acquire the raster image processing tasks to be distributed and the cache operation status data sent from each satellite execution satellite; A strategy calculation module, used to determine the target satellite for executing satellites and configuration update data for updating the cache configuration of the target satellite for executing satellites according to all the cache operation status data and the raster image processing task; the cache configuration is used to characterize the size of the dynamic cache of the satellite for executing satellites when executing the raster image processing task; An update publishing module, used for sending the configuration update data and the raster image processing task to the target satellite service execution satellite; The cache operation status data records the usage frequency information of each target data block corresponding to the raster image processing task, and the strategy calculation module includes: The hot data submodule is used to determine the target data block as a hot data block when the usage frequency of calling the same target data block by more than a preset number of satellite service execution satellites is greater than a preset frequency threshold; the hot data block is used to instruct the satellite service execution satellite to pre-call the hot data block, or to delay the release of the data stored in the hot data block after executing the raster image processing task; The unpopular data submodule is used to determine the target data block called by the satellite service execution satellite as a unpopular data block when the usage frequency of the target data block is less than or equal to a preset frequency threshold; the unpopular data block is used to instruct the satellite service execution satellite to transfer the unpopular data block to a storage space outside the dynamic cache, and record the storage location of the transferred unpopular data block.
8. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method for rapid processing of raster image data based on memory cache optimization as described in any one of claims 1 to 4 is implemented.
9. An electronic device, characterized in that: The method comprises a processor, a memory and a computer program stored in the memory and executable on the processor, wherein when the computer program is executed by the processor, the steps of the method for rapid processing of raster image data based on memory cache optimization as described in any one of claims 1 to 4 are implemented.
Citation Information
Patent Citations
Satellite communication network architecture based on semantic content
CN116073889A