@Override public Deserializer getDeserializer() { return (buffer, builder, columnConfig) -> { int offset = buffer.getInt(); int initialPos = buffer.position(); final CompressedColumnarLongsSupplier column = CompressedColumnarLongsSupplier.fromByteBuffer( buffer, byteOrder ); buffer.position(initialPos + offset); final ImmutableBitmap bitmap; if (buffer.hasRemaining()) { bitmap = bitmapSerdeFactory.getObjectStrategy().fromByteBufferWithSize(buffer); } else { bitmap = bitmapSerdeFactory.getBitmapFactory().makeEmptyImmutableBitmap(); } builder.setType(ValueType.LONG) .setHasMultipleValues(false) .setNumericColumnSupplier(new LongNumericColumnSupplier(column, bitmap)); }; } }
@Override public Deserializer getDeserializer() { return (buffer, builder, columnConfig) -> { int offset = buffer.getInt(); int initialPos = buffer.position(); final CompressedColumnarFloatsSupplier column = CompressedColumnarFloatsSupplier.fromByteBuffer( buffer, byteOrder ); buffer.position(initialPos + offset); final ImmutableBitmap bitmap; if (buffer.hasRemaining()) { bitmap = bitmapSerdeFactory.getObjectStrategy().fromByteBufferWithSize(buffer); } else { bitmap = bitmapSerdeFactory.getBitmapFactory().makeEmptyImmutableBitmap(); } builder.setType(ValueType.FLOAT) .setHasMultipleValues(false) .setNumericColumnSupplier(new FloatNumericColumnSupplier(column, bitmap)); }; } }
byte[] bytes = bitmapSerdeFactory.getObjectStrategy().toBytes(bitmap); if (bytes != null) { jg.writeBinary(bytes);
@Override public Deserializer getDeserializer() { return (buffer, builder, columnConfig) -> { int offset = buffer.getInt(); int initialPos = buffer.position(); final Supplier<ColumnarDoubles> column = CompressedColumnarDoublesSuppliers.fromByteBuffer( buffer, byteOrder ); buffer.position(initialPos + offset); final ImmutableBitmap bitmap; if (buffer.hasRemaining()) { bitmap = bitmapSerdeFactory.getObjectStrategy().fromByteBufferWithSize(buffer); } else { bitmap = bitmapSerdeFactory.getBitmapFactory().makeEmptyImmutableBitmap(); } builder.setType(ValueType.DOUBLE) .setHasMultipleValues(false) .setNumericColumnSupplier(new DoubleNumericColumnSupplier(column, bitmap)); }; } }
@Override public BitmapIndex getBitmapIndex(String dimension) { return new BitmapIndexColumnPartSupplier( factory, GenericIndexed.fromIterable(Collections.singletonList(foo1BitMap), serdeFactory.getObjectStrategy()), GenericIndexed.fromIterable(Collections.singletonList("foo1"), GenericIndexed.STRING_STRATEGY) ).get(); }
serdeFactory.getObjectStrategy() ), dictionary
serdeFactory.getObjectStrategy() ), dictionary
serdeFactory.getObjectStrategy() ), dictionary
bitmaps.put( serializerUtils.readString(invertedBuffer), GenericIndexed.read(invertedBuffer, bitmapSerdeFactory.getObjectStrategy()) );
@Override public void open() throws IOException { writer = CompressionFactory.getDoubleSerializer( segmentWriteOutMedium, StringUtils.format("%s.double_column", filenameBase), byteOrder, compression ); writer.open(); nullValueBitmapWriter = new ByteBufferWriter<>( segmentWriteOutMedium, bitmapSerdeFactory.getObjectStrategy() ); nullValueBitmapWriter.open(); nullRowsBitmap = bitmapSerdeFactory.getBitmapFactory().makeEmptyMutableBitmap(); }
@Override public void open() throws IOException { writer = CompressionFactory.getFloatSerializer( segmentWriteOutMedium, StringUtils.format("%s.float_column", filenameBase), byteOrder, compression ); writer.open(); nullValueBitmapWriter = new ByteBufferWriter<>( segmentWriteOutMedium, bitmapSerdeFactory.getObjectStrategy() ); nullValueBitmapWriter.open(); nullRowsBitmap = bitmapSerdeFactory.getBitmapFactory().makeEmptyMutableBitmap(); }
@Override public void open() throws IOException { writer = CompressionFactory.getLongSerializer( segmentWriteOutMedium, StringUtils.format("%s.long_column", filenameBase), byteOrder, encoding, compression ); writer.open(); nullValueBitmapWriter = new ByteBufferWriter<>( segmentWriteOutMedium, bitmapSerdeFactory.getObjectStrategy() ); nullValueBitmapWriter.open(); nullRowsBitmap = bitmapSerdeFactory.getBitmapFactory().makeEmptyMutableBitmap(); }
segmentWriteOutMedium, bmpFilename, indexSpec.getBitmapSerdeFactory().getObjectStrategy() ); bitmapWriter.open();
GenericIndexed<ImmutableBitmap> rBitmaps = GenericIndexed.read( buffer, bitmapSerdeFactory.getObjectStrategy(), builder.getFileMapper() );
@Override public Deserializer getDeserializer() { return (buffer, builder, columnConfig) -> { int offset = buffer.getInt(); int initialPos = buffer.position(); final Supplier<ColumnarDoubles> column = CompressedColumnarDoublesSuppliers.fromByteBuffer( buffer, byteOrder ); buffer.position(initialPos + offset); final ImmutableBitmap bitmap; if (buffer.hasRemaining()) { bitmap = bitmapSerdeFactory.getObjectStrategy().fromByteBufferWithSize(buffer); } else { bitmap = bitmapSerdeFactory.getBitmapFactory().makeEmptyImmutableBitmap(); } builder.setType(ValueType.DOUBLE) .setHasMultipleValues(false) .setNumericColumnSupplier(new DoubleNumericColumnSupplier(column, bitmap)); }; } }
@Override public Deserializer getDeserializer() { return (buffer, builder, columnConfig) -> { int offset = buffer.getInt(); int initialPos = buffer.position(); final CompressedColumnarLongsSupplier column = CompressedColumnarLongsSupplier.fromByteBuffer( buffer, byteOrder ); buffer.position(initialPos + offset); final ImmutableBitmap bitmap; if (buffer.hasRemaining()) { bitmap = bitmapSerdeFactory.getObjectStrategy().fromByteBufferWithSize(buffer); } else { bitmap = bitmapSerdeFactory.getBitmapFactory().makeEmptyImmutableBitmap(); } builder.setType(ValueType.LONG) .setHasMultipleValues(false) .setNumericColumnSupplier(new LongNumericColumnSupplier(column, bitmap)); }; } }
@Override public Deserializer getDeserializer() { return (buffer, builder, columnConfig) -> { int offset = buffer.getInt(); int initialPos = buffer.position(); final CompressedColumnarFloatsSupplier column = CompressedColumnarFloatsSupplier.fromByteBuffer( buffer, byteOrder ); buffer.position(initialPos + offset); final ImmutableBitmap bitmap; if (buffer.hasRemaining()) { bitmap = bitmapSerdeFactory.getObjectStrategy().fromByteBufferWithSize(buffer); } else { bitmap = bitmapSerdeFactory.getBitmapFactory().makeEmptyImmutableBitmap(); } builder.setType(ValueType.FLOAT) .setHasMultipleValues(false) .setNumericColumnSupplier(new FloatNumericColumnSupplier(column, bitmap)); }; } }
@Override public void open() throws IOException { writer = CompressionFactory.getFloatSerializer( segmentWriteOutMedium, StringUtils.format("%s.float_column", filenameBase), byteOrder, compression ); writer.open(); nullValueBitmapWriter = new ByteBufferWriter<>( segmentWriteOutMedium, bitmapSerdeFactory.getObjectStrategy() ); nullValueBitmapWriter.open(); nullRowsBitmap = bitmapSerdeFactory.getBitmapFactory().makeEmptyMutableBitmap(); }
@Override public void open() throws IOException { writer = CompressionFactory.getDoubleSerializer( segmentWriteOutMedium, StringUtils.format("%s.double_column", filenameBase), byteOrder, compression ); writer.open(); nullValueBitmapWriter = new ByteBufferWriter<>( segmentWriteOutMedium, bitmapSerdeFactory.getObjectStrategy() ); nullValueBitmapWriter.open(); nullRowsBitmap = bitmapSerdeFactory.getBitmapFactory().makeEmptyMutableBitmap(); }
@Override public void open() throws IOException { writer = CompressionFactory.getLongSerializer( segmentWriteOutMedium, StringUtils.format("%s.long_column", filenameBase), byteOrder, encoding, compression ); writer.open(); nullValueBitmapWriter = new ByteBufferWriter<>( segmentWriteOutMedium, bitmapSerdeFactory.getObjectStrategy() ); nullValueBitmapWriter.open(); nullRowsBitmap = bitmapSerdeFactory.getBitmapFactory().makeEmptyMutableBitmap(); }