﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Namespace Lucene.Net.Codecs.Compressing
   | Apache Lucene.NET 4.8.0-beta00013 Documentation </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Namespace Lucene.Net.Codecs.Compressing
   | Apache Lucene.NET 4.8.0-beta00013 Documentation ">
    <meta name="generator" content="docfx 2.56.2.0">
    
    <link rel="shortcut icon" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/logo/favicon.ico">
    <link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.vendor.css">
    <link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.css">
    <link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/main.css">
    <meta property="docfx:navrel" content="toc.html">
    <meta property="docfx:tocrel" content="core/toc.html">
    
    <meta property="docfx:rel" content="https://lucenenet.apache.org/docs/4.8.0-beta00009/">
    
  </head>
  <body data-spy="scroll" data-target="#affix" data-offset="120">
    <span id="forkongithub"><a href="https://github.com/apache/lucenenet" target="_blank">Fork me on GitHub</a></span>
    <div id="wrapper">
      <header>
        
        <nav id="autocollapse" class="navbar ng-scope" role="navigation">
          <div class="container">
            <div class="navbar-header">
              <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
              
              <a class="navbar-brand" href="/">
                <img id="logo" class="svg" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/logo/lucene-net-color.png" alt="">
              </a>
            </div>
            <div class="collapse navbar-collapse" id="navbar">
              <form class="navbar-form navbar-right" role="search" id="search">
                <div class="form-group">
                  <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
                </div>
              </form>
            </div>
          </div>
        </nav>
        
        <div class="subnav navbar navbar-default">
          <div class="container hide-when-search">
            <ul class="level0 breadcrumb">
                <li>
                    <a href="https://lucenenet.apache.org/docs/4.8.0-beta00009/">API</a>
                     <span id="breadcrumb">
                        <ul class="breadcrumb">
                          <li></li>
                        </ul>
                    </span>   
                </li>
            </ul>
          </div>
        </div>
      </header>
      <div class="container body-content">
        
        <div id="search-results">
          <div class="search-list"></div>
          <div class="sr-items">
            <p><i class="glyphicon glyphicon-refresh index-loading"></i></p>
          </div>
          <ul id="pagination"></ul>
        </div>
      </div>
      <div role="main" class="container body-content hide-when-search">
        
        <div class="sidenav hide-when-search">
          <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
          <div class="sidetoggle collapse" id="sidetoggle">
            <div id="sidetoc"></div>
          </div>
        </div>
        <div class="article row grid-right">
          <div class="col-md-10">
            <article class="content wrap" id="_content" data-uid="Lucene.Net.Codecs.Compressing">
  
  <h1 id="Lucene_Net_Codecs_Compressing" data-uid="Lucene.Net.Codecs.Compressing" class="text-break">Namespace Lucene.Net.Codecs.Compressing
  </h1>
  <div class="markdown level0 summary"><!--
 Licensed to the Apache Software Foundation (ASF) under one or more
 contributor license agreements.  See the NOTICE file distributed with
 this work for additional information regarding copyright ownership.
 The ASF licenses this file to You under the Apache License, Version 2.0
 (the "License"); you may not use this file except in compliance with
 the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->
<p>StoredFieldsFormat that allows cross-document and cross-field compression of stored fields.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="markdown level0 remarks"></div>
    <h3 id="classes">Classes
  </h3>
      <h4><a class="xref" href="Lucene.Net.Codecs.Compressing.CompressingStoredFieldsFormat.html">CompressingStoredFieldsFormat</a></h4>
      <section><p>A <a class="xref" href="Lucene.Net.Codecs.StoredFieldsFormat.html">StoredFieldsFormat</a> that is very similar to
