- java.lang.Object
-
- com.pervasive.datarush.operators.AbstractLogicalOperator
-
- com.pervasive.datarush.operators.CompositeOperator
-
- com.pervasive.datarush.matching.tune.AnalyzeLinkKeys
-
- All Implemented Interfaces:
LogicalOperator
public class AnalyzeLinkKeys extends CompositeOperator
Provides an analysis of the quality of a set of blocking keys over two data sets to be linked. As each record in a given block on the left must be compared to every other record in the same block on the right during linking, the smaller the block sizes, the better the performance.
-
-
Constructor Summary
Constructors Constructor Description AnalyzeLinkKeys()
Analyzes the data without blocking keys.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
compose(CompositionContext ctx)
Compose the body of this operator.RecordPort
getLeft()
Gets the record port providing the input data to analyze for the left side.List<String>
getLeftBlockingKeys()
Gets the fields to use for key blocking for data on the left.RecordPort
getRight()
Gets the record port providing the input data to analyze for the right side.List<String>
getRightBlockingKeys()
Gets the fields to use for key blocking for data on the right.void
setLeftBlockingKeys(List<String> keys)
Sets the fields to use for key blocking for data on the left.void
setRightBlockingKeys(List<String> keys)
Sets the fields to use for key blocking for data on the right.-
Methods inherited from class com.pervasive.datarush.operators.AbstractLogicalOperator
disableParallelism, getInputPorts, getOutputPorts, newInput, newInput, newOutput, newRecordInput, newRecordInput, newRecordOutput, notifyError
-
-
-
-
Constructor Detail
-
AnalyzeLinkKeys
public AnalyzeLinkKeys()
Analyzes the data without blocking keys. In this case, the each data set is one giant block. Set the blocking keys usingsetLeftBlockingKeys(List)
andsetRightBlockingKeys(List)
.
-
-
Method Detail
-
getLeft
public RecordPort getLeft()
Gets the record port providing the input data to analyze for the left side.- Returns:
- the left input port for the operation
-
getRight
public RecordPort getRight()
Gets the record port providing the input data to analyze for the right side.- Returns:
- the right input port for the operation
-
getRightBlockingKeys
public List<String> getRightBlockingKeys()
Gets the fields to use for key blocking for data on the right.- Returns:
- the blocking keys for the right
-
setRightBlockingKeys
public void setRightBlockingKeys(List<String> keys)
Sets the fields to use for key blocking for data on the right.- Parameters:
keys
- the blocking keys for the right
-
getLeftBlockingKeys
public List<String> getLeftBlockingKeys()
Gets the fields to use for key blocking for data on the left.- Returns:
- the blocking keys for the left
-
setLeftBlockingKeys
public void setLeftBlockingKeys(List<String> keys)
Sets the fields to use for key blocking for data on the left.- Parameters:
keys
- the blocking keys for the left
-
compose
protected void compose(CompositionContext ctx)
Description copied from class:CompositeOperator
Compose the body of this operator. Implementations should do the following:- Perform any validation of configuration, input types, etc
- Instantiate and configure sub-operators, adding them to the provided context via
the method
OperatorComposable.add(O)
- Create necessary connections via the method
OperatorComposable.connect(P, P)
. This includes connections from the composite's input ports to sub-operators, connections between sub-operators, and connections from sub-operators output ports to the composite's output ports
- Specified by:
compose
in classCompositeOperator
- Parameters:
ctx
- the context
-
-