Computing power scheduling for cloud applications, file processing method for cloud applications, and cloud computing platform
By obtaining file feature information and rationally scheduling cloud applications to matching computing nodes, the problem of uneven cloud application resource utilization is solved, and file processing efficiency and user experience are improved.
Patent Information
- Application Number
- CN202310780810.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-28
- Publication Date
- 2025-09-23
- Estimated Expiration
- 2043-06-28
AI Technical Summary
Cloud applications consume an uneven amount of cloud computing resources when processing different files, resulting in low resource utilization, low file processing efficiency, and poor user experience.
By automatically obtaining file feature information, evaluating the computing resource requirements of cloud applications when processing files, and scheduling cloud applications to matching computing nodes for file processing, computing resources can be reasonably scheduled.
It improves the resource utilization and file processing efficiency of cloud computing resources and improves the user experience.
Smart Images

Figure CN116700987B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of cloud computing technology, and in particular to a method for scheduling computing power for cloud applications and processing files for cloud applications, as well as a cloud computing platform. Background Art
[0002] With the rapid development of cloud computing technology, more and more businesses and individuals are deploying applications on cloud computing platforms. Leveraging the cloud computing resources provided by these platforms, they are expanding the computing power of their devices, enabling more efficient data processing and application execution. Applications deployed on cloud computing platforms are also called cloud applications. Users can use cloud applications for a variety of file processing tasks, such as file browsing, image processing, video editing, video compression, and video transcoding. In practice, cloud applications consume varying amounts of cloud computing resources when processing different files. In cloud application file processing scenarios, optimizing the allocation of cloud computing resources for these applications has been a hot topic of research. Summary of the Invention
[0003] Multiple aspects of the present application provide a cloud application computing power scheduling and cloud application file processing method and cloud computing platform, which are used to reasonably schedule computing power resources for cloud applications and improve the resource utilization of cloud computing resources. In this way, in the subsequent file processing stage, the file processing efficiency of cloud applications can be effectively improved, and the user experience of cloud applications can be improved.
[0004] An embodiment of the present application provides a file processing method for a cloud application, comprising: in response to a file processing request including a target file identifier sent by a user through a cloud application client, obtaining file characteristic information of a target file corresponding to the target file identifier; determining computing power resource demand information of the cloud application based on the file characteristic information of the target file; screening out a target computing node that meets the computing power resource demand information from various computing nodes of the cloud computing platform; scheduling the cloud application to the target computing node, and starting the cloud application scheduled to the target computing node to process the target file.
[0005] An embodiment of the present application also provides a computing power scheduling method for cloud applications, including: obtaining a target file identifier sent by a user through a cloud application client, and obtaining file characteristic information of a target file corresponding to the target file identifier; determining computing power resource demand information of the cloud application based on the file characteristic information of the target file; screening out target computing nodes that meet the computing power resource demand information from various computing nodes of the cloud computing platform; and scheduling the cloud application to the target computing node.
[0006] An embodiment of the present application also provides a cloud computing platform, including: a cloud application management and control device, a cloud storage system and a computing power resource pool, the computing power resource pool including multiple computing nodes; a cloud application management and control device, used to respond to a file processing request including a target file identifier sent by a user through a cloud application client, obtain file characteristic information of a target file corresponding to the target file identifier; determine the computing power resource demand information of the cloud application based on the file characteristic information of the target file; send a resource application request including resource demand information to the computing power resource pool, and receive resource application response information returned by the computing power resource pool, and schedule the cloud application to the target computing node according to the node identifier of the target computing node in the resource application response information, and start the cloud application scheduled to the target computing node, after which the cloud application loads the file data of the target file from the cloud storage system and performs file processing on the file data of the target file; the computing power resource pool, used to respond to the resource application request, screen out the target computing node that meets the computing power resource demand information from each computing node, and return the resource application response information to the cloud application management and control device.
[0007] An embodiment of the present application also provides a computer device, comprising: a memory and a processor; the memory is used to store a computer program; the processor is coupled to the memory, and is used to execute the computer program to execute the steps in the file processing method of the cloud application.
[0008] An embodiment of the present application also provides a computer-readable storage medium storing a computer program. When the computer program is executed by a processor, the processor is enabled to implement the steps in the file processing method of the cloud application.
[0009] In the embodiment of the present application, it is taken into account that the cloud computing resources consumed by cloud applications are different when processing different files. To this end, for the file processing scenario of the cloud application, the file characteristic information of the file to be processed is automatically obtained, and the computing resource demand information required by the cloud application when processing the file is reasonably evaluated based on the file characteristic information of the file to be processed, and the cloud application is scheduled to the computing node in the cloud computing platform that matches the computing resource demand information. In this way, computing resources can be reasonably scheduled for the cloud application, thereby improving the resource utilization rate of cloud computing resources. In this way, in the subsequent file processing stage, by starting the cloud application on the computing node that is adapted to the file characteristic information of the file to be processed for file processing, the file processing efficiency of the cloud application is effectively improved, and the user experience of the cloud application is improved. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:
[0011] Figure 1An exemplary application scenario diagram provided for an embodiment of the present application;
[0012] Figure 2 A flowchart of a file processing method for a cloud application provided in an embodiment of the present application;
[0013] Figure 3 A flowchart of a computing power scheduling method for cloud applications provided in an embodiment of the present application;
[0014] Figure 4 A schematic diagram of an exemplary cloud application computing power scheduling and file processing scenario provided in an embodiment of the present application;
[0015] Figure 5 A schematic diagram of the structure of a cloud computing platform provided in an embodiment of the present application;
[0016] Figure 6 A schematic diagram of the structure of a computer device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0017] To make the purpose, technical solutions, and advantages of this application more clear, the technical solutions of this application will be clearly and completely described below in conjunction with the specific embodiments of this application and the corresponding drawings. Obviously, the embodiments described are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0018] In the embodiments of the present application, "at least one" refers to one or more, and "more" may refer to two or more. "And / or" describes the access relationship of associated objects, indicating that three relationships may exist. For example, A and / or B may represent three situations: A exists alone, A and B exist at the same time, and B exists alone, where A and B may be singular or plural. In the textual description of the present application, the character " / " generally indicates that the previous and subsequent associated objects are in an "or" relationship. In addition, in the embodiments of the present application, "first", "second", "third", etc. are only used to distinguish the contents of different objects and have no other special meanings.
[0019] The following is an introduction to some terms involved in the embodiments of this application:
[0020] Cloud applications (also known as cloud apps) transform the traditional "local installation and local computing" model of software into a "drop-in, ready-to-use" service. These applications connect to and control remote service clusters via the internet to complete technical logic or computational tasks. Cloud applications do not require installation on local devices; instead, they are installed on a cloud computing platform, significantly reducing the computing power and storage pressure on local devices. Examples of cloud applications include, but are not limited to, instant messaging cloud applications, cloud gaming applications, cloud rendering applications, cloud desktop applications, live streaming cloud applications, and video playback cloud applications.
[0021] Cloud application client: refers to the client of the cloud application, responsible for interacting with users and requesting access to cloud applications, etc.
[0022] A cloud computing platform (also known as the cloud) is an information system that integrates various hardware and software resources based on cloud computing technology. Hardware resources include, but are not limited to, servers, storage devices, and network equipment. Software resources include, but are not limited to, operating systems, integrated development environments, middleware, and application software. Cloud computing platforms are characterized by high concurrency and a large user base. End users can use cloud computing platforms to meet their application computing, storage, and other infrastructure needs.
[0023] A cloud storage system refers to a storage system deployed in a cloud computing platform, including but not limited to a distributed file storage system deployed in a cloud computing platform.
[0024] Cloud application management and control device: provides full life cycle management capabilities for cloud application development, release, deployment, etc., full life cycle management capabilities for cloud resources such as purchase and creation, elastic expansion and contraction, dynamic scheduling, as well as security monitoring and management capabilities such as access control.
[0025] Computing resource pool: refers to a shared pool of centralized cloud computing resources, which facilitates efficient resource allocation and can improve resource utilization and scheduling performance.
[0026] Distributed file storage system: It can store files in multiple nodes in a dispersed manner, can handle the needs of large-scale data storage and access, and provides a high degree of data redundancy and fault tolerance mechanism to ensure data security.
[0027] In practical applications, cloud applications consume different amounts of cloud computing resources when processing different files. In the file processing scenario of cloud applications, rationally allocating cloud computing resources for cloud applications has always been a research hotspot.
[0028] To this end, the embodiment of the present application provides a cloud application computing power scheduling and cloud application file processing method and cloud computing platform. In the embodiment of the present application, it is taken into account that the cloud computing resources consumed by cloud applications are different when processing different files. To this end, for the file processing scenario of cloud applications, the file characteristic information of the files to be processed is automatically obtained, and the computing power resource demand information required for the cloud application to process the files is reasonably evaluated based on the file characteristic information of the files to be processed, and the cloud application is scheduled to the computing node in the cloud computing platform that matches the computing power resource demand information. Thus, computing power resources can be reasonably scheduled for the cloud application, thereby improving the resource utilization rate of cloud computing resources. In this way, in the subsequent file processing stage, by starting the cloud application on the computing node that is adapted to the file characteristic information of the file to be processed for file processing, the file processing efficiency of the cloud application is effectively improved, and the user experience of the cloud application is improved.
[0029] Figure 1 This is an exemplary application scenario diagram provided by the embodiment of this application. Figure 1 , users can access cloud applications in the cloud computing platform through the cloud application client in the terminal device. For example, users can request cloud applications to process files through the cloud application client. Figure 1 The cloud computing platform may include a cloud application management and control device, a cloud storage system (such as a distributed file storage system) and a computing resource pool.
[0030] In practical applications, see Figure 1 As shown in ①, the file data of the files stored locally on the terminal device can be synchronized to the cloud storage system, so that the cloud application can access the file data of the files to be processed nearby when performing file processing. That is, the file data of the files to be processed can be obtained by accessing the cloud storage system, without having to access the file data of the files to be processed in the terminal device, which speeds up the file processing efficiency of the cloud application. Here, the files stored locally on the terminal device are referred to as user local files, and the files in the cloud storage system are referred to as user cloud files. In actual applications, there is no requirement for the time when the file data in the user's local files is synchronized to the user's cloud files. For example, the synchronization time can be before the user requests the cloud application to process the file through the application client, during the file processing, or after the file processing. There is no restriction on this.
[0031] See also Figure 1As shown in ②, when a user has a need to use a cloud application for file processing, the user triggers the cloud application client to send a file processing request to the cloud computing platform. The file processing request includes the file identifier of the file to be processed. The cloud application control device in the cloud computing platform searches for the pre-stored file characteristic information of each file based on the file identifier of the file to be processed. If the file characteristic information of the file to be processed is found, the computing power resource scheduling operation is performed. If the file characteristic information of the file to be processed is not found, the file characteristic information of the file to be processed is first extracted by the file characteristic extraction module in the cloud application control device, and then the computing power resource scheduling operation is performed. Specifically, see Figure 1 As shown in ③, the file feature extraction module obtains the file metadata of the file to be processed from the cloud storage system according to the file identifier of the file to be processed; see Figure 1 As shown in ④, the file feature extraction module extracts features from the file data of the to-be-processed file in the cloud storage system to obtain key file feature information of the to-be-processed file. Figure 1 As shown in ⑤ in FIG, the file feature extraction module takes the file metadata and key file feature information of the to-be-processed file as the file feature information of the to-be-processed file and saves them.
[0032] See also Figure 1 As shown in ⑥, when the file characteristic information of the file to be processed is obtained, the cloud application management and control device calls the computing resource scheduling module to analyze the file characteristic information of the file to be processed, and determines the computing resource demand information of the cloud application program for processing the file to be processed. The computing resource demand information includes, but is not limited to: the utilization rate of the central processing unit (CPU) of the required computing node, the utilization rate of the graphics processing unit (GPU), the remaining space of the memory, and the remaining space of the disk. It is understandable that the different utilization rates of the central processing unit, the graphics processing unit, the remaining space of the memory, or the remaining space of the disk of the computing node correspond to different specifications of the corresponding computing node.
[0033] See also Figure 1 As shown in ⑦, the computing resource scheduling module sends a resource application request including resource demand information to the algorithm resource pool. In response to the resource application request, the computing resource scheduling module allocates computing nodes that match the resource demand information to the cloud application.
[0034] After resource allocation is complete, see Figure 1 As shown in ⑧, the computing resource scheduling module sends cloud application distribution instructions to the cloud application distribution module in the cloud application management and control device. The cloud application distribution module is responsible for tasks such as cloud application image distribution, application deployment, configuration, and start and stop. Figure 1As shown in ⑨, the cloud application distribution module responds to the application distribution instruction, distributes the cloud application to the computing nodes that match the resource demand information, and starts the cloud application on the corresponding computing node.
[0035] During the file processing phase, see Figure 1 As shown in ⑩, the cloud application after startup loads the file data of the file to be processed from the cloud storage system and performs file processing on the file data of the file to be processed. Figure 1 in As shown, the data generated during the cloud application file processing process is collected and encapsulated using cloud application protocols such as ASP (Adaptive Streaming Protocol), resulting in streaming data for the cloud application protocol. This streaming data is then transmitted to the cloud application client via the Gateway service. The ASP protocol runs on the TCP (Transmission Control Protocol) / UDP (User Datagram Protocol) network protocol and, using current efficient encoding and decoding technologies, encodes the graphical interactive interface on the cloud and streams it to the client. The client then decodes the data and displays the graphical interface.
[0036] See also Figure 1 in As shown, the cloud application client parses the streaming data of the cloud application protocol to obtain the screen of the cloud application file processing process and updates the displayed file process screen in real time. At this point, the entire file processing process is completed.
[0037] It should be noted that Figure 1 The application scenario shown is only an exemplary application scenario, and the present application embodiment does not limit the application scenario. Figure 1 The equipment included in the Figure 1 The positional relationship between the devices is limited.
[0038] In an embodiment of the present application, the terminal device can interact with the cloud computing platform through a wired network or a wireless network. For example, the wired network may include a coaxial cable, a twisted pair, and an optical fiber, and the wireless network may be a 2G (2 Generation, 2 Generation) network, a 3G (3 Generation, 3 Generation) network, a 4G (4 Generation, 4 Generation) network, or a 5G (5 Generation, 5 Generation) network, a Wireless Fidelity (Wireless Fidelity, referred to as WIFI) network, etc. The present application does not limit the specific type or form of interaction, as long as it can realize the function of interaction between the terminal device and the cloud computing platform. In addition, the terminal device can be hardware or software. When the terminal device is hardware, the terminal device is, for example, a mobile phone, a tablet computer, a desktop computer, a wearable smart device, a smart home device, etc. When the terminal device is software, it can be installed in the hardware devices listed above. In this case, the user device is, for example, multiple software modules or a single software module, etc., and the embodiments of the present application are not limited.
[0039] The following describes in detail the technical solutions provided by various embodiments of the present application in conjunction with the accompanying drawings.
[0040] Figure 2 This is a flowchart of a file processing method for a cloud application provided in an embodiment of the present application. This method is applied to a cloud computing platform, see Figure 2 , the method may include the following steps:
[0041] 201. In response to a file processing request including a target file identifier sent by a user through a cloud application client, obtain file characteristic information of a target file corresponding to the target file identifier.
[0042] 202. Determine computing resource demand information of the cloud application based on file characteristic information of the target file.
[0043] 203. Filter out target computing nodes that meet computing resource demand information from various computing nodes of the cloud computing platform.
[0044] 204. Schedule the cloud application to the target computing node, and start the cloud application scheduled to the target computing node to process the target file.
[0045] In this embodiment, a user can request a cloud application to perform file processing through a cloud application client. Here, the file to be processed is referred to as a target file. The target file can be a plain text file or a rich text file, without limitation. In the case where the target file is a rich text file, the target file includes, but is not limited to, video format files, image format files, PDF (Portable Document Format) format files, and PPT (PowerPoint) format files, where a PPT format file is a presentation document.
[0046] When a user needs to process a file, they can trigger a file processing request through the cloud application client. The file processing request is used to request the cloud application to process the target file. The file processing request includes the target file identifier (i.e., the file identifier of the target file). In some scenarios, the cloud computing platform may have multiple cloud applications. In such cases, the file processing request can include the application identifier of the cloud application to clearly indicate which cloud application should be used for file processing.
[0047] In this embodiment, the cloud computing platform responds to a file processing request sent by a user through a cloud application client and obtains file characteristic information of a target file corresponding to a target file identifier. This file characteristic information can depict a profile of the file, including, but not limited to, file metadata describing the file's characteristics and key file feature information extracted from the file data. File metadata includes, but is not limited to, file type, file size, image dimensions, image resolution, encoding format, bitrate, or frame rate, etc.
[0048] In this embodiment, when the cloud computing platform obtains the file characteristic information of the target file corresponding to the target file identifier, the cloud computing platform may obtain the file metadata information of the target file from the cloud storage system and use the file metadata information of the target file as the file characteristic information of the target file. Alternatively, the cloud computing platform may perform feature extraction on the file data of the target file cached in the cloud storage system to obtain key file characteristic information of the target file, and use the key file characteristic information as the file characteristic information of the target file. Alternatively, to further characterize the profile information of the file, the cloud computing platform may use the file metadata information and key file characteristic information of the target file as the file characteristic information of the target file.
[0049] In practical applications, various feature extraction algorithms can be used to extract features from file data. Examples of these algorithms include, but are not limited to, the LBP (Local Binary Pattern) feature extraction algorithm, the SIFT (Scale Invariant Feature Transform) feature extraction algorithm, the TF-IDF (Term Frequency–Inverse Document Frequency) feature extraction algorithm, and mutual information-based feature extraction algorithms.
[0050] In this embodiment, multiple feature extraction algorithms with different algorithmic performance can be provided, and algorithmic performance includes, but is not limited to, accuracy, extraction efficiency, and the like. Furthermore, optionally, in order to better perform feature extraction, feature extraction is performed on the file data of a target file cached in the cloud storage system to obtain key file feature information of the target file. One optional implementation method is to select a target feature extraction algorithm from multiple feature extraction algorithms whose algorithmic performance matches the file metadata information of the target file; and use the target feature extraction algorithm to perform feature extraction on the file data of the target file cached in the cloud storage system to obtain key file feature information of the target file.
[0051] Specifically, the file metadata information applicable to the algorithm performance of each feature extraction algorithm can be flexibly set in advance as needed. In this way, during the algorithm selection stage, the feature extraction algorithm that matches the file metadata information of the target file is selected as the target feature extraction algorithm, and feature extraction is performed using the target feature extraction algorithm. Alternatively, during the algorithm selection stage, the algorithm performance adapted to the target file can be estimated based on the file metadata of the target file, and the feature extraction algorithm corresponding to the algorithm performance adapted to the target file can be selected for feature extraction. For example, plain text files have lower requirements for accuracy and feature extraction efficiency than rich text files, or large files have higher requirements for accuracy and feature extraction efficiency than small files, and so on.
[0052] Further optionally, in order to improve file processing efficiency, after obtaining the file characteristic information of the file, the cloud computing platform can save the file characteristic information of the file in the cloud computing platform, so as to facilitate the subsequent rapid acquisition of the file characteristic information of the required file from the file characteristic information of each saved file.
[0053] Based on the above, as an example, when the cloud computing platform obtains the file characteristic information of the target file corresponding to the target file identifier, it can search for the file characteristic information of the target file from the file characteristic information of each file already stored on the cloud computing platform based on the target file identifier; if the file characteristic information of the target file is not found in the cloud computing platform, it can obtain the file metadata information of the target file from the cloud storage system; use the file metadata information of the target file as the file characteristic information of the target file, and associate the target file identifier and file characteristic information of the target file saved in the cloud computing platform. Of course, if the file characteristic information of the target file is found in the cloud computing platform, the subsequent steps of determining the computing resource demand information can be performed.
[0054] As another example, when the cloud computing platform obtains the file characteristic information of the target file corresponding to the target file identifier, it can search for the file characteristic information of the target file from the file characteristic information of each file already stored in the cloud computing platform based on the target file identifier; if the file characteristic information of the target file is not found in the cloud computing platform, the file metadata information of the target file is obtained from the cloud storage system, and the file data of the target file cached in the cloud storage system is subjected to feature extraction to obtain the key file characteristic information of the target file; the file metadata information and key file characteristic information of the target file are used as the file characteristic information of the target file, and the target file identifier and file characteristic information of the target file are associated and saved in the cloud computing platform. Of course, if the file characteristic information of the target file is found in the cloud computing platform, the subsequent steps of determining the computing resource demand information can be executed.
[0055] In this embodiment, the computing resource requirements of a cloud application are determined based on the file characteristics of the target file. This computing resource requirement information describes the resource information of the computing nodes required by the cloud application to process the target file. For example, this computing resource requirement information includes, but is not limited to, the CPU usage, GPU usage, remaining memory space, and remaining disk space of the required computing node. Optionally, the computing resource requirement information may also indicate whether the required computing node is a graphics computing node with a GPU or a standard computing node without a GPU. Graphics computing nodes refer to computing nodes with GPUs, while standard computing nodes refer to computing nodes without GPUs. For example, if the target file type is rich text, and the file characteristics of the target file include at least one of the following: file size, image dimensions, image resolution, encoding format, bitrate, frame rate, and key file characteristics, the computing resource requirement information indicates that a graphics computing node with a GPU is the target computing node. If the target file type is plain text, and the file characteristics of the target file include at least one of the following: file size and key file characteristics, the computing resource requirement information indicates that a standard computing node without a GPU is the target computing node.
[0056] In practical applications, the computing power resource requirements corresponding to each feature data in the file characteristic information can be analyzed based on expert experience. This can be done by performing a weighted summation of the computing power resource requirements corresponding to each feature data in the file characteristic information to determine the computing power resource requirements corresponding to the target file being processed by the cloud application. For example, file characteristic information includes: file type, file size, image size, image resolution, encoding format, bit rate, frame rate, and key file feature information extracted from the file data. Based on expert experience, the computing power resource requirements corresponding to each feature data, such as file type, file size, image size, image resolution, encoding format, bit rate, frame rate, and key file feature information, can be analyzed. A weighted summation of the computing power resource requirements corresponding to each feature data can be performed to obtain the computing power resource requirements corresponding to the target file being processed by the cloud application.
[0057] In practical applications, it is also possible to collect the characteristic information of multiple files that have already been processed and the computing resource information annotated with them, and use this information to train a model to obtain a machine learning model that can determine the computing resource requirements. In this way, the machine learning model can be used to determine the computing resource requirements corresponding to the target file processed by the cloud application.
[0058] Of course, in actual applications, the computing power resource demand information of the cloud application can be flexibly determined based on the file characteristic information of the target file, and there is no restriction on this. For example, for rich text type files, the computing power resource demand information of the cloud application is determined based on one or more characteristic information such as file size, image size, image resolution, encoding format, bit rate, frame rate and key file characteristic information. For example, for plain text type files, the computing power resource demand information of the cloud application is determined based on one or more characteristic information such as file size and key file characteristic information. Further optionally, in order to efficiently and accurately determine the computing power resource demand information, an optional implementation method for determining the computing power resource demand information of the cloud application based on the file characteristic information of the target file is: determining the computational complexity of the target file based on the file characteristic information of the target file; determining the computing power resource demand information of the cloud application based on the computational complexity of the target file.
[0059] In practical applications, the computational complexity corresponding to each feature data in the file feature information can be analyzed based on expert experience, and the computational complexity corresponding to each feature data in the file feature information can be weighted and summed to obtain the computational complexity of the target file.
[0060] In practical applications, we can collect multiple file feature information and their annotated computational complexity, and use this information to train a model, thereby obtaining a machine learning model with computational complexity determination capabilities. This machine learning model can then be used to determine the computational complexity of the target file.
[0061] Further optionally, in order to efficiently and accurately determine the computational complexity of a file, an optional implementation method for determining the computational complexity of a target file based on the file characteristic information of the target file is: based on the file type in the file characteristic information of the target file, determine a target computational complexity determination method that matches the file type of the target file from the computational complexity determination methods corresponding to each file type; and use the target computational complexity determination method to process the file characteristic information of the target file to determine the computational complexity of the target file.
[0062] In practical applications, the computational complexity determination method for each file type can be flexibly set as needed. For example, for plain text files, the computational complexity determination method is as follows: the computational complexity corresponding to the file size and the computational complexity corresponding to key file feature information are determined separately; the computational complexity corresponding to the file size and the computational complexity corresponding to key file feature information are weighted summed to obtain the overall computational complexity of the file. The larger the file size, the greater the computational complexity; the richer the key file feature information, the greater the computational complexity.
[0063] For example, for rich text type files, the computational complexity is determined by: determining the computational complexity corresponding to one or more characteristic information such as file size, image size, image resolution, encoding format, bit rate, frame rate and key file characteristic information; performing weighted summation of the computational complexity corresponding to each characteristic information to obtain the computational complexity of the entire file.
[0064] For example, for plain text files, the computational complexity is determined by separately determining the computational complexity corresponding to one or more feature information such as file size and key file feature information; performing weighted summation of the computational complexity corresponding to each feature information to obtain the computational complexity of the entire file.
[0065] It's worth noting that file types can be flexibly categorized as needed. For example, file types can be divided into plain text and rich text. Another example is file size, which can be divided into large files and small files. Another example is encoding format, which can be divided into H.264 and H.265. H.264 is a new video compression standard that elevates motion image compression technology to a higher level, providing high-quality image transmission at lower bandwidths. H.264 encoding is more efficient and error-resistant, making it suitable for video transmission over wireless channels with high packet loss rates and severe interference, thereby achieving smooth image quality. H.265 is a new video compression standard. Based on the H.264 video encoding standard, H.265 retains some of the original technologies while using new technologies to improve and optimize certain aspects, such as bitrate, encoding quality, and latency. This improves compression efficiency, enhances robustness and error resilience, reduces real-time latency, and reduces complexity.
[0066] In this embodiment, the target file's file characteristic information is processed using a target computational complexity determination method that matches the target file's file type to determine the target file's computational complexity. After determining the target file's computational complexity, the computing power resource requirements of the cloud application are determined based on the target file's computational complexity.
[0067] In practical applications, expert experience can be used to analyze the computing power resource requirements required by the computational complexity of the target file. Alternatively, the computational complexity and annotated computing power resource information of multiple previously processed files can be collected and used to train a model, resulting in a machine learning model capable of determining computing power resource requirements. This machine learning model can then be used to determine the computing power resource requirements corresponding to the target file being processed by the cloud application.
[0068] Furthermore, in order to efficiently and accurately determine the computing resource demand information, a computational complexity range corresponding to each computational complexity level can be pre-set, and a corresponding relationship between the computational complexity level and the computing resource demand information can be established. In this way, when determining the computing resource demand information corresponding to the target file processed by the cloud application, the computational complexity level of the target file can be determined based on the computational complexity range within which the computational complexity of the target file falls. Based on the computational complexity level of the target file, the corresponding relationship between the computational complexity level and the computing resource demand information can be queried to determine the computing resource demand information corresponding to the cloud application processing the target file.
[0069] Further optionally, in order to efficiently and accurately determine the computing power resource demand information of the cloud application, an optional implementation method for determining the computing power resource demand information of the cloud application based on the computational complexity of the target file is: determining the computing power resource demand information of the cloud application based on the computational complexity of the target file and the node information of each computing node of the cloud computing platform, wherein the node information includes load pressure and / or remaining resource information. For example, the CPU load pressure, GPU load pressure, memory load pressure or disk load pressure of the computing node, the remaining CPU usage, the remaining GPU usage, the remaining memory space, the remaining disk space, etc.
[0070] In practical applications, the computing power resource requirements of a cloud application can be determined by comprehensively analyzing the computational complexity of the target file and the node information of each computing node on the cloud computing platform. Alternatively, initial computing power resource requirements can be determined based on the computational complexity of the target file, and then optimized using the node information of each computing node to obtain the final computing power resource requirements of the cloud application. Alternatively, multiple training data sets can be collected, including the computational complexity of the file, the node information of each computing node on the cloud computing platform, and the annotated computing power resource information. This data can then be used to train a model, resulting in a machine learning model capable of determining computing power resource requirements. In this way, the machine learning model can be used to determine the computing power resource requirements corresponding to the target file processed by the cloud application. Of course, in practical applications, the computing power resource requirements of the cloud application can be determined flexibly based on the computational complexity of the target file and the node information of each computing node on the cloud computing platform, without limitation.
[0071] In this embodiment, after determining the computing power resource demand information required for the cloud application to process the target file, the target computing node that meets the computing power resource demand information is screened out from the various computing nodes of the cloud computing platform; the cloud application is scheduled to the target computing node, and the cloud application scheduled to the target computing node is started to process the target file.
[0072] As an example, target computing nodes that meet computing power resource demand information are screened out from various computing nodes of a cloud computing platform, including: if the file type of the target file is a rich text type, the file characteristic information of the target file includes at least one of the following: file size, image size, image resolution, encoding format, bit rate, frame rate and key file characteristic information, and the computing power resource demand information indicates that a graphics computing node with a GPU is used as the target computing node required, then graphics computing nodes with a GPU that meet the computing power resource demand information are screened out from various computing nodes of the cloud computing platform as the target computing node; if the file type of the target file is a plain text type, the file characteristic information of the target file includes at least one of the following: file size and key file characteristic information, and the computing power resource demand information indicates that an ordinary computing node without a GPU is used as the target computing node required, then ordinary computing nodes without a GPU that meet the computing power resource demand information are screened out from various computing nodes of the cloud computing platform as the target computing node.
[0073] Further optionally, in order to improve resource utilization and scheduling performance, when screening out target computing nodes that meet computing resource demand information from various computing nodes in the cloud computing platform, a resource application request can be sent to the computing resource pool in the cloud computing platform, so that the computing resource pool can screen out target computing nodes that meet computing resource demand information from various computing nodes therein.
[0074] Optionally, to improve resource utilization, after the cloud application finishes processing the target file, resource recovery can be performed. Specifically, in response to a cloud application shutdown request sent by the user through the cloud application client, the cloud application is shut down, and computing resources occupied by the cloud application in the target computing node are released.
[0075] The technical solution provided by the embodiment of the present application takes into account that cloud applications consume different cloud computing resources when processing different files. To this end, for the file processing scenarios of cloud applications, the file characteristic information of the files to be processed is automatically obtained, and based on the file characteristic information of the files to be processed, the computing power resource requirements required by the cloud application for file processing are reasonably evaluated. The cloud application is then scheduled to a computing node in the cloud computing platform that matches the computing power resource requirements, and the cloud application is started to process the file. This effectively improves the file processing efficiency of the cloud application and the resource utilization of cloud computing resources, thereby improving the user experience of the cloud application.
[0076] Figure 3 This is a flow chart of a computing power scheduling method for cloud applications provided in an embodiment of the present application. This method is applied to a cloud computing platform, see Figure 3 , the method may include the following steps:
[0077] 301. Obtain a target file identifier sent by a user through a cloud application client, and obtain file characteristic information of a target file corresponding to the target file identifier.
[0078] 302. Determine computing resource demand information of the cloud application based on file characteristic information of the target file.
[0079] 303. Filter out target computing nodes that meet computing resource demand information from various computing nodes of the cloud computing platform.
[0080] 304. Schedule the cloud application to the target computing node.
[0081] In actual applications, users can send the target file identifier corresponding to the target file to the cloud computing platform at any time through the cloud application client. For example, if the user has a processing requirement for the target file, the user can send the target file identifier corresponding to the target file to the cloud computing platform through the cloud application client. Of course, there is no restriction on this. For more information on determining the file characteristics of the target file, the computing resource requirements of the cloud application, selecting the target computing nodes that meet the computing resource requirements, and cloud application scheduling, please refer to the previous content and will not be repeated here.
[0082] Further optionally, determining the computing power resource demand information of the cloud application based on the file characteristic information of the target file includes: determining the computational complexity of the target file based on the file characteristic information of the target file; and determining the computing power resource demand information of the cloud application based on the computational complexity of the target file.
[0083] Further optionally, the computing power resource demand information of the cloud application is determined based on the computational complexity of the target file, including: determining the computing power resource demand information of the cloud application based on the computational complexity of the target file and the node information of each computing node of the cloud computing platform, wherein the node information includes load pressure and / or remaining resource information.
[0084] Further optionally, the computational complexity of the target file is determined based on the file characteristic information of the target file, including: determining a target computational complexity determination method that matches the file type of the target file from the computational complexity determination methods corresponding to each file type based on the file type in the file characteristic information of the target file; and processing the file characteristic information of the target file using the target computational complexity determination method to determine the computational complexity of the target file.
[0085] Further optionally, obtaining the file characteristic information of the target file corresponding to the target file identifier includes: searching for the file characteristic information of the target file from the file characteristic information of each file already saved in the cloud computing platform according to the target file identifier; if the file characteristic information of the target file is not found in the cloud computing platform, obtaining the file metadata information of the target file from the cloud storage system; using the file metadata information of the target file as the file characteristic information of the target file, and associating and saving the target file identifier and file characteristic information of the target file in the cloud computing platform.
[0086] Further optionally, before using the file metadata information of the target file as the file characteristic information of the target file, the method further includes: performing feature extraction on the file data of the target file cached in the cloud storage system to obtain key file characteristic information of the target file; accordingly, using the file metadata information of the target file as the file characteristic information of the target file includes: using the file metadata information and key file characteristic information of the target file as the file characteristic information of the target file.
[0087] Further optionally, feature extraction is performed on the file data of the target file cached in the cloud storage system to obtain key file feature information of the target file, including: selecting a target feature extraction algorithm whose algorithm performance matches the file metadata information of the target file from multiple feature extraction algorithms; and using the target feature extraction algorithm to perform feature extraction on the file data of the target file cached in the cloud storage system to obtain key file feature information of the target file.
[0088] Further optionally, after the cloud application completes processing the target file, it also includes: responding to a cloud application shutdown request sent by the user through the cloud application client, closing the cloud application, and releasing computing resources occupied by the cloud application in the target computing node.
[0089] Further optionally, target computing nodes that meet the computing power resource demand information are screened out from the various computing nodes of the cloud computing platform, including: sending a resource application request to the computing power resource pool in the cloud computing platform, so that the computing power resource pool screens out target computing nodes that meet the computing power resource demand information from the various computing nodes therein.
[0090] Further optionally, a target computing node that meets the computing power resource demand information is screened out from each computing node of the cloud computing platform, including: if the file type of the target file is a rich text type, the file characteristic information of the target file includes at least one of the following: file size, image size, image resolution, encoding format, bit rate, frame rate and key file characteristic information, and the computing power resource demand information indicates that a graphics computing node with a GPU is used as the target computing node required, then a graphics computing node with a GPU that meets the computing power resource demand information is screened out from each computing node of the cloud computing platform as the target computing node; if the file type of the target file is a plain text type, the file characteristic information of the target file includes at least one of the following: file size and key file characteristic information, and the computing power resource demand information indicates that an ordinary computing node without a GPU is used as the target computing node required, then an ordinary computing node without a GPU that meets the computing power resource demand information is screened out from each computing node of the cloud computing platform as the target computing node.
[0091] about Figure 3 The implementation of each step in the embodiment shown can be found in Figure 2 The implementation method of each step in the illustrated embodiment will not be repeated here.
[0092] The computing power scheduling method for cloud applications provided in this embodiment automatically obtains file characteristic information of files to be processed, based on this information, rationally assesses the computing power resource requirements required by cloud applications for file processing, and schedules cloud applications to computing nodes on the cloud computing platform that match these requirements. This allows for the rational scheduling of computing power resources for cloud applications, improving the utilization of cloud computing resources.
[0093] Figure 4 A schematic diagram of a computing power scheduling and file processing scenario for an exemplary cloud application provided in an embodiment of the present application.
[0094] In actual applications, the cloud computing platform includes a cloud application management and control device, a cloud storage system, and a computing resource pool. For example, the cloud application management and control device includes a file feature extraction module, a computing resource scheduling module, etc. For an introduction to the cloud computing platform, please refer to the relevant content of the above embodiment.
[0095] S1. Receive a file access request.
[0096] When a user has a file processing requirement, he can send an access request to the cloud application management and control device through the cloud application client. The access request may include the file access path of the file to be accessed. When the file access path indicates access to the file on the cloud, step S2 is executed.
[0097] S2. Determine whether the file characteristic information has been extracted.
[0098] The cloud application management and control device determines whether the file characteristic information for the file to be processed has been extracted. If not, it calls the file characteristic extraction module to extract the file characteristic information online and offline. Online extraction of file characteristic information allows for rapid extraction of file metadata, while offline extraction of file characteristic information allows for file feature extraction using intelligent algorithms. Furthermore, the extracted file characteristic information is cached and step S3 is executed. If yes, step S3 is also executed.
[0099] It is worth noting that when extracting file feature information online, a lightweight intelligent algorithm (which takes less time to execute) can also be used for file feature extraction, and there is no restriction on this. When extracting file feature information offline, a more accurate intelligent algorithm can be used for file feature extraction.
[0100] In addition, it is understandable that pre-caching file feature information for direct use when users access it can further reduce the impact on application startup speed.
[0101] S3. Obtain cached file feature information.
[0102] S4. Analyze file characteristic information.
[0103] The cloud application management and control device calls the computing resource scheduling module to parse the file characteristic information.
[0104] S5. Determine whether the file type is a rich text file. If so, proceed to step S6; if not, proceed to step S7.
[0105] Different file types have different automatic computing power decision logics based on text feature information. In addition, weighted analysis can be performed on multiple feature information involved in computing complexity to improve the accuracy of computing power decisions.
[0106] S6. Determine the computational complexity based on file characteristic information such as image resolution, encoding format, and video frame rate, and execute step S8.
[0107] S7. Determine the computational complexity based on file characteristic information such as file size or key file feature information, and execute step S8.
[0108] S8. Information on computing power resources required for decision-making and file processing.
[0109] Computing resource requirements include information such as whether a graphics computing node with a GPU is needed or a regular computing node without a GPU is needed, as well as the specifications of the required computing nodes, such as high-specification, standard-specification, and low-specification. Available computing resources are sorted from smallest to largest, in the order of low-specification computing nodes, standard-specification computing nodes, and high-specification computing nodes. Graphics computing nodes refer to computing nodes with GPUs, while regular computing nodes refer to computing nodes without GPUs. For example, rich text files require graphics computing nodes with GPUs, while plain text files use regular computing nodes without GPUs.
[0110] S9. Schedule corresponding computing resources.
[0111] S10. Complete the allocation of computing resources.
[0112] The computing resource scheduling module applies for the required computing resources from the computing resource pool based on the required computing resource demand information and completes the computing resource allocation.
[0113] S11. Start the cloud application.
[0114] For example, the cloud application distribution module is called to perform cloud application image distribution, application deployment, configuration, and start and stop.
[0115] S12. Load file data.
[0116] S13. Perform file processing.
[0117] After launching a cloud application, it can load the file data for the desired file and begin processing. Additionally, users can browse and edit files in the cloud through the cloud application client, and stream data via the cloud application protocol, enabling real-time updates of the file processing progress. After completing a file processing task, users can simply close the cloud application, automatically releasing the corresponding cloud data cache and computing resources, completing resource recycling.
[0118] Figure 5 This is a schematic diagram of the structure of a cloud computing platform provided in an embodiment of the present application. Figure 5 , the cloud computing platform may include: a cloud application management and control device 51, a cloud storage system 52 and a computing resource pool 53, the computing resource pool 53 including a plurality of computing nodes;
[0119] The cloud application management and control device 51 is configured to respond to a file processing request including a target file identifier sent by a user through a cloud application client, obtain file characteristic information of a target file corresponding to the target file identifier; determine computing resource demand information of the cloud application based on the file characteristic information of the target file; send a resource application request including the resource demand information to the computing resource pool, receive resource application response information returned by the computing resource pool, schedule the cloud application to the target computing node based on the node identifier of the target computing node in the resource application response information, and start the cloud application scheduled to the target computing node. After starting, the cloud application loads file data of the target file from the cloud storage system 52 and performs file processing on the file data of the target file.
[0120] The computing power resource pool 53 is used to respond to resource application requests, screen out target computing nodes that meet computing power resource demand information from various computing nodes, and return resource application response information to the cloud application management and control device.
[0121] Further optionally, when the computing power resource pool 53 filters out the target computing node that meets the computing power resource demand information from the various computing nodes of the cloud computing platform, it is specifically used: if the file type of the target file is a rich text type, the file characteristic information of the target file includes at least one of the following: file size, image size, image resolution, encoding format, bit rate, frame rate and key file characteristic information, and the computing power resource demand information indicates that a graphics computing node with a GPU is used as the target computing node required, then the graphics computing node with a GPU that meets the computing power resource demand information is filtered out from the various computing nodes of the cloud computing platform as the target computing node; if the file type of the target file is a plain text type, the file characteristic information of the target file includes at least one of the following: file size and key file characteristic information, and the computing power resource demand information indicates that an ordinary computing node without a GPU is used as the target computing node required, then the ordinary computing node without a GPU that meets the computing power resource demand information is filtered out from the various computing nodes of the cloud computing platform as the target computing node.
[0122] Further optionally, when the cloud application management and control device 51 determines the computing power resource demand information of the cloud application based on the file characteristic information of the target file, it is specifically used to: determine the computational complexity of the target file based on the file characteristic information of the target file; determine the computing power resource demand information of the cloud application based on the computational complexity of the target file.
[0123] Further optionally, when the cloud application management and control device 51 determines the computing power resource demand information of the cloud application based on the computational complexity of the target file, it is specifically used to: determine the computing power resource demand information of the cloud application based on the computational complexity of the target file and the node information of each computing node of the cloud computing platform, wherein the node information includes load pressure and / or remaining resource information.
[0124] Further optionally, when the cloud application management and control device 51 determines the computational complexity of the target file based on the file characteristic information of the target file, it is specifically used to: determine the target computational complexity determination method that matches the file type of the target file from the computational complexity determination methods corresponding to each file type based on the file type in the file characteristic information of the target file; and use the target computational complexity determination method to process the file characteristic information of the target file to determine the computational complexity of the target file.
[0125] Further optionally, when the cloud application management and control device 51 obtains the file characteristic information of the target file corresponding to the target file identifier, it is specifically used to: search for the file characteristic information of the target file from the file characteristic information of each file already stored in the cloud computing platform according to the target file identifier;
[0126] If the file characteristic information of the target file is not found in the cloud computing platform, the file metadata information of the target file is obtained from the cloud storage system; the file metadata information of the target file is used as the file characteristic information of the target file, and the target file identifier and file characteristic information of the target file are associated and saved in the cloud computing platform.
[0127] Further optionally, before using the file metadata information of the target file as the file characteristic information of the target file, the cloud application management and control device 51 is further configured to: perform feature extraction on the file data of the target file cached in the cloud storage system to obtain key file characteristic information of the target file;
[0128] Correspondingly, when the cloud application management and control device 51 uses the file metadata information of the target file as the file characteristic information of the target file, it is specifically used to: use the file metadata information and key file feature information of the target file as the file characteristic information of the target file.
[0129] Further optionally, the cloud application management and control device 51 performs feature extraction on the file data of the target file cached in the cloud storage system to obtain the key file feature information of the target file, which is specifically used to: select a target feature extraction algorithm whose algorithm performance matches the file metadata information of the target file from multiple feature extraction algorithms; use the target feature extraction algorithm to perform feature extraction on the file data of the target file cached in the cloud storage system to obtain the key file feature information of the target file.
[0130] Further optionally, after the cloud application completes processing the target file, the cloud application management and control device 51 is also used to: respond to a cloud application shutdown request sent by the user through the cloud application client, close the cloud application, and release the computing resources occupied by the cloud application in the target computing node.
[0131] The specific manner in which the cloud application management and control device 51 in the above embodiment performs operations has been described in detail in the embodiment of the relevant method and will not be elaborated on here.
[0132] The technical solution provided by the embodiment of the present application takes into account that cloud applications consume different cloud computing resources when processing different files. To this end, for the file processing scenarios of cloud applications, the file characteristic information of the files to be processed is automatically obtained, and based on the file characteristic information of the files to be processed, the computing power resource requirements required by the cloud application for file processing are reasonably evaluated. The cloud application is then scheduled to a computing node in the cloud computing platform that matches the computing power resource requirements, and the cloud application is started to process the file. This effectively improves the file processing efficiency of the cloud application and the resource utilization of cloud computing resources, thereby improving the user experience of the cloud application.
[0133] It should be noted that the execution entity of each step of the method provided in the above embodiment can be the same device, or the method can be executed by different devices. For example, the execution entity of steps 201 to 205 can be device A; for another example, the execution entity of steps 201 and 202 can be device A, and the execution entity of steps 203 to 205 can be device B; and so on.
[0134] In addition, some of the processes described in the above embodiments and the accompanying drawings include multiple operations that appear in a specific order, but it should be clearly understood that these operations may not be executed in the order in which they appear in this article or may be executed in parallel. The serial numbers of the operations, such as 201, 202, etc., are only used to distinguish between different operations, and the serial numbers themselves do not represent any execution order. In addition, these processes may include more or fewer operations, and these operations may be executed in sequence or in parallel. It should be noted that the descriptions of "first", "second", etc. in this article are used to distinguish different messages, devices, modules, etc., and do not represent a sequential order, nor do they limit "first" and "second" to different types.
[0135] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with the relevant laws, regulations and standards of relevant countries and regions, and provide corresponding operation entrances for users to choose to authorize or refuse.
[0136] Figure 6 This is a schematic diagram of the structure of a computer device provided in an embodiment of the present application. Figure 6 As shown, the computer device includes: a memory 61 and a processor 62;
[0137] The memory 61 is used to store computer programs and can be configured to store various other data to support operations on the computing platform. Examples of such data include instructions for any application or method operating on the computing platform, contact data, phone book data, messages, pictures, videos, etc.
[0138] The memory 61 can be implemented by any type of volatile or non-volatile memory 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, magnetic disk or optical disk.
[0139] The processor 62 is coupled to the memory 61 and is used to execute the computer program in the memory 61 to execute the steps in the file processing method of the cloud application or the computing power scheduling method of the cloud application.
[0140] Further, if Figure 6 As shown, the computer device also includes: a communication component 63, a display 64, a power component 65, an audio component 66 and other components. Figure 6 Only some components are shown schematically, which does not mean that the computer equipment only includes Figure 6 In addition, Figure 6 The components in the dotted box are optional components, not required components, and the specific components may depend on the product form of the computer device.
[0141] The detailed implementation process of the processor performing each action can be found in the relevant description in the aforementioned embodiments, which will not be repeated here.
[0142] Accordingly, an embodiment of the present application further provides a computer-readable storage medium storing a computer program, which, when executed, can implement the steps that can be executed by a computer device in the above method embodiment.
[0143] Accordingly, an embodiment of the present application also provides a computer program product, including a computer program / instruction. When the computer program / instruction is executed by a processor, the processor is enabled to implement the steps that can be executed by a computer device in the above method embodiment.
[0144] The above-mentioned communication component is configured to facilitate wired or wireless communication between the device where the communication component is located and other devices. The device where the communication component is located can access a wireless network based on a communication standard, such as WiFi (Wireless Fidelity), 2G (2 Generation, 2 Generation), 3G (3 Generation, 3 Generation), 4G (4 Generation, 4 Generation) / LTE (Long Term Evolution), 5G (5 Generation, 5 Generation) and other mobile communication networks, or a combination thereof. In an exemplary embodiment, the communication component 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 also 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 wide band (UWB) technology, Bluetooth (BT) technology and other technologies.
[0145] The above-mentioned display includes a screen, which may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor can not only sense the boundary of the touch or slide action, but also detect the duration and pressure associated with the touch or slide operation.
[0146] The power supply assembly provides power to various components of the device in which the power supply assembly is located. The power supply assembly may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to the device in which the power supply assembly is located.
[0147] The above-mentioned audio component can be configured to output and / or input audio signals. For example, the audio component includes a microphone (MIC), and when the device where the audio component is located is in an operating mode, such as call mode, recording mode, and voice recognition mode, the microphone is configured to receive external audio signals. The received audio signal can be further stored in a memory or sent via a communication component. In some embodiments, the audio component also includes a speaker for outputting audio signals.
[0148] Those skilled in the art will appreciate that the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application can adopt the form of a computer program product implemented on one or more computer-readable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.
[0149] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the steps in the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0150] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.
[0151] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.
[0152] In a typical configuration, a computing device includes one or more processors (Central Processing Unit, CPU), input / output interfaces, network interfaces, and memory.
[0153] Memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of a computer-readable medium.
[0154] Computer-readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. The information can be computer-readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, Phase Change RAM (PRAM), Static Random-Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically-Erasable Programmable Read-Only Memory (EEPROM), flash memory or other memory technology, CD-ROM, Digital Versatile Disc (DVD) or other optical storage, magnetic cassettes, magnetic tape disk storage or other magnetic storage devices or any other non-transmission medium that can be used to store information that can be accessed by a computing device. According to the definition in this article, computer-readable media does not include transitory media such as modulated data signals and carrier waves.
[0155] It should also be noted that the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, commodity, or apparatus that includes a series of elements includes not only those elements but also other elements not explicitly listed, or includes elements inherent to such process, method, commodity, or apparatus. In the absence of further limitations, an element defined by the phrase "comprises a ..." does not exclude the presence of other identical elements in the process, method, commodity, or apparatus that includes the element.
[0156] The above are merely embodiments of the present application and are not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application should all be included within the scope of the claims of the present application.
Claims
1. A file processing method for cloud applications, characterized in that: include: In response to a file processing request including a target file identifier sent by a user through a cloud application client, searching for file characteristic information of the target file from file characteristic information of various files already stored on the cloud computing platform according to the target file identifier; If the file characteristic information of the target file is not found in the cloud computing platform, obtaining the file metadata information of the target file from the cloud storage system; Selecting a target feature extraction algorithm whose algorithm performance matches the file metadata information of the target file from a plurality of feature extraction algorithms; Using the target feature extraction algorithm to perform feature extraction on the file data of the target file cached in the cloud storage system to obtain key file feature information of the target file; Using the file metadata information and key file feature information of the target file as the file characteristic information of the target file; In a case where the file type of the target file is a rich text file, determining the computational complexity of the target file based on the image resolution, encoding format, and video frame rate in the file characteristic information; If the file type of the target file is not a rich text file, determining the computational complexity of the target file based on the file size or key file feature information in the file feature information; wherein determining the computational complexity of the target file includes: performing a weighted summation of the computational complexities corresponding to each feature data in the file feature information to obtain the computational complexity of the target file; Determining computing power resource requirement information of the cloud application based on the computational complexity of the target file, wherein the computing power resource requirement information is determined using a machine learning model, and the machine learning model is obtained by training the model using a plurality of collected training data, wherein any training data includes the computational complexity of the file, node information of each computing node of the cloud computing platform, and annotated computing power resource information; Selecting a target computing node that meets the computing resource requirement information from each computing node of the cloud computing platform; The cloud application is dispatched to the target computing node, and the cloud application dispatched to the target computing node is started to process the target file.
2. The method according to claim 1, characterized in that Determining computing resource requirement information of the cloud application according to the computational complexity of the target file includes: The computing power resource demand information of the cloud application is determined based on the computational complexity of the target file and the node information of each computing node of the cloud computing platform, wherein the node information includes load pressure and / or remaining resource information.
3. The method according to claim 1 or 2, characterized in that After the cloud application completes processing the target file, the method further includes: In response to a closing request for the cloud application sent by the user through a cloud application client, the cloud application is closed, and computing resources occupied by the cloud application in the target computing node are released.
4. The method according to claim 1 or 2, characterized in that Selecting a target computing node that meets the computing resource requirement information from each computing node of the cloud computing platform includes: A resource application request is sent to a computing resource pool in a cloud computing platform, so that the computing resource pool selects a target computing node that meets the computing resource demand information from each computing node therein.
5. The method according to claim 1 or 2, characterized in that Selecting a target computing node that meets the computing resource requirement information from each computing node of the cloud computing platform includes: If the file type of the target file is a rich text type, the file characteristic information of the target file includes at least one of the following: file size, image size, image resolution, encoding format, bit rate, frame rate, and key file characteristic information, and the computing power resource requirement information indicates that a graphics computing node with a GPU is used as the required target computing node, then a graphics computing node with a GPU that meets the computing power resource requirement information is screened out from various computing nodes of the cloud computing platform as the target computing node; If the file type of the target file is a plain text type, the file characteristic information of the target file includes at least one of the following: file size and key file feature information, and the computing power resource requirement information indicates that an ordinary computing node without a GPU is used as the target computing node required, then an ordinary computing node without a GPU that meets the computing power resource requirement information is screened out from the various computing nodes of the cloud computing platform as the target computing node.
6. A computing power scheduling method for cloud applications, characterized in that: include: Get the target file ID sent by the user through the cloud application client, Searching for file characteristic information of the target file from file characteristic information of various files already stored on the cloud computing platform according to the target file identifier; If the file characteristic information of the target file is not found in the cloud computing platform, obtaining the file metadata information of the target file from the cloud storage system; Selecting a target feature extraction algorithm whose algorithm performance matches the file metadata information of the target file from a plurality of feature extraction algorithms; Using the target feature extraction algorithm to perform feature extraction on the file data of the target file cached in the cloud storage system to obtain key file feature information of the target file; Using the file metadata information and key file feature information of the target file as the file characteristic information of the target file; In a case where the file type of the target file is a rich text file, determining the computational complexity of the target file based on the image resolution, encoding format, and video frame rate in the file characteristic information; If the file type of the target file is not a rich text file, determining the computational complexity of the target file based on the file size or key file feature information in the file feature information; wherein determining the computational complexity of the target file includes: performing a weighted summation of the computational complexities corresponding to each feature data in the file feature information to obtain the computational complexity of the target file; Determining computing power resource requirement information of the cloud application based on the computational complexity of the target file, wherein the computing power resource requirement information is determined using a machine learning model, and the machine learning model is obtained by training the model using a plurality of collected training data, wherein any training data includes the computational complexity of the file, node information of each computing node of the cloud computing platform, and annotated computing power resource information; Selecting a target computing node that meets the computing resource requirement information from each computing node of the cloud computing platform; The cloud application is dispatched to the target computing node.
7. A cloud computing platform, characterized in that: include: A cloud application management and control device, a cloud storage system, and a computing resource pool, wherein the computing resource pool includes multiple computing nodes; The cloud application management and control device is configured to respond to a file processing request including a target file identifier sent by a user through a cloud application client, and search for file characteristic information of the target file from file characteristic information of various files already stored on the cloud computing platform according to the target file identifier; If the file characteristic information of the target file is not found in the cloud computing platform, obtaining the file metadata information of the target file from the cloud storage system; selecting a target feature extraction algorithm whose algorithm performance matches the file metadata information of the target file from multiple feature extraction algorithms; Using the target feature extraction algorithm to perform feature extraction on the file data of the target file cached in the cloud storage system to obtain key file feature information of the target file; Using the file metadata information and key file feature information of the target file as the file characteristic information of the target file; and determining the computational complexity of the target file based on the image resolution, encoding format, and video frame rate in the file characteristic information when the file type of the target file is a rich text file; In the case where the file type of the target file is not a rich text file, the computational complexity of the target file is determined based on the file size or key file feature information in the file feature information; the computing power resource demand information of the cloud application is determined based on the file computational complexity of the target file; a resource application request including the resource demand information is sent to the computing power resource pool, and a resource application response information returned by the computing power resource pool is received, and the cloud application is scheduled to the target computing node according to the node identifier of the target computing node in the resource application response information, and the cloud application scheduled to the target computing node is started, and the cloud application after startup loads the file data of the target file from the cloud storage system and performs file processing on the file data of the target file; wherein, determining the computational complexity of the target file includes: performing weighted summation on the computational complexity corresponding to each feature data in the file feature information to obtain the computational complexity of the target file; the computing power resource demand information is determined using a machine learning model, and the machine learning model is obtained by model training using a plurality of collected training data, and any training data includes the computational complexity of the file, the node information of each computing node of the cloud computing platform, and the annotated computing power resource information; The computing power resource pool is used to respond to the resource application request, filter out the target computing node that meets the computing power resource demand information from each computing node, and return resource application response information to the cloud application management and control device.
8. A computer device, characterized in that: include: memory and processor; The memory is used to store computer programs; The processor is coupled to the memory and configured to execute the computer program to perform the steps of the method according to any one of claims 1 to 6.
9. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the processor is enabled to implement the steps of the method according to any one of claims 1 to 6.
Citation Information
Patent Citations
Resource balance scheduling method based on edge computing environment
CN113157443A
Resource scheduling method and device for cloud computing platform and storage medium
CN113867937A