WO2018121738A1 - 流数据任务的处理方法和装置 - Google Patents
流数据任务的处理方法和装置 Download PDFInfo
- Publication number
- WO2018121738A1 WO2018121738A1 PCT/CN2017/119880 CN2017119880W WO2018121738A1 WO 2018121738 A1 WO2018121738 A1 WO 2018121738A1 CN 2017119880 W CN2017119880 W CN 2017119880W WO 2018121738 A1 WO2018121738 A1 WO 2018121738A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- stream data
- processing
- task
- node
- subtasks
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 225
- 230000002159 abnormal effect Effects 0.000 claims description 18
- 230000005856 abnormality Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 10
- 238000012544 monitoring process Methods 0.000 claims description 7
- 238000000605 extraction Methods 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 abstract description 7
- 238000007726 management method Methods 0.000 description 81
- 230000005540 biological transmission Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 5
- 238000003672 processing method Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234336—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by media transcoding, e.g. video is transformed into a slideshow of still pictures or audio is converted into text
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2405—Monitoring of the internal components or processes of the server, e.g. server load
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2407—Monitoring of transmitted content, e.g. distribution time, number of downloads
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/647—Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
- H04N21/64723—Monitoring of network processes or resources, e.g. monitoring of network load
Definitions
- the present invention relates to the field of communications technologies, and in particular, to a method for processing a stream data task and a device for processing a stream data task.
- the video stream data pushed by the video recording terminal is transcoded to obtain video stream data of multiple resolutions for the user to select.
- the transcoding server uses multiple built-in threads to process multiple transcoding tasks at the same time. Each thread processes one transcoding task, and after the transcoding ends, the obtained video stream data is pushed to the preset storage space. .
- the existing method implements transcoding processing of video stream data, there are the following defects: multiple threads built into the transcoding server are associated with each other, and when a thread processes a problem with the transcoding task, such as a thread stuck or crashed, As a result, the entire transcoding server does not work properly, which affects the progress of other transcoding tasks.
- the present invention has been made in order to provide a processing method of a streaming data task and a corresponding streaming data task processing apparatus that overcome the above problems or at least partially solve the above problems.
- a method for processing a streaming data task including:
- each target processing node to run at least one processing process to process the plurality of stream data subtasks, wherein one of the called processing processes processes one or more stream data subtasks;
- a processing apparatus for streaming data tasks including:
- a task splitting module configured to split a stream data task into multiple stream data subtasks
- a subtask assignment module configured to allocate a plurality of stream data subtasks to at least one target processing node
- Processing configured to invoke each target processing node to run at least one processing process to process the plurality of stream data subtasks, wherein one of the called processing processes processes one or more stream data subtasks;
- the processing result receiving module is configured to receive the processing result of the feedback of the stream data subtask by each target processing node, and collect the processing result of the stream data task.
- a computer program comprising computer readable code, when the computer readable code is run on a computing device, causes the computing device to perform processing of a streaming data task as described above method.
- a computer readable medium storing a computer program as described above is provided.
- the processing process in the target processing node is called to process multiple stream data subtasks, and since multiple processing processes do not affect each other during execution, the problem of one thread in the background technology is avoided.
- the occurrence of the situation that cannot work normally ensures the normal operation of the target processing node.
- the processing result of each stream data subtask and the processing result of the collected stream data task can be used as the basis for task monitoring and subtask distribution, thereby perfecting the processing mechanism.
- a management process is built in each transmission node and a management node is set, and the management process and the management node are used to manage the processing of the flow data subtask.
- the management process or the management node may handle the abnormality.
- the stream data subtask reassigns the processing process or the processing node, thereby ensuring the smooth completion of the processing of the stream data task. Since the abnormal repair in the process is completed by the management process and the management node, no manual operation is required, so a large number of tasks can be processed at the same time, the task processing efficiency is improved, and the waiting time of the processing operation of the stream data is shortened.
- the management node is used to monitor the load status of each processing node, and the target transmission node is allocated for multiple stream data subtasks based on the load status of each processing node extracted from the management node, thereby ensuring the load of multiple processing nodes. balanced.
- FIG. 1 is a flow chart showing the steps of a method for processing a streaming data task according to the first embodiment of the present invention
- FIG. 2 is a flow chart showing the steps of a method for processing a streaming data task according to Embodiment 2 of the present invention
- FIG. 3 is a structural block diagram of a processing apparatus for streaming data tasks according to Embodiment 3 of the present invention.
- FIG. 4 is a block diagram showing the structure of a processing device for streaming data tasks according to Embodiment 4 of the present invention.
- Figure 5 is a schematic block diagram showing the structure of a computing device for performing a processing method of a streaming data task according to the present invention
- Fig. 6 schematically shows a storage unit for holding or carrying program code of a processing method for implementing a streaming data task according to the present invention.
- FIG. 1 is a schematic flowchart of the steps of a method for processing a stream data task according to the first embodiment of the present invention, which may specifically include the following steps:
- Step 101 Split the stream data task into multiple stream data subtasks.
- the method according to the embodiment of the present invention is applied to a scenario in which streaming data transmitted in a streaming manner exists, such as a streaming data transcoding scenario, a streaming data transmission scenario, and the like.
- the stream data task may be a video stream transcoding task, an audio stream transcoding task, a video stream transmission task, an audio stream transmission task, etc.
- the stream data task carries corresponding stream data.
- the system for performing the method of the embodiment of the present invention includes a management node and a plurality of processing nodes, each processing node has a plurality of processing processes built therein, wherein the management node is used for receiving and distributing streaming data tasks, and is used for multiple processing The operation of the node is managed; the processing process is used to process the divided stream data subtask.
- a processing process processes a subtask, and each processing process may sequentially process a plurality of subtasks assigned to the processing process according to the task allocation order.
- the management node and the plurality of processing nodes may be nodes in a Content Delivery Network (CDN), and the streaming data task between the management node and the plurality of processing nodes may be transmitted using the content distribution network.
- CDN Content Delivery Network
- the management node After receiving the stream data task, the management node splits it into multiple stream data subtasks to process the stream data subtasks using the processing process in the processing node.
- the stream data task can be divided according to the type of the stream data task.
- the task instruction transcodes the 1080P format video stream into three streams of ultra clear, high definition, and standard definition
- the management node The video stream transcoding task is divided into three subtasks for transcoding stream data of 1080P format into super clear stream data, transcoding stream data of 1080P format into high definition stream data, and transcoding stream data of 1080P format into standard stream stream data;
- the management node may divide the stream data carried by the stream data task into multiple sub-stream data, and each stream data sub-task is to transmit partial stream data.
- Step 102 Assign a plurality of stream data subtasks to at least one target processing node.
- the stream data subtask is processed by the processing node, and after the management node completes the splitting of the stream data task, at least one target processing node is selected from the plurality of processing nodes, and then the obtained plurality of stream data are obtained.
- the task is assigned to the selected target processing node.
- the flow data subtasks assigned to a target processing node may be one or more, for example, when the stream data subtasks are three, three stream data subtasks are assigned to three different target processing nodes, or Two stream data subtasks are assigned to one target transport node, and the remaining one stream data subtask is assigned to another target transport node.
- the target processing node may be allocated to the flow data subtask according to a plurality of factors, and specifically, the target transmission node may be selected according to one or more of the load condition of each processing node and the geographical location information of the area where the management node is located.
- Step 103 Call each target processing node to run at least one processing process to process multiple stream data subtasks.
- each target transit node After receiving the stream data subtask, each target transit node processes the stream data using the built-in processing process. One or more processing processes may be selected to process the stream data subtask according to the remaining processing capabilities of each processing process.
- a target transport node When a target transport node receives multiple stream data subtasks, it may call multiple processing processes to process the stream data subtasks, and each processing process may process one or more stream data subtasks; or may call a processing process. Process multiple stream data subtasks.
- Step 104 Receive processing results of the flow data subtask feedback of each target processing node, and collect the processing result of the streaming data task.
- the target processing node may obtain the processing result of the stream data subtask and feed it back to the management node.
- the processing result may be preset information, for example, it is preset that the processing result is 1 when the stream data subtask processing is completed, and the processing result is 2 when the stream data subtask processing is abnormal.
- the target transmission node may determine the processing result of the stream data subtask in various manners. For example, the target transmission node may periodically detect the processing process to determine the processing result of each stream data subtask; or, when the stream data subtask is processed. The processing process may send an instruction or information indicating that the processing is completed. If the target transmission node does not receive the instruction or information sent by the processing process indicating that the processing is completed within the preset duration, the processing result of the flow data subtask is determined to be an abnormal processing. Otherwise it is processed normally.
- the management node may summarize the processing results of the stream data subtasks fed back by the target processing nodes to obtain the processing result of the stream data tasks, and may determine the processing status of the stream data tasks according to the feedback result.
- the processing process in the target processing node is called to process multiple stream data subtasks, and since multiple processing processes do not affect each other during execution, the problem of one thread in the background technology is avoided.
- the occurrence of the situation that cannot work normally ensures the normal operation of the target processing node.
- the processing result of each stream data subtask and the processing result of the collected stream data task can be used as the basis for task monitoring and subtask distribution, thereby perfecting the processing mechanism.
- FIG. 2 a schematic flowchart of a method for processing a flow data task according to a second embodiment of the present invention is shown. Specifically, the method may include the following steps:
- Step 201 Split the stream data task into multiple stream data subtasks.
- the method according to the embodiment of the present invention is applied to a scenario in which streaming data transmitted in a streaming manner exists, such as a streaming data transcoding scenario, a streaming data transmission scenario, and the like.
- the stream data task is a transcoding task.
- the flow data processing instruction that is, the transcoding instruction, may be pre-defined to carry multiple transcoding formats.
- the step of splitting the streaming data task into multiple streaming data subtasks may include: performing multiple transcodings according to the streaming data processing instruction.
- the stream data processing instruction is to transcode the video stream data of the 1080P format into two formats, 720P and 480P, and carries two transcoding formats, 720P and 480P, and the management node performs two transcoding formats according to the flow data processing instruction. Transcoding video stream data in 1080P format to obtain video stream data in 720P and 480P formats.
- the service node can also store the corresponding relationship between the service identifier and the transcoding format in advance, and the flow data processing instruction, that is, the transcoding instruction, carries the service identifier, where the service identifier can indicate the specific application, and can be the application name, ie, AppName, service identifier, and
- the corresponding relationship of the transcoding format may be a one-to-many relationship.
- the step of splitting the streaming data task into multiple stream data subtasks may include: extracting a service identifier carried by the stream data processing instruction, and searching for the service identifier A plurality of transcoding formats are set, and the stream data processing task is split into a plurality of stream data subtasks according to the plurality of transcoding formats found.
- the stream data processing instruction may carry the stream data address of the stream data.
- the management node may pass the stream data address. The following steps are performed to obtain stream data: receiving a stream data processing instruction carrying a stream data address, and downloading the stream data to be processed by accessing the stream data address.
- the stream data address carried by the stream data processing instruction received by the management node is ***/AppName/SN, where AppName is the service identifier, SN is the client identifier, and the management node can obtain the stream data by accessing the stream data address, and Determining a plurality of transcoding formats required according to the correspondence between the pre-stored service identifier and the transcoding format, and further splitting the stream data task into multiple stream data subtasks according to the determined plurality of transcoding formats, each The stream data subtask corresponds to a transcoding format.
- Step 202 Assign a plurality of stream data subtasks to at least one target processing node.
- the management node is used to manage multiple processing nodes, manage the load status of each processing node, and the processing status of the processing processes in each processing node.
- the management node can record the load status of each processing node and perform the operation and update continuously.
- the management node may send an allocation request for the target processing node of the multiple flow data subtasks to the scheduling, and the scheduling may allocate the target processing node to the multiple flow data subtasks according to the load status of each processing node, specifically The processing node with light load is selected as the target processing node to ensure load balancing of multiple processing nodes, and the number of allocated target processing nodes may be one or more, and then the scheduled target processing node is fed back to the management node.
- the step of allocating the multiple flow data subtasks to the at least one target processing node in this step may include: obtaining the load status of each processing node from the management node, and selecting the load status. At least one target processing node that satisfies the set condition, and delivers at least one stream data subtask to each selected target processing node.
- the setting condition may include a plurality of defined contents, such as a lightly loaded N (N is a positive integer) processing nodes, a processing node whose number of tasks to be processed is less than M (M is a positive integer), and the like.
- a target processing node can allocate one or more stream data subtasks.
- each processing node corresponds to a task queue, and the queue sequence of the plurality of stream data subtasks allocated to the processing node is recorded in the task queue.
- the queue order of the stream data subtasks in each processing node is adjusted.
- the step of adjusting the queuing sequence of the stream data subtasks in each processing node may include: acquiring a task queue of each target processing node; setting a sequence of the stream data subtasks to be delivered in each task queue, so that each stream The difference of the processing time of the data subtask is less than the set threshold, wherein the set threshold can be set according to the actual.
- the step of setting the stream data subtasks to be delivered in each task queue so that the difference of the processing time of each stream data subtask is less than a set threshold may include: processing the task queue according to each target node
- the existing stream data subtasks are used to predict the processing time of each stream data subtask to be delivered; the target stream data subtask with the latest processing time is determined; and the processing time of the target stream data subtasks is scheduled to be delivered.
- the ordering of the stream data subtasks assigned to other processing nodes is adjusted backward, if other stream data subtasks in the target processing node are processed and not yet processed.
- the scheduled processing time waits for a certain time interval before processing the stream data subtask.
- a management process is set in each transport node, and the management process is used to monitor and manage the running conditions of multiple processing, and feed back the processing status of the flow data subtask to the management node.
- the task queue of each target processing node may be set in the management process, and the step of acquiring the task queue of each target processing node may include: acquiring the task queue from the management process of each target processing node.
- the task queue recorded by the management process may include a plurality of task sub-queues set for a plurality of processing processes, and the number of sub-tasks that are processed by the corresponding processing process is known from a certain task sub-queue.
- the order of the stream data subtasks may be adjusted in a task subqueue according to the latest processing time, or an appropriate task subqueue may be selected according to the latest processing time. , sort the stream data subtask to the end of the task subqueue.
- Step 203 Call each target processing node to run at least one processing process to process the plurality of stream data subtasks, wherein one of the called processing processes processes one or more stream data subtasks.
- Step 204 Receive a processing result that each target processing node feeds back to the stream data subtask, and collect the processing result of the stream data task.
- Step 205 Monitor the processing progress of each processing process, and push the stream data corresponding to the processed stream data subtask to the storage server for calling by the streaming node of the streaming data or the playing client of the streaming data.
- a management process is built in each processing node, and the management process can be used to monitor the processing progress of multiple processing processes in the processing node. If the processing of the flow data subtask is completed, the target processing node can be notified that the processing is completed. The stream data corresponding to the stream data subtask is pushed to the storage server.
- the storage server may be preset, may be indicated by a stream data processing instruction, and may be scheduled to be allocated from a plurality of preset storage servers. The invention is not limited herein.
- the storage server After receiving the pushed stream data, the storage server transmits the stream data to the transmission node and the playback client for transmission or playback if the transmission node of the stream data or the call request of the playback client is received.
- the method further includes:
- Embodiments of the present invention monitor and manage the operation of multiple processing processes using a management process built into the processing node.
- the processing process may report the processing exception notification to the management process, and the management process will process the processing abnormality notification after the processing process receives the processing exception notification.
- Other processing processes, load status, load status, etc. are viewed and analyzed, and other processing processes that are running well and lightly loaded are selected according to the analysis result, and the flow data subtasks that handle the abnormality are reprocessed, thereby ensuring the flow data.
- the subtask was successfully completed.
- the management process can periodically check the running status of the processing process according to the preset time interval. If an abnormality is detected in the processing process, the flow data subtask for processing the abnormality is re-processed. Assign processing progress.
- the method further includes:
- a processing process that calls the reassigned target processing node processes the flow data subtask that handles the exception.
- the management process may The management node reports a processing exception notification.
- the management node may re-allocate a target processing node for processing the abnormal flow data subtask in other processing nodes according to the load condition of other processing nodes or other factors, and the processing node will process The abnormal stream data subtask is sent to the reassigned target processing node for processing.
- the newly allocated target processing node After receiving the stream data subtask, the newly allocated target processing node calls a processing process inside it to process the subtask. Specifically, the management process in the target processing node can view and analyze the situation of each processing process, and select a well-run and lightly loaded processing process to process the sub-task.
- the method in the embodiment of the present invention can be applied to a video stream transcoding scenario, and the set process management process and the management node can be used to manage the video stream transcoding process.
- the processing process is abnormal, the management process or the management node is processed.
- the abnormal stream data transcoding subtask reassigns the processing process or the processing node, thereby ensuring the smooth completion of the video stream transcoding task. Since the abnormal repair in the process is completed by the management process and the management node, no manual operation is required, so a large number of transcoding tasks can be processed at the same time, and the transcoding requirement is satisfied.
- the processing process in the target processing node is called to process multiple stream data subtasks, and since multiple processing processes do not affect each other during execution, the problem of one thread in the background technology is avoided.
- the occurrence of the situation that cannot work normally ensures the normal operation of the target processing node.
- the processing result of each stream data subtask and the processing result of the collected stream data task can be used as the basis for task monitoring and subtask distribution, thereby perfecting the processing mechanism.
- a management process is built in each transmission node and a management node is set, and the management process and the management node are used to manage the processing of the flow data subtask.
- the management process or the management node may handle the abnormality.
- the stream data subtask reassigns the processing process or the processing node, thereby ensuring the smooth completion of the processing of the stream data task. Since the abnormal repair in the process is completed by the management process and the management node, no manual operation is required, so a large number of tasks can be processed at the same time, the task processing efficiency is improved, and the waiting time of the processing operation of the stream data is shortened.
- the management node is used to monitor the load status of each processing node, and the target transmission node is allocated for multiple stream data subtasks based on the load status of each processing node extracted from the management node, thereby ensuring the load of multiple processing nodes. balanced.
- FIG. 3 is a structural block diagram of a processing apparatus for streaming data tasks according to Embodiment 3 of the present invention.
- the processing device of the stream data task in FIG. 3 includes:
- the task splitting module 301 is configured to split the stream data task into multiple stream data subtasks.
- the subtask assignment module 302 is configured to allocate a plurality of stream data subtasks to at least one target processing node.
- the processing process invoking module 303 is configured to invoke each target processing node to run at least one processing process to process the plurality of stream data subtasks, wherein one of the called processing processes processes one or more stream data subtasks.
- the processing result receiving module 304 is configured to receive the processing result of the feedback of the stream data subtasks by each target processing node, and collect the processing result of the stream data task.
- the processing process in the target processing node is called to process multiple stream data subtasks, and since multiple processing processes do not affect each other during execution, the problem of one thread in the background technology is avoided.
- the occurrence of the situation that cannot work normally ensures the normal operation of the target processing node.
- the processing result of each stream data subtask and the processing result of the collected stream data task can be used as the basis for task monitoring and subtask distribution, thereby perfecting the processing mechanism.
- Fig. 4 is a block diagram showing the structure of a processing apparatus for streaming data tasks according to a fourth embodiment of the present invention.
- the processing device of the stream data task in FIG. 4 includes:
- the task splitting module 401 is configured to split the stream data task into multiple stream data subtasks.
- the subtask assignment module 402 is configured to allocate a plurality of stream data subtasks to at least one target processing node.
- the processing process invoking module 403 is configured to invoke each target processing node to run at least one processing process to process the plurality of streaming data subtasks, wherein one of the invoked processing processes processes one or more stream data subtasks.
- the processing result receiving module 404 is configured to receive the processing result of the feedback of each of the target processing nodes for the stream data subtask, and collect the processing result of the stream data task.
- the processing progress monitoring module 405 is configured to monitor the processing progress of each processing process.
- the streaming data pushing module 406 is configured to push the stream data corresponding to the processed stream data subtask to the storage server for calling by the streaming node of the streaming data or the playing client of the streaming data.
- the subtask assignment module includes:
- a load status obtaining module configured to acquire a load status of each processing node from the management node
- the target processing node selection module is configured to select at least one target processing node whose load status meets the set condition, and deliver at least one flow data subtask to each selected target processing node.
- the device further includes:
- the task queue obtaining module is configured to acquire a task queue of each target processing node before the at least one stream data subtask is sent to each selected target processing node, and each processing node corresponds to one task queue;
- the sort setting module is configured to set the sorting of the stream data subtasks to be delivered in each task queue, so that the difference of the processing time of each stream data subtask is less than a set threshold.
- the sort setting module includes:
- the processing time prediction module is configured to predict the processing time of each stream data subtask to be delivered according to the existing stream data subtasks in the task queue of each target processing node;
- a target stream data subtask determining module configured to determine a target stream data subtask with the latest processing time
- the processing time scheduling module is configured to schedule the processing time of each stream data subtask to be delivered according to the processing time of the target stream data subtask.
- the task queue obtaining module is specifically configured to acquire a task queue from a management process of each target processing node.
- the device further includes:
- Processing the instruction receiving module configured to receive a stream data processing instruction carrying the stream data address before the splitting the stream data task into the plurality of stream data subtasks;
- the stream data downloading module is configured to download the stream data to be processed by accessing the stream data address.
- the task splitting module is configured to split the stream data processing task into corresponding transcoding formats according to multiple transcoding formats carried by the stream data processing instruction. Multiple stream data subtasks, the stream data tasks being transcoding tasks.
- the task splitting module includes:
- a service identifier extraction module configured to extract a service identifier carried by the stream data processing instruction, where the stream data task is a transcoding task;
- transcoding format searching module configured to search for multiple transcoding formats preset for the service identifier
- the task division module is configured to split the stream data processing task into multiple stream data subtasks according to the plurality of transcoding formats found.
- the device further includes:
- the first notification receiving module is configured to receive a processing exception notification reported by the processing process to the management process
- the processing process reallocates the module and is configured to reallocate the processing process for the flow data subtask that handles the exception within the current target processing node.
- the device further includes:
- the second notification receiving module is configured to receive a processing abnormality notification reported by the current target processing node to the management node;
- the target processing node reassigns the module, configured to reallocate a target processing node for processing the abnormal stream data subtask in the other processing node;
- the target processing node invokes a module configured to call a processing process of the reassigned target processing node to process the flow data subtask that handles the exception.
- the processing process in the target processing node is called to process multiple stream data subtasks, and since multiple processing processes do not affect each other during execution, the problem of one thread in the background technology is avoided.
- the occurrence of the situation that cannot work normally ensures the normal operation of the target processing node.
- the processing result of each stream data subtask and the processing result of the collected stream data task can be used as the basis for task monitoring and subtask distribution, thereby perfecting the processing mechanism.
- a management process is built in each transmission node and a management node is set, and the management process and the management node are used to manage the processing of the flow data subtask.
- the management process or the management node may handle the abnormality.
- the stream data subtask reassigns the processing process or the processing node, thereby ensuring the smooth completion of the processing of the stream data task. Since the abnormal repair in the process is completed by the management process and the management node, no manual operation is required, so a large number of tasks can be processed at the same time, the task processing efficiency is improved, and the waiting time of the processing operation of the stream data is shortened.
- the management node is used to monitor the load status of each processing node, and the target transmission node is allocated for multiple stream data subtasks based on the load status of each processing node extracted from the management node, thereby ensuring the load of multiple processing nodes. balanced.
- modules in the devices of the embodiments can be adaptively changed and placed in one or more devices different from the embodiment.
- the modules or units or components of the embodiments may be combined into one module or unit or component, and further they may be divided into a plurality of sub-modules or sub-units or sub-components.
- any combination of the features disclosed in the specification, including the accompanying claims, the abstract and the drawings, and any methods so disclosed, or All processes or units of the device are combined.
- Each feature disclosed in this specification (including the accompanying claims, the abstract and the drawings) may be replaced by alternative features that provide the same, equivalent or similar purpose.
- the various component embodiments of the present invention may be implemented in hardware, or in a software module running on one or more processors, or in a combination thereof.
- Those skilled in the art will appreciate that some or all of the functionality of some or all of the processing devices of the streaming data task in accordance with embodiments of the present invention may be implemented in practice using a microprocessor or digital signal processor (DSP).
- DSP digital signal processor
- the invention can also be implemented as a device or device program (e.g., a computer program and a computer program product) for performing some or all of the methods described herein.
- Such a program implementing the present invention may be stored on a computer readable medium or may be in the form of one or more signals. Such signals may be downloaded from an Internet website, provided on a carrier signal, or provided in any other form.
- Figure 5 illustrates a computing device that can implement a method of processing a streaming data task in accordance with the present invention.
- the computing device conventionally includes a processor 510 and a computer program product or computer readable medium in the form of a memory 520.
- the memory 520 may be an electronic memory such as a flash memory, an EEPROM (Electrically Erasable Programmable Read Only Memory), an EPROM, a hard disk, or a ROM.
- Memory 520 has a storage space 530 that stores program code 531 for performing any of the method steps described above.
- storage space 530 storing program code may include various program code 531 for implementing various steps in the above methods, respectively.
- the program code can be read from or written to one or more computer program products.
- Such computer program products include program code carriers such as hard disks, compact disks (CDs), memory cards or floppy disks.
- Such a computer program product is typically a portable or fixed storage unit such as that shown in FIG.
- the storage unit may have storage segments, storage spaces, and the like that are similarly arranged to memory 520 in the computing device of FIG.
- the program code can be compressed, for example, in an appropriate form.
- the storage unit includes computer readable code 531', ie, code that can be read by a processor, such as 510, which when executed by the computing device causes the computing device to perform various steps in the methods described above .
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
一种流数据任务的处理方法和装置。所述方法包括:将流数据任务拆分成多个流数据子任务;将多个流数据子任务分配至至少一个目标处理节点;调用各目标处理节点运行至少一个处理进程处理所述多个流数据子任务,其中,一个所调用的处理进程处理一个或多个流数据子任务;接收各目标处理节点针对流数据子任务反馈的处理结果,汇集得到所述流数据任务的处理结果。由于多个处理进程在执行过程中互不影响,因此避免了背景技术中一个线程出现问题导致整个节点无法正常工作的情况的发生,有效保证了目标处理节点的正常工作。
Description
本发明涉及通信技术领域,具体涉及一种流数据任务的处理方法以及一种流数据任务的处理装置。
为满足用户对观看视频的清晰度的不同需求,对视频录制端推送的视频流数据进行转码处理,得到多个分辨率的视频流数据供用户选择。
目前转码视频流数据时,转码服务器使用内置的多个线程同时处理多个转码任务,每个线程处理一个转码任务,转码结束后将所得的视频流数据推送至预设存储空间。
虽然现有方法实现了视频流数据的转码处理,但是存在以下缺陷:转码服务器内置的多个线程相互关联,当某一线程处理转码任务出现问题时,如线程卡死或崩溃,会导致整个转码服务器无法正常工作,从而影响其他转码任务的进行。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的流数据任务的处理方法和相应的流数据任务的处理装置。
依据本发明的一个方面,提供了一种流数据任务的处理方法,包括:
将流数据任务拆分成多个流数据子任务;
将多个流数据子任务分配至至少一个目标处理节点;
调用各目标处理节点运行至少一个处理进程处理所述多个流数据子任务,其中,一个所调用的处理进程处理一个或多个流数据子任务;
接收各目标处理节点针对流数据子任务反馈的处理结果,汇集得到所述流数据任务的处理结果。
依据本发明的另一个方面,提供了一种流数据任务的处理装置,包括:
任务拆分模块,配置为将流数据任务拆分成多个流数据子任务;
子任务分配模块,配置为将多个流数据子任务分配至至少一个目标处理节点;
处理进程调用模块,配置为调用各目标处理节点运行至少一个处理进程处理所述多个流数据子任务,其中,一个所调用的处理进程处理一个或多个流数据子任务;
处理结果接收模块,配置为接收各目标处理节点针对流数据子任务反馈的处理结果,汇集得到所述流数据任务的处理结果。
根据本发明的又一方面提供了一种计算机程序,包括计算机可读代码,当所述计算机可读代码在计算设备上运行时,导致所述计算设备执行如上文所述的流数据任务的处理方法。
根据本发明的再一方面提供了一种计算机可读介质,其中存储了如上文所述的计算机程序。
依据本发明实施例,调用目标处理节点内的处理进程对多个流数据子任务进行处理,由于多个处理进程在执行过程中互不影响,因此避免了背景技术中一个线程出现问题导致整个节点无法正常工作的情况的发生,有效保证了目标处理节点的正常工作。同时,各流数据子任务的处理结果以及汇集得到的流数据任务的处理结果可以作为任务监控、子任务分发的依据,从而完善了处理机制。
本发明实施例在各传输节点内置了管理进程并设置了管理节点,使用管理进程和管理节点对流数据子任务的处理进行管理,当处理进程出现处理异常时,管理进程或管理节点会为处理异常的流数据子任务重新分配处理进程或处理节点,从而保证了流数据任务的处理过程的顺利完成。由于处理过程中的异常修复是通过管理进程和管理节点完成的,无需人工操作,因此可以同时处理大量的任务,提高了任务处理效率,缩短了流数据的处理操作的等待时间。
本发明实施例使用管理节点监控各处理节点的负载状态,将从管理节点提取的各处理节点的负载状态作为依据,为多个流数据子任务分配目标传输节点,从而保证多个处理节点的负载均衡。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明实施例一的一种流数据任务的处理方法的步骤流程示意图;
图2示出了根据本发明实施例二的一种流数据任务的处理方法的步骤流程示意图;
图3示出了根据本发明实施例三的一种流数据任务的处理装置的结构框图;
图4示出了根据本发明实施例四的一种流数据任务的处理装置的结构框图;
图5示意性地示出了用于执行根据本发明的流数据任务的处理方法的计算设备的结构框图;以及
图6示意性地示出了用于保持或者携带实现根据本发明的流数据任务的处理方法的程序代码的存储单元。
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
参照图1,示出了根据本发明实施例一的一种流数据任务的处理方法的步骤流程示意图,具体可以包括如下步骤:
步骤101、将流数据任务拆分多个流数据子任务。
本发明实施例所述的方法应用于存在以流式传输方式传输的流数据的场景,如流数据转码场景、流数据传输场景等。相应地,流数据任务可以为视频流转码任务、音频流转码任务、视频流传输任务、音频流传输任务等,流数据任务携带相应的流数据。
执行本发明实施例所述方法的系统包括管理节点和多个处理节点,各处理节点内置有多个处理进程,其中,管理节点用于流数据任务的接收和分发,并且用于对多个处理节点的运行情况进行管理;处理进程用于处理划分后的流数据子任务。在某一时刻某一处理进程处理一个子任务,每个处理进程可以按照任务分配顺序,依次对分配给该处理进程的多个子任务进行处理。
管理节点和多个处理节点可以为内容分发网络(Content Delivery Network,CDN)中的节点,可以使用内容分发网络对管理节点和多个处理节点间的流数据任务进行传输。
管理节点在接收到流数据任务后,会将其拆分成多个流数据子任务,以使用处理节点中的处理进程对流数据子任务进行处理。
可以根据流数据任务的种类对流数据任务进行划分,例如,当流数据任务为视频流转码任务,任务指示将1080P格式的视频流转码成超清、高清和标清三种视频流,这时管理节点将视频流转码任务划分成将1080P格式的流数据转码成超清流数据、将1080P格式的流数据转码成高清流数据以及将1080P格式的流数据转码成标清流数据三个子任务;当流数据任务为流数据传输任务时,管理节点可以将流数据任务携带的流数据划分为多个子流数据,每个流数据子任务为传输部分流数据。
步骤102、将多个流数据子任务分配至至少一个目标处理节点。
本发明实施例中,流数据子任务由处理节点处理,管理节点完成对流数据任务的拆分后,会从多个处理节点中选出至少一个目标处理节点,之后将所得的多个流数据子任务分配至选择的目标处理节点。分配至某一目标处理 节点的流数据子任务可以为一个或多个,例如,当流数据子任务为三个时,将三个流数据子任务分配至三个不同的目标处理节点,或将两个流数据子任务分配至一个目标传输节点,将剩余的一个流数据子任务分配至另一个目标传输节点。
可以依据多种因素为流数据子任务分配目标处理节点,具体地可以根据各处理节点的负载情况、管理节点所在区域的地理位置信息等信息中的一种或多种选择目标传输节点。
步骤103、调用各目标处理节点运行至少一个处理进程处理多个流数据子任务。
各目标传输节点接收到流数据子任务后,会使用内置的处理进程对流数据进行处理。可以根据各处理进程的剩余处理能力,选择一个或多个处理进程处理流数据子任务。
当某一目标传输节点接收到多个流数据子任务时,可以调用多个处理进程对流数据子任务进行处理,每个处理进程可以处理一个或多个流数据子任务;也可以调用一个处理进程对多个流数据子任务进行处理。
步骤104、接收各目标处理节点针对流数据子任务反馈的处理结果,汇集得到流数据任务的处理结果。
本发明实施例中,目标处理节点可以获取流数据子任务的处理结果并将其反馈给管理节点。处理结果可以是预设信息,例如,预设当流数据子任务处理完成时处理结果为1,当流数据子任务处理异常时处理结果为2。
目标传输节点可以通过多种方式确定流数据子任务的处理结果,例如,目标传输节点可以定期对处理进程进行检测,从而确定各流数据子任务的处理结果;或者,当流数据子任务处理完成时,处理进程可以发送指示处理完成的指令或信息,如果目标传输节点在预设时长内未接收到处理进程发送的指示处理完成的指令或信息,则判定流数据子任务的处理结果为处理异常,否则为处理正常。
优选地管理节点可以对各目标处理节点反馈的流数据子任务的处理结果进行汇总,得到流数据任务的处理结果,可以根据反馈结果确定流数据任 务的处理情况。
依据本发明实施例,调用目标处理节点内的处理进程对多个流数据子任务进行处理,由于多个处理进程在执行过程中互不影响,因此避免了背景技术中一个线程出现问题导致整个节点无法正常工作的情况的发生,有效保证了目标处理节点的正常工作。同时,各流数据子任务的处理结果以及汇集得到的流数据任务的处理结果可以作为任务监控、子任务分发的依据,从而完善了处理机制。
参照图2,示出了根据本发明实施例二的一种流数据任务的处理方法的步骤流程示意图,具体可以包括如下步骤:
步骤201、将流数据任务拆分成多个流数据子任务。
本发明实施例所述的方法应用于存在以流式传输方式传输的流数据的场景,如流数据转码场景、流数据传输场景等。
当应用于流数据转码场景时,流数据任务为转码任务。可以预先限定让流数据处理指令即转码指令携带多种转码格式,这时将流数据任务拆分为多个流数据子任务的步骤可以包括:按照流数据处理指令携带的多种转码格式,将流数据处理任务拆分为对应各种转码格式的多个流数据子任务。例如,流数据处理指令为将1080P格式的视频流数据转码成720P和480P两种格式,携带720P和480P两种转码格式,管理节点会根据按照流数据处理指令携带的两种转码格式,对1080P格式的视频流数据进行转码,得到720P和480P两种格式的视频流数据。
还可以预先在管理节点存储业务标识和转码格式的对应关系,同时限定流数据处理指令即转码指令携带业务标识,其中,业务标识可以指示具体应用,可以为应用名称即AppName,业务标识与转码格式的对应关系可以是一对多的关系,这时将流数据任务拆分为多个流数据子任务的步骤可以包括:提取流数据处理指令携带的业务标识,查找针对该业务标识预设的多种转码格式,按照所查找的多种转码格式,将流数据处理任务拆分为多个流数据子任务。
在将流数据任务拆分为多个流数据子任务之前,需要获取流数据。实际中预转码流数据的业务端在向管理节点发送流数据处理指令时,可以让流数据处理指令携带流数据的流数据地址,当管理节点接收到流数据的流数据地址后,可以通过以下步骤获取流数据:接收携带流数据地址的流数据处理指令,通过访问所述流数据地址,下载待处理的流数据。
例如,管理节点接收到的流数据处理指令携带的流数据地址为***/AppName/SN,其中AppName为业务标识,SN为客户端标识,管理节点可以通过访问流数据地址获取流数据,并且根据预先存储的业务标识和转码格式的对应关系,确定所需的多种转码格式,进一步根据确定的多种转码格式,将流数据任务拆分成多个流数据子任务,每个流数据子任务对应一种转码格式。
步骤202、将多个流数据子任务分配至至少一个目标处理节点。
管理节点用于对多个处理节点进行管理,管理各处理节点的负载情况、各处理节点中处理进程的运行情况等,管理节点可以记录各处理节点的负载情况以及进行运行情况并不断更新。
本发明实施例中管理节点可以向调度发送针对多个流数据子任务的目标处理节点的分配请求,调度可以根据各处理节点的负载状态为多个流数据子任务分配目标处理节点,具体地可以选择负载较轻的处理节点作为目标处理节点,以保证多个处理节点的负载均衡,分配的目标处理节点的数目可以为一个或多个,随后调度将分配的目标处理节点反馈至管理节点。
由于管理节点内记录有多个处理节点的负载情况,因此本步骤将多个流数据子任务分配至至少一个目标处理节点的步骤可以包括:从管理节点获取各个处理节点的负载状态,选取负载状态满足设定条件的至少一个目标处理节点,并向各选取的目标处理节点下发至少一个流数据子任务。其中,设定条件可以包括多种限定内容,如负载最轻的N(N为正整数)个处理节点、待处理任务的数目小于M(M为正整数)的处理节点等。一个目标处理节点可以分配一个或多个流数据子任务。
本发明实施例中各处理节点对应一个任务队列,任务队列中记录了分配 至该处理节点的多个流数据子任务的排队顺序。本发明实施例在根据负载状态确定至少一个目标处理节点后,为使多个流数据子任务的处理结束时间相近或相同,可以在向各选取的目标处理节点下发至少一个流数据子任务之前,对各处理节点中流数据子任务的排队顺序进行调整。具体地,对各处理节点中流数据子任务的排队顺序进行调整的步骤可以包括:获取各目标处理节点的任务队列;设置待下发的流数据子任务在各任务队列中的排序,使各个流数据子任务的处理时间的差值小于设定阈值,其中设定阈值可以根据实际进行设置。
进一步所述设置待下发的流数据子任务在各任务队列中的排序,使各个流数据子任务的处理时间的差值小于设定阈值的步骤可以包括:根据各目标处理节点的任务队列中已有的流数据子任务,预测各个待下发的流数据子任务的处理时间;确定处理时间最晚的目标流数据子任务;按照该目标流数据子任务的处理时间安排各个待下发的流数据子任务的处理时间。
具体地,在确定处理时间最晚的目标流数据子任务后,将分配至其他处理节点的流数据子任务的排序向后调整,如果目标处理节点中其他流数据子任务均处理结束且未到安排的处理时间,则等待一定时间间隔后再对流数据子任务进行处理。
本发明实施例在各传输节点中设置了管理进程,管理进程用于对多个处理进行的运行情况进行监控和管理,并将流数据子任务的处理情况反馈给管理节点。各目标处理节点的任务队列可以设置于管理进程中,相应地获取各目标处理节点的任务队列的步骤可以包括:从各目标处理节点的管理进程获取任务队列。
管理进程记录的任务队列可以包括针对多个处理进程设置的多个任务子队列,从某一任务子队列可知等待对应的处理进程处理的子任务的数目。在确定处理时间最晚的目标流数据子任务后,可以根据最晚处理时间在某一任务子队列中对流数据子任务的排序进行调整,也可以根据最晚处理时间选择一合适的任务子队列,将流数据子任务排序至该任务子队列最后。
步骤203、调用各目标处理节点运行至少一个处理进程处理所述多个流 数据子任务,其中,一个所调用的处理进程处理一个或多个流数据子任务。
步骤204、接收各目标处理节点针对流数据子任务反馈的处理结果,汇集得到所述流数据任务的处理结果。
步骤205、监控各个处理进程的处理进度,将已处理完的流数据子任务对应的流数据推送至存储服务器,以供流数据的传输节点或流数据的播放客户端调用。
本发明实施例中,各处理节点中内置有管理进程,可以使用管理进程监控处理节点中多个处理进程的处理进度,如果监控到流数据子任务处理结束,则可以通知目标处理节点将处理完的流数据子任务对应的流数据推送至存储服务器。存储服务器可以是预设的,可以是流数据处理指令指示的,可以是调度从预设的多个存储服务器中分配的,本发明在此不做限制。
存储服务器接收到推送的流数据后,如果接收到流数据的传输节点或播放客户端的调用请求,则将流数据传输至传输节点和播放客户端供传输或播放。
本发明实施例中,优选地,所述方法还包括:
接收处理进程上报至管理进程的处理异常通知,并在当前目标处理节点内为处理异常的流数据子任务重新分配处理进程。
本发明实施例使用内置在处理节点内的管理进程对多个处理进程的运行情况进行监控和管理。当处理进程针对某一流数据子任务的处理发生异常时,如处理进程卡死或崩溃,处理进程可以向管理进程上报处理异常通知,管理进程在接收到处理异常通知后,会对目标处理节点内的其他处理进程的运行情况、负载状态等进行查看和分析,进一步根据分析结果选择运行良好且负载较轻的其他处理进程,对处理异常的流数据子任务进行重新处理,从而保证了该流数据子任务的顺利完成。
除上述处理进程主动上报处理异常通知至管理进程的方式外,管理进程可以按照预设时间间隔定时检查处理进程的运行情况,如果检测到处理进程发生异常,则为处理异常的流数据子任务重新分配处理进程。
本发明实施例中,优选地,所述方法还包括:
接收当前目标处理节点上报至管理节点的处理异常通知,并在其他处理节点中为处理异常的流数据子任务重新分配一个目标处理节点;
调用重新分配的目标处理节点的一个处理进程对处理异常的流数据子任务进行处理。
本发明实施例中,目标处理节点内的管理进程在接收到处理进程上报的处理异常通知后,如果确定该目标处理节点内的所有处理进程均已负载较重或负载满,则管理进程可以向管理节点上报处理异常通知。管理节点接收到某一目标处理节点上报的处理异常通知后,可以根据其他处理节点的负载情况或其他因素,在其他处理节点中为处理异常的流数据子任务重新分配一个目标处理节点,将处理异常的流数据子任务发送至重新分配的目标处理节点进行处理。
新分配的目标处理节点接收到该流数据子任务后,调用其内部的一个处理进程对该子任务进行处理。具体地,该目标处理节点内的管理进程可以查看和分析各处理进程的情况,选择运行良好且负载较轻的处理进程处理该子任务。
本发明实施例所述方法可以应用于视频流转码的场景中,可以使用设置的管理进程和管理节点对视频流转码过程进行管理,当处理进程出现处理异常时,管理进程或管理节点会为处理异常的流数据转码子任务重新分配处理进程或处理节点,从而保证了视频流转码任务的顺利完成。由于处理过程中的异常修复是通过管理进程和管理节点完成的,无需人工操作,因此可以同时处理大量的转码任务,满足了转码需求。
依据本发明实施例,调用目标处理节点内的处理进程对多个流数据子任务进行处理,由于多个处理进程在执行过程中互不影响,因此避免了背景技术中一个线程出现问题导致整个节点无法正常工作的情况的发生,有效保证了目标处理节点的正常工作。同时,各流数据子任务的处理结果以及汇集得到的流数据任务的处理结果可以作为任务监控、子任务分发的依据,从而完善了处理机制。
本发明实施例在各传输节点内置了管理进程并设置了管理节点,使用管 理进程和管理节点对流数据子任务的处理进行管理,当处理进程出现处理异常时,管理进程或管理节点会为处理异常的流数据子任务重新分配处理进程或处理节点,从而保证了流数据任务的处理过程的顺利完成。由于处理过程中的异常修复是通过管理进程和管理节点完成的,无需人工操作,因此可以同时处理大量的任务,提高了任务处理效率,缩短了流数据的处理操作的等待时间。
本发明实施例使用管理节点监控各处理节点的负载状态,将从管理节点提取的各处理节点的负载状态作为依据,为多个流数据子任务分配目标传输节点,从而保证多个处理节点的负载均衡。
图3示出了根据本发明实施例三的一种流数据任务的处理装置的结构框图。图3中的流数据任务的处理装置包括:
任务拆分模块301,配置为将流数据任务拆分成多个流数据子任务。
子任务分配模块302,配置为于将多个流数据子任务分配至至少一个目标处理节点。
处理进程调用模块303,配置为调用各目标处理节点运行至少一个处理进程处理所述多个流数据子任务,其中,一个所调用的处理进程处理一个或多个流数据子任务。
处理结果接收模块304,配置为接收各目标处理节点针对流数据子任务反馈的处理结果,汇集得到所述流数据任务的处理结果。
依据本发明实施例,调用目标处理节点内的处理进程对多个流数据子任务进行处理,由于多个处理进程在执行过程中互不影响,因此避免了背景技术中一个线程出现问题导致整个节点无法正常工作的情况的发生,有效保证了目标处理节点的正常工作。同时,各流数据子任务的处理结果以及汇集得到的流数据任务的处理结果可以作为任务监控、子任务分发的依据,从而完善了处理机制。
图4示出了根据本发明实施例四的一种流数据任务的处理装置的结构框 图。图4中的流数据任务的处理装置包括:
任务拆分模块401,配置为将流数据任务拆分成多个流数据子任务。
子任务分配模块402,配置为将多个流数据子任务分配至至少一个目标处理节点。
处理进程调用模块403,配置为调用各目标处理节点运行至少一个处理进程处理所述多个流数据子任务,其中,一个所调用的处理进程处理一个或多个流数据子任务。
处理结果接收模块404,配置为接收各目标处理节点针对流数据子任务反馈的处理结果,汇集得到所述流数据任务的处理结果。
处理进度监控模块405,配置为监控各个处理进程的处理进度。
流数据推送模块406,配置为将已处理完的流数据子任务对应的流数据推送至存储服务器,以供流数据的传输节点或流数据的播放客户端调用。
本发明实施例中,优选地,所述子任务分配模块包括:
负载状态获取模块,配置为从管理节点获取各个处理节点的负载状态;
目标处理节点选取模块,配置为选取负载状态满足设定条件的至少一个目标处理节点,并向各选取的目标处理节点下发至少一个流数据子任务。
本发明实施例中,优选地,所述装置还包括:
任务队列获取模块,配置为在所述向各选取的目标处理节点下发至少一个流数据子任务之前,获取各目标处理节点的任务队列,各处理节点对应一个任务队列;
排序设置模块,配置为设置待下发的流数据子任务在各任务队列中的排序,使各个流数据子任务的处理时间的差值小于设定阈值。
本发明实施例中,优选地,所述排序设置模块包括:
处理时间预测模块,配置为根据各目标处理节点的任务队列中已有的流数据子任务,预测各个待下发的流数据子任务的处理时间;
目标流数据子任务确定模块,配置为确定处理时间最晚的目标流数据子任务;
处理时间安排模块,配置为按照所述目标流数据子任务的处理时间安排 各个待下发的流数据子任务的处理时间。
本发明实施例中,优选地,所述任务队列获取模块,具体配置为从各目标处理节点的管理进程获取任务队列。
本发明实施例中,优选地,所述装置还包括:
处理指令接收模块,配置为在所述将流数据任务拆分为多个流数据子任务之前,接收携带流数据地址的流数据处理指令;
流数据下载模块,配置为通过访问所述流数据地址,下载待处理的流数据。
本发明实施例中,优选地,所述任务拆分模块,具体配置为按照所述流数据处理指令携带的多种转码格式,将所述流数据处理任务拆分为对应各种转码格式的多个流数据子任务,所述流数据任务为转码任务。
本发明实施例中,优选地,所述任务拆分模块包括:
业务标识提取模块,配置为提取所述流数据处理指令携带的业务标识,所述流数据任务为转码任务;
转码格式查找模块,配置为查找针对所述业务标识预设的多种转码格式;
任务划分模块,配置为按照所查找的多种转码格式,将所述流数据处理任务拆分为多个流数据子任务。
本发明实施例中,优选地,所述装置还包括:
第一通知接收模块,配置为接收处理进程上报至管理进程的处理异常通知;
处理进程重新分配模块,配置为在当前目标处理节点内为处理异常的流数据子任务重新分配处理进程。
本发明实施例中,优选地,所述装置还包括:
第二通知接收模块,配置为接收当前目标处理节点上报至管理节点的处理异常通知;
目标处理节点重新分配模块,配置为在其他处理节点中为处理异常的流数据子任务重新分配一个目标处理节点;
目标处理节点调用模块,配置为调用重新分配的目标处理节点的一个处理进程对处理异常的流数据子任务进行处理。
依据本发明实施例,调用目标处理节点内的处理进程对多个流数据子任务进行处理,由于多个处理进程在执行过程中互不影响,因此避免了背景技术中一个线程出现问题导致整个节点无法正常工作的情况的发生,有效保证了目标处理节点的正常工作。同时,各流数据子任务的处理结果以及汇集得到的流数据任务的处理结果可以作为任务监控、子任务分发的依据,从而完善了处理机制。
本发明实施例在各传输节点内置了管理进程并设置了管理节点,使用管理进程和管理节点对流数据子任务的处理进行管理,当处理进程出现处理异常时,管理进程或管理节点会为处理异常的流数据子任务重新分配处理进程或处理节点,从而保证了流数据任务的处理过程的顺利完成。由于处理过程中的异常修复是通过管理进程和管理节点完成的,无需人工操作,因此可以同时处理大量的任务,提高了任务处理效率,缩短了流数据的处理操作的等待时间。
本发明实施例使用管理节点监控各处理节点的负载状态,将从管理节点提取的各处理节点的负载状态作为依据,为多个流数据子任务分配目标传输节点,从而保证多个处理节点的负载均衡。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的流数据任务的处理设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这 样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
例如,图5示出了可以实现根据本发明的流数据任务的处理方法的计算设备。该计算设备传统上包括处理器510和以存储器520形式的计算机程序产品或者计算机可读介质。存储器520可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。存储器520具有存储用于执行上述方法中的任何方法步骤的程序代码531的存储空间530。例如,存储程序代码的存储空间530可以包括分别用于实现上面的方法中的各种步骤的各个程序代码531。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(CD)、存储卡或者软盘之类的程序代码载体。这样的计算机程序产品通常为例如图6所示的便携式或者固定存储单元。该存储单元可以具有与图5的计算设备中的存储器520类似布置的存储段、存储空间等。程序代码可以例如以适当形式进行压缩。通常,存储单元包括计算机可读代码531’,即可以由诸如510之类的处理器读取的代码,当这些代码由计算设备运行时,导致该计算设备执行上面所描述的方法中的各个步骤。
本文中所称的“一个实施例”、“实施例”或者“一个或者多个实施例”意味着,结合实施例描述的特定特征、结构或者特性包括在本发明的至少一个实施例中。此外,请注意,这里“在一个实施例中”的词语例子不一定全指同一个实施例。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出 替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (24)
- 一种流数据任务的处理方法,包括:将流数据任务拆分成多个流数据子任务;将多个流数据子任务分配至至少一个目标处理节点;调用各目标处理节点运行至少一个处理进程处理所述多个流数据子任务,其中,一个所调用的处理进程处理一个或多个流数据子任务;接收各目标处理节点针对流数据子任务反馈的处理结果,汇集得到所述流数据任务的处理结果。
- 根据权利要求1所述的方法,其中,所述将多个流数据子任务分配至至少一个目标处理节点包括:从管理节点获取各个处理节点的负载状态;选取负载状态满足设定条件的至少一个目标处理节点,并向各选取的目标处理节点下发至少一个流数据子任务。
- 根据权利要求1所述的方法,其中,各处理节点对应一个任务队列,在所述向各选取的目标处理节点下发至少一个流数据子任务之前,所述方法还包括:获取各目标处理节点的任务队列;设置待下发的流数据子任务在各任务队列中的排序,使各个流数据子任务的处理时间的差值小于设定阈值。
- 根据权利要求3所述的方法,其中,所述设置待下发的流数据子任务在各任务队列中的排序,使各个流数据子任务的处理时间的差值小于设定阈值包括:根据各目标处理节点的任务队列中已有的流数据子任务,预测各个待下发的流数据子任务的处理时间;确定处理时间最晚的目标流数据子任务;按照所述目标流数据子任务的处理时间安排各个待下发的流数据子任务的处理时间。
- 根据权利要求3所述的方法,其中,所述获取各目标处理节点的任务队列包括:从各目标处理节点的管理进程获取任务队列。
- 根据权利要求1所述的方法,其中,在所述将流数据任务拆分为多个流数据子任务之前,所述方法还包括:接收携带流数据地址的流数据处理指令;通过访问所述流数据地址,下载待处理的流数据。
- 根据权利要求6所述的方法,其中,所述流数据任务为转码任务,所述将流数据任务拆分为多个流数据子任务包括:按照所述流数据处理指令携带的多种转码格式,将所述流数据处理任务拆分为对应各种转码格式的多个流数据子任务。
- 根据权利要求6所述的方法,其中,所述流数据任务为转码任务,所述将流数据任务拆分为多个流数据子任务包括:提取所述流数据处理指令携带的业务标识;查找针对所述业务标识预设的多种转码格式;按照所查找的多种转码格式,将所述流数据处理任务拆分为多个流数据子任务。
- 根据权利要求1所述的方法,其中,所述方法还包括:监控各个处理进程的处理进度;将已处理完的流数据子任务对应的流数据推送至存储服务器,以供流数据的传输节点或流数据的播放客户端调用。
- 根据权利要求1所述的方法,其中,所述方法还包括:接收处理进程上报至管理进程的处理异常通知,并在当前目标处理节点内为处理异常的流数据子任务重新分配处理进程。
- 根据权利要求10所述的方法,其中,所述方法还包括:接收当前目标处理节点上报至管理节点的处理异常通知,并在其他处理节点中为处理异常的流数据子任务重新分配一个目标处理节点;调用重新分配的目标处理节点的一个处理进程对处理异常的流数据子任务进行处理。
- 一种流数据任务的处理装置,包括:任务拆分模块,配置为将流数据任务拆分成多个流数据子任务;子任务分配模块,配置为将多个流数据子任务分配至至少一个目标处理节点;处理进程调用模块,配置为调用各目标处理节点运行至少一个处理进程处理所述多个流数据子任务,其中,一个所调用的处理进程处理一个或多个流数据子任务;处理结果接收模块,配置为接收各目标处理节点针对流数据子任务反馈的处理结果,汇集得到所述流数据任务的处理结果。
- 根据权利要求12所述的装置,其中,所述子任务分配模块包括:负载状态获取模块,配置为从管理节点获取各个处理节点的负载状态;目标处理节点选取模块,配置为选取负载状态满足设定条件的至少一个目标处理节点,并向各选取的目标处理节点下发至少一个流数据子任务。
- 根据权利要求12所述的装置,其中,所述装置还包括:任务队列获取模块,配置为在所述向各选取的目标处理节点下发至少一个流数据子任务之前,获取各目标处理节点的任务队列,各处理节点对应一个任务队列;排序设置模块,配置为设置待下发的流数据子任务在各任务队列中的排序,使各个流数据子任务的处理时间的差值小于设定阈值。
- 根据权利要求14所述的装置,其中,所述排序设置模块包括:处理时间预测模块,配置为根据各目标处理节点的任务队列中已有的流数据子任务,预测各个待下发的流数据子任务的处理时间;目标流数据子任务确定模块,配置为确定处理时间最晚的目标流数据子任务;处理时间安排模块,配置为按照所述目标流数据子任务的处理时间安排各个待下发的流数据子任务的处理时间。
- 根据权利要求14所述的装置,其中,所述任务队列获取模块,具体配置为从各目标处理节点的管理进程获取任务队列。
- 根据权利要求12所述的装置,其中,所述装置还包括:处理指令接收模块,配置为在所述将流数据任务拆分为多个流数据子任务之前,接收携带流数据地址的流数据处理指令;流数据下载模块,配置为通过访问所述流数据地址,下载待处理的流数据。
- 根据权利要求17所述的装置,其中,所述任务拆分模块,具体配置为按照所述流数据处理指令携带的多种转码格式,将所述流数据处理任务拆分为对应各种转码格式的多个流数据子任务,所述流数据任务为转码任务。
- 根据权利要求17所述的装置,其中,所述任务拆分模块包括:业务标识提取模块,配置为提取所述流数据处理指令携带的业务标识,所述流数据任务为转码任务;转码格式查找模块,配置为于查找针对所述业务标识预设的多种转码格式;任务划分模块,配置为按照所查找的多种转码格式,将所述流数据处理任务拆分为多个流数据子任务。
- 根据权利要求12所述的装置,其中,所述装置还包括:处理进度监控模块,配置为监控各个处理进程的处理进度;流数据推送模块,配置为将已处理完的流数据子任务对应的流数据推送至存储服务器,以供流数据的传输节点或流数据的播放客户端调用。
- 根据权利要求12所述的装置,其中,所述装置还包括:第一通知接收模块,配置为接收处理进程上报至管理进程的处理异常通知;处理进程重新分配模块,配置为在当前目标处理节点内为处理异常的流数据子任务重新分配处理进程。
- 根据权利要求21所述的装置,其中,所述装置还包括:第二通知接收模块,配置为接收当前目标处理节点上报至管理节点的处理异常通知;目标处理节点重新分配模块,配置为在其他处理节点中为处理异常的流数据子任务重新分配一个目标处理节点;目标处理节点调用模块,配置为调用重新分配的目标处理节点的一个处理进程对处理异常的流数据子任务进行处理。
- 一种计算机程序,包括计算机可读代码,当所述计算机可读代码在计算设备上运行时,导致所述计算设备执行根据权利要求1-11中的任一项所述的流数据任务的处理方法。
- 一种计算机可读介质,其中存储了如权利要求23所述的计算机程序。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611263882.6 | 2016-12-30 | ||
CN201611263882.6A CN106713944A (zh) | 2016-12-30 | 2016-12-30 | 一种流数据任务的处理方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2018121738A1 true WO2018121738A1 (zh) | 2018-07-05 |
Family
ID=58905629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2017/119880 WO2018121738A1 (zh) | 2016-12-30 | 2017-12-29 | 流数据任务的处理方法和装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN106713944A (zh) |
WO (1) | WO2018121738A1 (zh) |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109214132A (zh) * | 2018-10-30 | 2019-01-15 | 中国运载火箭技术研究院 | 一种面向lvc仿真的非耦合流式大通量异步任务处理系统 |
CN109324887A (zh) * | 2018-09-28 | 2019-02-12 | 中国平安财产保险股份有限公司 | 稽核数据并行加工方法及系统 |
CN110795244A (zh) * | 2019-10-24 | 2020-02-14 | 浙江大华技术股份有限公司 | 一种任务分配方法、装置、设备及介质 |
CN111049900A (zh) * | 2019-12-11 | 2020-04-21 | 中移物联网有限公司 | 一种物联网流计算调度方法、装置和电子设备 |
CN111090502A (zh) * | 2018-10-24 | 2020-05-01 | 阿里巴巴集团控股有限公司 | 一种流数据任务调度方法和装置 |
CN111258724A (zh) * | 2020-01-14 | 2020-06-09 | 平安银行股份有限公司 | 一种分布式系统的数据处理方法、装置、设备和存储介质 |
CN111818159A (zh) * | 2020-07-08 | 2020-10-23 | 腾讯科技(深圳)有限公司 | 数据处理节点的管理方法、装置、设备及存储介质 |
CN112351299A (zh) * | 2020-11-05 | 2021-02-09 | 山东亚华电子股份有限公司 | 一种宣教广播方法及设备 |
CN112650578A (zh) * | 2019-10-12 | 2021-04-13 | 阿里巴巴集团控股有限公司 | 数据处理方法、调度平台、视频存储平台和视频处理引擎 |
CN112817724A (zh) * | 2021-02-05 | 2021-05-18 | 苏州互方得信息科技有限公司 | 一种可动态编排顺序的任务分配方法 |
CN113051049A (zh) * | 2020-07-10 | 2021-06-29 | 北京迈格威科技有限公司 | 任务调度系统、方法、电子设备及可读存储介质 |
CN113179304A (zh) * | 2021-04-22 | 2021-07-27 | 平安消费金融有限公司 | 消息下发方法、系统、设备及存储介质 |
CN113238837A (zh) * | 2020-07-10 | 2021-08-10 | 北京旷视科技有限公司 | 计算流程图构建、计算效率优化方法、装置及电子设备 |
CN113254194A (zh) * | 2021-03-29 | 2021-08-13 | 河海大学 | 一种实时gnss数据处理方法和系统 |
CN113360258A (zh) * | 2021-05-28 | 2021-09-07 | 北京百度网讯科技有限公司 | 数据处理方法、装置、电子设备及存储介质 |
CN113434310A (zh) * | 2021-06-23 | 2021-09-24 | 未鲲(上海)科技服务有限公司 | 多线程任务分配方法、装置、设备及存储介质 |
CN113760482A (zh) * | 2020-06-22 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种任务处理方法、装置和系统 |
CN113840161A (zh) * | 2020-06-23 | 2021-12-24 | 龙芯中科技术股份有限公司 | 流媒体传输方法、接收方法、装置、电子设备及储存介质 |
CN114780214A (zh) * | 2022-04-01 | 2022-07-22 | 中国电信股份有限公司 | 任务处理方法、装置、系统及设备 |
CN115080241A (zh) * | 2022-06-30 | 2022-09-20 | 支付宝(杭州)信息技术有限公司 | 数据处理方法以及装置 |
US20230053663A1 (en) * | 2020-01-23 | 2023-02-23 | Novnet Computing System Tech Co., Ltd. | Task processing method and apparatus, and electronic device |
CN115988092A (zh) * | 2023-02-08 | 2023-04-18 | 天翼云科技有限公司 | 一种图像处理方法、装置、设备、介质及产品 |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106713944A (zh) * | 2016-12-30 | 2017-05-24 | 北京奇虎科技有限公司 | 一种流数据任务的处理方法和装置 |
CN109086125B (zh) * | 2017-06-14 | 2021-01-22 | 杭州海康威视数字技术股份有限公司 | 图片分析方法、装置及系统、计算机设备及存储介质 |
CN109086152B (zh) * | 2017-06-14 | 2021-12-14 | 杭州海康威视数字技术股份有限公司 | 图片分析方法、装置及系统、计算机设备及存储介质 |
CN109254833B (zh) * | 2017-07-12 | 2020-10-09 | 杭州海康威视数字技术股份有限公司 | 图片分析方法、装置及系统、计算机设备 |
CN107231437A (zh) * | 2017-07-18 | 2017-10-03 | 郑州云海信息技术有限公司 | 一种任务备份管理方法及装置 |
CN110704551B (zh) * | 2018-06-21 | 2023-02-17 | 中兴通讯股份有限公司 | 数据处理方法、装置、设备及计算机可读存储介质 |
CN109522138A (zh) * | 2018-11-14 | 2019-03-26 | 北京中电普华信息技术有限公司 | 一种分布式流数据的处理方法及系统 |
CN111212015B (zh) * | 2018-11-21 | 2022-03-11 | 华为技术有限公司 | 业务协同处理方法和装置 |
CN109861966B (zh) * | 2018-12-06 | 2022-02-25 | 北京达佳互联信息技术有限公司 | 处理状态事件的方法、装置、终端及存储介质 |
CN109783210B (zh) * | 2018-12-13 | 2023-10-20 | 平安科技(深圳)有限公司 | 多任务处理方法、装置、计算机设备及存储介质 |
CN111355689B (zh) * | 2018-12-21 | 2022-04-22 | 金篆信科有限责任公司 | 一种流数据处理方法及装置 |
CN111629013B (zh) * | 2019-02-27 | 2024-06-18 | 北京奇虎科技有限公司 | 一种业务节点管理的方法、装置和节点网络 |
CN111917812B (zh) * | 2019-05-10 | 2022-09-30 | 北京百度网讯科技有限公司 | 数据的传输控制方法、装置、设备以及存储介质 |
CN111190707B (zh) * | 2019-08-02 | 2023-04-28 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及装置 |
CN113535320B (zh) * | 2020-04-14 | 2024-02-23 | 深信服科技股份有限公司 | 一种数据访问方法、装置、设备及存储介质 |
CN111880918B (zh) * | 2020-07-28 | 2021-05-18 | 南京市城市与交通规划设计研究院股份有限公司 | 路网前端渲染方法、装置及电子设备 |
CN112130972A (zh) * | 2020-08-24 | 2020-12-25 | 北京思特奇信息技术股份有限公司 | 一种任务处理的方法和系统 |
CN112395085B (zh) * | 2020-11-05 | 2022-10-25 | 深圳市中博科创信息技术有限公司 | 一种基于hdfs的分布式关系数据库的调度方法 |
CN114697705B (zh) * | 2020-12-29 | 2024-03-22 | 深圳云天励飞技术股份有限公司 | 视频流对象处理方法、装置、视频流处理系统、电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040184540A1 (en) * | 2003-03-19 | 2004-09-23 | Tsuyoshi Miura | Data processing system, data processing apparatus and data processing method |
CN103458270A (zh) * | 2013-09-09 | 2013-12-18 | 深圳市融创天下科技股份有限公司 | 视频转码系统和方法 |
CN104158909A (zh) * | 2014-08-29 | 2014-11-19 | 北京阅联信息技术有限公司 | 一种分布式媒体处理方法及其系统 |
CN104244025A (zh) * | 2013-06-09 | 2014-12-24 | 北京同步科技有限公司 | 集群转码系统及其方法 |
CN104935952A (zh) * | 2014-03-17 | 2015-09-23 | 无锡天脉聚源传媒科技有限公司 | 一种视频转码方法和系统 |
CN106713944A (zh) * | 2016-12-30 | 2017-05-24 | 北京奇虎科技有限公司 | 一种流数据任务的处理方法和装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102123279B (zh) * | 2010-12-28 | 2013-01-23 | 乐视网信息技术(北京)股份有限公司 | 一种分布式实时转码方法与系统 |
CN103309946B (zh) * | 2013-05-16 | 2016-12-28 | 华为技术有限公司 | 多媒体文件处理方法、装置及系统 |
CN104469370A (zh) * | 2013-09-17 | 2015-03-25 | 中国普天信息产业股份有限公司 | 一种视频转码的方法和装置 |
CN105451031B (zh) * | 2015-11-18 | 2021-11-30 | 腾讯科技(深圳)有限公司 | 一种视频转码方法和系统 |
-
2016
- 2016-12-30 CN CN201611263882.6A patent/CN106713944A/zh active Pending
-
2017
- 2017-12-29 WO PCT/CN2017/119880 patent/WO2018121738A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040184540A1 (en) * | 2003-03-19 | 2004-09-23 | Tsuyoshi Miura | Data processing system, data processing apparatus and data processing method |
CN104244025A (zh) * | 2013-06-09 | 2014-12-24 | 北京同步科技有限公司 | 集群转码系统及其方法 |
CN103458270A (zh) * | 2013-09-09 | 2013-12-18 | 深圳市融创天下科技股份有限公司 | 视频转码系统和方法 |
CN104935952A (zh) * | 2014-03-17 | 2015-09-23 | 无锡天脉聚源传媒科技有限公司 | 一种视频转码方法和系统 |
CN104158909A (zh) * | 2014-08-29 | 2014-11-19 | 北京阅联信息技术有限公司 | 一种分布式媒体处理方法及其系统 |
CN106713944A (zh) * | 2016-12-30 | 2017-05-24 | 北京奇虎科技有限公司 | 一种流数据任务的处理方法和装置 |
Cited By (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109324887A (zh) * | 2018-09-28 | 2019-02-12 | 中国平安财产保险股份有限公司 | 稽核数据并行加工方法及系统 |
CN109324887B (zh) * | 2018-09-28 | 2024-05-10 | 中国平安财产保险股份有限公司 | 稽核数据并行加工方法及系统 |
CN111090502B (zh) * | 2018-10-24 | 2024-05-17 | 阿里巴巴集团控股有限公司 | 一种流数据任务调度方法和装置 |
CN111090502A (zh) * | 2018-10-24 | 2020-05-01 | 阿里巴巴集团控股有限公司 | 一种流数据任务调度方法和装置 |
CN109214132A (zh) * | 2018-10-30 | 2019-01-15 | 中国运载火箭技术研究院 | 一种面向lvc仿真的非耦合流式大通量异步任务处理系统 |
CN109214132B (zh) * | 2018-10-30 | 2023-06-30 | 中国运载火箭技术研究院 | 一种面向lvc仿真的非耦合流式大通量异步任务处理系统 |
CN112650578A (zh) * | 2019-10-12 | 2021-04-13 | 阿里巴巴集团控股有限公司 | 数据处理方法、调度平台、视频存储平台和视频处理引擎 |
CN110795244A (zh) * | 2019-10-24 | 2020-02-14 | 浙江大华技术股份有限公司 | 一种任务分配方法、装置、设备及介质 |
CN110795244B (zh) * | 2019-10-24 | 2022-07-08 | 浙江大华技术股份有限公司 | 一种任务分配方法、装置、设备及介质 |
CN111049900B (zh) * | 2019-12-11 | 2022-07-01 | 中移物联网有限公司 | 一种物联网流计算调度方法、装置和电子设备 |
CN111049900A (zh) * | 2019-12-11 | 2020-04-21 | 中移物联网有限公司 | 一种物联网流计算调度方法、装置和电子设备 |
CN111258724A (zh) * | 2020-01-14 | 2020-06-09 | 平安银行股份有限公司 | 一种分布式系统的数据处理方法、装置、设备和存储介质 |
CN111258724B (zh) * | 2020-01-14 | 2024-02-06 | 平安银行股份有限公司 | 一种分布式系统的数据处理方法、装置、设备和存储介质 |
US20230053663A1 (en) * | 2020-01-23 | 2023-02-23 | Novnet Computing System Tech Co., Ltd. | Task processing method and apparatus, and electronic device |
US11706097B2 (en) * | 2020-01-23 | 2023-07-18 | Novnet Computing System Tech Co., Ltd. | Task processing method applied to network topology, electronic device and storage medium |
CN113760482A (zh) * | 2020-06-22 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种任务处理方法、装置和系统 |
CN113840161A (zh) * | 2020-06-23 | 2021-12-24 | 龙芯中科技术股份有限公司 | 流媒体传输方法、接收方法、装置、电子设备及储存介质 |
CN113840161B (zh) * | 2020-06-23 | 2023-07-25 | 龙芯中科技术股份有限公司 | 流媒体传输方法、接收方法、装置、电子设备及储存介质 |
CN111818159A (zh) * | 2020-07-08 | 2020-10-23 | 腾讯科技(深圳)有限公司 | 数据处理节点的管理方法、装置、设备及存储介质 |
CN111818159B (zh) * | 2020-07-08 | 2024-04-05 | 腾讯科技(深圳)有限公司 | 数据处理节点的管理方法、装置、设备及存储介质 |
CN113051049A (zh) * | 2020-07-10 | 2021-06-29 | 北京迈格威科技有限公司 | 任务调度系统、方法、电子设备及可读存储介质 |
CN113238837A (zh) * | 2020-07-10 | 2021-08-10 | 北京旷视科技有限公司 | 计算流程图构建、计算效率优化方法、装置及电子设备 |
CN113238837B (zh) * | 2020-07-10 | 2022-12-27 | 北京旷视科技有限公司 | 计算流程图构建、计算效率优化方法、装置及电子设备 |
CN112351299A (zh) * | 2020-11-05 | 2021-02-09 | 山东亚华电子股份有限公司 | 一种宣教广播方法及设备 |
CN112351299B (zh) * | 2020-11-05 | 2022-11-04 | 山东亚华电子股份有限公司 | 一种宣教广播方法及设备 |
CN112817724A (zh) * | 2021-02-05 | 2021-05-18 | 苏州互方得信息科技有限公司 | 一种可动态编排顺序的任务分配方法 |
CN113254194A (zh) * | 2021-03-29 | 2021-08-13 | 河海大学 | 一种实时gnss数据处理方法和系统 |
CN113179304A (zh) * | 2021-04-22 | 2021-07-27 | 平安消费金融有限公司 | 消息下发方法、系统、设备及存储介质 |
CN113179304B (zh) * | 2021-04-22 | 2022-10-28 | 平安消费金融有限公司 | 消息下发方法、系统、设备及存储介质 |
CN113360258A (zh) * | 2021-05-28 | 2021-09-07 | 北京百度网讯科技有限公司 | 数据处理方法、装置、电子设备及存储介质 |
CN113434310A (zh) * | 2021-06-23 | 2021-09-24 | 未鲲(上海)科技服务有限公司 | 多线程任务分配方法、装置、设备及存储介质 |
CN113434310B (zh) * | 2021-06-23 | 2024-03-22 | 深圳博瑞晶芯科技有限公司 | 多线程任务分配方法、装置、设备及存储介质 |
CN114780214B (zh) * | 2022-04-01 | 2024-01-09 | 中国电信股份有限公司 | 任务处理方法、装置、系统及设备 |
CN114780214A (zh) * | 2022-04-01 | 2022-07-22 | 中国电信股份有限公司 | 任务处理方法、装置、系统及设备 |
CN115080241A (zh) * | 2022-06-30 | 2022-09-20 | 支付宝(杭州)信息技术有限公司 | 数据处理方法以及装置 |
CN115988092A (zh) * | 2023-02-08 | 2023-04-18 | 天翼云科技有限公司 | 一种图像处理方法、装置、设备、介质及产品 |
Also Published As
Publication number | Publication date |
---|---|
CN106713944A (zh) | 2017-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018121738A1 (zh) | 流数据任务的处理方法和装置 | |
WO2019153973A1 (zh) | 事件驱动方法及装置 | |
US9473677B2 (en) | Method and server system for synchronization of audio/video media files | |
US10200295B1 (en) | Client selection in a distributed strict queue | |
CN111381972B (zh) | 分布式任务调度方法、装置和系统 | |
US10516856B2 (en) | Network video recorder cluster and method of operation | |
WO2018127004A1 (zh) | 一种流数据的封装协议的转换方法和装置 | |
US20160249079A1 (en) | Media processing node | |
US20150381514A1 (en) | Multi-tiered processing using a distributed strict queue | |
US20150381549A1 (en) | Message batching in a distributed strict queue | |
JP2007207234A (ja) | 医用画像データの作業経過に基づく管理方法および装置 | |
CN113157418A (zh) | 服务器资源分配方法和装置、存储介质及电子设备 | |
CN110555019B (zh) | 一种基于业务端的数据清洗方法 | |
CN106791957B (zh) | 视频直播处理方法及装置 | |
US20140196044A1 (en) | SYSTEM AND METHOD FOR INCREASING THROUGHPUT OF A PaaS SYSTEM | |
US10606650B2 (en) | Methods and nodes for scheduling data processing | |
US20170075713A1 (en) | Dispatching the Processing of a Computer Process Amongst a Plurality of Virtual Machines | |
US20160248834A1 (en) | Algorithmic transcoding | |
CN106354870B (zh) | 一种数据加载的方法和设备 | |
US20150381413A1 (en) | Geographic awareness in a distributed strict queue | |
CN118295815A (zh) | 异步任务处理方法、装置、设备、介质和程序产品 | |
US20100218191A1 (en) | Apparatus and Method for Processing Management Requests | |
CN113055493B (zh) | 数据包处理方法、装置、系统、调度设备和存储介质 | |
WO2024156239A1 (zh) | 视频流传输方法、装置、电子设备及存储介质 | |
EP3872624B1 (en) | Information processing device, information processing system, and information processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17885569 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 17885569 Country of ref document: EP Kind code of ref document: A1 |