Search in sources :

Example 1 with NonDeterministicPartitionBatchManager

use of org.apache.hyracks.dataflow.std.collectors.NonDeterministicPartitionBatchManager in project asterixdb by apache.

the class MToNPartitioningMergingConnectorDescriptor method createPartitionCollector.

@Override
public IPartitionCollector createPartitionCollector(IHyracksTaskContext ctx, RecordDescriptor recordDesc, int index, int nProducerPartitions, int nConsumerPartitions) throws HyracksDataException {
    IBinaryComparator[] comparators = new IBinaryComparator[comparatorFactories.length];
    for (int i = 0; i < comparatorFactories.length; ++i) {
        comparators[i] = comparatorFactories[i].createBinaryComparator();
    }
    INormalizedKeyComputer nmkComputer = nkcFactory == null ? null : nkcFactory.createNormalizedKeyComputer();
    IPartitionBatchManager pbm = new NonDeterministicPartitionBatchManager(nProducerPartitions);
    IFrameReader sortMergeFrameReader = new SortMergeFrameReader(ctx, nProducerPartitions, nProducerPartitions, sortFields, comparators, nmkComputer, recordDesc, pbm);
    BitSet expectedPartitions = new BitSet();
    expectedPartitions.set(0, nProducerPartitions);
    return new PartitionCollector(ctx, getConnectorId(), index, expectedPartitions, sortMergeFrameReader, pbm);
}
Also used : INormalizedKeyComputer(org.apache.hyracks.api.dataflow.value.INormalizedKeyComputer) SortMergeFrameReader(org.apache.hyracks.dataflow.std.collectors.SortMergeFrameReader) IFrameReader(org.apache.hyracks.api.comm.IFrameReader) IPartitionCollector(org.apache.hyracks.api.comm.IPartitionCollector) PartitionCollector(org.apache.hyracks.dataflow.std.collectors.PartitionCollector) IPartitionBatchManager(org.apache.hyracks.dataflow.std.collectors.IPartitionBatchManager) BitSet(java.util.BitSet) IBinaryComparator(org.apache.hyracks.api.dataflow.value.IBinaryComparator) NonDeterministicPartitionBatchManager(org.apache.hyracks.dataflow.std.collectors.NonDeterministicPartitionBatchManager)

Aggregations

BitSet (java.util.BitSet)1 IFrameReader (org.apache.hyracks.api.comm.IFrameReader)1 IPartitionCollector (org.apache.hyracks.api.comm.IPartitionCollector)1 IBinaryComparator (org.apache.hyracks.api.dataflow.value.IBinaryComparator)1 INormalizedKeyComputer (org.apache.hyracks.api.dataflow.value.INormalizedKeyComputer)1 IPartitionBatchManager (org.apache.hyracks.dataflow.std.collectors.IPartitionBatchManager)1 NonDeterministicPartitionBatchManager (org.apache.hyracks.dataflow.std.collectors.NonDeterministicPartitionBatchManager)1 PartitionCollector (org.apache.hyracks.dataflow.std.collectors.PartitionCollector)1 SortMergeFrameReader (org.apache.hyracks.dataflow.std.collectors.SortMergeFrameReader)1