---
layout: default
title: Documentation
---
<!--Content Begin-->
<div class="content">
    <div class="container-fluid">
        <div class="row">
            <div class="col-md-12">
                <div class="faq">
                    <ul class="nav nav-tabs" role="tablist">
                        <li role="presentation" class="active"><a href="#basic" aria-controls="basic" role="tab" data-toggle="tab">Basics of Storm</a></li>
                        <li role="presentation"><a href="#trident" aria-controls="trident" role="tab" data-toggle="tab">Trident</a></li>
                        <li role="presentation"><a href="#setup" aria-controls="setup" role="tab" data-toggle="tab">Setup and deploying</a></li>
                        <li role="presentation"><a href="#integration" aria-controls="integration" role="tab" data-toggle="tab">Integration</a></li>
                        <li role="presentation"><a href="#intermediate" aria-controls="intermediate" role="tab" data-toggle="tab">Intermediate</a></li>
                        <li role="presentation"><a href="#advance" aria-controls="advance" role="tab" data-toggle="tab">Advanced</a></li>
                    </ul>
                    <div class="tab-content">
                        <div role="tabpanel" class="tab-pane active" id="basic">
                            <ul>
                                <li><a href="https://storm.apache.org/javadoc/apidocs/index.html" target="_blank">Javadoc</a></li>
                                <li><a href="/tutorial.html">Tutorial</a></li>
                                <li><a href="/documentation/Concepts.html">Concepts</a></li>
                                <li><a href="/documentation/Configuration.html">Configuration</a></li>
                                <li><a href="/documentation/Guaranteeing-message-processing.html">Guaranteeing message processing</a></li>
                                <li><a href="/documentation/Fault-tolerance.html">Fault-tolerance</a></li>
                                <li><a href="/documentation/Command-line-client.html">Command line client</a></li>
                                <li><a href="/documentation/Understanding-the-parallelism-of-a-Storm-topology.html">Understanding the parallelism of a Storm topology</a></li>
                                <li><a href="/documentation/FAQ.html">FAQ</a></li>
                            </ul>
                        </div>
                        <div role="tabpanel" class="tab-pane" id="trident">
                            <p>Trident is an alternative interface to Storm. It provides exactly-once processing, "transactional" datastore persistence, and a set of common stream analytics operations.</p>
                            <ul>
                                <li><a href="documentation/Trident-tutorial.html">Trident Tutorial</a> -- basic concepts and walkthrough</li>
                                <li><a href="documentation/Trident-API-Overview.html">Trident API Overview</a> -- operations for transforming and orchestrating data</li>
                                <li><a href="documentation/Trident-state.html">Trident State</a> -- exactly-once processing and fast, persistent aggregation</li>
                                <li><a href="documentation/Trident-spouts.html">Trident spouts</a> -- transactional and non-transactional data intake</li>
                            </ul>
                        </div>
                        <div role="tabpanel" class="tab-pane" id="setup">
                            <ul>
                                <li><a href="documentation/Setting-up-a-Storm-cluster.html">Setting up a Storm cluster</a></li>
                                <li><a href="documentation/Local-mode.html">Local mode</a></li>
                                <li><a href="documentation/Troubleshooting.html">Troubleshooting</a></li>
                                <li><a href="documentation/Running-topologies-on-a-production-cluster.html">Running topologies on a production cluster</a></li>
                                <li><a href="documentation/Maven.html">Building Storm</a> with Maven</li>
                            </ul>
                        </div>
                        <div role="tabpanel" class="tab-pane" id="integration">
                            <p>The following modules are included in the Apache Storm distribution and are not required for storm to operate,
                            but are useful for extending Storm in order to provide additional functionality such as integration with other
                            technologies frequently used in combination with Storm.</p>
                            <ul>
                                <li><a href="documentation/storm-kafka.html">Kafka</a></li>
                                <li><a href="documentation/storm-hdfs.html">HDFS</a></li>
                                <li><a href="documentation/storm-hbase.html">HBase</a></li>
                                <li><a href="documentation/storm-hive.html">Hive</a></li>
                                <li><a href="documentation/storm-jdbc.html">JDBC</a></li>
                                <li><a href="documentation/storm-redis.html">Redis</a></li>
                                <li><a href="documentation/storm-solr.html">Solr</a></li>
                                <li><a href="documentation/storm-eventhubs.html">Azure EventHubs</a></li>
                                <li><a href="documentation/flux.html">Flux</a> (declarative wiring/configuration of Topologies)</li>
                                <li><a href="documentation/storm-sql.html">SQL</a> (writing topologies in SQL)</li>
                            </ul>
                        </div>
                        <div role="tabpanel" class="tab-pane" id="intermediate">
                            <ul>
                                <li><a href="documentation/Serialization.html">Serialization</a></li>
                                <li><a href="documentation/Common-patterns.html">Common patterns</a></li>
                                <li><a href="documentation/Clojure-DSL.html">Clojure DSL</a></li>
                                <li><a href="documentation/Using-non-JVM-languages-with-Storm.html">Using non-JVM languages with Storm</a></li>
                                <li><a href="documentation/Distributed-RPC.html">Distributed RPC</a></li>
                                <li><a href="documentation/Transactional-topologies.html">Transactional topologies</a></li>
                                <li><a href="documentation/Kestrel-and-Storm.html">Kestrel and Storm</a></li>
                                <!--<li><a href="javascript:void(0);">Direct groupings</a></li>-->
                                <li><a href="documentation/Hooks.html">Hooks</a></li>
                                <li><a href="documentation/Metrics.html">Metrics</a></li>
                                <li><a href="documentation/Lifecycle-of-a-topology.html">Lifecycle of a trident tuple</a></li>
                            </ul>
                        </div>
                        <div role="tabpanel" class="tab-pane" id="advance">
                            <ul>
                                <li><a href="documentation/Defining-a-non-jvm-language-dsl-for-storm.html">Defining a non-JVM language DSL for Storm</a></li>
                                <li><a href="documentation/Multilang-protocol.html">Multilang protocol</a> (how to provide support for another language)</li>
                                <li><a href="documentation/Implementation-docs.html">Implementation docs</a></li>
                            </ul>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
<!--Content End-->
