WO2016000548A1 - 一种基于本地的流式计算方法及流式计算系统 - Google Patents

一种基于本地的流式计算方法及流式计算系统 Download PDF

Info

Publication number
WO2016000548A1
WO2016000548A1 PCT/CN2015/082121 CN2015082121W WO2016000548A1 WO 2016000548 A1 WO2016000548 A1 WO 2016000548A1 CN 2015082121 W CN2015082121 W CN 2015082121W WO 2016000548 A1 WO2016000548 A1 WO 2016000548A1
Authority
WO
WIPO (PCT)
Prior art keywords
computing
node
task data
computing node
upstream
Prior art date
Application number
PCT/CN2015/082121
Other languages
English (en)
French (fr)
Inventor
潘洪安
张楠
Original Assignee
北京金山安全软件有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 北京金山安全软件有限公司 filed Critical 北京金山安全软件有限公司
Publication of WO2016000548A1 publication Critical patent/WO2016000548A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements

Definitions

  • the present invention relates to the field of computer technologies, and in particular, to a local-based streaming computing method and a streaming computing system.
  • Embodiments of the present invention provide a local-based flow calculation method and a streaming computing system, which can distribute multiple behaviors of processing task data to local computing nodes, and enable each computing node to call a predefined behavior program of each node.
  • Parallel and collaborative processing of task data can improve computational efficiency and avoid waste of program resources.
  • the embodiment of the invention provides a local-based flow calculation method, which may include:
  • the computing node is called, and the predefined behavior program of the next downstream node is called to calculate the calculation result of the downstream computing node until the final calculation result of the task data is output by the computing node that does not define the data flow.
  • the method further includes:
  • the predefined behavior program is set for each of the computing nodes in the local.
  • the method further includes:
  • the upstream computing node receives the plurality of task data, and calls the predefined behavior program of the upstream computing node to calculate the task data, and the calculation result of the upstream computing node includes:
  • the upstream computing node comprising at least one of the computing units
  • the calculation result calculated by the at least one calculation unit is inserted into the node output queue to form the calculation result of the upstream calculation node.
  • the computing unit is configured to be a plurality of task data, and the computing unit is a multi-threaded computing unit, and the computing unit to calculate the task data includes:
  • the computing thread is caused to perform calculations on the assigned task data.
  • the computing thread allocates a plurality of task data, and causes the computing thread to perform calculation on the assigned task data, including:
  • the task data is calculated according to an arrangement order of the task data in the thread input queue, and the calculation result is generated.
  • the upstream computing node includes a specified number of the computing units.
  • the computing unit comprises a specified number of the computing threads.
  • the predefined behavior program of each computing node is input from an application programming interface API.
  • the data flow relationship between the computing nodes is defined according to a configuration file.
  • the embodiment of the invention further provides a streaming computing system, which may include:
  • An upstream computing node located locally, for receiving task data
  • the upstream computing node is further configured to invoke a predefined behavior program of the upstream computing node to calculate the task data, and generate an upstream computing node calculation result;
  • the upstream computing node is further configured to send the calculation result of the upstream computing node to a downstream computing node where the upstream computing node data flow direction is located;
  • a downstream computing node where the data flow direction of the upstream computing node is located, and is used to receive the calculation result of the upstream computing node sent by the upstream computing node;
  • the downstream computing node is further configured to invoke a predefined behavior program of the downstream computing node to calculate a calculation result of the upstream computing node, and generate a calculation result of the downstream computing node;
  • the downstream computing node is further configured to continue to send the calculation result of the downstream computing node to a next downstream computing node where the downstream computing node data flows, so that the next downstream node invokes the next downstream node
  • the predefined behavior program calculates the calculation result of the downstream computing node until the final calculation result of the task data is output through the calculation node that does not define the data flow direction.
  • the streaming computing system further includes:
  • a compute node manager for setting the predefined behavior program for each compute node in the local For each compute node in the local.
  • the computing node manager is further configured to define a data flow relationship relationship between the computing nodes.
  • the upstream computing node receives multiple task data
  • the upstream computing node is further configured to insert a plurality of the task data into a node input queue
  • the upstream computing node is further configured to allocate a plurality of the task data to a computing unit of the upstream computing node according to an arrangement order of the task data in the node input queue;
  • the upstream computing node includes:
  • a calculating unit configured to calculate the task data, where the upstream computing node includes at least one of the computing units;
  • the calculating unit is further configured to insert the calculation result calculated by the at least one computing unit into the node output queue to form the calculation result of the upstream computing node.
  • the computing unit is allocated a plurality of task data, and the computing unit is a multi-threaded computing unit.
  • the calculating unit is further configured to allocate a computing thread to the plurality of task data allocated to the computing unit;
  • the computing unit includes:
  • the computing thread allocates multiple task data
  • the computing thread is further configured to insert a plurality of the task data allocated to the computing thread into a thread input queue; and further configured to perform the task data according to an arrangement order of the task data in the thread input queue Calculating, generating the calculation result.
  • the upstream computing node includes a specified number of the computing units.
  • each of the computing units includes a specified number of the computing threads.
  • the predefined behavior program of each computing node is input from an application programming interface API.
  • the data flow relationship between the selected computing nodes is defined according to a configuration file.
  • the system can distribute multiple behaviors of processing task data to local computing nodes, and improve computational efficiency by causing each computing node to call each node's predefined behavior program to process task data in parallel and collaboratively. To avoid waste of program resources and achieve lightweight calculation.
  • FIG. 1 is a schematic flowchart of an embodiment of a local-based flow calculation method according to an embodiment of the present invention
  • FIG. 2 is a schematic structural diagram of an embodiment of a streaming computing system according to an embodiment of the present invention.
  • Streaming computing is usually applied to cluster systems, which have the characteristics of step-by-step, directed acyclic computing, and can handle tasks in cluster server systems in large quantities.
  • the embodiment of the present invention introduces the characteristics of the streaming calculation into the local task data processing to improve the processing efficiency of the task data.
  • FIG. 1 is a schematic flowchart diagram of an embodiment of a local-based flow calculation method according to an embodiment of the present invention.
  • the flow calculation method described in this embodiment includes the steps of:
  • Step S110 receiving task data by a local upstream computing node.
  • Step S111 the predefined behavior program of the upstream computing node is called to calculate the task data, and the calculation result of the upstream computing node is generated;
  • Step S112 sending an upstream computing node calculation result to a downstream computing node where the upstream computing node data flow direction is located;
  • Step S113 the predefined behavior program of the downstream computing node is called to calculate the calculation result of the upstream computing node, and the calculation result of the downstream computing node is generated;
  • Step S114 continuing to send the calculation result of the downstream computing node to the next downstream computing node located at the downstream computing node data flow, and calling the predefined behavior program of the next downstream node to calculate the calculation result of the downstream computing node,
  • the final calculation result of the task data is output until the calculation node that has not defined the data flow.
  • the embodiment of the present invention may be implemented in a streaming computing system, where the system may include an upstream computing node and a downstream computing node, and the system sets a predefined behavior program for each computing node to process the corresponding part of the task data.
  • the embodiment of the present invention may further implement the following steps:
  • the pre-defined behavior program of each computing node may be input from the application programming interface API of the system, and the predefined behavior program of the node may also be modified according to actual conditions.
  • the embodiment of the present invention may further implement the following steps:
  • defining the data flow direction between the computing nodes may be implemented by a computing node manager in the system, and the task data may be divided according to the behavior content of the task, the corresponding behavior is processed by the specified computing node, and the node data is defined by
  • the data flow topology formed by the plurality of computing nodes flowing to control the data calculation process can realize parallel computing of the task data, and the processing efficiency of the task data can be improved by the cooperation between the plurality of computing nodes.
  • defining the node data flow can be based on the configuration file.
  • the upstream computing node receives the plurality of task data, and the preset behavior program of the upstream computing node is used to calculate the task data, and the specific implementation of the calculation result of the upstream computing node may include:
  • the upstream computing node includes at least one computing unit
  • the calculation result calculated by the at least one calculation unit is inserted into the node output queue to form an upstream calculation node calculation result.
  • the upstream computing node or the downstream computing node and other computing nodes each include multiple computing units, and may also be a specified number of computing units, and each computing unit may include multiple threads. Is a specified number of compute threads used to quickly calculate the task data received by each compute node:
  • the computing thread processes the task data by extracting the task data from the front end of the queue and processing the task data after inserting the task data into the queue, and outputting the processed result to the output queue:
  • the data is processed according to the order of the task data in the thread input queue, and the calculation result is generated and output to the thread output queue.
  • the input queue sizes of the compute nodes, node units, and threads are preset to control the data flow.
  • Node_name node_a (the name of the compute node, the same below)
  • Input_queue_size 100 (calculation node input queue size for flow control)
  • Task_class task_a (calculation task in the calculation unit)
  • node_b Downstream: node_b, node_c (name of the downstream compute node)
  • the node A is the upstream computing node
  • the downstream computing node of the data flow direction has the node B and the node C
  • the data flow of the node B is the node of the downstream computing node.
  • the node C acts as a terminating node in the program, and specifies that there is no downstream data flow direction.
  • the system may further include a read proxy and a write proxy.
  • the compute node When the compute node receives a large amount of task data, the compute node inserts a large amount of task data into the compute node input queue, and reads the compute node through the node's read proxy. Input task data in the queue, assign task data to the calculation unit, and when the calculation unit processes the task data through the calculation thread therein, output the calculation result to the internal output queue, and then read the internal output queue through the write agent. The data is written to the output queue of the compute node, which is the input queue of the next compute node.
  • the compute node manager is used to manage the nodes. Before processing the task data, the compute node manager performs initialization, so that the topological relationship between each compute node and the compute node is initialized:
  • the computational unit group initialization of the node is completed, which also includes the initialization of each computational unit.
  • Each calculation unit initialization initiates task data.
  • the compute node's output queue can be set to null, and the write proxy component is not needed.
  • a behavior program for processing task data is defined for each node, and an input queue size of each node and an upstream and downstream relationship between the nodes are configured, thereby assigning multiple behaviors of processing task data to the local
  • Each computing node enables each computing node to call the pre-defined behavior program of each node to process the task data in parallel and collaboratively, which improves the calculation efficiency, avoids the waste of program resources, and realizes the lightweight calculation.
  • FIG. 2 is a schematic structural diagram of an embodiment of a streaming computing system according to an embodiment of the present invention.
  • the streaming computing system described in this embodiment includes:
  • the upstream computing node 21 is located at the local location for receiving the task data.
  • the predefined behavior program for invoking the upstream computing node is used to calculate the task data to generate the calculation result of the upstream computing node, and is also used to send the calculation result of the upstream computing node to the location.
  • the downstream computing node data flows to the downstream computing node where it is located;
  • the downstream computing node 22 is configured to receive the data flow direction of the upstream computing node, and is used to receive the calculation result of the upstream computing node sent by the upstream computing node; and is also used to call a predefined behavior program of the downstream computing node to calculate the calculation result of the upstream computing node, and generate
  • the calculation result of the downstream computing node is further used to continue to send the calculation result of the downstream computing node to the next downstream computing node where the downstream computing node is located, so that the next downstream node invokes the predefined behavior procedure of the next downstream node to the downstream computing node.
  • the calculation result is calculated until the final calculation result of the task data is output through the calculation node of the undefined data flow.
  • system in the embodiment of the present invention selects multiple local nodes to calculate task data, and each node is configured with a predefined behavior program for processing task data.
  • system of the embodiment of the present invention may further include:
  • the compute node manager 23 is configured to set a predefined behavior program for each compute node in the local.
  • the pre-defined behavior program of each node may be input from the application programming interface API of the system, and the predefined behavior program of the node may also be modified according to actual conditions.
  • the compute node manager 23 is further configured to define a data flow relationship relationship between the compute nodes.
  • the definition of the data flow between the computing nodes can be implemented by the computing node manager 23 in the system, the task data can be divided according to the behavior content of the task, the corresponding behavior is processed by the specified computing node, and the node is defined by the specified node.
  • defining the node data flow can be based on the configuration file.
  • the upstream computing node 21 when the upstream computing node receives the plurality of task data, the upstream computing node 21 is further configured to insert the plurality of task data into the node input queue; and is further configured to input the task data in the queue according to the node. Arranging a plurality of task data in an order of arrangement to the computing unit 24 of the upstream computing node;
  • the upstream computing node 21 may further include:
  • the calculation unit 24 is configured to calculate task data, and the upstream computing node includes at least one computing unit.
  • the computing unit 24 is further configured to insert the calculation result calculated by the at least one computing unit into the node output queue to form an upstream computing node calculation result.
  • the upstream computing node 21 or the downstream computing node 22 and other computing nodes include multiple computing units 24, it may be a specified number of computing units 24, and each computing unit 24 may include multiple
  • the computing thread 25 may also be a specified number of computing threads 25 for quickly calculating task data received by each computing node:
  • the calculating unit is further configured to allocate a computing thread for the plurality of task data allocated to the computing unit;
  • the calculation thread 25 is configured to process the task data allocated by the calculation unit.
  • the computing thread 25 processes the task data by extracting the task data from the front end of the queue and processing the task data after inserting the task data into the queue, and outputting the processed result to the output queue:
  • the calculation thread 25 is further configured to insert a plurality of task data allocated to the calculation thread into the thread input queue; and is further configured to process the data according to the arrangement order of the task data in the thread input queue, generate the calculation result, and output the result to the thread output queue.
  • the input queue size of each node, node unit, and thread in the system is preset to control the data flow.
  • the flow of task data may be as follows:
  • Node_name node_a (the name of the compute node, the same below)
  • Input_queue_size 100 (calculation node input queue size for flow control)
  • Task_class task_a (calculation task in the calculation unit)
  • node_b Downstream: node_b, node_c (name of the downstream compute node)
  • the node A in the system acts as the upstream computing node
  • the downstream computing node where the data flow is located has the node B and the node C
  • the data flow of the node B is calculated downstream.
  • the node is node C.
  • node C acts as a terminating node in the program, and specifies that there is no downstream data flow direction.
  • the system may further include a read proxy and a write proxy.
  • the compute node When the compute node receives a large amount of task data, the compute node inserts a large amount of task data into the compute node input queue, and reads the calculation through the read node's read proxy. The node inputs the task data in the queue, and assigns the task data to the calculation unit. After the calculation unit processes the task data through the calculation thread therein, the calculation result is output to the internal output queue, and then the internal output queue is read by the write agent. The data is written to the output queue of the compute node, which is the input queue of the next compute node.
  • the compute node manager is used to manage the nodes. Before processing the task data, the compute node manager performs initialization, so that the topological relationship between each compute node and the compute node is initialized:
  • the computational unit group initialization of the node is completed, which also includes the initialization of each computational unit.
  • Each calculation unit initialization initiates task data.
  • the compute node's output queue can be set to null, and the write proxy component is not needed.
  • a behavior program for processing task data is defined for each node, and an input queue size of each node and an upstream and downstream relationship between the nodes are configured, thereby assigning multiple behaviors of processing task data to the local
  • Each computing node enables each computing node to call the pre-defined behavior program of each node to process the task data in parallel and collaboratively, which improves the calculation efficiency, avoids the waste of program resources, and realizes the lightweight calculation.
  • first and second are used for descriptive purposes only and are not to be construed as indicating or implying a relative importance or implicitly indicating the number of technical features indicated.
  • features defining “first” or “second” may include at least one of the features, either explicitly or implicitly.
  • the meaning of "a plurality” is at least two, such as two, three, etc., unless specifically defined otherwise.
  • a "computer-readable medium” can be any apparatus that can contain, store, communicate, propagate, or transport a program for use in an instruction execution system, apparatus, or device, or in conjunction with the instruction execution system, apparatus, or device.
  • computer readable media include the following: electrical connections (electronic devices) having one or more wires, portable computer disk cartridges (magnetic devices), random access memory (RAM), Read only memory (ROM), erasable editable read only memory (EPROM or flash memory), fiber optic devices, and portable compact disk read only memory (CDROM).
  • the computer readable medium may even be a paper or other suitable medium on which the program can be printed, as it may be optically scanned, for example by paper or other medium, followed by editing, interpretation or, if appropriate, other suitable The method is processed to obtain the program electronically and then stored in computer memory.
  • portions of the invention may be implemented in hardware, software, firmware or a combination thereof.
  • multiple steps or methods may be implemented in software or firmware stored in a memory and executed by a suitable instruction execution system.
  • a suitable instruction execution system For example, if implemented in hardware, as in another embodiment, it can be implemented by any one or combination of the following techniques well known in the art: having logic gates for implementing logic functions on data signals. Discrete logic circuits, application specific integrated circuits with suitable combinational logic gates, programmable gate arrays (PGAs), field programmable gate arrays (FPGAs), etc.
  • each functional unit in each embodiment of the present invention may be integrated into one processing module, or each unit may exist physically separately, or two or more units may be integrated into one module.
  • the above integrated modules can be implemented in the form of hardware or in the form of software functional modules.
  • the integrated modules, if implemented in the form of software functional modules and sold or used as stand-alone products, may also be stored in a computer readable storage medium.
  • the above mentioned storage medium may be a read only memory, a magnetic disk or an optical disk or the like.
  • the storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Complex Calculations (AREA)

