---
layout: docpage

title: "Documentation"

is_homepage: false
is_sphinx_doc: true

doc-title: "Third-Party Plugins"
doc-header-links: '
  <link rel="top" title="Apache Cassandra Documentation v4.0-alpha4" href="../index.html"/>
      <link rel="next" title="Reporting Bugs" href="../bugs.html"/>
      <link rel="prev" title="Frequently Asked Questions" href="../faq/index.html"/>
'
doc-search-path: "../search.html"

extra-footer: '
<script type="text/javascript">
    var DOCUMENTATION_OPTIONS = {
      URL_ROOT:    "",
      VERSION:     "",
      COLLAPSE_INDEX: false,
      FILE_SUFFIX: ".html",
      HAS_SOURCE:  false,
      SOURCELINK_SUFFIX: ".txt"
    };
</script>
'

---
<div class="container-fluid">
  <div class="row">
    <div class="col-md-3">
      <div class="doc-navigation">
        <div class="doc-menu" role="navigation">
          <div class="navbar-header">
            <button type="button" class="pull-left navbar-toggle" data-toggle="collapse" data-target=".sidebar-navbar-collapse">
              <span class="sr-only">Toggle navigation</span>
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
            </button>
          </div>
          <div class="navbar-collapse collapse sidebar-navbar-collapse">
            <form id="doc-search-form" class="navbar-form" action="../search.html" method="get" role="search">
              <div class="form-group">
                <input type="text" size="30" class="form-control input-sm" name="q" placeholder="Search docs">
                <input type="hidden" name="check_keywords" value="yes" />
                <input type="hidden" name="area" value="default" />
              </div>
            </form>
            
            
            
            <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../getting_started/index.html">Getting Started</a></li>
<li class="toctree-l1"><a class="reference internal" href="../new/index.html">New Features in Apache Cassandra 4.0</a></li>
<li class="toctree-l1"><a class="reference internal" href="../architecture/index.html">Architecture</a></li>
<li class="toctree-l1"><a class="reference internal" href="../cql/index.html">The Cassandra Query Language (CQL)</a></li>
<li class="toctree-l1"><a class="reference internal" href="../data_modeling/index.html">Data Modeling</a></li>
<li class="toctree-l1"><a class="reference internal" href="../configuration/index.html">Configuring Cassandra</a></li>
<li class="toctree-l1"><a class="reference internal" href="../operating/index.html">Operating Cassandra</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tools/index.html">Cassandra Tools</a></li>
<li class="toctree-l1"><a class="reference internal" href="../troubleshooting/index.html">Troubleshooting</a></li>
<li class="toctree-l1"><a class="reference internal" href="../development/index.html">Contributing to Cassandra</a></li>
<li class="toctree-l1"><a class="reference internal" href="../faq/index.html">Frequently Asked Questions</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">Third-Party Plugins</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#capi-rowcache">CAPI-Rowcache</a></li>
<li class="toctree-l2"><a class="reference internal" href="#stratios-cassandra-lucene-index">Stratio’s Cassandra Lucene Index</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../bugs.html">Reporting Bugs</a></li>
<li class="toctree-l1"><a class="reference internal" href="../contactus.html">Contact us</a></li>
</ul>

            
            
          </div><!--/.nav-collapse -->
        </div>
      </div>
    </div>
    <div class="col-md-8">
      <div class="content doc-content">
        <div class="content-container">
          
  <div class="section" id="third-party-plugins">
<h1>Third-Party Plugins<a class="headerlink" href="#third-party-plugins" title="Permalink to this headline">¶</a></h1>
<p>Available third-party plugins for Apache Cassandra</p>
<div class="section" id="capi-rowcache">
<h2>CAPI-Rowcache<a class="headerlink" href="#capi-rowcache" title="Permalink to this headline">¶</a></h2>
<p>The Coherent Accelerator Process Interface (CAPI) is a general term for the infrastructure of attaching a Coherent accelerator to an IBM POWER system. A key innovation in IBM POWER8’s open architecture is the CAPI. It provides a high bandwidth, low latency path between external devices, the POWER8 core, and the system’s open memory architecture. IBM Data Engine for NoSQL is an integrated platform for large and fast growing NoSQL data stores. It builds on the CAPI capability of POWER8 systems and provides super-fast access to large flash storage capacity and addresses the challenges associated with typical x86 server based scale-out deployments.</p>
<p>The official page for the <a class="reference external" href="https://github.com/ppc64le/capi-rowcache">CAPI-Rowcache plugin</a> contains further details how to build/run/download the plugin.</p>
</div>
<div class="section" id="stratios-cassandra-lucene-index">
<h2>Stratio’s Cassandra Lucene Index<a class="headerlink" href="#stratios-cassandra-lucene-index" title="Permalink to this headline">¶</a></h2>
<p>Stratio’s Lucene index is a Cassandra secondary index implementation based on <a class="reference external" href="http://lucene.apache.org/">Apache Lucene</a>. It extends Cassandra’s functionality to provide near real-time distributed search engine capabilities such as with ElasticSearch or <a class="reference external" href="http://lucene.apache.org/solr/">Apache Solr</a>, including full text search capabilities, free multivariable, geospatial and bitemporal search, relevance queries and sorting based on column value, relevance or distance. Each node indexes its own data, so high availability and scalability is guaranteed.</p>
<p>The official Github repository <a class="reference external" href="http://www.github.com/stratio/cassandra-lucene-index">Cassandra Lucene Index</a> contains everything you need to build/run/configure the plugin.</p>
</div>
</div>



          
          <div class="doc-prev-next-links" role="navigation" aria-label="footer navigation">
            
            <a href="../bugs.html" class="btn btn-default pull-right " role="button" title="Reporting Bugs" accesskey="n">Next <span class="glyphicon glyphicon-circle-arrow-right" aria-hidden="true"></span></a>
            
            
            <a href="../faq/index.html" class="btn btn-default" role="button" title="Frequently Asked Questions" accesskey="p"><span class="glyphicon glyphicon-circle-arrow-left" aria-hidden="true"></span> Previous</a>
            
          </div>
          
        </div>
      </div>
    </div>
  </div>
</div>