Continental Nodes for KNIME — Utility Nodes

Our Utility nodes provide features that make certain calculations easier or faster compared to other ways to achieve the desired result with existing KNIME nodes.

For details regarding the individual nodes, please also refer to the node descriptions within KNIME. This documentation page is rather intended as an overview, not as a copy or replacement of the node description.

Network Component Splitter Node

The purpose of this node is to identify unconnected components in data representing a network of any kind of artifacts. The same result can be achieved with the KNIME Network Mining extension and the Network to Row node, however at considerably higher effort and lower speed.

Our solution takes an edge table as input consisting of two String columns. Each row represents an edge in a network between the nodes represented by the String columns. The result is a table with a String column representing all unique nodes found in both String columns and a cluster ID column that logically links all nodes of a connected network component. If two nodes have different cluster IDs, there is no connection (not even a transitive one) between them in the provided network.

 

Network Component Splitter Example

Fig. 1: Network Component Splitter Example

 

Examples for this node’s applicability are:

  • In production, new products can be assigned to facilities at minimal footprint complexity by keeping distinct material clusters in distinct entities.
  • In logistics, hazardous goods can be analyzed for the ability to ship in one delivery.
  • In human relations, an organizational chart analysis can reveal data quality issues with employees whose reporting lines do not end at the CEO.

 

FIFO / LIFO Resolver Node

The purpose of this node is to resolve a quantitative series of events according to the queueing rules first-in-first-out (FIFO) or last-in-first-out (LIFO). Imagine the series of events to be quantities being put into or being taken out of a storage department. Then this node relates each outflow to the corresponding inflow event, each being identified by the RowIDs of the input table.

Our solution treats several event series (each called a group) in parallel, as this is the most typical application scenario. It also splits quantities into chunks, as this example illustrates:

 

FIFO / LIFO Resolver Example

Fig. 2: FIFO / LIFO Resolver Example (in FIFO mode)

In this first-in-first-out example, we see that the initial quantity of 5 pieces (event in Row0) is partly consumed in the event in Row1 with 3 pieces. As there are no more consuming events for this material (i.e. group), the remaining 2 pieces of Row0 are residual quantities at the end of the processing, displayed as such in the outtable row 'Row0 (residual)'. The outtable row 'PHANTOM_Row7' is a special case of inconsistency, because the data suggests outflows where higher than the current stock level derived from prior in- and outflows for that material.

 

Examples for this node’s applicability are:

  • In warehousing, maximal duration of storage can be calculated in order to avoid passing best-before-dates.
  • In finance and tax, stock positions can be resolved in order to calculate a sell's counterpart in the buy-history and calculating corresponding position profit and holding duration.
  • In service operations, backlogs can be analyzed for processing statistics.
LinkedInTwitterShare