Abstract

本发明实施例公开了一种基于本地的流式计算方法及流式计算系统,包括:通过本地的上游计算节点接收任务数据;调用上游计算节点的预定义行为程序对任务数据进行计算,生成上游计算节点计算结果;发送上游计算节点计算结果至位于上游计算节点数据流向所在的下游计算节点;调用下游计算节点的预定义行为程序对上游计算节点计算结果进行计算,生成下游计算节点计算结果;继续发送下游计算节点计算结果至位于下游计算节点数据流向所在的下一下游计算节点,并调用下一下游节点的预定义行为程序对下游计算节点计算结果进行计算,直至通过未定义数据流向的计算节点输出任务数据的最终计算结果。实施本发明,能够提高计算效率。

Description

一种基于本地的流式计算方法及流式计算系统
相关申请的交叉引用
本申请要求北京金山安全软件有限公司于2014年7月3日提交的、发明名称为“一种基于本地的流式计算方法及流式计算系统”的、中国专利申请号“201410317237.2”的优先权。
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于本地的流式计算方法及流式计算系统。
背景技术
本地在处理多个任务数据时,通常为单机的多线程处理,每个线程同一时间均只能运行一个任务数据,并且直到当前的任务数据运行完毕才能处理下一个任务数据,故,当任务数据的计算量较大时,会长期占用该线程,以致该线程的输入队列中的其他任务数据不能被及时处理;当任务数据包含多项行为的计算时,维护人员需要为该任务数据编写包含多项行为的预定义行为程序,然而,编写的预定义行为程序中的各项行为只能适用于当前的任务数据,进行其他任务数据时,维护人员需要再编写另一个预定义行为程序,非常的耗费精力,也造成了预定义行为程序的资源浪费。
发明内容
本发明实施例提供一种基于本地的流式计算方法及流式计算系统,可将处理任务数据的多项行为分布到本地的各个计算节点,通过使各计算节点调用各节点的预定义行为程序并行、协同地处理任务数据,能够提高计算效率,避免程序资源浪费。
本发明实施例提供了一种基于本地的流式计算方法,其可包括:
通过本地的上游计算节点接收任务数据;
调用所述上游计算节点的预定义行为程序对所述任务数据进行计算,生成上游计算节点计算结果;
发送所述上游计算节点计算结果至位于所述上游计算节点数据流向所在的下游计算节点;
调用所述下游计算节点的预定义行为程序对所述上游计算节点计算结果进行计算,生成下游计算节点计算结果;
继续发送所述下游计算节点计算结果至位于所述下游计算节点数据流向所在的下一下 游计算节点,并调用所述下一下游节点的预定义行为程序对所述下游计算节点计算结果进行计算,直至通过未定义数据流向的计算节点输出所述任务数据的最终计算结果。
其中,所述方法,还包括:
为所述本地中的各计算节点设置所述预定义行为程序。
其中,为所述本地中的节点设置预定义行为程序之前,通过本地的上游计算节点接收任务数据之后,还包括:
定义所述各计算节点之间的数据流向关系。
其中,所述上游计算节点接收到的为多个任务数据,调用所述上游计算节点的预定义行为程序对所述任务数据进行计算,生成上游计算节点计算结果包括:
将多个所述任务数据插入节点输入队列;
按照所述节点输入队列中所述任务数据的排列顺序分配多个所述任务数据至所述上游计算节点的计算单元;
使所述计算单元计算所述任务数据,所述上游计算节点包含至少一个所述计算单元;
将所述至少一个计算单元计算出的计算结果插入节点输出队列,形成所述上游计算节点计算结果。
其中,所述计算单元分配到的为多个任务数据,所述计算单元为多线程式计算单元,使所述计算单元计算所述任务数据包括:
为分配到所述计算单元的多个任务数据分配计算线程;
使所述计算线程对分配到的所述任务数据进行计算。
其中,所述计算线程分配到的为多个任务数据,使所述计算线程对分配到的所述任务数据进行计算包括:
将分配到所述计算线程的多个所述任务数据插入线程输入队列;
按照所述线程输入队列中所述任务数据的排列顺序对所述任务数据进行计算,生成所述计算结果。
其中,所述上游计算节点包含指定数目的所述计算单元。
其中,所述计算单元包含指定数目的所述计算线程。
其中,所述各计算节点的所述预定义行为程序是从应用程序编程接口API输入的。
其中,所述各计算节点之间的数据流向关系是根据配置文件定义的。
本发明实施例还提供了一种流式计算系统,其可包括:
上游计算节点,位于本地,用于接收任务数据;
所述上游计算节点,还用于调用所述上游计算节点的预定义行为程序对所述任务数据进行计算,生成上游计算节点计算结果;
所述上游计算节点,还用于发送所述上游计算节点计算结果至位于所述上游计算节点数据流向所在的下游计算节点;
下游计算节点,为所述上游计算节点的数据流向所在,用于接收所述上游计算节点发送的所述上游计算节点计算结果;
所述下游计算节点,还用于调用所述下游计算节点的预定义行为程序对所述上游计算节点计算结果进行计算,生成下游计算节点计算结果;
所述下游计算节点,还用于继续发送所述下游计算节点计算结果至位于所述下游计算节点数据流向所在的下一下游计算节点,使所述下一下游节点调用所述下一下游节点的预定义行为程序对所述下游计算节点计算结果进行计算,直至通过未定义数据流向的计算节点输出所述任务数据的最终计算结果。
其中,所述流式计算系统,还包括:
计算节点管理器,用于为所述本地中的各计算节点设置所述预定义行为程序。
其中,所述计算节点管理器,还用于定义所述各计算节点之间的数据流向关系。
其中,所述上游计算节点接收到的为多个任务数据,
所述上游计算节点,还用于将多个所述任务数据插入节点输入队列;
所述上游计算节点,还用于按照所述节点输入队列中所述任务数据的排列顺序分配多个所述任务数据至所述上游计算节点的计算单元;
所述上游计算节点包括:
计算单元,用于计算所述任务数据,所述上游计算节点包含至少一个所述计算单元;
所述计算单元,还用于将所述至少一个计算单元计算出的计算结果插入节点输出队列,形成所述上游计算节点计算结果。
其中,所述计算单元分配到的为多个任务数据,所述计算单元为多线程式计算单元,
所述计算单元,还用于为分配到所述计算单元的多个任务数据分配计算线程;
所述计算单元包括:
计算线程,用于计算所述计算单元分配到的所述任务数据。
其中,所述计算线程分配到的为多个任务数据,
所述计算线程,还用于将分配到所述计算线程的多个所述任务数据插入线程输入队列;还用于按照所述线程输入队列中所述任务数据的排列顺序对所述任务数据进行计算,生成所述计算结果。
其中,所述上游计算节点包含指定数目的所述计算单元。
其中,所述各计算单元包含指定数目的所述计算线程。
其中,所述各计算节点的所述预定义行为程序是从应用程序编程接口API输入的。
其中,所述选定的计算节点之间的数据流向关系是根据配置文件定义的。
在本发明实施例中,系统可将处理任务数据的多项行为分布到本地的各个计算节点,通过使各计算节点调用各节点的预定义行为程序并行、协同地处理任务数据,能够提高计算效率,避免程序资源浪费,实现轻量化计算。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的基于本地的流式计算方法的实施例流程示意图;
图2是本发明实施例提供的流式计算系统的实施例结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
流式计算通常应用于集群系统,其具有分步、有向无环的计算特点,可以大量地处理集群服务器系统中的任务。为了解决背景技术问题,本发明实施例将流式计算的特点引入了本地的任务数据处理中,以提高任务数据的处理效率。
参见图1,是本发明实施例提供的基于本地的流式计算方法的实施例流程示意图。本实施例中所描述的流式计算方法,包括步骤:
步骤S110,通过本地的上游计算节点接收任务数据。
步骤S111,调用上游计算节点的预定义行为程序对任务数据进行计算,生成上游计算节点计算结果;
步骤S112,发送上游计算节点计算结果至位于上游计算节点数据流向所在的下游计算节点;
步骤S113,调用下游计算节点的预定义行为程序对上游计算节点计算结果进行计算,生成下游计算节点计算结果;
步骤S114,继续发送下游计算节点计算结果至位于下游计算节点数据流向所在的下一下游计算节点,并调用下一下游节点的预定义行为程序对下游计算节点计算结果进行计算, 直至通过未定义数据流向的计算节点输出任务数据的最终计算结果。
具体实现中,本发明实施例可实施于一种流式计算系统,该系统可以包括上游计算节点以及下游计算节点,系统为各计算节点设置预定义行为程序,用于处理任务数据中相应的部分。那么相应地,在一些可行的实施方式中,通过本地的上游计算节点接收任务数据之前,本发明实施例还可以实施以下步骤:
为本地中的各计算节点设置预定义行为程序。其中,各计算节点设置预定义行为程序可以是从系统的应用程序编程接口API输入的,节点的预定义行为程序也可以根据实际情况修改。
在一些可行的实施方式中,为本地中的各计算节点设置预定义行为程序之前,通过本地的上游计算节点接收任务数据之后,本发明实施例还可以实施以下步骤:
定义各计算节点之间的数据流向关系。
其中,定义计算节点之间的数据流向可以由系统中的计算节点管理器来实施,可将任务数据按照任务的行为内容来划分,通过指定的计算节点处理对应的行为,并且通过定义好节点数据流向的多个计算节点所组成的数据流扑拓关系来控制数据的计算过程,可以实现将任务数据进行并行计算,通过多个计算节点之间的配合,可提高任务数据的处理效率。另外,定义节点数据流向可以依据配置文件。
在一些可行的实施方式中,上游计算节点接收到的为多个任务数据,调用上游计算节点的预定义行为程序对任务数据进行计算,生成上游计算节点计算结果的具体实施可以包括:
将多个任务数据插入节点输入队列;
按照节点输入队列中任务数据的排列顺序分配多个任务数据至上游计算节点的计算单元;
使计算单元计算分配到的任务数据,其中,上游计算节点包含至少一个计算单元;
将至少一个计算单元计算出的计算结果插入节点输出队列,形成上游计算节点计算结果。
其中,本发明实施例中,无论是上游计算节点还是下游计算节点以及其他计算节点均包含多个计算单元,也可以是指定数目个计算单元,每个计算单元均可以包含多个线程,也可以是指定数目的计算线程,用来快速地计算各计算节点接收的任务数据:
为分配到计算单元的多个任务数据分配计算线程;
使计算线程处理分配到的任务数据。
在一些可行的实施方式中,计算线程处理任务数据则是通过将任务数据插入队列后,从队列前端抽取任务数据并处理,并将处理后的结果输出到输出队列:
将分配到计算线程的多个任务数据插入线程输入队列;
按照线程输入队列中任务数据的排列顺序处理数据,生成计算结果并输出到线程输出队列。
在一些可行的实施方式中,各计算节点、节点单元以及线程的输入队列大小都是预设的,以控制数据流。
在一些可行的实施方式中,请一并参照以下程序,本发明实施例的任务数据的流向可以如以下程序所示:
[node](node表示一个计算节点的标识符)
node_name:node_a(计算节点的名字,下同)
input_queue_size:100(计算节点输入队列的大小,用于流量控制)
task_class:task_a(计算单元中的计算任务)
downstream:node_b,node_c(下游计算节点的名字)
[node]
node_name:node_b
input_queue_size:50
task_class:task_b
downstream:node_c
[node]
module_name:node_c
input_queue_size:10
task_class:task_c
downstream:null#表示不存在下游
上述程序中,节点A作为上游计算节点,它的数据流向所在的下游计算节点有节点B和节点C,并且,节点B的作为上游计算节点时,节点B的数据流向所在的下游计算节点为节点C,另外,节点C在本程序中作为终止节点,规定其不存在下游数据流向。
在一些可行的实施方式中,系统还可以包括读代理、写代理,当计算节点接收大量任务数据后,计算节点将大量的任务数据插入计算节点输入队列,并通过节点的读代理读取计算节点输入队列中的任务数据,分配任务数据至计算单元,当计算单元通过其中的计算线程对任务数据进行处理后,将计算结果输出至内部的输出队列,再通过写代理读取内部的输出队列中的数据,并写入计算节点的输出队列,即下一个计算节点的输入队列。
在一些可行的实施方式中,计算节点管理器用于管理节点,在处理任务数据之前,计算节点管理器要执行初始化,使每个计算节点及计算节点之间的拓扑关系初始化完成:
首先,完成节点的读代理初始化;
其次,完成节点的计算单元组初始化,其中,也包含了每个计算单元的初始化。每个计算单元初始化会启动任务数据。
再次,完成节点的写代理初始化(可选,当计算节点中的任务数据处理后无需输出时,计算节点的输出队列可置为null,写代理组件则不需要)。
在本发明实施例中,为各节点定义了处理任务数据的行为程序,并配置了各节点的输入队列大小以及节点之间的上下游关系,从而将处理任务数据的多项行为分配到本地的各个计算节点,使各计算节点调用各节点的预定义行为程序并行、协同地处理任务数据,提高了计算效率,避免了程序资源浪费,实现了轻量化计算。
参见图2,是本发明实施例提供的流式计算系统的实施例结构示意图。本实施例中所描述的流式计算系统,包括:
上游计算节点21,位于本地,用于接收任务数据;还用于调用上游计算节点的预定义行为程序对任务数据进行计算,生成上游计算节点计算结果;还用于发送上游计算节点计算结果至位于上游计算节点数据流向所在的下游计算节点;
下游计算节点22,为上游计算节点的数据流向所在,用于接收上游计算节点发送的上游计算节点计算结果;还用于调用下游计算节点的预定义行为程序对上游计算节点计算结果进行计算,生成下游计算节点计算结果;还用于继续发送下游计算节点计算结果至位于下游计算节点数据流向所在的下一下游计算节点,使下一下游节点调用下一下游节点的预定义行为程序对下游计算节点计算结果进行计算,直至通过未定义数据流向的计算节点输出任务数据的最终计算结果。
具体实现中,本发明实施例的系统选取了本地多个节点来计算任务数据,每个节点均配置有预定义行为程序,用于处理任务数据。
在一些可行的实施方式中,本发明实施例的系统还可以包括:
计算节点管理器23,用于为本地中的各计算节点设置预定义行为程序。其中,各节点设置预定义行为程序可以是从系统的应用程序编程接口API输入的,节点的预定义行为程序也可以根据实际情况修改。
在一些可行的实施方式中,计算节点管理器23,还用于定义各计算节点之间的数据流向关系。其中,定义计算节点之间的数据流向可以由系统中的计算节点管理器23来实施,可将任务数据按照任务的行为内容来划分,通过指定的计算节点处理对应的行为,并且通过定义好节点数据流向的多个计算节点所组成的数据流扑拓关系来控制数据的计算过程, 可以实现将任务数据进行并行计算,通过多个计算节点之间的配合,可提高任务数据的处理效率。另外,定义节点数据流向可以依据配置文件。
在一些可行的实施方式中,上游计算节点接收到的为多个任务数据时,上游计算节点21,还用于将多个任务数据插入节点输入队列;还用于按照节点输入队列中任务数据的排列顺序分配多个任务数据至上游计算节点的计算单元24;
上游计算节点21可以进一步包括:
计算单元24,用于计算任务数据,上游计算节点包含至少一个计算单元;计算单元24,还用于将至少一个计算单元计算出的计算结果插入节点输出队列,形成上游计算节点计算结果。
其中,本发明实施例中,无论是上游计算节点21还是下游计算节点22以及其他计算节点均包含多个计算单元24,也可以是指定数目个计算单元24,每个计算单元24均可以包含多个计算线程25,也可以是指定数目的计算线程25,用来快速地计算各计算节点接收的任务数据:
计算单元,还用于为分配到计算单元的为多个任务数据分配计算线程;
计算线程25,用于处理计算单元分配的任务数据。
在一些可行的实施方式中,计算线程25处理任务数据则是通过将任务数据插入队列后,从队列前端抽取任务数据并处理,并将处理后的结果输出到输出队列:
计算线程25,还用于将分配到计算线程的多个任务数据插入线程输入队列;还用于按照线程输入队列中任务数据的排列顺序处理数据,生成计算结果并输出到线程输出队列。
在一些可行的实施方式中,系统中各节点、节点单元以及线程的输入队列大小都是预设的,以控制数据流。
在一些可行的实施方式中,请一并参照以下程序,本发明实施例的系统中,任务数据的流向可以如以下程序所示:
[node](node表示一个计算节点的标识符)
node_name:node_a(计算节点的名字,下同)
input_queue_size:100(计算节点输入队列的大小,用于流量控制)
task_class:task_a(计算单元中的计算任务)
downstream:node_b,node_c(下游计算节点的名字)
[node]
node_name:node_b
input_queue_size:50
task_class:task_b
downstream:node_c
[node]
module_name:node_c
input_queue_size:10
task_class:task_c
downstream:null#表示不存在下游
上述程序中,系统中的节点A作为上游计算节点,它的数据流向所在的下游计算节点有节点B和节点C,并且,节点B的作为上游计算节点时,节点B的数据流向所在的下游计算节点为节点C,另外,节点C在本程序中作为终止节点,规定其不存在下游数据流向。
在一些可行的实施方式中,系统还可以包括读代理、写代理,当计算节点接收大量任务数据后,计算节点将大量的任务数据插入计算节点输入队列,并通过计算节点的读代理读取计算节点输入队列中的任务数据,分配任务数据至计算单元,当计算单元通过其中的计算线程处理任务数据后,将计算结果输出至内部的输出队列,再通过写代理读取内部的输出队列中的数据,并写入计算节点的输出队列,即下一个计算节点的输入队列。
在一些可行的实施方式中,计算节点管理器用于管理节点,在处理任务数据之前,计算节点管理器要执行初始化,使每个计算节点及计算节点之间的拓扑关系初始化完成:
首先,完成节点的读代理初始化;
其次,完成节点的计算单元组初始化,其中,也包含了每个计算单元的初始化。每个计算单元初始化会启动任务数据。
再次,完成节点的写代理初始化(可选,当计算节点中的任务数据处理后无需输出时,计算节点的输出队列可置为null,写代理组件则不需要)。
在本发明实施例中,为各节点定义了处理任务数据的行为程序,并配置了各节点的输入队列大小以及节点之间的上下游关系,从而将处理任务数据的多项行为分配到本地的各个计算节点,使各计算节点调用各节点的预定义行为程序并行、协同地处理任务数据,提高了计算效率,避免了程序资源浪费,实现了轻量化计算。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特 征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (20)

  1. 一种基于本地的流式计算方法,其特征在于,包括:
    通过本地的上游计算节点接收任务数据;
    调用所述上游计算节点的预定义行为程序对所述任务数据进行计算,生成上游计算节点计算结果;
    发送所述上游计算节点计算结果至位于所述上游计算节点数据流向所在的下游计算节点;
    调用所述下游计算节点的预定义行为程序对所述上游计算节点计算结果进行计算,生成下游计算节点计算结果;
    继续发送所述下游计算节点计算结果至位于所述下游计算节点数据流向所在的下一下游计算节点,并调用所述下一下游节点的预定义行为程序对所述下游计算节点计算结果进行计算,直至通过未定义数据流向的计算节点输出所述任务数据的最终计算结果。
  2. 如权利要求1所述的方法,其特征在于,通过本地的上游计算节点接收任务数据之前,还包括:
    为所述本地中的各计算节点设置所述预定义行为程序。
  3. 如权利要求2所述的方法,其特征在于,为所述本地中的节点设置预定义行为程序之前,通过本地的上游计算节点接收任务数据之后,还包括:
    定义所述各计算节点之间的数据流向关系。
  4. 如权利要求1-3中任一项所述的方法,其特征在于,所述上游计算节点接收到的为多个任务数据,调用所述上游计算节点的预定义行为程序对所述任务数据进行计算,生成上游计算节点计算结果包括:
    将多个所述任务数据插入节点输入队列;
    按照所述节点输入队列中所述任务数据的排列顺序分配多个所述任务数据至所述上游计算节点的计算单元;
    使所述计算单元计算所述任务数据,所述上游计算节点包含至少一个所述计算单元;
    将所述至少一个计算单元计算出的计算结果插入节点输出队列,形成所述上游计算节点计算结果。
  5. 如权利要求4所述的方法,其特征在于,所述计算单元分配到的为多个任务数据,所述计算单元为多线程式计算单元,使所述计算单元计算所述任务数据包括:
    为分配到所述计算单元的多个任务数据分配计算线程;
    使所述计算线程对分配到的所述任务数据进行计算。
  6. 如权利要求5所述的方法,其特征在于,所述计算线程分配到的为多个任务数据,使所述计算线程对分配到的所述任务数据进行计算包括:
    将分配到所述计算线程的多个所述任务数据插入线程输入队列;
    按照所述线程输入队列中所述任务数据的排列顺序对所述任务数据进行计算,生成所述计算结果。
  7. 如权利要求4所述的方法,其特征在于,所述上游计算节点包含指定数目的所述计算单元。
  8. 如权利要求5所述的方法,其特征在于,所述计算单元包含指定数目的所述计算线程。
  9. 如权利要求2所述的方法,其特征在于,所述各计算节点的所述预定义行为程序是从应用程序编程接口API输入的。
  10. 如权利要求3所述的方法,其特征在于,所述各计算节点之间的数据流向关系是根据配置文件定义的。
  11. 一种流式计算系统,其特征在于,包括:
    上游计算节点,位于本地,用于接收任务数据;
    所述上游计算节点,还用于调用所述上游计算节点的预定义行为程序对所述任务数据进行计算,生成上游计算节点计算结果;
    所述上游计算节点,还用于发送所述上游计算节点计算结果至位于所述上游计算节点数据流向所在的下游计算节点;
    下游计算节点,为所述上游计算节点的数据流向所在,用于接收所述上游计算节点发送的所述上游计算节点计算结果;
    所述下游计算节点,还用于调用所述下游计算节点的预定义行为程序对所述上游计算 节点计算结果进行计算,生成下游计算节点计算结果;
    所述下游计算节点,还用于继续发送所述下游计算节点计算结果至位于所述下游计算节点数据流向所在的下一下游计算节点,使所述下一下游节点调用所述下一下游节点的预定义行为程序对所述下游计算节点计算结果进行计算,直至通过未定义数据流向的计算节点输出所述任务数据的最终计算结果。
  12. 如权利要求11所述的流式计算系统,其特征在于,还包括:
    计算节点管理器,用于为所述本地中的各计算节点设置所述预定义行为程序。
  13. 如权利要求12所述的流式计算系统,其特征在于,
    所述计算节点管理器,还用于定义所述各计算节点之间的数据流向关系。
  14. 如权利要求11-13中任一项所述的流式计算系统,其特征在于,所述上游计算节点接收到的为多个任务数据,
    所述上游计算节点,还用于将多个所述任务数据插入节点输入队列;
    所述上游计算节点,还用于按照所述节点输入队列中所述任务数据的排列顺序分配多个所述任务数据至所述上游计算节点的计算单元;
    所述上游计算节点包括:
    计算单元,用于计算所述任务数据,所述上游计算节点包含至少一个所述计算单元;
    所述计算单元,还用于将所述至少一个计算单元计算出的计算结果插入节点输出队列,形成所述上游计算节点计算结果。
  15. 如权利要求14所述的流式计算系统,其特征在于,所述计算单元分配到的为多个任务数据,所述计算单元为多线程式计算单元,
    所述计算单元,还用于为分配到所述计算单元的多个任务数据分配计算线程;
    所述计算单元包括:
    计算线程,用于计算所述计算单元分配到的所述任务数据。
  16. 如权利要求15所述的流式计算系统,其特征在于,所述计算线程分配到的为多个任务数据,
    所述计算线程,还用于将分配到所述计算线程的多个所述任务数据插入线程输入队列;还用于按照所述线程输入队列中所述任务数据的排列顺序对所述任务数据进行计算,生成 所述计算结果。
  17. 如权利要求14所述的流式计算系统,其特征在于,所述上游计算节点包含指定数目的所述计算单元。
  18. 如权利要求15所述的流式计算系统,其特征在于,所述计算单元包含指定数目的所述计算线程。
  19. 如权利要求12所述的流式计算系统,其特征在于,所述各计算节点的所述预定义行为程序是从应用程序编程接口API输入的。
  20. 如权利要求13所述的流式计算系统,其特征在于,所述各计算节点之间的数据流向关系是根据配置文件定义的。
