@Override public final BlockBuilder createBlockBuilder(BlockBuilderStatus blockBuilderStatus, int expectedEntries) { return createBlockBuilder(blockBuilderStatus, expectedEntries, Double.BYTES); }
private static Block createKeyBlock(int positionCount, int mapSize) { BlockBuilder valueBlockBuilder = DOUBLE.createBlockBuilder(null, positionCount * mapSize); for (int i = 0; i < positionCount * mapSize; i++) { DOUBLE.writeDouble(valueBlockBuilder, ThreadLocalRandom.current().nextLong()); } return valueBlockBuilder.build(); }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = DOUBLE.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { DOUBLE.writeDouble(blockBuilder, (double) i); } return new Block[] {blockBuilder.build()}; }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = DOUBLE.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { DOUBLE.writeDouble(blockBuilder, (double) i); } return new Block[] {blockBuilder.build()}; }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = DOUBLE.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { DOUBLE.writeDouble(blockBuilder, (double) i); } return new Block[] {blockBuilder.build()}; }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = DOUBLE.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { DOUBLE.writeDouble(blockBuilder, (double) i); } return new Block[] {blockBuilder.build()}; }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = DOUBLE.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { DOUBLE.writeDouble(blockBuilder, (double) i); } return new Block[] {blockBuilder.build()}; }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = DOUBLE.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { DOUBLE.writeDouble(blockBuilder, (double) i); } return new Block[] {blockBuilder.build()}; }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = DOUBLE.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { DOUBLE.writeDouble(blockBuilder, (double) i); } return new Block[] {blockBuilder.build()}; }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = DOUBLE.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { DOUBLE.writeDouble(blockBuilder, (double) i); } return new Block[] {blockBuilder.build()}; }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = DOUBLE.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { DOUBLE.writeDouble(blockBuilder, (double) i); } return new Block[] {blockBuilder.build()}; }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = DOUBLE.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { DOUBLE.writeDouble(blockBuilder, (double) i); } return new Block[] {blockBuilder.build()}; }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = DOUBLE.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { DOUBLE.writeDouble(blockBuilder, (double) i); } return new Block[] {blockBuilder.build()}; }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = DOUBLE.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { DOUBLE.writeDouble(blockBuilder, (double) i); } return new Block[] {blockBuilder.build()}; }
private static Block createValueBlock(int positionCount, int mapSize) { BlockBuilder valueBlockBuilder = DOUBLE.createBlockBuilder(null, positionCount * mapSize); for (int i = 0; i < positionCount * mapSize; i++) { DOUBLE.writeDouble(valueBlockBuilder, ThreadLocalRandom.current().nextDouble()); } return valueBlockBuilder.build(); }
private static Block createFixWidthValueBlock(int positionCount, int mapSize) { BlockBuilder valueBlockBuilder = DOUBLE.createBlockBuilder(null, positionCount * mapSize); for (int i = 0; i < positionCount * mapSize; i++) { DOUBLE.writeDouble(valueBlockBuilder, ThreadLocalRandom.current().nextDouble()); } return valueBlockBuilder.build(); }
private static RunLengthEncodedBlock createRLEBlock(double percentile, int positionCount) { BlockBuilder blockBuilder = DOUBLE.createBlockBuilder(null, 1); DOUBLE.writeDouble(blockBuilder, percentile); return new RunLengthEncodedBlock(blockBuilder.build(), positionCount); }
public static RunLengthEncodedBlock createRLEBlock(double value, int positionCount) { BlockBuilder blockBuilder = DOUBLE.createBlockBuilder(null, 1); DOUBLE.writeDouble(blockBuilder, value); return new RunLengthEncodedBlock(blockBuilder.build(), positionCount); }
@ScalarFunction("values_at_quantiles") @Description("For each input q between [0, 1], find the value whose rank in the sorted sequence of the n values represented by the qdigest is qn.") @SqlType("array(double)") public static Block valuesAtQuantilesDouble(@SqlType("qdigest(double)") Slice input, @SqlType("array(double)") Block percentilesArrayBlock) { QuantileDigest digest = new QuantileDigest(input); BlockBuilder output = DOUBLE.createBlockBuilder(null, percentilesArrayBlock.getPositionCount()); for (int i = 0; i < percentilesArrayBlock.getPositionCount(); i++) { DOUBLE.writeDouble(output, sortableLongToDouble(digest.getQuantile(DOUBLE.getDouble(percentilesArrayBlock, i)))); } return output.build(); }
private Page buildPage() { BlockBuilder col1 = BIGINT.createBlockBuilder(null, 1); BlockBuilder col2 = DOUBLE.createBlockBuilder(null, 1); BlockBuilder col3 = VARBINARY.createBlockBuilder(null, 1); col1.writeLong(42).closeEntry(); col2.writeLong(doubleToLongBits(43.0)).closeEntry(); col3.writeLong(doubleToLongBits(43.0)).writeLong(1).closeEntry(); return new Page(col1.build(), col2.build(), col3.build()); } }