<a class="xref" href="Lucene.Net.Codecs.Lucene40.Lucene40StoredFieldsFormat.html">Lucene40StoredFieldsFormat</a> but compresses documents in chunks in
order to improve the compression ratio.
<p>
For a chunk size of <code>chunkSize</code> bytes, this <a class="xref" href="Lucene.Net.Codecs.StoredFieldsFormat.html">StoredFieldsFormat</a>
does not support documents larger than (<code>2<sup>31</sup> - chunkSize</code>)
bytes. In case this is a problem, you should use another format, such as
<a class="xref" href="Lucene.Net.Codecs.Lucene40.Lucene40StoredFieldsFormat.html">Lucene40StoredFieldsFormat</a>.
<p>
For optimal performance, you should use a <a class="xref" href="Lucene.Net.Index.MergePolicy.html">MergePolicy</a> that returns
segments that have the biggest byte size first.
<p>
<div class="lucene-block lucene-experimental">This is a Lucene.NET EXPERIMENTAL API, use at your own risk</div></section>
      <h4><a class="xref" href="Lucene.Net.Codecs.Compressing.CompressingStoredFieldsIndexReader.html">CompressingStoredFieldsIndexReader</a></h4>
      <section><p>Random-access reader for <a class="xref" href="Lucene.Net.Codecs.Compressing.CompressingStoredFieldsIndexWriter.html">CompressingStoredFieldsIndexWriter</a>.
<p>
<div class="lucene-block lucene-internal">This is a Lucene.NET INTERNAL API, use at your own risk</div></section>
      <h4><a class="xref" href="Lucene.Net.Codecs.Compressing.CompressingStoredFieldsIndexWriter.html">CompressingStoredFieldsIndexWriter</a></h4>
      <section><p>Efficient index format for block-based <a class="xref" href="Lucene.Net.Codecs.Codec.html">Codec</a>s.
<p> this writer generates a file which can be loaded into memory using
memory-efficient data structures to quickly locate the block that contains
any document.
<p>In order to have a compact in-memory representation, for every block of
1024 chunks, this index computes the average number of bytes per
chunk and for every chunk, only stores the difference between
<ul></ul>
</p>
<p>Data is written as follows:</p>
<ul></ul>
<p>Notes</p>
<ul></ul></p>
<div class="lucene-block lucene-internal">This is a Lucene.NET INTERNAL API, use at your own risk</div></section>
      <h4><a class="xref" href="Lucene.Net.Codecs.Compressing.CompressingStoredFieldsReader.html">CompressingStoredFieldsReader</a></h4>
      <section><p><a class="xref" href="Lucene.Net.Codecs.StoredFieldsReader.html">StoredFieldsReader</a> impl for <a class="xref" href="Lucene.Net.Codecs.Compressing.CompressingStoredFieldsFormat.html">CompressingStoredFieldsFormat</a>.
<p>
<div class="lucene-block lucene-experimental">This is a Lucene.NET EXPERIMENTAL API, use at your own risk</div></section>
      <h4><a class="xref" href="Lucene.Net.Codecs.Compressing.CompressingStoredFieldsWriter.html">CompressingStoredFieldsWriter</a></h4>
      <section><p><a class="xref" href="Lucene.Net.Codecs.StoredFieldsWriter.html">StoredFieldsWriter</a> impl for <a class="xref" href="Lucene.Net.Codecs.Compressing.CompressingStoredFieldsFormat.html">CompressingStoredFieldsFormat</a>.
<p>
<div class="lucene-block lucene-experimental">This is a Lucene.NET EXPERIMENTAL API, use at your own risk</div></section>
      <h4><a class="xref" href="Lucene.Net.Codecs.Compressing.CompressingTermVectorsFormat.html">CompressingTermVectorsFormat</a></h4>
      <section><p>A <a class="xref" href="Lucene.Net.Codecs.TermVectorsFormat.html">TermVectorsFormat</a> that compresses chunks of documents together in
