package FlexibleEncoding.Parquet; import java.io.IOException; import java.util.Arrays; public class TestStringDeltaBianryPacking { // @Rule // public org.junit.rules.TestRule benchmarkRun = new BenchmarkRule(); static String[] values = Utils.getRandomStringSamples(10000, 32); static String[] sortedVals; static { sortedVals = Arrays.copyOf(values, values.length); Arrays.sort(sortedVals); } // @BenchmarkOptions(benchmarkRounds = 20, warmupRounds = 4) // @Test public void benchmarkRandomStringsWithPlainValuesWriter() throws IOException { PlainValuesWriter writer = new PlainValuesWriter(64*1024); BinaryPlainValuesReader reader = new BinaryPlainValuesReader(); Utils.writeData(writer, values); byte [] data = writer.getBytes().toByteArray(); // Binary[] bin = Utils.readData(reader, data, values.length); System.out.println("size " + data.length); //System.out.println("binsize " + bin.length); } //@BenchmarkOptions(benchmarkRounds = 20, warmupRounds = 4) // @Test public void benchmarkRandomStringsWithDeltaLengthByteArrayValuesWriter() throws IOException { DeltaByteArrayWriter writer = new DeltaByteArrayWriter(64*1024); DeltaByteArrayReader reader = new DeltaByteArrayReader(); Utils.writeData(writer, values); byte [] data = writer.getBytes().toByteArray(); Binary[] bin = new Utils().readData(reader, data, values.length); System.out.println("size " + data.length);System.out.println("binsize " + bin.length); for(int i=0;i<5;i++){ System.out.println("////////////////////"+bin[i].toString()); System.out.println("56..................."+bin[i].toStringUsingUTF8()); } } //@BenchmarkOptions(benchmarkRounds = 20, warmupRounds = 4) //@Test public void benchmarkSortedStringsWithPlainValuesWriter() throws IOException { PlainValuesWriter writer = new PlainValuesWriter(64*1024); BinaryPlainValuesReader reader = new BinaryPlainValuesReader(); Utils.writeData(writer, sortedVals); byte [] data = writer.getBytes().toByteArray(); Binary[] bin = new Utils().readData(reader, data, values.length); System.out.println("size " + data.length);System.out.println("binsize " + bin.length); } // @BenchmarkOptions(benchmarkRounds = 20, warmupRounds = 4) //@Test public void benchmarkSortedStringsWithDeltaLengthByteArrayValuesWriter() throws IOException { DeltaByteArrayWriter writer = new DeltaByteArrayWriter(64*1024); DeltaByteArrayReader reader = new DeltaByteArrayReader(); Utils.writeData(writer, sortedVals); byte [] data = writer.getBytes().toByteArray(); Binary[] bin = new Utils().readData(reader, data, values.length); System.out.println("size " + data.length);System.out.println("binsize " + bin.length); } public static void main(String[] str) throws IOException{ TestStringDeltaBianryPacking testString=new TestStringDeltaBianryPacking() ; testString.benchmarkRandomStringsWithDeltaLengthByteArrayValuesWriter(); // testString.benchmarkRandomStringsWithPlainValuesWriter(); // testString.benchmarkSortedStringsWithDeltaLengthByteArrayValuesWriter(); // testString.benchmarkSortedStringsWithPlainValuesWriter(); } }