﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>split | Apache Lucene.NET 4.8.0-beta00008 Documentation </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="split | Apache Lucene.NET 4.8.0-beta00008 Documentation ">
    <meta name="generator" content="docfx 2.50.0.0">
    
    <link rel="shortcut icon" href="../../logo/favicon.ico">
    <link rel="stylesheet" href="../../styles/docfx.vendor.css">
    <link rel="stylesheet" href="../../styles/docfx.css">
    <link rel="stylesheet" href="../../styles/main.css">
    <meta property="docfx:navrel" content="../../toc.html">
    <meta property="docfx:tocrel" content="../toc.html">
    
    <meta property="docfx:rel" content="../../">
    
  </head>
  <body data-spy="scroll" data-target="#affix" data-offset="120">
    <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="../../index.html">
                <img id="logo" class="svg" src="../../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" id="breadcrumb">
            <ul class="breadcrumb">
              <li></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="">

  <h1 id="split">split</h1>


<h3 id="name">Name</h3>
<p><code>index-split</code> - Splits an index into multiple equal parts.</p>
<h3 id="synopsis">Synopsis</h3>
<p><code>lucene index split &lt;OUTPUT_DIRECTORY&gt; &lt;INPUT_DIRECTORY&gt;[ &lt;INPUT_DIRECTORY_2&gt;...] [-n|--number-of-parts] [-s|--sequential] [?|-h|--help]</code></p>
<h3 id="description">Description</h3>
<p>Splits the input index into multiple equal parts. The method employed here uses <code>IndexWriter.AddIndexes(IndexReader[])</code> where the input data comes from the input index with artificially applied deletes to the document ids that fall outside the selected partition.</p>
<p>Deletes are only applied to a buffered list of deleted documents and don&#39;t affect the source index. This tool works also with read-only indexes.</p>
<p>The disadvantage of this tool is that source index needs to be read as many times as there are parts to be created. The multiple passes may be slow.</p>
<blockquote><p><strong>NOTE:</strong> This tool is unaware of documents added automatically via <code>IndexWriter.AddDocuments(IEnumerable&amp;lt;IEnumerable&amp;lt;IIndexableField&amp;gt;&amp;gt;, Analyzer)</code> or <code>IndexWriter.UpdateDocuments(Term, IEnumerable&amp;lt;IEnumerable&amp;lt;IIndexableField&amp;gt;&amp;gt;, Analyzer)</code>, which means it can easily break up such document groups.</p>
</blockquote>
<h3 id="arguments">Arguments</h3>
<p><code>OUTPUT_DIRECTORY</code></p>
<p>Path to output directory to contain partial indexes.</p>
<p><code>INPUT_DIRECTORY, INPUT_DIRECTORY_2</code></p>
<p>The path of the source index, which can have deletions and can have multiple segments (or multiple readers). Multiple values can be supplied separated by a space.</p>
<h3 id="options">Options</h3>
<p><code>?|-h|--help</code></p>
<p>Prints out a short help for the command.</p>
<p><code>-n|--number-of-parts &lt;NUMBER&gt;</code></p>
<p>The number of parts (output indices) to produce. If omitted, defaults to 2.</p>
<p><code>-s|--sequential</code></p>
<p>Sequential doc-id range split (default is round-robin).</p>
<h3 id="example">Example</h3>
<p>Split the index located at <code>X:\old-index\</code> sequentially, placing the resulting 2 indices into the <code>X:\new-index\</code> directory:</p>
<p><code>lucene index split X:\new-index X:\old-index --sequential</code></p>
<p>Split the index located at <code>T:\in\</code> into 4 parts and place them into the <code>T:\out\</code> directory:</p>
<p><code>lucene index split T:\out T:\in -n 4</code></p>
</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-beta00008/src/dotnet/tools/lucene-cli/docs/index/split.md/#L1" 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 Licensed to the Apache Software Foundation (ASF)
            
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="../../styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="../../styles/docfx.js"></script>
    <script type="text/javascript" src="../../styles/main.js"></script>
  </body>
</html>