order to improve the compression ratio.
<p>
<div class="lucene-block lucene-experimental">This is a Lucene.NET EXPERIMENTAL API, use at your own risk</div></section>
      <h4><a class="xref" href="Lucene.Net.Codecs.Compressing.CompressingTermVectorsReader.html">CompressingTermVectorsReader</a></h4>
      <section><p><a class="xref" href="Lucene.Net.Codecs.TermVectorsReader.html">TermVectorsReader</a> for <a class="xref" href="Lucene.Net.Codecs.Compressing.CompressingTermVectorsFormat.html">CompressingTermVectorsFormat</a>.
<p>
<div class="lucene-block lucene-experimental">This is a Lucene.NET EXPERIMENTAL API, use at your own risk</div></section>
      <h4><a class="xref" href="Lucene.Net.Codecs.Compressing.CompressingTermVectorsWriter.html">CompressingTermVectorsWriter</a></h4>
      <section><p><a class="xref" href="Lucene.Net.Codecs.TermVectorsWriter.html">TermVectorsWriter</a> for <a class="xref" href="Lucene.Net.Codecs.Compressing.CompressingTermVectorsFormat.html">CompressingTermVectorsFormat</a>.
<p>
<div class="lucene-block lucene-experimental">This is a Lucene.NET EXPERIMENTAL API, use at your own risk</div></section>
      <h4><a class="xref" href="Lucene.Net.Codecs.Compressing.CompressionMode.html">CompressionMode</a></h4>
      <section><p>A compression mode. Tells how much effort should be spent on compression and
decompression of stored fields.
<p>
<div class="lucene-block lucene-experimental">This is a Lucene.NET EXPERIMENTAL API, use at your own risk</div></section>
      <h4><a class="xref" href="Lucene.Net.Codecs.Compressing.Compressor.html">Compressor</a></h4>
      <section><p>A data compressor.</p>
</section>
      <h4><a class="xref" href="Lucene.Net.Codecs.Compressing.Decompressor.html">Decompressor</a></h4>
      <section><p>A decompressor.</p>
</section>
      <h4><a class="xref" href="Lucene.Net.Codecs.Compressing.LZ4.html">LZ4</a></h4>
      <section><p>LZ4 compression and decompression routines.
<p>
<a href="http://code.google.com/p/lz4/">http://code.google.com/p/lz4/</a>
<a href="http://fastcompression.blogspot.fr/p/lz4.html">http://fastcompression.blogspot.fr/p/lz4.html</a></p>
</section>
      <h4><a class="xref" href="Lucene.Net.Codecs.Compressing.LZ4.HashTable.html">LZ4.HashTable</a></h4>
      <section></section>
      <h4><a class="xref" href="Lucene.Net.Codecs.Compressing.LZ4.HCHashTable.html">LZ4.HCHashTable</a></h4>
      <section></section>
      <h4><a class="xref" href="Lucene.Net.Codecs.Compressing.LZ4.Match.html">LZ4.Match</a></h4>
      <section></section>
</article>
          </div>
          
          <div class="hidden-sm col-md-2" role="complementary">
            <div class="sideaffix">
              <div class="contribution">
                <ul class="nav">
                  <li>
                    <a href="https://github.com/apache/lucenenet/blob/docs/4.8.0-beta00013/src/Lucene.Net/Codecs/Compressing/package.md/#L2" class="contribution-link">Improve this Doc</a>
                  </li>
                </ul>
              </div>
              <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
              <!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
              </nav>
            </div>
          </div>
        </div>
      </div>
      
      <footer>
        <div class="grad-bottom"></div>
        <div class="footer">
          <div class="container">
            <span class="pull-right">
              <a href="#top">Back to top</a>
            </span>
            Copyright © 2020 The Apache Software Foundation, Licensed under the <a href='http://www.apache.org/licenses/LICENSE-2.0' target='_blank'>Apache License, Version 2.0</a><br> <small>Apache Lucene.Net, Lucene.Net, Apache, the Apache feather logo, and the Apache Lucene.Net project logo are trademarks of The Apache Software Foundation. <br>All other marks mentioned may be trademarks or registered trademarks of their respective owners.</small>
            
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.js"></script>
    <script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/main.js"></script>
  </body>
</html>