PCT/CN2015/082121 2014-07-03 2015-06-23 一种基于本地的流式计算方法及流式计算系统 WO2016000548A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410317237.2 2014-07-03
CN201410317237.2A CN105335218A (zh) 2014-07-03 2014-07-03 一种基于本地的流式计算方法及流式计算系统

Publications (1)

Publication Number Publication Date
WO2016000548A1 true WO2016000548A1 (zh) 2016-01-07

Family

ID=55018432

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/082121 WO2016000548A1 (zh) 2014-07-03 2015-06-23 一种基于本地的流式计算方法及流式计算系统

Country Status (2)

Country Link
CN (1) CN105335218A (zh)
WO (1) WO2016000548A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107305501B (zh) * 2016-04-25 2020-11-17 百度在线网络技术(北京)有限公司 一种多流流式数据的处理方法和系统
CN107797861B (zh) * 2016-08-31 2021-09-03 北京威锐达测控系统有限公司 数据处理方法、模块、数据处理系统及其构建方法、装置
CN107070976A (zh) * 2017-01-13 2017-08-18 广西电网有限责任公司电力科学研究院 一种数据传输方法
CN107391136B (zh) * 2017-07-21 2020-11-06 众安信息技术服务有限公司 一种基于流式的编程系统和方法
CN108958789B (zh) * 2018-05-20 2021-07-09 湖北九州云仓科技发展有限公司 一种并行流式计算方法、电子设备、存储介质及系统
CN109284180B (zh) * 2018-08-30 2021-06-18 百度在线网络技术(北京)有限公司 一种任务调度方法、装置、电子设备及存储介质
CN109377177B (zh) * 2018-10-18 2020-12-01 东软集团股份有限公司 流程处理方法、装置、设备和计算机可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100125718A1 (en) * 2008-11-14 2010-05-20 D.E. Shaw Research, Llc Parallel analysis of time series data
US20110271006A1 (en) * 2010-04-29 2011-11-03 International Business Machines Corporation Pipelining protocols in misaligned buffer cases
CN102737098A (zh) * 2011-03-29 2012-10-17 日本电气株式会社 分布式文件系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101957777B (zh) * 2010-09-09 2012-11-21 西北工业大学 一种数据处理流程的调度方法
CN102760073B (zh) * 2011-04-29 2014-10-22 中兴通讯股份有限公司 一种任务调度方法、系统及装置
CN102904919B (zh) * 2011-07-29 2015-05-20 国际商业机器公司 流处理方法和实现流处理的分布式系统
CN103336723B (zh) * 2013-07-21 2017-03-29 哈尔滨理工大学 基于关键路径的适应处理器内核紧缺调度方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100125718A1 (en) * 2008-11-14 2010-05-20 D.E. Shaw Research, Llc Parallel analysis of time series data
US20110271006A1 (en) * 2010-04-29 2011-11-03 International Business Machines Corporation Pipelining protocols in misaligned buffer cases
CN102737098A (zh) * 2011-03-29 2012-10-17 日本电气株式会社 分布式文件系统

