CN104937548A - Dynamic graph performance monitoring - Google Patents

Dynamic graph performance monitoring Download PDF

Info

Publication number
CN104937548A
CN104937548A CN201380070524.1A CN201380070524A CN104937548A CN 104937548 A CN104937548 A CN 104937548A CN 201380070524 A CN201380070524 A CN 201380070524A CN 104937548 A CN104937548 A CN 104937548A
Authority
CN
China
Prior art keywords
data
performance metric
flow diagram
data flow
polymerized
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CN201380070524.1A
Other languages
Chinese (zh)
Other versions
CN104937548B (en
Inventor
M.巴克斯鲍姆
M.G.马利根
T.韦克林
M.D.阿特伯里
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ab Initio Technology LLC
Original Assignee
Ab Initio Technology LLC
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 Ab Initio Technology LLC filed Critical Ab Initio Technology LLC
Publication of CN104937548A publication Critical patent/CN104937548A/en
Application granted granted Critical
Publication of CN104937548B publication Critical patent/CN104937548B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3041Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is an input/output interface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/323Visualisation of programs or trace data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3404Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for parallel or distributed programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • G06F11/3082Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved by aggregating or compressing the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for dynamic graph performance monitoring. One of the methods includes receiving multiple units of work that each include one or more work elements. The method includes determining a characteristic of the first unit of work. The method includes identifying, by a component of the first dataflow graph, a second dataflow graph from multiple available dataflow graphs based on the determined characteristic, the multiple available dataflow graphs being stored in a data storage system. The method includes processing the first unit of work using the second dataflow graph. The method includes determining one or more performance metrics associated with the processing.

Description

The performance monitoring of Dynamic Graph
Prioity claim
This application claims the right of priority that the sequence number submitted on November 16th, 2012 is the U.S. Patent application of 13/678,921, by reference its full content is incorporated into this.
Technical field
This description relates to the performance metric (performance metrics) monitoring Dynamic Graph.
Background technology
Calculate and often can be expressed as data stream (being called as " data flow diagram ") by digraph, it has the computation module be associated with the summit (vertice) in figure, and with the data stream linked between (arc, limit) corresponding assembly of figure.In the physics realization of the system for performing this calculating, the data handling component such as performing the microprocessor of suitable programmed instruction can be used to assembly described in instantiation and data stream.These assemblies can comprise data handling component and data set assembly, described data handling component receives data at one or more input port place, processes these data and provide data from one or more output port, and described data set assembly is used as source or place (the source or sink) of data stream.These assemblies can also comprise one or more data plot, and described data plot can be performed along with data and dynamically be loaded in such as " dynamic assembly " or " microdrawing (micrograph) ".At United States Patent (USP) 5,966, the system realizing this calculating based on figure is described in 072 " Executing Computations Expressed as Graphs (execution is represented as the calculating of figure) ", and such as sequence number be illustrated in the U.S. Patent application " Dynamically Loading Graph-Based Computations (dynamically loading the calculating based on figure) " of 13/161,010 for this based on the calculating of figure in realize the system of dynamic assembly.
Summary of the invention
In one aspect, generally speaking, the method for the treatment of data comprises the multiple unit (unit) receiving operation (work), and multiple unit of described operation comprise one or more operation element separately.The method comprises the characteristic of the first module determining operation.The method comprises and from multiple data available flow graph, identifies the second data flow diagram based on determined characteristic by the assembly of the first data flow diagram, and described multiple data available flow graph is stored in data-storage system.The method comprises described second data flow diagram of use to process the first module of described operation.The method comprises the one or more performance metrics determining to be associated with described process.
It is one or more that each side can comprise in following characteristics.Described second data flow diagram can be compiled independent of described first data flow diagram.One or more performance metric is stored in the method includable deposit data thesaurus (in-memory data store).The method can comprise stored one or more performance metrics are sent to persistant data thesaurus.Described one or more performance metric can be polymerized (aggregating) with the performance metric previously obtained by the method.Be polymerized the identifier that described one or more performance metric can comprise based on being associated with described second data flow diagram and be polymerized described one or more performance metric.Be polymerized the identifier that described one or more performance metric can comprise based on being associated with described first data flow diagram and be polymerized described one or more performance metric.The method can comprise and show described one or more performance metric to user.
It is one or more that each side can comprise in following advantage.The performance metric of dynamic assembly can be collected and report.Can reduce by monitoring the delay that the performance of Dynamic Execution causes.
From following detailed description and from claim, other features and advantages of the present invention will become obvious.
Accompanying drawing explanation
Fig. 1 is the block diagram of the system for performing the calculating based on figure.
Fig. 2 illustrates the exemplary environments of the performance metric wherein can collecting microdrawing.
Fig. 3 is the process flow diagram collecting performance metric from microdrawing.
Fig. 4 illustrates the example carrying out polymerization tolerance according to microdrawing identifier.
Fig. 5 illustrates the example context wherein running microdrawing (run-micrograph) assembly executed in parallel.
The example of the microdrawing of affairs that Fig. 6 illustrates " raising credit line ".
Fig. 7 illustrates the example user interface that system monitoring is applied.
Fig. 8 illustrates the example user interface of display microdrawing.
Fig. 9 illustrates the example user interface of the performance metric that display is other.
Figure 10 is the process flow diagram of the instantiation procedure collecting performance metric.
Embodiment
The place that data flow diagram system must process mass data is very fast used.Make user can the following assembly of individually or in groups identification data flow graph to the supervision of the performance of data Flowsheet systems, it can be enhanced or may perform undeservedly.Such as, performance monitoring makes user can identify following assembly, and it uses the excessive processor time, introduces and postpones, or easily break down.These assemblies can be examined and revise, to correct these defects.
Dynamically being loaded assembly (assembly selected when data flow diagram performs and load) by the enable New function that will be introduced into when not recompilating existing figure, strengthening the function of data flow diagram.But, other complex situations are introduced to the supervision being dynamically loaded assembly.
Usually, the founder of data flow diagram may not know the characteristic of the dynamic assembly introduced afterwards, and this makes these assemblies be difficult to monitor.Traditionally, data flow diagram suitably can not report the Performance Characteristics of these dynamic assemblies.
Meanwhile, dynamic assembly probably causes performance issue.Such as, the founder of dynamic assembly may not know that this assembly is by the subtlety (nuance) in the structure of data flow diagram that is loaded into.Therefore, this dynamic assembly may perform unnecessary operation, may produce adverse influence to the process of the remainder of data flow diagram or performance.
By the surveillance coverage of expanded data flow diagram to consider dynamic assembly, the ability of monitoring data Flowsheet systems can be improved.
Fig. 1 illustrates wherein can the example data processing system 100 of usability surveillance technology.System 100 comprises data source 102, data source 102 can comprise the source of one or more data, such as memory device or the connection to online data stream, each in them can with any one in various storage format (such as, database table, electronic form file, text-only file or the native format (native format) that used by main frame (mainframe)) to store data.Execution environment 104 comprises performance monitoring module 106 and execution module 112.Execution environment 104 can under the control of suitable operating system (such as UNIX operating system), and carried (host) is on the computing machine of one or more general object.Such as, execution environment 104 can comprise multi-node parallel computing environment, it comprises the configuration of the computing system using multiple CPU (central processing unit) (CPU) (or equivalent CPU " core "), these CPU or this locality (such as, multicomputer system, such as symmetric multiprocessor (SMP) computing machine), or this locality is distributed (such as, be coupled to multiple processors of cluster or massively parallel processing (MPP)), or it is long-range, or remote distributed (such as, multiple processors via one or more LAN (Local Area Network) (LAN) and/or wide area network (WAN) are coupled), or their combination in any.
Execution module 112 reads data from data source 102.There is provided the memory device of data source 102 can be local to execution environment 104, such as be stored on the storage medium (as hard disk drive 108) of the computing machine being connected to operation execution environment 104, or can be long-range to execution environment 104, such as, be carried on and the remote system of the compunication running execution environment 104 (as main frame 110) by long-range connection.
Execution module 112 uses the data from data source 102 to export record 114 to generate, and exports record 114 and is stored in the addressable data-storage system 116 of execution environment 104.Data-storage system 116 is also that development environment 118 is addressable.In some implementations, development environment 118 is systems application and development being become data flow diagram, data flow diagram comprises summit (proxy component or data set), is connected between this summit by oriented link (link) (representing the flowing of operation element).Such as, be incorporated to by reference herein, U.S. Application Publication No 2007/0011668, title be describe in further detail this environment in " Managing Parameters forGraph-Based Applications (managing for the parameter based on the application of figure) ".Be incorporated to by reference herein, U.S. Patent number 5566072, describe the system for performing this calculating based on figure in " ExecutingComputations Expressed as Graphs (execution is represented as the calculating of figure) ".As used herein, term " figure (graph) " and " microdrawing (micrograph) " refer to instruction set, and are associated with the processor performing these instructions.The data flow diagram made according to this system provides for information being included in the single process (process) that represented by the assembly of figure/take out information, for mobile message between process and the mechanism (mechanism) for the operation order that defines process from this single process.This system comprises the algorithm (such as, can use TCP/IP or UNIX territory socket or shared storage (shared memory) to transmit data between process according to the communication path of the link of figure) selecting inter-process communication methods.
Execution module 112 can from the various types of system receives data comprising multi-form Database Systems.These data can be organized into the record of the value comprising each field (field) (also referred to as " attribute " or " row "), likely comprise sky (null) value.When reading data first from data source, execution module 112 is general from the initial format information relevant with the record in this data source.In some cases, be unknown when the interrecord structure of data source is initial, but can be determined after analysis data source.About the initial information of record can comprise represent different value bit number, the order of field and the type (as character string type, having symbol/signless integer) of value that represented by described bit in record.
Performance monitoring module 106 collects the performance metric relevant with the performance of execution module 112.As discussed below, these tolerance can comprise, such as, record reads number, byte reads number, record write number, byte write number, some or all in processor time of use and elapsed time (elapsed time).Fig. 2 illustrates the exemplary environments of the performance metric for collecting the microdrawing performed by execution module.Usually, microdrawing is the special subgraph (specialized sub-graph) being configured to dynamically take out (retrieved) and embedding within operation-microdrawing assembly 210.Be incorporated to by reference herein, U.S. Patent Application No. 13/161010, describe the system for performing this figure dynamically loaded in " Dynamically Loading Graph-Based Computations (dynamically loading the calculating based on figure) ".In some implementations, microdrawing can by precompile.
Execution module 112 performs Figure 20 2.Execution module can be, such as, and the process just performed by computer system or one group of process.This figure can be one group of computer-readable instruction, and it is stored in non-Transient calculation machine readable storage device, in such as archival memory (storage) 116.Figure 20 2 can be loaded from the data repository of the archival memory 116 such as Fig. 1.
In this illustration, Figure 20 2 comprises the assembly 206 reading data from data source 204.Assembly 206 is linked to operation-microdrawing assembly 210 by link 208.Data record from the output port of assembly 206 is passed in the input port of operation-microdrawing assembly 210.Usually, the assembly that port refers to by its data flow diagram can receive or provide any mechanism of data.Port can be, such as, and transmission control protocol (TCP)/Internet protocol (IP) port, web socket or software pipeline (pipe).Port can also refer to, such as, at the additive method of inter-component communication, such as, to reading and the write of shared storage.
The microdrawing 212 that will perform selected by operation-microdrawing assembly 210.Such as, credit disposal system can represent different user and perform many actions (action).Described action can comprise more change of address, raising credit line, and cancels credit card.Each of these activities can be associated with the different code stored in data record.A series of data record can comprise such as from first user to first of address the change, the second change to address from the second user, the cancellation credit card request from the 3rd user, from the 4th user to the 3rd change of address and the raising credit line request from the 5th user.
For process these record in each, one or more different microdrawing 212 can be selected.Such as, the change of address can be processed by address change microdrawing, and cancelling credit card can be processed by cancellation credit card microdrawing, and improves credit line and can be processed by raising credit line microdrawing.Microdrawing can be stored in data repository and operationally (run-time) is dynamically loaded.In some implementations, microdrawing can be precompiler data flow diagram, its by running-microdrawing assembly visits.
This operation-microdrawing assembly can produce and export record on output port 214, and this output record can be stored in data repository 216.
Operation-microdrawing assembly 210 can monitor and record the Performance Characteristics of microdrawing 212.Such as, operation-microdrawing assembly 210 can collect following performance metric, such as, processing time of use, elapsed time, byte reads number, record reads number, byte write number, record write number, actual figure, failed actual figure, total duration, average record processing speed (record/second), average byte processing speed (byte per second) etc.
Performance metric can produce on the second output port 218 of operation-microdrawing assembly 210.Such as, performance metric can be one or more record, and it comprises with selected microdrawing 212 together with the relevant information of the performance of the microdrawing selected by other.
Performance metric can be stored in the data repository 220 in performance monitoring module 106.In some implementations, data repository 220 can be selected, and the performance impact of measuring to make write performance minimizes.Such as, reduce and performance metric is write data repository 220 and the delay caused can be useful.In some implementations, data repository 220 can be arranged in shared storage 220.Write is shared the operation of (as semiconductor) storer and is usually caused less expense, and therefore than write persistant data thesaurus, such as disk, similar operations want fast.
Periodically, such as, every five minutes, ten minutes or 30 minutes, transfer assembly 222 was from data repository 220 reading performance tolerance and by performance metric writing system supervision daily record 224.In some implementations, system monitoring daily record can be arranged in persistant data thesaurus.
System monitoring assembly 226 can be measured from data repository 220 reading performance, and can process further and be polymerized this data.Such as, the performance metric that system monitoring application can be associated with the multiple data flow diagram forming single business together combines.System monitoring application can present this performance metric to user 228.Usually, each data record received by operation-microdrawing assembly 210 can cause loading to different microdrawing and process, although same microdrawing can be used to process multiple data record.
Fig. 3 is the process flow diagram that the microdrawing loaded from the content based on data record collects the process of performance metric.This process can be performed by the execution module of the execution module 112 in such as Fig. 1.
302, such as, on the input port of operation-microdrawing assembly, receive data.Usually, data can be the forms of one or more record.Record can comprise one or more values that can correspond to one or more field.Such as, credit card transactions data record can comprise four groups of four round valuess (as " 1234123412341234 "), and it corresponds to account identifier field.
For each record, microdrawing can be loaded, and 304; Microdrawing can be performed, and 306; And tolerance can be processed, 308.
Microdrawing can from one or more position or equipment, and such as persistant data thesaurus, is loaded, or, can be stored in memory.Load microdrawing and can comprise the suitable microdrawing selecting to load, such as, comprised the data of some in the data in record by assessment.Based on the assessment to the data comprised in record, microdrawing can be selected from one or more microdrawing.Such as, the combination of specific fields or field can be the determinative that will load which microdrawing.
Usually, control data is called as to the data used in the selection of microdrawing.In some implementations, control data can be provided to operation-microdrawing assembly with the form of the independent data record in data to be processed.In other realize, control data can be integrated in each data record, and can also comprise data to be processed in some instances.
Microdrawing can be compiled and be stored in data repository.In some are arranged, microdrawing is compiled before being and is stored in the data flow diagram in data-storage system, or is derived (derived) by from this data flow diagram.In some are arranged, microdrawing keeps the form do not compiled when being loaded from data repository.Microdrawing can be compiled independent of the data flow diagram comprising operation-microdrawing assembly.
Perform microdrawing, 306, the input port that data record is provided to microdrawing can be comprised and receive from the output port of microdrawing and export record.In some implementations, microdrawing can receive zero or more data record and produce zero or more and export record.
Process tolerance, 308, the performance metric (such as, the byte of the byte of processing time, process, the byte of reading and write) determining this microdrawing can be comprised.Tolerance can be polymerized.That is, the execution can crossing over one or more microdrawing amounts to tolerance.Such as, performance metric can be polymerized based on the title be associated with microdrawing or other labels.Such as, the performance of the execution of all " cancellation credit card " microdrawings can be combined.In addition, the number of times that microdrawing is performed can be tracked.Performance metric can be stored in internal storage data thesaurus.
Determine whether that more records will be processed 310.Such as, microdrawing can process multiple input record to produce single output record.If microdrawing or operation-microdrawing assembly need other record, so new record is received as data, 302.If do not need other record, so export record and be provided and store, 312.
Performance metric can be polymerized based on operation-microdrawing assembly.That is, be polymerized by all execution of all microdrawings of specific run-microdrawing assembly.Performance metric can also be polymerized by microdrawing identifier, as mentioned above.That is, be polymerized by all execution of the microdrawing of particular type.Microdrawing identifier can be, the title of such as microdrawing.
Performance metric also can not be polymerized, but can be stored for each independent execution of microdrawing.In some implementations, operation-microdrawing assembly can be configured to receive: the instruction user's defined parameters how polymerization is measured.
As discussed above, can be collected along with these tolerance at the term of execution collected performance metric of microdrawing and be polymerized.Fig. 4 illustrates the example carrying out polymerization tolerance according to microdrawing identifier.By the performance metric that is polymerized can by system monitoring apply use and show to user.Table 400 can be arranged in the data repository of the data repository 220 of such as Fig. 2.In this illustration, this table comprises " microdrawing identifier " row 402, " processor time " row 404, " elapsed time " row 406 and " calling (Invocation) " row 408.At first, this table comprises for row (row) every as follows: the identifier of the identifier of " cancellation credit card " microdrawing, the identifier of " purchase " microdrawing and " payment " microdrawing.
When operation-microdrawing assembly, such as, operation in Fig. 2-microdrawing assembly 210, when performing microdrawing, table 400 can be updated.In this illustration, table 400 can based on represented by data record 412, new calling and be updated to " cancellation credit card " microdrawing.This new calling comprises the processor time of 0.04 second and the elapsed time of 0.10 second.
" cancellation credit card " row 410 is read from table 400, and use upgrades from the new information called.In this illustration, the accumulative performance metric of " cancellation credit card " microdrawing comprise called by 32 times, the processor time of 1.23 seconds and the elapsed time of 2.62 seconds.After new record is added, the cancellation credit card capable 410 upgraded comprises that called by 33 times, the processor time (1.23 seconds+0.04 second) and 2.72 seconds of 1.27 seconds elapsed time.
By this way, performance metric can microdrawing the term of execution be polymerized.Polymerization tolerance can have following benefit, and the quantity of the memory spending needed for store and management table 400 is minimized.
Because the different instances of identical data flow graph can be performed concurrently, so polymerization tolerance is complicated further.Such as, multiple different machines can perform and collect the performance metric of the different instances of same data flow diagram concomitantly.
Fig. 5 illustrates the example context wherein running microdrawing assembly executed in parallel.The each example running microdrawing assembly can be performed on a machine, virtual machine, processor etc.
In this illustration, cutting element 502 is running the stream (flow) dividing input record between Multi-instance 210a, 210b and 210c of microdrawing assembly.When running microdrawing assembly process input and recording and produce output record, output record is aggregated element 504 and collects.
The performance metric of each operation microdrawing assembly can be passed to data repository 220 and cross over each parallel instances and is polymerized, or can be stored independently for each parallel instances.In some implementations, the performance metric of each parallel instances can be stored in the independent data thesaurus be arranged on uniform machinery or equipment, as the example of operation-microdrawing.
As subgraph, each microdrawing can comprise multiple independent assembly, and their usage data records perform one or more different operation.In some implementations, microdrawing can by instrumentation (instrumented) to report the other information (such as more detailed information) relevant with the performance of each assembly of this microdrawing.The example of the microdrawing of affairs that Fig. 6 illustrates " raising credit line ".
In this illustration, " raising credit line " microdrawing 602 accepts to input record on input port 604." raising credit line " microdrawing 602 comprises multiple assembly, such as obtains historical component 606, and its obtaining request improves the payment history of the user of credit line; Credit inspection assembly 608, it checks the credit of user; Select amount assembly 610, it selects new credit line based on described history and credit inspection; And upgrading record component 612, it upgrades by new credit line or creates and exports record.This output record is provided on the output port 614 of microdrawing 602.
Microdrawing 602 can report the Performance Characteristics of its constituent components on performance monitoring output port 616.Such as, " raising credit line " microdrawing 612 can be reported and obtain historical component 606, credit inspection assembly 608, selects amount assembly 610 and upgrade processor time and the elapsed time of record component 612.Run microdrawing assembly (not shown) can collect based on aggregation scheme described above and report these performance metrics.
In some implementations, run the list that microdrawing assembly can ask the constituent components of microdrawing, such as, by sending message via dedicated input mouth (not shown).This operation microdrawing assembly can provide the list of assembly on performance monitoring output port 616.Such as, in response to the request carrying out self-operating microdrawing assembly (not shown), " raising credit line " microdrawing can provide the list of CSV " to obtain history, check credit, select amount, more new record " on performance metric port.
In some implementations, the record that the microdrawing be previously loaded safeguarded by microdrawing assembly is run.When microdrawing is loaded, runs before microdrawing assembly can determine this microdrawing and whether be loaded.If be not loaded before this microdrawing, so ran the list of the constituent components of this microdrawing of microdrawing components request.The mark of these constituent components can be stored in data repository.
Once performance metric is stored in persistant data thesaurus, such as, persistant data thesaurus 224 in Fig. 2, performance monitoring application just can be accessed and use stored performance metric.Usually, performance monitoring application presents collected tolerance in the mode helping user to understand tolerance to user.
Fig. 7 illustrates the example user interface of the system for presenting collected performance metric to user.In this illustration, user interface 700 presents gathering (summary) of data in the part 702 of user interface.User interface 700 can present with one or more form, such as dissimilar network resource (asset), the webpage such as shown in the web browser of the computer system of user.
Monitor selector switch 714 makes user dynamically can determine whether to monitor the execution of microdrawing.In some implementations, if user selects the execution not monitoring microdrawing, so performance metric is not collected.Monitor selector switch 714 can also allow user to select, and how polymerization is measured.Such as, user can select by microdrawing title to gather microdrawing performance metric, cross over all microdrawings gathering performance metric, only store the nearest execution of each microdrawing or preserve the details of each execution of microdrawing.
Usually, task (job) refers to and processes one group of data record by one or more data flow diagram.For each task, performance metric can differently be gathered.Such as, microdrawing 716 (title is " mg_runner_all.mp ") is crossed over all microdrawings and is performed and gathered.Another microdrawing 718 (title is " mg_runner_name.mp ") is gathered by its microdrawing title.Another microdrawing 720 (title is " mg_runner.mp ") records the performance metric of each execution respectively.
The performance metric of each microdrawing can obtain from the performance metric stored persistant data thesaurus.Such as, start time 708 and elapsed time 710, and use total processor time 712 reported.
In some implementations, user interface allows user's expansion and checks the details of specific tasks, microdrawing etc.Fig. 8 illustrates the example user interface 800 of display microdrawing.In this illustration, the microdrawing 804 of reformatting is shown.Also show, for providing the input port 802 of input record and the output port 806 for obtaining output record from the microdrawing 804 reformatted to the microdrawing 804 reformatted.
Performance metric is integrated in this user interface.In this illustration, this user interface shows and is provided (808) to this microdrawing record and the record being produced (810) by this microdrawing.
Fig. 9 illustrates the example user interface of the performance metric that display is other.User interface 900 presents in a tabular form by the performance metric be polymerized.Tolerance row 902 list the title of tolerance, and value row 904 provide the analog value of this tolerance.Unit row 906 provide the unit of this value 904 of definition.The list of measuring comprises the number of times that microdrawing is performed, and has how many times microdrawing successfully cannot complete execution.
Figure 10 is the process flow diagram of the instantiation procedure collecting performance metric.This process 1000 can be performed by one or more computer systems of the execution module of the execution module 104 comprised in such as Fig. 1.For the purpose of simple, this process describes relative to the system performing this process.
Receive multiple unit of operation, 1002.The unit of operation can be received by the assembly of data flow diagram.The unit of operation can comprise zero or more input data record.These input data records can provide from data repository, or provide from the output port at first assembly data flow diagram.
The characteristic of the unit of operation is determined, 1004.Characteristic can be the one or more values stored in the field of one of input data record.Such as, characteristic can be that mark is by the value in the field of the operation performed by the assembly of data flow diagram.
Microdrawing is identified based on this characteristic, and 1006.Such as, this process can identify the microdrawing performed by the operation of described field identification.Microdrawing can be identified with can compare with the list of microdrawing by the characteristic of the unit by operation, such as, by using look-up table, dictionary or similar data structure.
Identified data flow diagram is loaded, and 1008.Run microdrawing assembly and can load this data flow diagram.Microdrawing can be, the data flow diagram such as stored in data repository.Microdrawing can be configured to the assembly by data flow diagram, and such as, operation microdrawing assembly in Fig. 2, loads and perform.In some are arranged, microdrawing keeps the form do not compiled when being loaded from data-storage system.Some arrange in, microdrawing before being stored in data-storage system by serializing.Usually, serializing is following process, that is, by serializing, the data flow diagram having compiled or do not compiled form is translated into the binary stream of 0 and 1, thus data flow diagram is in the form that can easily be stored in data repository.
The unit of operation uses the data flow diagram identified to process, and 1010.In some implementations, the unit of operation is provided on the input port of the microdrawing identified.The output record generated, if any, is provided by the output port of the microdrawing identified.
One or more performance metric is determined, 1012.Performance metric can be determined by operation microdrawing assembly, or microdrawing can by instrumentation (instrumented) to provide performance metric on the special output port of this microdrawing.
Performance monitoring method described above can use the software performed on computers to realize.Such as, this software one or more be programmed or programmable computer system (it can be various framework, such as distributed, client/server, or grid) forming process in the upper one or more computer programs performed, these computer systems all comprise at least one processor, at least one data-storage system (comprising volatibility and nonvolatile memory or memory element), at least one input equipment or port and at least one output device or port.This software can form the one or more modules compared with large program, and such as, this software can provide with the design of data flow diagram and configure relevant other and serve.The node of this figure and element may be implemented as the data structure stored in computer-readable medium, or store in data warehouse, other data in a organized way of following data model.
This software may be provided on storage medium, the CD-ROM such as read by the programmable calculator of universal or special object, or be delivered (encoding in transmitting signal) to the storage medium by the computing machine of executive software wherein by the communication media of network.All functions can perform on special purpose computer, or use specialized hardware, such as coprocessor, perform.This software can realize in a distributed way, and the different piece of the calculating of wherein being specified by this software is performed by different computing machines.Each such computer program is preferably stored in or is downloaded to storage medium that is tangible, nonvolatile or equipment (such as, solid-state memory or medium, or magnetic or light medium), this storage medium or equipment can be read by the programmable calculator of universal or special object, thus for when storage medium or equipment by computer system reads to perform process described herein time configuration and operate this computing machine.System of the present invention also can be considered to be implemented as the computer-readable recording medium being configured with computer program, and wherein, the storage medium of so configuration makes computer system operate to perform function described herein in specific and predetermined mode.
Some embodiments of the present invention are described.Will be appreciated that aforementioned description is intended to illustrate instead of limit the scope of the present invention defined by the scope of claims.Will be appreciated that and can make various change without departing from the spirit and scope of the present invention.Such as, in step described above, some can be irrelevant with order, and therefore can perform according to from described different order.Other embodiments are all within the scope of following claim.

Claims (32)

1., for processing a method for data in a data processing system, in described data handling system, the first data flow diagram is performed, and the method comprises:
Receive multiple unit of operation, multiple unit of described operation comprise one or more operation element separately;
Determine the characteristic of the first module of operation;
From multiple data available flow graph, identify the second data flow diagram based on determined characteristic by the assembly of described first data flow diagram, described multiple data available flow graph is stored in data-storage system;
Use described second data flow diagram to process the first module of described operation; And
Determine the one or more performance metrics be associated with described process.
2. the method for claim 1, wherein described second data flow diagram is compiled independent of described first data flow diagram.
3. the method for claim 1, also comprises: in internal storage data thesaurus, store described one or more performance metric.
4. method as claimed in claim 3, also comprises: stored one or more performance metrics are sent to persistant data thesaurus.
5. method as claimed in claim 3, also comprises: be polymerized with the performance metric previously obtained by described one or more performance metric.
6. method as claimed in claim 5, wherein, is polymerized described one or more performance metric and comprises: be polymerized described one or more performance metric based on the identifier be associated with described second data flow diagram.
7. method as claimed in claim 5, wherein, is polymerized described one or more performance metric and comprises: be polymerized described one or more performance metric based on the identifier be associated with described first data flow diagram.
8. the method for claim 1, also comprises: show described one or more performance metric to user.
9. a computer-readable recording medium, it stores the computer program being used for processing data in a data processing system, and this computer program comprises the instruction for making computer system perform following operation:
Receive multiple unit of operation, multiple unit of described operation comprise one or more operation element separately;
Determine the characteristic of the first module of operation;
From multiple data available flow graph, identify the second data flow diagram based on determined characteristic by the assembly of described first data flow diagram, described multiple data available flow graph is stored in data-storage system;
Use described second data flow diagram to process the first module of described operation; And
Determine the one or more performance metrics be associated with described process.
10. medium as claimed in claim 9, wherein, described second data flow diagram is compiled independent of described first data flow diagram.
11. media as claimed in claim 9, wherein, described computer program also comprises, for the instruction making computing system store described one or more performance metric in internal storage data thesaurus.
12. media as claimed in claim 11, wherein, described computer program also comprises, and for making computing system, stored one or more performance metrics is sent to the instruction of persistant data thesaurus.
13. media as claimed in claim 11, wherein, described computer program also comprises, for the instruction making computing system be polymerized with the performance metric previously obtained by described one or more performance metric.
14. media as claimed in claim 13, wherein, are polymerized described one or more performance metric and comprise: be polymerized described one or more performance metric based on the identifier be associated with described second data flow diagram.
15. media as claimed in claim 13, wherein, are polymerized described one or more performance metric and comprise: be polymerized described one or more performance metric based on the identifier be associated with described first data flow diagram.
16. media as claimed in claim 9, wherein, described computer program also comprises, and shows the instruction of described one or more performance metric for making computing system to user.
17. 1 kinds of computing systems for the treatment of data, this computing system comprises:
Input equipment or port, be configured to the multiple unit receiving operation, multiple unit of described operation comprise one or more operation element separately; And
At least one processor, be configured to process data, described process comprises:
Determine the characteristic of the first module of operation;
From multiple data available flow graph, identify the second data flow diagram based on determined characteristic by the assembly of described first data flow diagram, described multiple data available flow graph is stored in data-storage system;
Use described second data flow diagram to process the first module of described operation; And
Determine the one or more performance metrics be associated with described process.
18. systems as claimed in claim 17, wherein, described second data flow diagram is compiled independent of described first data flow diagram.
19. systems as claimed in claim 17, wherein, described process also comprises: in internal storage data thesaurus, store described one or more performance metric.
20. systems as claimed in claim 19, wherein, described process also comprises: stored one or more performance metrics are sent to persistant data thesaurus.
21. systems as claimed in claim 19, wherein, described process also comprises: be polymerized with the performance metric previously obtained by described one or more performance metric.
22. systems as claimed in claim 21, wherein, are polymerized described one or more performance metric and comprise: be polymerized described one or more performance metric based on the identifier be associated with described second data flow diagram.
23. systems as claimed in claim 21, wherein, are polymerized described one or more performance metric and comprise: be polymerized described one or more performance metric based on the identifier be associated with described first data flow diagram.
24. systems as claimed in claim 17, wherein, described process also comprises: show described one or more performance metric to user.
25. 1 kinds of computing systems for the treatment of data, this computing system comprises:
For receiving the device of multiple unit of operation, multiple unit of described operation comprise one or more operation element separately;
For determining the device of the characteristic of the first module of operation;
From multiple data available flow graph, identify the device of the second data flow diagram based on determined characteristic for the assembly by described first data flow diagram, described multiple data available flow graph is stored in data-storage system;
For using described second data flow diagram to process the device of the first module of described operation; And
For determining the device of the one or more performance metrics be associated with described process.
26. systems as claimed in claim 25, wherein, described second data flow diagram is compiled independent of described first data flow diagram.
27. systems as claimed in claim 25, also comprise: in internal storage data thesaurus, store described one or more performance metric.
28. systems as claimed in claim 27, also comprise: for stored one or more performance metrics being sent to the device of persistant data thesaurus.
29. systems as claimed in claim 27, also comprise: for the device be polymerized with the performance metric previously obtained by described one or more performance metric.
30. systems as claimed in claim 29, wherein, are polymerized described one or more performance metric and comprise: be polymerized described one or more performance metric based on the identifier be associated with described second data flow diagram.
31. systems as claimed in claim 29, wherein, are polymerized described one or more performance metric and comprise: be polymerized described one or more performance metric based on the identifier be associated with described first data flow diagram.
32. systems as claimed in claim 25, also comprise: device, for showing described one or more performance metric to user.
CN201380070524.1A 2012-11-16 2013-11-15 The performance monitoring of Dynamic Graph Active CN104937548B (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/678,921 2012-11-16
US13/678,921 US9507682B2 (en) 2012-11-16 2012-11-16 Dynamic graph performance monitoring
PCT/US2013/070391 WO2014078714A2 (en) 2012-11-16 2013-11-15 Dynamic graph performance monitoring

Publications (2)

Publication Number Publication Date
CN104937548A true CN104937548A (en) 2015-09-23
CN104937548B CN104937548B (en) 2018-11-13

Family

ID=49725353

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380070524.1A Active CN104937548B (en) 2012-11-16 2013-11-15 The performance monitoring of Dynamic Graph

Country Status (10)

Country Link
US (1) US9507682B2 (en)
EP (1) EP2920686B1 (en)
JP (2) JP2016501401A (en)
KR (1) KR102284985B1 (en)
CN (1) CN104937548B (en)
AU (1) AU2013344538B2 (en)
CA (1) CA2890144C (en)
HK (1) HK1209868A1 (en)
SG (1) SG11201503473VA (en)
WO (1) WO2014078714A2 (en)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150038758A (en) 2009-02-13 2015-04-08 아브 이니티오 테크놀로지 엘엘시 Managing task execution
US10108521B2 (en) 2012-11-16 2018-10-23 Ab Initio Technology Llc Dynamic component performance monitoring
AU2014360308B2 (en) 2013-12-05 2018-11-29 Ab Initio Technology Llc Managing interfaces for dataflow graphs composed of sub-graphs
US9800662B2 (en) * 2014-07-16 2017-10-24 TUPL, Inc. Generic network trace with distributed parallel processing and smart caching
US10657134B2 (en) 2015-08-05 2020-05-19 Ab Initio Technology Llc Selecting queries for execution on a stream of real-time data
EP3394739B1 (en) 2015-12-21 2020-11-11 AB Initio Technology LLC Sub-graph interface generation
US10459818B2 (en) 2016-02-18 2019-10-29 New Relic, Inc. Identifying the root cause of an issue observed during application execution
US10853376B2 (en) 2016-06-19 2020-12-01 Data.World, Inc. Collaborative dataset consolidation via distributed computer networks
SG10201705700RA (en) * 2017-07-11 2019-02-27 Custodio Tech Pte Ltd Digital asset tracking system and method
KR102054070B1 (en) * 2018-05-03 2019-12-09 충북대학교 산학협력단 Graph storage management method and graph storage management device for changing tracking and historical graph retrieval
WO2023030757A1 (en) * 2021-08-30 2023-03-09 Siemens Mobility GmbH Monitoring method
WO2023034328A2 (en) * 2021-08-30 2023-03-09 Data.World, Inc. Correlating parallelized data from disparate data sources to aggregate graph data portions to predictively identify entity data

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090235267A1 (en) * 2008-03-13 2009-09-17 International Business Machines Corporation Consolidated display of resource performance trends
US20100042976A1 (en) * 2008-08-12 2010-02-18 Hines Larry M Optimizing applications using source code patterns and performance analysis
US20100281462A1 (en) * 2009-04-30 2010-11-04 United Parcel Service Of America, Inc. Systems and methods for generating source code for workflow platform
US20110307897A1 (en) * 2010-06-15 2011-12-15 Ab Initio Technology Llc Dynamically loading graph-based computations

Family Cites Families (216)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3662343A (en) 1970-07-29 1972-05-09 Docutel Corp Credit card automatic currency dispenser
US3662401A (en) 1970-09-23 1972-05-09 Collins Radio Co Method of program execution
US4228496A (en) 1976-09-07 1980-10-14 Tandem Computers Incorporated Multiprocessor system
US4814979A (en) 1981-04-01 1989-03-21 Teradata Corporation Network to transmit prioritized subtask pockets to dedicated processors
US4972314A (en) 1985-05-20 1990-11-20 Hughes Aircraft Company Data flow signal processor method and apparatus
US4720780A (en) 1985-09-17 1988-01-19 The Johns Hopkins University Memory-linked wavefront array processor
US4914568A (en) 1986-10-24 1990-04-03 National Instruments, Inc. Graphical system for modelling a process and associated method
US5127104A (en) 1986-12-29 1992-06-30 Dataflow Computer Corporation Method and product involving translation and execution of programs by automatic partitioning and data structure allocation
JPS63231613A (en) 1987-03-20 1988-09-27 Matsushita Giken Kk Command setting method
JPH0526792Y2 (en) 1987-07-14 1993-07-07
JPH0194431U (en) 1987-12-14 1989-06-21
US5357632A (en) 1990-01-09 1994-10-18 Hughes Aircraft Company Dynamic task allocation in a multi-processor system employing distributed control processors and distributed arithmetic processors
US5280619A (en) 1990-05-17 1994-01-18 Texas Instruments Incorporated System for accessing shared data using a serialization graph constructed from a history file showing completed locking dependencies between transactions
US5323452A (en) 1990-12-18 1994-06-21 Bell Communications Research, Inc. Visual programming of telephone network call processing logic
DE4216871C2 (en) 1991-05-21 2001-09-06 Digital Equipment Corp Execution rules to ensure the serializability of distributed transactions
EP0529303A3 (en) 1991-08-29 1993-09-22 International Business Machines Corporation Checkpoint synchronization with instruction overlap enabled
US6400996B1 (en) 1999-02-01 2002-06-04 Steven M. Hoffberg Adaptive pattern recognition based control system and method
US5333319A (en) 1992-03-02 1994-07-26 International Business Machines Corporation Virtual storage data processor with enhanced dispatching priority allocation of CPU resources
JP3223933B2 (en) 1993-02-10 2001-10-29 日本電信電話株式会社 Knowledge base reasoning method and apparatus
US5745778A (en) 1994-01-26 1998-04-28 Data General Corporation Apparatus and method for improved CPU affinity in a multiprocessor system
US6044211A (en) 1994-03-14 2000-03-28 C.A.E. Plus, Inc. Method for graphically representing a digital device as a behavioral description with data and control flow elements, and for converting the behavioral description to a structural description
US5694546A (en) 1994-05-31 1997-12-02 Reisman; Richard R. System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list
JPH08106540A (en) 1994-10-06 1996-04-23 Toshiba Corp Editor
US5692168A (en) 1994-10-18 1997-11-25 Cyrix Corporation Prefetch buffer using flow control bit to identify changes of flow within the code stream
JPH08305576A (en) 1995-01-12 1996-11-22 Internatl Business Mach Corp <Ibm> Expert system and method for execution of dialog with computer user
US5673369A (en) 1995-03-02 1997-09-30 International Business Machines Corporation Authoring knowledge-based systems using interactive directed graphs
US5701400A (en) 1995-03-08 1997-12-23 Amado; Carlos Armando Method and apparatus for applying if-then-else rules to data sets in a relational data base and generating from the results of application of said rules a database of diagnostics linked to said data sets to aid executive analysis of financial data
US5805462A (en) 1995-08-18 1998-09-08 Vlsi Technology, Inc. Automatic synthesis of integrated circuits employing boolean decomposition
JP3154942B2 (en) 1995-09-11 2001-04-09 株式会社東芝 Distributed checkpoint generation method and computer system to which the method is applied
US5630047A (en) 1995-09-12 1997-05-13 Lucent Technologies Inc. Method for software error recovery using consistent global checkpoints
US5712971A (en) 1995-12-11 1998-01-27 Ab Initio Software Corporation Methods and systems for reconstructing the state of a computation
JP3258228B2 (en) 1996-03-15 2002-02-18 株式会社東芝 Checkpoint generation method
US7415466B2 (en) 1996-03-19 2008-08-19 Oracle International Corporation Parallel transaction recovery
US6006242A (en) 1996-04-05 1999-12-21 Bankers Systems, Inc. Apparatus and method for dynamically creating a document
US5857204A (en) 1996-07-02 1999-01-05 Ab Initio Software Corporation Restoring the state of a set of files
JP3672208B2 (en) 1996-07-02 2005-07-20 インターナショナル・ビジネス・マシーンズ・コーポレーション Hierarchical transaction processing method
US5966072A (en) 1996-07-02 1999-10-12 Ab Initio Software Corporation Executing computations expressed as graphs
US6016516A (en) 1996-08-07 2000-01-18 Fuji Xerox Co. Ltd. Remote procedure processing device used by at least two linked computer systems
US6760903B1 (en) 1996-08-27 2004-07-06 Compuware Corporation Coordinated application monitoring in a distributed computing environment
US5799266A (en) 1996-09-19 1998-08-25 Sun Microsystems, Inc. Automatic generation of test drivers
US5930794A (en) 1996-10-18 1999-07-27 Sagent Technologies, Inc. Database repository with deferred transactions
US6038558A (en) 1996-10-18 2000-03-14 Sagent Technology, Inc. Extensible database retrieval and viewing architecture
US6151531A (en) 1996-12-12 2000-11-21 Charles Frankel Et Al System and method for managing the alteration of garments
US5924095A (en) 1997-02-05 1999-07-13 Oracle Corporation Processing distributed transactions in heterogeneous computing environments using two-phase commit
US6330008B1 (en) 1997-02-24 2001-12-11 Torrent Systems, Inc. Apparatuses and methods for monitoring performance of parallel computing
US5933640A (en) 1997-02-26 1999-08-03 Digital Equipment Corporation Method for analyzing and presenting test execution flows of programs
US5999729A (en) 1997-03-06 1999-12-07 Continuum Software, Inc. System and method for developing computer programs for execution on parallel processing systems
US5950212A (en) 1997-04-11 1999-09-07 Oracle Corporation Method and system for workload based group committing for improved performance
US6088716A (en) 1997-04-28 2000-07-11 Ab Initio Software Corporation Method for preventing buffer deadlock in dataflow computations
US6032158A (en) 1997-05-02 2000-02-29 Informatica Corporation Apparatus and method for capturing and propagating changes from an operational database to data marts
US6044394A (en) 1997-07-21 2000-03-28 International Business Machines Corporation Managing independently executing computer tasks that are interrelated by dataflow
US6145017A (en) 1997-08-05 2000-11-07 Adaptec, Inc. Data alignment system for a hardware accelerated command interpreter engine
US6173276B1 (en) 1997-08-21 2001-01-09 Scicomp, Inc. System and method for financial instrument modeling and valuation
US6377993B1 (en) 1997-09-26 2002-04-23 Mci Worldcom, Inc. Integrated proxy interface for web based data management reports
US6332212B1 (en) 1997-10-02 2001-12-18 Ltx Corporation Capturing and displaying computer program execution timing
US5958004A (en) 1997-10-28 1999-09-28 Microsoft Corporation Disabling and enabling transaction committal in transactional application components
US6339775B1 (en) 1997-11-07 2002-01-15 Informatica Corporation Apparatus and method for performing data transformations in data warehousing
US6014670A (en) 1997-11-07 2000-01-11 Informatica Corporation Apparatus and method for performing data transformations in data warehousing
US6044374A (en) 1997-11-14 2000-03-28 Informatica Corporation Method and apparatus for sharing metadata between multiple data marts through object references
JPH11184766A (en) 1997-12-18 1999-07-09 Nippon Telegr & Teleph Corp <Ntt> Business event server
US6272650B1 (en) 1998-02-03 2001-08-07 Amazing Media, Inc. System and method for disambiguating scene graph loads
US6437796B2 (en) 1998-02-17 2002-08-20 Sun Microsystems, Inc. Multiple processor visibility search system and method
US6208345B1 (en) 1998-04-15 2001-03-27 Adc Telecommunications, Inc. Visual data integration system and method
US6256637B1 (en) 1998-05-05 2001-07-03 Gemstone Systems, Inc. Transactional virtual machine architecture
US6675189B2 (en) 1998-05-28 2004-01-06 Hewlett-Packard Development Company, L.P. System for learning and applying integrated task and data parallel strategies in dynamic applications
US6480876B2 (en) 1998-05-28 2002-11-12 Compaq Information Technologies Group, L.P. System for integrating task and data parallelism in dynamic applications
US6314114B1 (en) 1998-06-23 2001-11-06 Oracle Corporation Distributed resource management
JP2000010788A (en) 1998-06-25 2000-01-14 Sharp Corp Computer device with emergency operation processing function
US6259988B1 (en) 1998-07-20 2001-07-10 Lockheed Martin Corporation Real-time mission adaptable route planner
JP2000099317A (en) 1998-09-18 2000-04-07 Toshiba Corp User interface design device and method therefor
US6401216B1 (en) 1998-10-29 2002-06-04 International Business Machines Corporation System of performing checkpoint/restart of a parallel program
US6608628B1 (en) 1998-11-06 2003-08-19 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration (Nasa) Method and apparatus for virtual interactive medical imaging by multiple remotely-located users
EP1365385B1 (en) 1998-11-09 2012-06-13 Broadcom Corporation Graphics display system with processing of graphics layers, alpha blending and composition with video data
US6449711B1 (en) 1999-02-04 2002-09-10 Sun Microsystems, Inc. Method, apparatus, and article of manufacture for developing and executing data flow programs
US6538651B1 (en) 1999-03-19 2003-03-25 John Hayman Parametric geometric element definition and generation system and method
US6728879B1 (en) 1999-06-02 2004-04-27 Microsoft Corporation Transactional log with multi-sector log block validation
US6816825B1 (en) 1999-06-18 2004-11-09 Nec Corporation Simulation vector generation from HDL descriptions for observability-enhanced statement coverage
JP2001022571A (en) 1999-07-09 2001-01-26 Riso Kagaku Corp Electronic equipment and rewriting method for control program of the equipment
US6647408B1 (en) 1999-07-16 2003-11-11 Novell, Inc. Task distribution
US6715145B1 (en) 1999-08-31 2004-03-30 Accenture Llp Processing pipeline in a base services pattern environment
US20020129340A1 (en) 1999-10-28 2002-09-12 Tuttle Douglas D. Reconfigurable isomorphic software representations
US7137116B2 (en) 1999-11-09 2006-11-14 Microsoft Corporation Method and system for performing a task on a computer
US6879946B2 (en) 1999-11-30 2005-04-12 Pattern Discovery Software Systems Ltd. Intelligent modeling, transformation and manipulation system
US6584581B1 (en) 1999-12-06 2003-06-24 Ab Initio Software Corporation Continuous flow checkpointing data processing
US7409679B2 (en) 1999-12-20 2008-08-05 Headway Research Limited System and method for computer-aided graph-based dependency analysis
US6848100B1 (en) 2000-03-31 2005-01-25 Intel Corporation Hierarchical software path profiling
US7062483B2 (en) 2000-05-18 2006-06-13 Endeca Technologies, Inc. Hierarchical data-driven search and navigation system and method for information retrieval
US6922685B2 (en) 2000-05-22 2005-07-26 Mci, Inc. Method and system for managing partitioned data resources
US6813761B1 (en) 2000-06-30 2004-11-02 Microsoft Corporation Methods for enhancing flow analysis
US7164422B1 (en) 2000-07-28 2007-01-16 Ab Initio Software Corporation Parameterized graphs with conditional components
US6832369B1 (en) 2000-08-01 2004-12-14 International Business Machines Corporation Object oriented method and apparatus for class variable initialization
US6496961B2 (en) 2000-10-27 2002-12-17 Nec Usa, Inc. Dynamic detection and removal of inactive clauses in SAT with application in image computation
US6975628B2 (en) 2000-12-22 2005-12-13 Intel Corporation Method for representing and controlling packet data flow through packet forwarding hardware
US20020152244A1 (en) 2000-12-22 2002-10-17 International Business Machines Corporation Method and apparatus to dynamically create a customized user interface based on a document type definition
US6804800B2 (en) 2000-12-29 2004-10-12 Intel Corporation Method and apparatus for detecting and recovering from errors in a source synchronous bus
JP4294879B2 (en) 2001-02-05 2009-07-15 株式会社日立製作所 Transaction processing system having service level control mechanism and program therefor
US20020111876A1 (en) 2001-02-09 2002-08-15 Rudraraju Panduranga R. Transaction aggregation system and method
US7082386B2 (en) 2001-02-21 2006-07-25 International Business Machines Corporation Generalized software modeling tool
US7188091B2 (en) 2001-03-21 2007-03-06 Resolutionebs, Inc. Rule processing system
US6651234B2 (en) 2001-04-06 2003-11-18 Nec Corporation Partition-based decision heuristics for SAT and image computation using SAT and BDDs
US20020147745A1 (en) 2001-04-09 2002-10-10 Robert Houben Method and apparatus for document markup language driven server
US7082604B2 (en) 2001-04-20 2006-07-25 Mobile Agent Technologies, Incorporated Method and apparatus for breaking down computing tasks across a network of heterogeneous computer for parallel execution by utilizing autonomous mobile agents
US20040093559A1 (en) 2001-05-25 2004-05-13 Ruth Amaru Web client for viewing and interrogating enterprise data semantically
GB2376094A (en) 2001-05-30 2002-12-04 Ibm Flexible navigation of a workflow graph in a data processing system
US7069536B2 (en) 2001-06-28 2006-06-27 International Business Machines Corporation Method, system, and program for executing a workflow
US20030033432A1 (en) 2001-08-08 2003-02-13 Simpson Shell S. Web based imaging service that converts web pages into content on behalf of another web site
US7594220B2 (en) 2001-08-14 2009-09-22 National Instruments Corporation Configuration diagram with context sensitive connectivity
US20040006745A1 (en) 2001-08-31 2004-01-08 Van Helden Wico Methods, apparatuses, system, and articles for associating metadata with datastream
US7165030B2 (en) 2001-09-17 2007-01-16 Massachusetts Institute Of Technology Concatenative speech synthesis using a finite-state transducer
US7085426B2 (en) 2001-10-15 2006-08-01 Jonas August Volterra filters for enhancement of contours in images
US7130484B2 (en) 2001-10-15 2006-10-31 Jonas August Biased curve indicator random field filters for enhancement of contours in images
DE10152213B4 (en) 2001-10-23 2006-04-27 Onespin Solutions Gmbh Method for verifying digital arithmetic circuits by means of an equivalence comparison
US7092401B2 (en) 2001-11-15 2006-08-15 International Business Machines Corporation Apparatus and method for managing work and completion queues using head and tail pointers with end-to-end context error cache for reliable datagram
DE60106467T2 (en) 2001-12-14 2006-02-23 Hewlett-Packard Development Co., L.P., Houston Procedure for installing monitoring agent, system and computer program of objects in an IT network monitoring
US7240247B2 (en) 2002-04-29 2007-07-03 Intel Corporation Providing a chain of tokenized error and state information for a call stack
US20040041838A1 (en) 2002-09-04 2004-03-04 Adusumilli Venkata J.R.B. Method and system for graphing data
US6975963B2 (en) 2002-09-30 2005-12-13 Mcdata Corporation Method and system for storing and reporting network performance metrics using histograms
US7103597B2 (en) 2002-10-03 2006-09-05 Mcgoveran David O Adaptive transaction manager for complex transactions and business process
US7167850B2 (en) 2002-10-10 2007-01-23 Ab Initio Software Corporation Startup and control of graph-based computation
US7694272B2 (en) 2002-10-21 2010-04-06 Sungard (Israel) Ltd Method, a language and a system for the definition and implementation of software solutions by using a visualizable computer executable modeling language
US7412658B2 (en) 2002-11-14 2008-08-12 Sap Ag Modeling system for graphic user interface
US7711772B2 (en) 2002-11-15 2010-05-04 Schlumberger Technology Corporation Web-based system and method for electronic data delivery
US7430747B2 (en) 2002-12-04 2008-09-30 Microsoft Corporation Peer-to peer graphing interfaces and methods
US7441008B2 (en) 2002-12-18 2008-10-21 International Business Machines Corporation Method for correlating transactions and messages
US20050193056A1 (en) 2002-12-26 2005-09-01 Schaefer Diane E. Message transfer using multiplexed connections in an open system interconnection transaction processing environment
US20040148373A1 (en) 2003-01-23 2004-07-29 International Business Machines Corporation Service level agreement compliance measurement
WO2004072796A2 (en) 2003-02-05 2004-08-26 Arizona Board Of Regents Reconfigurable processing
US7707564B2 (en) 2003-02-26 2010-04-27 Bea Systems, Inc. Systems and methods for creating network-based software services using source code annotations
US7088374B2 (en) 2003-03-27 2006-08-08 Microsoft Corporation System and method for managing visual structure, timing, and animation in a graphics processing system
US7417645B2 (en) 2003-03-27 2008-08-26 Microsoft Corporation Markup language and object model for vector graphics
US7669129B2 (en) 2003-04-04 2010-02-23 Avid Technology, Inc. Graphical user interface for providing editing of transform hierarchies within an effects tree
US7665025B2 (en) 2003-04-16 2010-02-16 The Mathworks, Inc. Signal navigation and label propagation in block diagrams
US20040225657A1 (en) 2003-05-07 2004-11-11 Panacea Corporation Web services method and system
US8265979B2 (en) 2003-06-17 2012-09-11 International Business Machines Corporation Automatic generation of process models
EP1636730A2 (en) 2003-06-18 2006-03-22 Applera Corporation Methods and systems for the analysis of biological sequence data
WO2005001721A1 (en) 2003-06-24 2005-01-06 Bae Systems Plc A method, tool and system for increasing the efficiency of a design process
CN101165650B (en) 2003-06-25 2012-10-10 起元科技有限公司 Computer-aided parallelizing of computation graphs
EP1652072A4 (en) 2003-07-11 2008-12-31 Computer Ass Think Inc Method and apparatus for parallel action processing
GB0318196D0 (en) 2003-08-02 2003-09-03 Ibm A method apparatus and computer program for processing a queue of messages
US7243088B2 (en) 2003-08-06 2007-07-10 Oracle International Corporation Database management system with efficient version control
US7444595B2 (en) 2003-08-13 2008-10-28 National Instruments Corporation Graphical programming system and method for creating and managing a scene graph
WO2005022417A2 (en) 2003-08-27 2005-03-10 Ascential Software Corporation Methods and systems for real time integration services
US7174479B2 (en) 2003-09-10 2007-02-06 Microsoft Corporation Method and system for rollback-free failure recovery of multi-step procedures
ATE515746T1 (en) 2003-09-15 2011-07-15 Ab Initio Technology Llc DATA PROFILING
US20050102670A1 (en) 2003-10-21 2005-05-12 Bretl Robert F. Shared object memory with object management for multiple virtual machines
US20050097515A1 (en) 2003-10-31 2005-05-05 Honeywell International, Inc. Data empowered laborsaving test architecture
US7840949B2 (en) 2003-11-03 2010-11-23 Ramal Acquisition Corp. System and method for data transformation using dataflow graphs
US7480863B2 (en) 2003-11-26 2009-01-20 International Business Machines Corporation Dynamic and intelligent hover assistance
US7296072B2 (en) 2003-12-12 2007-11-13 International Business Machines Corporation Enhanced port type agnostic proxy support for web services intermediaries
US7404189B2 (en) 2003-12-30 2008-07-22 International Business Machines Corporation Scheduler supporting web service invocation
US7543275B2 (en) 2004-01-29 2009-06-02 Sun Microsystems, Inc. Mechanism for executing test suites written for different harnesses under one test execution harness
US7467383B2 (en) 2004-03-08 2008-12-16 Ab Initio Software Llc System for controlling task execution using a graphical representation of task dependency
US7594227B2 (en) 2004-03-08 2009-09-22 Ab Initio Technology Llc Dependency graph parameter scoping
EP2408192A3 (en) 2004-04-16 2014-01-01 James A. Aman Multiple view compositing and object tracking system
US20050256818A1 (en) 2004-04-30 2005-11-17 Xerox Corporation Workflow auto generation from user constraints and hierarchical dependence graphs for workflows
JP2007536634A (en) 2004-05-04 2007-12-13 フィッシャー−ローズマウント・システムズ・インコーポレーテッド Service-oriented architecture for process control systems
US7614037B2 (en) 2004-05-21 2009-11-03 Microsoft Corporation Method and system for graph analysis and synchronization
US7316001B2 (en) 2004-06-05 2008-01-01 Graphlogic Inc. Object process graph system
US7730482B2 (en) 2004-06-08 2010-06-01 Covia Labs, Inc. Method and system for customized programmatic dynamic creation of interoperability content
US7398514B2 (en) 2004-09-29 2008-07-08 Microsoft Corporation Test automation stack layering
US7343482B2 (en) 2004-10-20 2008-03-11 Arm Limited Program subgraph identification
JP4759983B2 (en) 2004-11-04 2011-08-31 船井電機株式会社 Firmware rewriting method for disk device and firmware rewriting program
US7598953B2 (en) 2004-11-05 2009-10-06 Microsoft Corporation Interpreter for simplified programming of graphics processor units in general purpose programming languages
US8082541B2 (en) 2004-12-09 2011-12-20 Advantest Corporation Method and system for performing installation and configuration management of tester instrument modules
WO2006078751A2 (en) 2005-01-18 2006-07-27 Everypoint, Inc. Systems and methods for processing changing data
US7620947B2 (en) 2005-03-11 2009-11-17 Autodesk, Inc. Enhanced directed graph representation for dependency systems
US7505975B2 (en) 2005-04-14 2009-03-17 Bea Systems, Inc. Use of transaction context to select single database instance for global transaction
JP4246176B2 (en) 2005-04-25 2009-04-02 株式会社日立製作所 Transaction processing method, apparatus for executing the same, and medium storing the processing program
US7716630B2 (en) 2005-06-27 2010-05-11 Ab Initio Technology Llc Managing parameters for graph-based computations
US7877350B2 (en) 2005-06-27 2011-01-25 Ab Initio Technology Llc Managing metadata for graph-based computations
US20070118839A1 (en) 2005-10-24 2007-05-24 Viktors Berstis Method and apparatus for grid project modeling language
US7747565B2 (en) 2005-12-07 2010-06-29 Microsoft Corporation Garbage collector support for transactional memory
US8073671B2 (en) 2006-03-31 2011-12-06 Microsoft Corporation Dynamic software performance models
US7870556B2 (en) 2006-05-16 2011-01-11 Ab Initio Technology Llc Managing computing resources in graph-based computations
WO2008021953A2 (en) 2006-08-10 2008-02-21 Ab Initio Software Llc Distributing services in graph-based computations
US7844946B2 (en) 2006-09-26 2010-11-30 Intel Corporation Methods and apparatus to form a transactional objective instruction construct from lock-based critical sections
EP2092424B1 (en) 2006-10-19 2015-12-30 Checkmarx Ltd. Locating security vulnerabilities in source code
US8191052B2 (en) 2006-12-01 2012-05-29 Murex S.A.S. Producer graph oriented programming and execution
US20080244524A1 (en) 2007-03-27 2008-10-02 Tim Kelso Program Test System
US7805635B2 (en) 2007-04-09 2010-09-28 International Business Machines Corporation Constraint programming for reduction of system test-configuration-matrix complexity
US8069129B2 (en) 2007-04-10 2011-11-29 Ab Initio Technology Llc Editing and compiling business rules
WO2008131106A1 (en) 2007-04-17 2008-10-30 Earl Industries Llc Digital system for organizing diverse information
JP4073033B1 (en) 2007-04-27 2008-04-09 透 降矢 A database query processing system using multi-operation processing using composite relational operations that considers improvement of processing functions of join operations
CN107423046B (en) 2007-07-26 2021-08-06 起元技术有限责任公司 Method, system, and computer-readable medium for processing graph-based computations
US8347292B2 (en) 2007-08-30 2013-01-01 International Business Machines Corporation Transaction aggregation to increase transaction processing throughout
CA2698265C (en) 2007-09-20 2017-08-29 Craig W. Stanfill Managing data flows in graph-based computations
US7886141B2 (en) 2007-10-27 2011-02-08 Asix Electronics Corporation Method and systems for advanced reprogrammable boot codes and in-application programming of embedded microprocessor systems
US8775441B2 (en) 2008-01-16 2014-07-08 Ab Initio Technology Llc Managing an archive for approximate string matching
US20090193417A1 (en) 2008-01-24 2009-07-30 Nec Laboratories America, Inc. Tractable dataflow analysis for concurrent programs via bounded languages
US8225288B2 (en) 2008-01-29 2012-07-17 Intuit Inc. Model-based testing using branches, decisions, and options
US8797178B2 (en) 2008-03-10 2014-08-05 Microsoft Corporation Efficient stream sharing for multi-user sensor data collection
US9184874B2 (en) 2008-03-31 2015-11-10 Qualcomm Incorporated Storing log likelihood ratios in interleaved form to reduce hardware memory
US8336052B2 (en) * 2008-06-16 2012-12-18 International Business Machines Corporation Management, control, and monitoring of workload including unrelated processes of different containers
WO2010002919A1 (en) 2008-06-30 2010-01-07 Ab Initio Software Llc Data logging in graph-based computations
US20100070955A1 (en) 2008-07-08 2010-03-18 Nec Laboratories America Alias analysis for concurrent software programs
US8286176B1 (en) 2008-09-29 2012-10-09 Amazon Technologies, Inc. Optimizing resource configurations
US20100169137A1 (en) 2008-12-31 2010-07-01 Ebay Inc. Methods and systems to analyze data using a graph
US7979479B2 (en) 2009-01-08 2011-07-12 International Business Machines Corporation Transaction-controlled graph processing and management
US8635694B2 (en) 2009-01-10 2014-01-21 Kaspersky Lab Zao Systems and methods for malware classification
KR20150038758A (en) 2009-02-13 2015-04-08 아브 이니티오 테크놀로지 엘엘시 Managing task execution
US7992040B2 (en) 2009-02-20 2011-08-02 International Business Machines Corporation Root cause analysis by correlating symptoms with asynchronous changes
US8327377B2 (en) 2009-04-30 2012-12-04 Ca, Inc. Detecting, logging and tracking component dependencies in web service transactions
US8473901B1 (en) 2009-06-12 2013-06-25 The Mathworks, Inc. Non-literal representation of programming language code
US8205113B2 (en) 2009-07-14 2012-06-19 Ab Initio Technology Llc Fault tolerant batch processing
US8667329B2 (en) 2009-09-25 2014-03-04 Ab Initio Technology Llc Processing transactions in graph-based applications
US8458729B2 (en) 2010-07-20 2013-06-04 International Business Machines Corporation Managing and optimizing workflows among computer applications
US9158650B2 (en) * 2010-08-04 2015-10-13 BoxTone, Inc. Mobile application performance management
JP5878537B2 (en) 2010-08-25 2016-03-08 アビニシオ テクノロジー エルエルシー Evaluation of data flow graph characteristics
US8997024B2 (en) 2010-12-09 2015-03-31 Microsoft Technology Licensing, Llc Navigating between views of a graph using placemarkers
AU2012100128A4 (en) 2011-02-22 2012-03-08 Zensar Technologies Ltd A computer implemented system and method for indexing and optionally annotating use cases and generating test scenarios therefrom
US8732669B2 (en) 2011-03-11 2014-05-20 Oracle International Corporation Efficient model checking technique for finding software defects
US9165029B2 (en) 2011-04-12 2015-10-20 Microsoft Technology Licensing, Llc Navigating performance data from different subsystems
US8595262B1 (en) * 2012-03-29 2013-11-26 Amazon Technologies, Inc. Resource resolution in computing environments using directed graphs
US9875094B2 (en) * 2012-08-29 2018-01-23 International Business Machines Corporation Microcode upgrade in a storage system
US9274926B2 (en) 2013-01-03 2016-03-01 Ab Initio Technology Llc Configurable testing of computer programs
AU2014360308B2 (en) 2013-12-05 2018-11-29 Ab Initio Technology Llc Managing interfaces for dataflow graphs composed of sub-graphs

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090235267A1 (en) * 2008-03-13 2009-09-17 International Business Machines Corporation Consolidated display of resource performance trends
US20100042976A1 (en) * 2008-08-12 2010-02-18 Hines Larry M Optimizing applications using source code patterns and performance analysis
US20100281462A1 (en) * 2009-04-30 2010-11-04 United Parcel Service Of America, Inc. Systems and methods for generating source code for workflow platform
US20110307897A1 (en) * 2010-06-15 2011-12-15 Ab Initio Technology Llc Dynamically loading graph-based computations

Also Published As

Publication number Publication date
KR102284985B1 (en) 2021-08-02
CN104937548B (en) 2018-11-13
JP2016501401A (en) 2016-01-18
EP2920686A4 (en) 2016-08-03
AU2013344538A1 (en) 2015-05-21
JP6742478B2 (en) 2020-08-19
EP2920686A2 (en) 2015-09-23
WO2014078714A3 (en) 2014-07-17
AU2013344538B2 (en) 2018-11-22
JP2019179575A (en) 2019-10-17
KR20150084892A (en) 2015-07-22
CA2890144A1 (en) 2014-05-22
EP2920686B1 (en) 2024-04-17
HK1209868A1 (en) 2016-04-08
US9507682B2 (en) 2016-11-29
WO2014078714A2 (en) 2014-05-22
SG11201503473VA (en) 2015-05-28
US20140143760A1 (en) 2014-05-22
CA2890144C (en) 2019-07-23

Similar Documents

Publication Publication Date Title
CN104937548A (en) Dynamic graph performance monitoring
AU2021203955B2 (en) Dynamic component performance monitoring
US10459780B2 (en) Automatic application repair by network device agent
JP6423803B2 (en) Queue monitoring and visualization
CN112527599A (en) Intelligent monitoring method and device, electronic equipment and readable storage medium
WO2017201057A1 (en) Multidimensional application monitoring visualization and search

Legal Events

Date Code Title Description
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant