Esempio n. 1
0
        protected Protocol.ColumnEncodingKind?GetColumnEncodingKind(Protocol.StreamKind streamKind)
        {
            var stripeStream = GetStripeStream(streamKind);

            if (stripeStream == null)
            {
                return(null);
            }
            return(stripeStream.ColumnEncodingKind);
        }
 internal StripeStreamReader(Stream inputStream, uint columnId, Protocol.StreamKind streamKind, Protocol.ColumnEncodingKind encodingKind, long inputStreamOffset, ulong compressedLength, Protocol.CompressionKind compressionKind)
 {
     _inputStream       = inputStream;
     ColumnId           = columnId;
     StreamKind         = streamKind;
     ColumnEncodingKind = encodingKind;
     _inputStreamOffset = inputStreamOffset;
     _compressedLength  = compressedLength;
     _compressionKind   = compressionKind;
 }
Esempio n. 3
0
        protected byte[] ReadByteStream(Protocol.StreamKind streamKind)
        {
            var stripeStream = GetStripeStream(streamKind);

            if (stripeStream == null)
            {
                return(null);
            }

            var stream = stripeStream.GetDecompressedStream();
            var reader = new ByteRunLengthEncodingReader(stream);

            return(reader.Read().ToArray());
        }
Esempio n. 4
0
        protected bool[] ReadBooleanStream(Protocol.StreamKind streamKind)
        {
            var stripeStream = GetStripeStream(streamKind);

            if (stripeStream == null)
            {
                return(null);
            }

            var stream = stripeStream.GetDecompressedStream();
            var reader = new BitReader(stream);

            return(reader.Read().ToArray());
        }
Esempio n. 5
0
        protected BigInteger[] ReadVarIntStream(Protocol.StreamKind streamKind)
        {
            var stripeStream = GetStripeStream(streamKind);

            if (stripeStream == null)
            {
                return(null);
            }

            var stream = stripeStream.GetDecompressedStream();
            var reader = new VarIntReader(stream);

            return(reader.Read().ToArray());
        }
Esempio n. 6
0
        protected byte[] ReadBinaryStream(Protocol.StreamKind streamKind)
        {
            var stripeStream = GetStripeStream(streamKind);

            if (stripeStream == null)
            {
                return(null);
            }

            var stream    = stripeStream.GetDecompressedStream();
            var memStream = new MemoryStream();

            stream.CopyTo(memStream);

            return(memStream.ToArray());
        }
Esempio n. 7
0
        protected long[] ReadNumericStream(Protocol.StreamKind streamKind, bool isSigned)
        {
            var stripeStream = GetStripeStream(streamKind);

            if (stripeStream == null)
            {
                return(null);
            }

            if (stripeStream.ColumnEncodingKind != Protocol.ColumnEncodingKind.DirectV2 && stripeStream.ColumnEncodingKind != Protocol.ColumnEncodingKind.DictionaryV2)
            {
                throw new NotImplementedException($"Unimplemented Numeric {nameof(Protocol.ColumnEncodingKind)} {stripeStream.ColumnEncodingKind}");
            }

            var stream = stripeStream.GetDecompressedStream();
            var reader = new IntegerRunLengthEncodingV2Reader(stream, isSigned);

            return(reader.Read().ToArray());
        }
Esempio n. 8
0
 public OrcCompressedBuffer(int compressionBlockSize, Protocol.CompressionKind compressionKind, CompressionStrategy compressionStrategy, Protocol.StreamKind streamKind)
     : this(compressionBlockSize, compressionKind, compressionStrategy)
 {
     StreamKind = streamKind;
 }
 public OrcCompressedBuffer CreateBuffer(Protocol.StreamKind streamKind)
 {
     return(new OrcCompressedBuffer(CompressionBlockSize, CompressionKind, CompressionStrategy, streamKind));
 }
Esempio n. 10
0
 StripeStreamReader GetStripeStream(Protocol.StreamKind streamKind)
 {
     return(_stripeStreams.FirstOrDefault(s => s.ColumnId == _columnId && s.StreamKind == streamKind));
 }