@Override public int hash(byte[] bytes, int offset, int length) { int h = MurmurHash3BinaryHash.hash(bytes, offset, length, seed); return h; } };
@Override public IBinaryComparator createBinaryComparator() { return new IBinaryComparator() { final IBinaryComparator comparator = BinaryComparatorFactoryProvider.INTEGER_POINTABLE_INSTANCE.createBinaryComparator(); @Override public int compare(byte[] b1, int s1, int l1, byte[] b2, int s2, int l2) throws HyracksDataException { return -comparator.compare(b1, s1, l1, b2, s2, l2); } }; }
public static PointableBinaryComparatorFactory of(IPointableFactory pf) { return new PointableBinaryComparatorFactory(pf); }
primaryComparatorFactories[0] = PointableBinaryComparatorFactory.of(IntegerPointable.FACTORY); secondaryComparatorFactories[0] = PointableBinaryComparatorFactory.of(UTF8StringPointable.FACTORY); secondaryComparatorFactories[1] = PointableBinaryComparatorFactory.of(IntegerPointable.FACTORY); hashFactories[0] = PointableBinaryHashFunctionFactory.of(UTF8StringPointable.FACTORY); IConnectorDescriptor hashConn = new MToNPartitioningConnectorDescriptor(spec, new FieldHashPartitionComputerFactory(new int[] { 0 }, hashFactories));
public static IBinaryComparator createStringBinaryComparator() { return PointableBinaryComparatorFactory.of(UTF8StringPointable.FACTORY).createBinaryComparator(); }
public static IBinaryComparatorFactory serdeToComparatorFactory(ISerializerDeserializer serde) { if (serde instanceof ShortSerializerDeserializer) { return PointableBinaryComparatorFactory.of(ShortPointable.FACTORY); } if (serde instanceof IntegerSerializerDeserializer) { return PointableBinaryComparatorFactory.of(IntegerPointable.FACTORY); } if (serde instanceof Integer64SerializerDeserializer) { return PointableBinaryComparatorFactory.of(LongPointable.FACTORY); } if (serde instanceof FloatSerializerDeserializer) { return PointableBinaryComparatorFactory.of(FloatPointable.FACTORY); } if (serde instanceof DoubleSerializerDeserializer) { return PointableBinaryComparatorFactory.of(DoublePointable.FACTORY); } if (serde instanceof BooleanSerializerDeserializer) { throw new UnsupportedOperationException("Binary comparator factory for Boolean not implemented."); } if (serde instanceof UTF8StringSerializerDeserializer) { return PointableBinaryComparatorFactory.of(UTF8StringPointable.FACTORY); } throw new UnsupportedOperationException("Binary comparator for + " + serde.toString() + " not implemented."); } }
public RuntimeRecordTypeInfo() { fieldNameComparator = new PointableBinaryComparatorFactory(UTF8StringPointable.FACTORY).createBinaryComparator(); fieldNameHashFunction = new PointableBinaryHashFunctionFactory(UTF8StringPointable.FACTORY).createBinaryHashFunction(); writer = new UTF8StringWriter(); }
BinaryHashFunctionFactoryProvider.UTF8STRING_POINTABLE_INSTANCE.createBinaryHashFunction(); private final IBinaryComparator fieldNameComparator = BinaryComparatorFactoryProvider.UTF8STRING_POINTABLE_INSTANCE.createBinaryComparator(); private ArrayBackedValueStorage resultStorage = new ArrayBackedValueStorage(); private DataOutput out = resultStorage.getDataOutput();
new PointableBinaryHashFunctionFactory(UTF8StringLowercasePointable.FACTORY) .createBinaryHashFunction(); private IBinaryHashFunction genericBinaryHash = MurmurHash3BinaryHashFunctionFamily.INSTANCE.createBinaryHashFunction(0);
public static PointableBinaryHashFunctionFactory of(IPointableFactory pf) { return new PointableBinaryHashFunctionFactory(pf); }
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(UTF8StringPointable.FACTORY) })); spec.connect(scanGroupConn, wordScanner, 0, gBy, 0); } else { IBinaryComparatorFactory[] cfs = new IBinaryComparatorFactory[] { PointableBinaryComparatorFactory .of(UTF8StringPointable.FACTORY) }; IOperatorDescriptor sorter = "memsort".equalsIgnoreCase(algo) ? new InMemorySortOperatorDescriptor(spec, keys, new UTF8StringNormalizedKeyComputerFactory(), cfs, wordDesc) new FieldHashPartitionComputerFactory(keys, new IBinaryHashFunctionFactory[] { PointableBinaryHashFunctionFactory .of(UTF8StringPointable.FACTORY) })); spec.connect(scanSortConn, wordScanner, 0, sorter, 0); spec, keys, new IBinaryComparatorFactory[] { PointableBinaryComparatorFactory.of(UTF8StringPointable.FACTORY) }, new MultiFieldsAggregatorFactory( new IFieldAggregateDescriptorFactory[] { new CountFieldAggregatorFactory(true) }),
public static IJsonSerializable fromJson(IPersistedResourceRegistry registry, JsonNode json) throws HyracksDataException { final IPointableFactory pointableFactory = (IPointableFactory) registry.deserialize(json.get("pointableFactory")); return of(pointableFactory); } }
public RecordBuilder() { this.closedPartOutputStream = new ByteArrayAccessibleOutputStream(); this.numberOfClosedFields = 0; this.openPartOutputStream = new ByteArrayAccessibleOutputStream(); this.openPartOffsets = new long[DEFAULT_NUM_OPEN_FIELDS]; this.openFieldNameLengths = new int[DEFAULT_NUM_OPEN_FIELDS]; this.numberOfOpenFields = 0; this.utf8HashFunction = new PointableBinaryHashFunctionFactory(UTF8StringPointable.FACTORY).createBinaryHashFunction(); this.utf8Comparator = new PointableBinaryComparatorFactory(UTF8StringPointable.FACTORY).createBinaryComparator(); this.openPartOffsetArray = null; this.openPartOffsetArraySize = 0; this.offsetPosition = 0; this.recTypeInfo = new RuntimeRecordTypeInfo(); }
BinaryHashFunctionFactoryProvider.UTF8STRING_POINTABLE_INSTANCE.createBinaryHashFunction(); private final IBinaryComparator fieldNameComparator = BinaryComparatorFactoryProvider.UTF8STRING_POINTABLE_INSTANCE.createBinaryComparator(); private final ArrayBackedValueStorage resultStorage = new ArrayBackedValueStorage(); private final DataOutput out = resultStorage.getDataOutput();
private void initializeFullTextContains() { // We use a hash set to store tokens from the right side (query predicate). // Initialize necessary variables. hashFunc = new PointableBinaryHashFunctionFactory(UTF8StringLowercaseTokenPointable.FACTORY) .createBinaryHashFunction(); keyEntry = new BinaryEntry(); // Parameter: number of bucket, frame size, hashFunction, Comparator, byte array // that contains the key (this array will be set later.) rightHashSet = new BinaryHashSet(HASH_SET_SLOT_SIZE, HASH_SET_FRAME_SIZE, hashFunc, strLowerCaseTokenCmp, null); tokenizerForLeftArray = BinaryTokenizerFactoryProvider.INSTANCE .getWordTokenizerFactory(ATypeTag.STRING, false, true).createTokenizer(); }
switch (tag) { case BIGINT: { cmp = BinaryComparatorFactoryProvider.LONG_POINTABLE_INSTANCE.createBinaryComparator(); break; cmp = BinaryComparatorFactoryProvider.INTEGER_POINTABLE_INSTANCE.createBinaryComparator(); break; cmp = BinaryComparatorFactoryProvider.SHORT_POINTABLE_INSTANCE.createBinaryComparator(); break; cmp = BinaryComparatorFactoryProvider.BYTE_POINTABLE_INSTANCE.createBinaryComparator(); break; cmp = BinaryComparatorFactoryProvider.FLOAT_POINTABLE_INSTANCE.createBinaryComparator(); break; cmp = BinaryComparatorFactoryProvider.DOUBLE_POINTABLE_INSTANCE.createBinaryComparator(); break; if (ignoreCase) { cmp = BinaryComparatorFactoryProvider.UTF8STRING_LOWERCASE_POINTABLE_INSTANCE .createBinaryComparator(); } else { cmp = BinaryComparatorFactoryProvider.UTF8STRING_POINTABLE_INSTANCE.createBinaryComparator(); cmp = BinaryComparatorFactoryProvider.BINARY_POINTABLE_INSTANCE.createBinaryComparator(); break;
comparatorFactories[0] = PointableBinaryComparatorFactory.of(IntegerPointable.FACTORY); ExternalSortOperatorDescriptor sorter = new ExternalSortOperatorDescriptor(spec, options.sbSize, sortFields, comparatorFactories, recDesc); hashFactories[0] = PointableBinaryHashFunctionFactory.of(UTF8StringPointable.FACTORY); IConnectorDescriptor hashConn = new MToNPartitioningConnectorDescriptor(spec, new FieldHashPartitionComputerFactory(new int[] { 0 }, hashFactories));
if (isPartitioned) { tokenComparatorFactories[1] = PointableBinaryComparatorFactory.of(ShortPointable.FACTORY);
BinaryHashFunctionFactoryProvider.UTF8STRING_POINTABLE_INSTANCE.createBinaryHashFunction(); private final IBinaryComparator fieldNameComparator = BinaryComparatorFactoryProvider.UTF8STRING_POINTABLE_INSTANCE.createBinaryComparator(); private ArrayBackedValueStorage resultStorage = new ArrayBackedValueStorage(); private final DataOutput out = resultStorage.getDataOutput();