Java Code Examples for org.apache.hadoop.io.compress.CompressionOutputStream#finish()
The following examples show how to use
org.apache.hadoop.io.compress.CompressionOutputStream#finish() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: CodecFactory.java From parquet-mr with Apache License 2.0 | 6 votes |
@Override public BytesInput compress(BytesInput bytes) throws IOException { final BytesInput compressedBytes; if (codec == null) { compressedBytes = bytes; } else { compressedOutBuffer.reset(); if (compressor != null) { // null compressor for non-native gzip compressor.reset(); } CompressionOutputStream cos = codec.createOutputStream(compressedOutBuffer, compressor); bytes.writeAllTo(cos); cos.finish(); cos.close(); compressedBytes = BytesInput.from(compressedOutBuffer); } return compressedBytes; }
Example 2
Source File: Compression.java From hadoop with Apache License 2.0 | 5 votes |
@Override public void flush() throws IOException { CompressionOutputStream cout = (CompressionOutputStream) out; cout.finish(); cout.flush(); cout.resetState(); }
Example 3
Source File: Compression.java From big-c with Apache License 2.0 | 5 votes |
@Override public void flush() throws IOException { CompressionOutputStream cout = (CompressionOutputStream) out; cout.finish(); cout.flush(); cout.resetState(); }
Example 4
Source File: Compression.java From hbase with Apache License 2.0 | 5 votes |
@Override public void flush() throws IOException { CompressionOutputStream cout = (CompressionOutputStream) out; cout.finish(); cout.flush(); cout.resetState(); }
Example 5
Source File: Compression.java From RDFS with Apache License 2.0 | 5 votes |
@Override public void flush() throws IOException { CompressionOutputStream cout = (CompressionOutputStream) out; cout.finish(); cout.flush(); cout.resetState(); }
Example 6
Source File: Compression.java From hadoop-gpu with Apache License 2.0 | 5 votes |
@Override public void flush() throws IOException { CompressionOutputStream cout = (CompressionOutputStream) out; cout.finish(); cout.flush(); cout.resetState(); }
Example 7
Source File: TestSnappyCodec.java From parquet-mr with Apache License 2.0 | 4 votes |
@Test public void TestSnappyStream() throws IOException { SnappyCodec codec = new SnappyCodec(); codec.setConf(new Configuration()); int blockSize = 1024; int inputSize = blockSize * 1024; byte[] input = new byte[inputSize]; for (int i = 0; i < inputSize; ++i) { input[i] = (byte)i; } ByteArrayOutputStream compressedStream = new ByteArrayOutputStream(); CompressionOutputStream compressor = codec.createOutputStream(compressedStream); int bytesCompressed = 0; while (bytesCompressed < inputSize) { int len = Math.min(inputSize - bytesCompressed, blockSize); compressor.write(input, bytesCompressed, len); bytesCompressed += len; } compressor.finish(); byte[] rawCompressed = Snappy.compress(input); byte[] codecCompressed = compressedStream.toByteArray(); // Validate that the result from the codec is the same as if we compressed the // buffer directly. assertArrayEquals(rawCompressed, codecCompressed); ByteArrayInputStream inputStream = new ByteArrayInputStream(codecCompressed); CompressionInputStream decompressor = codec.createInputStream(inputStream); byte[] codecDecompressed = new byte[inputSize]; int bytesDecompressed = 0; int numBytes; while ((numBytes = decompressor.read(codecDecompressed, bytesDecompressed, blockSize)) != 0) { bytesDecompressed += numBytes; if (bytesDecompressed == inputSize) break; } byte[] rawDecompressed = Snappy.uncompress(rawCompressed); assertArrayEquals(input, rawDecompressed); assertArrayEquals(input, codecDecompressed); }
Example 8
Source File: TestCodec.java From RDFS with Apache License 2.0 | 4 votes |
private static void codecTest(Configuration conf, int seed, int count, String codecClass) throws IOException { // Create the codec CompressionCodec codec = null; try { codec = (CompressionCodec) ReflectionUtils.newInstance(conf.getClassByName(codecClass), conf); } catch (ClassNotFoundException cnfe) { throw new IOException("Illegal codec!"); } LOG.info("Created a Codec object of type: " + codecClass); // Generate data DataOutputBuffer data = new DataOutputBuffer(); RandomDatum.Generator generator = new RandomDatum.Generator(seed); for(int i=0; i < count; ++i) { generator.next(); RandomDatum key = generator.getKey(); RandomDatum value = generator.getValue(); key.write(data); value.write(data); } DataInputBuffer originalData = new DataInputBuffer(); DataInputStream originalIn = new DataInputStream(new BufferedInputStream(originalData)); originalData.reset(data.getData(), 0, data.getLength()); LOG.info("Generated " + count + " records"); // Compress data DataOutputBuffer compressedDataBuffer = new DataOutputBuffer(); CompressionOutputStream deflateFilter = codec.createOutputStream(compressedDataBuffer); DataOutputStream deflateOut = new DataOutputStream(new BufferedOutputStream(deflateFilter)); deflateOut.write(data.getData(), 0, data.getLength()); deflateOut.flush(); deflateFilter.finish(); LOG.info("Finished compressing data"); // De-compress data DataInputBuffer deCompressedDataBuffer = new DataInputBuffer(); deCompressedDataBuffer.reset(compressedDataBuffer.getData(), 0, compressedDataBuffer.getLength()); CompressionInputStream inflateFilter = codec.createInputStream(deCompressedDataBuffer); DataInputStream inflateIn = new DataInputStream(new BufferedInputStream(inflateFilter)); // Check for(int i=0; i < count; ++i) { RandomDatum k1 = new RandomDatum(); RandomDatum v1 = new RandomDatum(); k1.readFields(originalIn); v1.readFields(originalIn); RandomDatum k2 = new RandomDatum(); RandomDatum v2 = new RandomDatum(); k2.readFields(inflateIn); v2.readFields(inflateIn); } LOG.info("SUCCESS! Completed checking " + count + " records"); }
Example 9
Source File: TestCodec.java From hadoop-gpu with Apache License 2.0 | 4 votes |
private static void codecTest(Configuration conf, int seed, int count, String codecClass) throws IOException { // Create the codec CompressionCodec codec = null; try { codec = (CompressionCodec) ReflectionUtils.newInstance(conf.getClassByName(codecClass), conf); } catch (ClassNotFoundException cnfe) { throw new IOException("Illegal codec!"); } LOG.info("Created a Codec object of type: " + codecClass); // Generate data DataOutputBuffer data = new DataOutputBuffer(); RandomDatum.Generator generator = new RandomDatum.Generator(seed); for(int i=0; i < count; ++i) { generator.next(); RandomDatum key = generator.getKey(); RandomDatum value = generator.getValue(); key.write(data); value.write(data); } DataInputBuffer originalData = new DataInputBuffer(); DataInputStream originalIn = new DataInputStream(new BufferedInputStream(originalData)); originalData.reset(data.getData(), 0, data.getLength()); LOG.info("Generated " + count + " records"); // Compress data DataOutputBuffer compressedDataBuffer = new DataOutputBuffer(); CompressionOutputStream deflateFilter = codec.createOutputStream(compressedDataBuffer); DataOutputStream deflateOut = new DataOutputStream(new BufferedOutputStream(deflateFilter)); deflateOut.write(data.getData(), 0, data.getLength()); deflateOut.flush(); deflateFilter.finish(); LOG.info("Finished compressing data"); // De-compress data DataInputBuffer deCompressedDataBuffer = new DataInputBuffer(); deCompressedDataBuffer.reset(compressedDataBuffer.getData(), 0, compressedDataBuffer.getLength()); CompressionInputStream inflateFilter = codec.createInputStream(deCompressedDataBuffer); DataInputStream inflateIn = new DataInputStream(new BufferedInputStream(inflateFilter)); // Check for(int i=0; i < count; ++i) { RandomDatum k1 = new RandomDatum(); RandomDatum v1 = new RandomDatum(); k1.readFields(originalIn); v1.readFields(originalIn); RandomDatum k2 = new RandomDatum(); RandomDatum v2 = new RandomDatum(); k2.readFields(inflateIn); v2.readFields(inflateIn); } LOG.info("SUCCESS! Completed checking " + count + " records"); }