A task scheduling method for large mobile device mobile data center
Patent Information
- Application Number
- CN202111062549.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-09-10
- Publication Date
- 2026-09-11
- Estimated Expiration
- 2041-09-10
AI Technical Summary
传统数据中心的任务调度方法已被广泛研究并产生很多高精度的调度算法,但这些方法不能适用于移动设备移动数据中心的任务调度中,原因在于:一是注重调度方案最优解的方法多采用遗传算法等工程类算法或者神经网络等深度学习算法,但此类方法需要大规模高性能计算资源的支持,而移动数据中心通常只配备几个服务器,可能导致任务的调度时间超过任务执行时间;二是注重资源利用率的调度方法通常面向计算密集型、数据密集型、网络密集型等多种类型的任务,而移动数据中心的任务大部分为数据密集型任务,可能会导致大量任务集中在某个服务器上影响任务响应时间;三是注重算法性能的调度方法通常面向特定应用为每个任务设定一种贪心分配策略,一般基于本地的局部信息进行贪心且分配好的任务不进行抢占和迁移,而是移动数据中心可以方便的获取全局信息和任务迁移,且高实时性的任务必须支持抢占执行
[0013] (1) Taking into account the structural characteristics of mobile data centers and the task characteristics of mobile devices, the scheduling method is in line with the application requirements to ensure the efficiency and correctness of task scheduling in mobile data centers.
Smart Images

