join = new InMemoryHashJoinOperatorDescriptor(spec, new int[] { 0 }, new int[] { 1 }, new IBinaryHashFunctionFactory[] { PointableBinaryHashFunctionFactory.of(UTF8StringPointable.FACTORY) }, new IBinaryComparatorFactory[] { PointableBinaryComparatorFactory.of(UTF8StringPointable.FACTORY) }, Common.custOrderJoinDesc, tableSize, null, memSize * frameSize); PointableBinaryHashFunctionFactory.of(UTF8StringPointable.FACTORY) })); spec.connect(ordJoinConn, ordScanner, 0, join, 1); PointableBinaryHashFunctionFactory.of(UTF8StringPointable.FACTORY) })); spec.connect(custJoinConn, custScanner, 0, join, 0); PointableBinaryHashFunctionFactory.of(UTF8StringPointable.FACTORY) })); spec.connect(joinGroupConn, join, 0, gby, 0);
new FieldHashPartitionComputerFactory(keys, new IBinaryHashFunctionFactory[] { PointableBinaryHashFunctionFactory .of(UTF8StringPointable.FACTORY) }), new IBinaryComparatorFactory[] { PointableBinaryComparatorFactory.of(UTF8StringPointable.FACTORY) }, new MultiFieldsAggregatorFactory( new IFieldAggregateDescriptorFactory[] { new CountFieldAggregatorFactory(true) }),
new FieldHashPartitionComputerFactory(keys, new IBinaryHashFunctionFactory[] { PointableBinaryHashFunctionFactory.of(IntegerPointable.FACTORY) }), htSize), false); new FieldHashPartitionComputerFactory(keys, new IBinaryHashFunctionFactory[] { PointableBinaryHashFunctionFactory.of(IntegerPointable.FACTORY) })); spec.connect(scanGroupConnDef2, fileScanner, 0, grouper, 0); new IBinaryHashFunctionFactory[] { PointableBinaryHashFunctionFactory.of(IntegerPointable.FACTORY) }), new IBinaryComparatorFactory[] { new FieldHashPartitionComputerFactory(keys, new IBinaryHashFunctionFactory[] { PointableBinaryHashFunctionFactory.of(IntegerPointable.FACTORY) })); spec.connect(scanConn2, fileScanner, 0, grouper, 0); break; new FieldHashPartitionComputerFactory(keys, new IBinaryHashFunctionFactory[] { PointableBinaryHashFunctionFactory.of(IntegerPointable.FACTORY) }), htSize), false); new FieldHashPartitionComputerFactory(keys, new IBinaryHashFunctionFactory[] { PointableBinaryHashFunctionFactory.of(IntegerPointable.FACTORY) })); spec.connect(scanGroupConnDef, fileScanner, 0, grouper, 0);
hashFactories[0] = PointableBinaryHashFunctionFactory.of(UTF8StringPointable.FACTORY); IConnectorDescriptor hashConn = new MToNPartitioningConnectorDescriptor(spec, new FieldHashPartitionComputerFactory(new int[] { 0 }, hashFactories));
new IBinaryHashFunctionFactory[] { PointableBinaryHashFunctionFactory.of(IntegerPointable.FACTORY) })); spec.connect(scanGroupConnDef2, fileScanner, 0, grouper, 0);
IConnectorDescriptor scanGroupConn = new MToNPartitioningConnectorDescriptor(spec, new FieldHashPartitionComputerFactory(keys, new IBinaryHashFunctionFactory[] { PointableBinaryHashFunctionFactory.of(UTF8StringPointable.FACTORY) })); spec.connect(scanGroupConn, wordScanner, 0, gBy, 0); } else { PointableBinaryHashFunctionFactory.of(UTF8StringPointable.FACTORY) })); spec.connect(scanSortConn, wordScanner, 0, sorter, 0);
hashFactories[0] = PointableBinaryHashFunctionFactory.of(UTF8StringPointable.FACTORY); IConnectorDescriptor hashConn = new MToNPartitioningConnectorDescriptor(spec, new FieldHashPartitionComputerFactory(new int[] { 0 }, hashFactories));