Also Published As

Publication number Publication date
CN105335218A (zh) 2016-02-17

Similar Documents

Publication Publication Date Title
WO2016000548A1 (zh) 一种基于本地的流式计算方法及流式计算系统
US9983897B2 (en) Maintaining virtual machines for cloud-based operators in a streaming application in a ready state
US9898278B2 (en) Release and management of composite applications on PaaS
WO2018076759A1 (zh) 基于区块链的多链管理方法、系统、电子装置及存储介质
US10841366B2 (en) Service graph based serverless cloud platform
CN103797462B (zh) 一种创建虚拟机的方法和装置
WO2016078008A1 (zh) 调度数据流任务的方法和装置
WO2022188578A1 (zh) 一种多个服务共享同一个gpu的方法、系统、设备及介质
CN109117252B (zh) 基于容器的任务处理的方法、系统及容器集群管理系统
US9753783B2 (en) System and method for accelerating mapreduce operation
US10303444B2 (en) Composable application session parameters
CN109189758B (zh) 运维流程设计方法、装置和设备、运行方法、装置和主机
CN105786460A (zh) 一种基于服务组合的软件开发方法及装置
CN103780686A (zh) 一种云组织内自定义申请审批流程的方法及系统
EP3101965A1 (en) Method and apparatus for adjacent node registration, and method and system for crossing node registration
US20170153966A1 (en) Streams: intelligent operator subset for debug
WO2017007466A1 (en) Orchestration template generation
JP2016071886A5 (zh)
CN108984105B (zh) 对网络存储设备中的复制任务进行分配的方法和设备
US20150373078A1 (en) On-demand helper operator for a streaming application
US20150227392A1 (en) Enabling Dynamic Job Configuration in Mapreduce
CN106301906B (zh) 基于分布式系统的对象配置方法及装置
FI3610369T3 (fi) Teknologiat integraatioliittymien luomiseksi ja jakamiseksi pilvipalvelun välitysjärjestelmässä
US9588868B2 (en) Correlating multiple disjoint events via an operation identifier
US9762505B2 (en) Collaborative route reservation and ranking in high performance computing fabrics

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: 15815312

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 11/05/17)

122 Ep: pct application non-entry in european phase

Ref document number: 15815312

Country of ref document: EP

Kind code of ref document: A1