Figure CN115794322B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a task scheduling method for building mobile data centers on large mobile devices, belonging to the field of mobile device data processing. Background Technology
[0002] With the development of technologies such as the Internet of Things, big data, and artificial intelligence, large mobile devices such as aircraft and ships are becoming increasingly intelligent, resembling mobile intelligent fortresses. Behind this high level of intelligence lies the support of numerous high-precision sensors and high-performance data processing technologies. Task scheduling is a key technology in high-performance data processing. Based on the characteristics of the data processing tasks and the distribution of data processing resources, tasks are allocated to data processing resources for execution in a specific order. Traditional mobile devices, due to their limited data collection and processing, typically employ a centralized data processing approach, where all data tasks are processed uniformly by a single server, which processes each task sequentially. However, with the increase in the number of sensors, the frequency and scale of data collection, the growing number and complexity of data processing tasks, and the constraints of real-time processing and reliability, a single server can no longer meet the demands of data processing. Therefore, large mobile devices now typically deploy multiple servers in different locations within the device, organizing these servers into a mobile data center, using distributed technology to improve the efficiency and reliability of task processing. However, mobile data centers differ significantly from traditional data centers in terms of physical architecture and application requirements. These include fewer servers that are directly connected via high-speed data buses, fewer task types that are mostly monitoring, early warning, or statistical analysis of sensory data, high data reliability requirements that cannot be recovered once lost, and high real-time task processing requirements where untimely responses can lead to serious consequences. Therefore, in order to ensure the efficiency of mobile device data processing, it is necessary to study task scheduling methods for large-scale mobile device data centers.
[0003] Traditional task scheduling on mobile devices essentially involves tasks competing for the right to use a single server. Task priorities are typically calculated based on constraints such as response time and resource requirements, and then tasks are ordered by priority, with higher-priority tasks executed first. This approach is unsuitable for multi-server task scheduling. Current research on mobile data centers on large mobile devices is still in its early stages. For example, distributed integrated modular avionics systems in aircraft utilize distributed thinking to manage various control devices on board. However, current research mainly focuses on network architecture design, hardware resource deployment, and security verification, with relatively little attention paid to task scheduling methods. The task scheduling problem in distributed systems has been proven to be NP-hard, and an optimal scheduling algorithm with polynomial complexity cannot be found. Therefore, existing optimization models or heuristic strategies are often used to find better scheduling schemes. Traditional data center task scheduling methods have been extensively studied and have produced many high-precision scheduling algorithms. However, these methods are not suitable for task scheduling in mobile data centers of mobile devices for the following reasons: First, methods that focus on the optimal solution of the scheduling scheme often use engineering algorithms such as genetic algorithms or deep learning algorithms such as neural networks. However, these methods require the support of large-scale high-performance computing resources, while mobile data centers are usually equipped with only a few servers, which may cause the task scheduling time to exceed the task execution time. Second, scheduling methods that focus on resource utilization are usually designed for various types of tasks, such as computationally intensive, data-intensive, and network-intensive tasks. However, most tasks in mobile data centers are data-intensive, which may lead to a large number of tasks being concentrated on a single server, affecting task response time. Third, scheduling methods that focus on algorithm performance are usually designed for specific applications and set a greedy allocation strategy for each task. Generally, they are based on local information and the allocated tasks are not preempted or migrated. In contrast, mobile data centers can easily obtain global information and migrate tasks, and high real-time tasks must support preemptive execution.
[0004] In summary, task scheduling methods for mobile data centers need to comprehensively consider the network structure characteristics of mobile data centers and the data processing task characteristics of mobile devices, such as the number and computing power of servers, server connection methods, task types, task response times, and the impact of task timeouts. Efficient scheduling algorithms can quickly allocate each task to a suitable server for execution and ensure that each task is completed within a specified time, providing technical support for the intelligent control of mobile devices. Summary of the Invention
[0005] This invention provides a task scheduling method for mobile data centers of large mobile devices. It aims to schedule the most common trigger-type and interactive tasks of mobile devices based on the structural characteristics of the mobile data center and the task characteristics of the mobile devices. It comprehensively considers factors such as data storage distribution, task urgency, high-speed bus transmission capability, server computing power, and task migration cost to sort, allocate, preempt, and migrate tasks, thereby improving the performance and accuracy of task scheduling in mobile data centers.
[0006] The technical solution adopted in this invention is as follows:
[0007] A task scheduling method for large mobile device mobile data centers specifically includes the following steps:
[0008] (1) Task reception: Collect relevant information about the mobile data center, data storage distribution, and information about all triggering and interactive tasks that the mobile device currently needs to schedule;
[0009] (2) Triggered task scheduling: Triggered task scheduling is based on ensuring task response time. Tasks are allocated according to factors such as task submission time, data transmission time, task scheduling time, and task latency constraints to ensure that triggered tasks can be completed within the latency constraints.
[0010] (3) Interactive task scheduling: Tasks are scheduled in order of submission time. Based on the distribution of the dataset to be processed for each task, the task processing is distributed to multiple servers storing the data to be processed simultaneously using the distributed approach, thereby reducing the processing time of interactive tasks.
[0011] (4) Task migration: During the operation of the mobile device, if a triggering task with stricter latency constraints is received during the execution of an interactive task, the triggering task will preempt the server's processing resources. The subsequent execution method of the original interactive task will be determined by comprehensively considering the task waiting time and the task migration time.
[0012] The beneficial effects of this invention are as follows:
[0013] (1) Taking into account the structural characteristics of mobile data centers and the task characteristics of mobile devices, the scheduling method is in line with the application requirements to ensure the efficiency and correctness of task scheduling in mobile data centers.
[0014] (2) The two most commonly used tasks of mobile devices are extracted as scheduling objects. The characteristics of the tasks are fully considered in the sorting, allocation, preemption and migration stages of the scheduling process to ensure the practicality of the task scheduling method.
[0015] (3) The task scheduling process is simple to operate and the scheduling algorithm itself has low computational complexity. It is suitable for the characteristics of a small number of mobile data center servers and insufficient computing resources, ensuring the efficiency of task scheduling. Attached Figure Description
[0016] Figure 1 This invention relates to the network architecture of a task scheduling method for mobile data centers of large mobile devices.
[0017] Figure 2 This is the specific process of the task scheduling method for mobile data centers of large mobile devices according to the present invention.
[0018] Figure 3 This is the resource allocation prediction process in an embodiment of the present invention. Detailed Implementation
[0019] The technical solution of the present invention will be further described below with reference to the embodiments.
[0020] The task scheduling method proposed in this invention is mainly used in mobile data centers built on large mobile devices such as aircraft and ships. It schedules the execution of various data processing tasks on different servers within the mobile data center, ensuring that each task is quickly scheduled to the appropriate server for execution and completed within a specified time. Intelligent control of mobile devices is typically based on a large number of data processing tasks, mainly including two categories: triggered tasks that are triggered by meeting preset conditions and interactive tasks required for normal analysis and control. Generally, triggered tasks are often various anomaly or early warning tasks, requiring high response time, while interactive tasks have less stringent response time requirements. The scheduling method must consider both the structural characteristics of the mobile data center and the characteristics of different tasks.
[0021] For mobile data network architecture of large mobile devices, see [link / reference]. Figure 1 Each server is responsible for storing and processing sensor data collected within a physical area. Servers are directly connected to each other via a high-speed data bus, and sensors within each physical area are uniquely connected to the server responsible for that area via a dedicated bus.
[0022] Currently, there are two main types of task scheduling methods for large mobile device data centers. One uses a centralized scheduling method, sorting all tasks and executing them sequentially on a single server, without addressing the task allocation to servers. The other uses traditional data center scheduling methods, but fails to consider the limited number of servers, insufficient computing resources, and unique characteristics of mobile device tasks in mobile data centers. The proposed task scheduling method for large mobile device data centers has the following scheduling flow: Figure 2As shown. This invention, starting from the task characteristics of mobile devices and the structural characteristics of mobile data centers, comprehensively considers data storage distribution, server scale and processing capacity constraints, data requirements and response time constraints of data processing tasks, thereby improving the efficiency of the task scheduling process and the accuracy of the scheduling results. The specific task scheduling process includes the following four steps:
[0023] 1. Task Reception: Collects relevant information about the mobile data center, data storage distribution, and all tasks that the mobile device currently needs to schedule. Specific information includes:
[0024] ① A mobile data center has m servers P = {P1, P2, ..., P...} m} Receives various tasks that need to be processed, including sets of triggered tasks. and interactive task sets Where NT and NI represent the number of triggered tasks and interactive tasks, respectively, and m represents the number of mobile data center servers;
[0025] ② Collect information on triggered tasks: relevant information for each triggered task. Where 1≤i≤NT, at i and χ i Representing tasks The submission time and computational complexity per unit of data, w i Indicates task The amount of data to be processed, w i Stored on server P j The amount of data on is w i,j , i.e. w i =(w i,1 ,w i,2 ,L,w i,m ), 1≤j≤m;
[0026] ③ Collect interactive task information: relevant information for each interactive task Where at i Indicates task Arrival time, χ i Indicates task The computational complexity coefficient, X, for a unit of data volume. i =(x j,k ) s×m Indicates task The distribution of the dataset to be processed across the servers, and the tasks. Processing large-scale datasets D i Divide into s partitions {D i,1 D i,2 ,…,D i,s} are stored on different servers, if the j-th data shard D i,j Stored on server P k Then x j,k =1, otherwise x j,k =0, 1≤i≤NI, 1≤k≤m, 1≤j≤s.
[0027] 2. Triggered Task Scheduling: Triggered task scheduling prioritizes task response time. The specific process is as follows:
[0028] ① Calculate data transmission time: Calculate the time for each task In P = {P1, P2, ..., P} m Each server P j During execution, pending task data is transferred to P. j Data transmission time The set of data transfer times for tasks executed on all servers Where 1≤i≤NT, 1≤j≤m, d k,j Indicates server P k With P j The data transmission distance between them, where k = j represents the server's own data storage, i.e., d j,j =0, where τ represents the time taken to transmit a unit of data over a unit distance;
[0029] ②Task sorting: Calculate each task Minimum transfer time performed on all servers All trigger-based tasks Sort the tasks in descending order of minimum transmission time, and schedule each task in descending order of data transmission time.
[0030] ③ Computational resource requirements: For each task Remaining time for task processing Total computational load of the task Minimum processing resource requirements for the server Where at i Indicates task The trigger time, Tthreshold T This indicates the maximum allowed delay for triggered tasks, where ct is the current time;
[0031] ④ Task allocation: For each task The server with the minimum data transfer time is Determine server P k Available data processing resources ActiveResource(P) k Does the task meet the requirements? The minimum processing resource requirements, if Then the task Assigned to server Execute above; if Repeat steps ① through ④ to complete the task. In the server set P′=P-{P k}={P1,P2,…,P k-1 ,P k+1 ,…,P m Tasks are assigned on the} platform;
[0032] ⑤ Task caching: If none of the current servers can fulfill the task... The processing resource requirements will then be the task Add it to the task cache queue and schedule it together with the user-submitted trigger-type task in the next moment.
[0033] 3. Interactive Task Scheduling: Interactive tasks are scheduled sequentially according to their submission time. For each analytical task... Based on the distribution of its dataset X i =(x j,k ) s×m , will the task The task is assigned to a suitable server for execution, and the scheduling process is as follows:
[0034] ① Select candidate servers: Each server P j Up storage tasks The set of data fragments to be processed is DC i,j Number of data fragments to be processed All DC i,j Servers ≠Φ are all tasks. The set of all schedulable candidate servers is PC = {P} j |DC i,j ≠Φ, 1≤j≤m}, where s is the task The number of data fragments to be processed is 1≤j≤m, 1≤i≤NI;
[0035] ②Task allocation: Select the server P with the fewest data fragments to be processed from the candidate server set PC. k ∈PC is used to perform tasks The DC is responsible for storing the set of data fragments to be processed. i,k The processing of , where 1≤k≤m;
[0036] ③ Candidate server update: Update each candidate server P j Data fragments to be processed stored in PC i,j =DC i,j -DC i,k If DCi,j If P = Φ, then remove it from the candidate server set, where P k The tasks currently assigned for execution For servers, 1 ≤ j ≤ m;
[0037] ④ Termination of assignment: Repeat steps ② and ③ until the task is completed. The data shards to be processed are all assigned to specific servers, i.e. Furthermore, each server processes different data shards, i.e. Where 1≤j,k≤m,j≠k;
[0038] ⑤ Calculate task processing time: Task Processing time The task processing time of each server in P represents j Actual tasks The number of data shards, υ is the amount of data per shard, resource j For P j Currently available data processing resources, χ i Indicates task The computational complexity coefficient per unit of data volume is 1≤j≤m.
[0039] 4. Task Migration: When server P j When performing interactive tasks Received triggered task during the process At that time, it is necessary to decide on interactive tasks. Whether it needs to be migrated to another server for execution, or whether it should continue execution on the current server after the triggered task is completed, the specific process is as follows:
[0040] ①Task waiting determination: If it is an interactive task On server P j The expected processing time is Interactive tasks The processing time is Triggered tasks On server P j The execution time is when Interactive tasks do not need to be included Migrate to other servers P j Execute on, where 1≤i≤NI, 1≤j≤m, 1≤h≤NT;
[0041] ②Task Migration Determination: If the set of servers within the mobile data center that have not executed the interactive task is PM, then the current server P will be moved to the next server location.j Unfinished interactive tasks and unprocessed data Migrate to any server P in PM that has sufficient data processing resources k Execution continues, but no data has been processed. From server P j Migration to P k Data transmission time when When performing task migration, Waiting for triggered tasks After execution is complete, continue executing the original interactive task. Where d j,k Indicates server P j To P k Transmission distance, This represents the amount of data being migrated, where τ is the time required to transfer a unit amount of data per unit length on a high-speed bus between servers. Triggered task On server P j Execution time.
[0042] Example
[0043] The resource allocation prediction process in this embodiment is described in [reference]. Figure 3 The specific process is as follows: If a mobile data center of a certain mobile device consists of 3 servers {P1, P2, P3} and several sensors, the task scheduling process is as follows:
[0044] ① If interactive task J1 is submitted at time t1, the dataset it processes contains four data partitions {D1,D2,D3,D4}, where {D1,D3} is stored on server P1, {D1,D2} is stored on server P2, and {D2,D4} is stored on server P3.
[0045] ②The scheduling process of interactive task J1 is as follows: First, calculate the current candidate servers PC = {P1, P2, P3}. Each server stores two data fragments to be processed, namely {D1, D3}, {D1, D2}, and {D2, D4}. Randomly select server P1 to process data fragments D1 and D3. Update the data fragments to be processed of servers P1, P2, and P3 to Φ, {D2}, and {D2, D4}, and update the candidate server set to {P2, P3}. Select server P2 with the fewest data fragments to be processed to process data fragment D2. Update the data fragments to be processed of servers P1, P2, and P3 to Φ, Φ, and {D4}, and update the candidate server set to {P3}. Select server P3 to process data fragment D4. At this time, task J1 scheduling is completed.
[0046] ③ If the processing time for each data slice is 2s, then servers P1, P2 and P3 will need 4s, 2s and 2s respectively to complete their respective data processing, and task J1 will take 4s to complete.
[0047] ④ If interactive task J1 is submitted at time t2 1 second later, trigger task J2 is submitted. The data to be processed are w1 on P1, w2 on P2 and w3 on P3 respectively. If task J2 is executed on servers P1, P2 and P3, it will take 0.5s, 0.2s and 0.4s for data transmission respectively.
[0048] ⑤ If the triggered task J2 is scheduled immediately upon submission, its maximum allowed delay is 1 second. If the maximum task processing time for task J2 on servers P1, P2, and P3 is 0.5 seconds, 0.8 seconds, and 0.6 seconds, respectively, we will first try to assign task J2 to server P2 for execution. If the available resources on server P2 can meet the needs of task J2, then the triggered task J2 will be assigned to server P2 for execution.
[0049] ⑥ At time t2, the triggering task J2 can be assigned to server P2 for execution. After 0.2 seconds, all the data that task J2 needs to process is transmitted to server P2. At this time, interactive task J1 is being executed on P2. At this time, server P2 pauses the execution of interactive task J1 and starts executing triggering task J2.
[0050] ⑦ Task J1 is paused after 1.2 seconds of execution on server P2. Triggered task J2 requires 0.8 seconds of time on server P2. If server P2 continues to execute task J1 after completing task J2, the data processing time for task J1 on server P2 will be 2.8 seconds, which is less than the processing time of task J1 (4 seconds). Therefore, the processing of task J1 on server P2 will not be migrated. The data fragment {D2} of task J1 will continue to be processed on P2 after the execution of triggered task J2 is completed.
[0051] ⑧ Ultimately, we can conclude that interactive task J1 completes execution 4 seconds after submission, with the execution process jointly completed by servers P1, P2, and P3; triggered task J2 completes data transmission from P1 and P3 to P2 within 0.2 seconds after submission, and then completes execution on server P2 within 0.8 seconds; since data processing and data transmission use different server resources, within 0.2 seconds after task J2 is submitted, servers P1 and P3 simultaneously complete data processing for task J1 and data transmission for task J2.
[0052] The embodiments described herein are merely exemplary implementations. However, the present invention can be implemented in many different forms and is not limited to the embodiments described herein. These embodiments are provided to fully and completely disclose the invention and to fully convey the scope of the invention to those skilled in the art. The terminology used in the exemplary embodiments illustrated in the accompanying drawings is not intended to limit the invention. In the accompanying drawings, the same units / elements are referred to by the same reference numerals.
[0053] Unless otherwise stated, the terms used herein (including technical terms) have the common understanding meaning to those skilled in the art; in addition, it is understood that terms defined by commonly used dictionaries should be understood to have a meaning consistent with the context of their relevant field, and should not be understood to have an idealized or overly formal meaning.
Claims
1. A task scheduling method for mobile data centers of large mobile devices, characterized in that, The specific task scheduling process includes the following four steps: (1) Task Reception: Collect relevant information about the mobile data center, data storage distribution, and all tasks that the mobile device currently needs to schedule. Specific information includes: ① m servers in the mobile data center Receive various tasks that need to be processed, including sets of triggered tasks. and interactive task sets , where NT and NI are the number of triggered tasks and interactive tasks, respectively, and m represents the number of mobile data center servers; ② Collect information on triggered tasks: relevant information for each triggered task. ,in , and Representing tasks The submission time and the computational complexity per unit of data. Indicates task The amount of data to be processed Stored on server P j The amount of data on is w i,j ,Right now , 1≤j≤m; ③ Collect interactive task information: relevant information for each interactive task ,in Indicates task Arrival time, Indicates task The computational complexity coefficient per unit of data volume is [not specified]. Indicates task The distribution of the dataset to be processed across the servers, and the tasks. Large-scale datasets to be processed Divided into Each segment Stored on different servers, if the first Data shards Stored on server The above ,otherwise , ; (2) Triggered task scheduling: Triggered task scheduling is based on ensuring task response time. The specific process is as follows: ① Calculate data transmission time: Calculate the time for each task exist Each server During execution, pending task data is transferred to P. j Data transmission time The set of data transfer times for tasks executed on all servers. ,in , , Indicates server and Data transmission distance between them, if This refers to the server's own data storage, i.e. , This indicates the time taken to transmit a unit of data over a unit distance; ②Task sorting: Calculate each task Minimum transfer time performed on all servers All trigger-based tasks Sort the tasks in descending order of minimum transmission time, and schedule each task in descending order of data transmission time. ③ Computing resource requirements: For each task Remaining time for task processing Total computational load of the task Minimum processing resource requirements for the server ,in Indicates task Submission time, This indicates the maximum allowed delay for triggered tasks. The current time; ④ Task allocation: For each task The server with the shortest data transmission time is Determine the server Available data processing resources Does the task meet the requirements? The minimum processing resource requirements, if Then the task Assigned to server Execute above; if Repeat steps ① through ④ to complete the task. In server collection Tasks are assigned on the platform. ⑤ Task caching: If none of the current servers can fulfill the task... The processing resource requirements will then be the task Add it to the task cache queue and schedule it together with the trigger-type task submitted by the user in the next moment; (3) Interactive task scheduling: Interactive tasks are scheduled sequentially according to their submission time. For each analytical task... Based on the distribution of its dataset to be processed , will the task The task is assigned to a suitable server for execution, and the scheduling process is as follows: ① Select candidate servers: Each server P j Up storage tasks The set of data fragments to be processed is DC i,j Number of data fragments to be processed ,all All servers are for tasks The schedulable candidate servers, the set of all candidate servers is ,in For the task Number of data fragments to be processed , ; ②Task allocation: From the candidate server set Select the server with the fewest data shards to be processed. Used to perform tasks It is responsible for storing the collection of unprocessed data shards. The processing, among which ; ③ Candidate server update: Update each candidate server P j Data fragments to be processed stored in PC ,like If so, it will be removed from the candidate server set, where The tasks currently assigned for execution The server, ; ④ Termination of assignment: Repeat steps ② and ③ until the task is completed. The data shards to be processed are all assigned to specific servers, i.e. Furthermore, each server processes different data shards, i.e. ,in , ; ⑤ Calculate task processing time: Task Processing time The task processing time for each server ,in express Actual tasks Number of data fragments The amount of data per unit in each data shard. for Currently available data processing resources Indicates task The computational complexity coefficient per unit of data volume is [not specified]. ; (4) Task migration: When the server When performing interactive tasks Received triggered task during the process At that time, it is necessary to decide on interactive tasks. Whether it needs to be migrated to another server for execution, or whether it should continue execution on the current server after the triggered task is completed, the specific process is as follows: ①Task waiting determination: If it is an interactive task On the server The expected processing time is Interactive tasks The processing time is Triggered tasks On the server The execution time is ,when Interactive tasks do not need to be Migrate to other servers Execute on, where ; ②Task migration determination: If the set of servers within the mobile data center that have not executed the interactive task is... , will the current server Unfinished interactive tasks and unprocessed data Migrate to Any server in the middle with sufficient data processing resources Execution continues, but no data has been processed. From server Migrate to Data transmission time ,when When performing task migration, Waiting for triggered tasks After execution is complete, continue executing the original interactive task. ,in Indicates server arrive Transmission distance, Indicates the amount of data migrated. This refers to the time required to transfer a unit amount of data per unit length on a high-speed bus between servers. Triggered task On the server Execution time.
Citation Information
Patent Citations
Data migration-based data center dynamic task scheduling method
CN108446180A
A multi-task general energy consumption optimization method
CN109739332A
Task scheduling and processing method and device, storage medium and processor
CN110196766A