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;
 }
示例#2
0
 internal StripeReader(Stream inputStream, ulong indexOffset, ulong indexLength, ulong dataOffset, ulong dataLength, ulong footerOffset, ulong footerLength, ulong numRows, Protocol.CompressionKind compressionKind)
 {
     _inputStream     = inputStream;
     _indexOffset     = indexOffset;
     _indexLength     = indexLength;
     _dataOffset      = dataOffset;
     _dataLength      = dataLength;
     _footerOffset    = footerOffset;
     _footerLength    = footerLength;
     NumRows          = numRows;
     _compressionKind = compressionKind;
 }
 public StripeReaderCollection(Stream inputStream, Protocol.Footer footer, Protocol.CompressionKind compressionKind)
 {
     foreach (var stripe in footer.Stripes)
     {
         _innerCollection.Add(new StripeReader(
                                  inputStream,
                                  stripe.Offset,
                                  stripe.IndexLength,
                                  stripe.Offset + stripe.IndexLength,
                                  stripe.DataLength,
                                  stripe.Offset + stripe.IndexLength + stripe.DataLength,
                                  stripe.FooterLength,
                                  stripe.NumberOfRows,
                                  compressionKind
                                  ));
     }
 }
示例#4
0
 public OrcCompressedBuffer(int compressionBlockSize, Protocol.CompressionKind compressionKind, CompressionStrategy compressionStrategy, Protocol.StreamKind streamKind)
     : this(compressionBlockSize, compressionKind, compressionStrategy)
 {
     StreamKind = streamKind;
 }
示例#5
0
 public OrcCompressedBuffer(int compressionBlockSize, Protocol.CompressionKind compressionKind, CompressionStrategy compressionStrategy)
 {
     _compressionBlockSize = compressionBlockSize;
     _compressionKind      = compressionKind;
     _compressionStrategy  = compressionStrategy;
 }
 public OrcCompressedBufferFactory(int compressionBlockSize, Protocol.CompressionKind compressionKind, CompressionStrategy compressionStrategy)
 {
     CompressionBlockSize = compressionBlockSize;
     CompressionKind      = compressionKind;
     CompressionStrategy  = compressionStrategy;
 }
        internal StripeStreamReaderCollection(Stream inputStream, Protocol.StripeFooter stripeFooter, long stripeOffset, Protocol.CompressionKind compressionKind)
        {
            long offset = stripeOffset;

            foreach (var stream in stripeFooter.Streams)
            {
                if (_underlyingCollection.Exists(s => s.ColumnId == stream.Column && s.StreamKind == stream.Kind))
                {
                    throw new InvalidOperationException($"More than one stream matching {nameof(stream.Column)} ({stream.Column}) and {nameof(stream.Kind)} ({stream.Kind}) found in {nameof(Protocol.StripeFooter)}");
                }

                var column = stripeFooter.Columns[(int)stream.Column];

                _underlyingCollection.Add(new StripeStreamReader(
                                              inputStream,
                                              stream.Column,
                                              stream.Kind,
                                              column.Kind,
                                              offset,
                                              stream.Length,
                                              compressionKind
                                              ));

                offset += (long)stream.Length;
            }
        }