<!DOCTYPE html>
<html>
    <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon">
    <link rel="icon" href="/favicon.ico" type="image/x-icon">

    <title>Documentation</title>

    <!-- Bootstrap core CSS -->
    <link href="/assets/css/bootstrap.min.css" rel="stylesheet">
    <!-- Bootstrap theme -->
    <link href="/assets/css/bootstrap-theme.min.css" rel="stylesheet">

    <!-- Custom styles for this template -->
    <link rel="stylesheet" href="http://fortawesome.github.io/Font-Awesome/assets/font-awesome/css/font-awesome.css">
    <link href="/css/style.css" rel="stylesheet">
    <link href="/assets/css/owl.theme.css" rel="stylesheet">
    <link href="/assets/css/owl.carousel.css" rel="stylesheet">
    <script type="text/javascript" src="/assets/js/jquery.min.js"></script>
    <script type="text/javascript" src="/assets/js/bootstrap.min.js"></script>
    <script type="text/javascript" src="/assets/js/owl.carousel.min.js"></script>
    <script type="text/javascript" src="/assets/js/storm.js"></script>
    <!-- Just for debugging purposes. Don't actually copy these 2 lines! -->
    <!--[if lt IE 9]><script src="../../assets/js/ie8-responsive-file-warning.js"></script><![endif]-->
    
    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
    <!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
  </head>


  <body>
    <header>
  <div class="container-fluid">
      <div class="row">
          <div class="col-md-10">
              <a href="/index.html"><img src="/images/logo.png" class="logo" /></a>
            </div>
            <div class="col-md-2">
              <a href="/downloads.html" class="btn-std btn-block btn-download">Download</a>
            </div>
        </div>
    </div>
</header>
<!--Header End-->
<!--Navigation Begin-->
<div class="navbar" role="banner">
  <div class="container-fluid">
      <div class="navbar-header">
          <button class="navbar-toggle" type="button" data-toggle="collapse" data-target=".bs-navbar-collapse">
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
            </button>
        </div>
        <nav class="collapse navbar-collapse bs-navbar-collapse" role="navigation">
          <ul class="nav navbar-nav">
              <li><a href="/index.html" id="home">Home</a></li>
                <li><a href="/getting-help.html" id="getting-help">Getting Help</a></li>
                <li><a href="/about/integrates.html" id="project-info">Project Information</a></li>
                <li><a href="/documentation.html" id="documentation">Documentation</a></li>
                <li><a href="/talksAndVideos.html">Talks and Slideshows</a></li>
                <li class="dropdown">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown" id="contribute">Community <b class="caret"></b></a>
                    <ul class="dropdown-menu">
                        <li><a href="/contribute/Contributing-to-Storm.html">Contributing</a></li>
                        <li><a href="/contribute/People.html">People</a></li>
                        <li><a href="/contribute/BYLAWS.html">ByLaws</a></li>
                    </ul>
                </li>
                <li><a href="/2015/11/05/storm096-released.html" id="news">News</a></li>
            </ul>
        </nav>
    </div>
</div>



    <div class="container-fluid">
    <h1 class="page-title">Documentation</h1>
          <div class="row">
           	<div class="col-md-12">
	             <!--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-->

	          </div>
	       </div>
	  </div>
<footer>
    <div class="container-fluid">
        <div class="row">
            <div class="col-md-3">
                <div class="footer-widget">
                    <h5>Meetups</h5>
                    <ul class="latest-news">
                        
                        <li><a href="http://www.meetup.com/Apache-Storm-Apache-Kafka/">Apache Storm & Apache Kafka</a> <span class="small">(Sunnyvale, CA)</span></li>
                        
                        <li><a href="http://www.meetup.com/Apache-Storm-Kafka-Users/">Apache Storm & Kafka Users</a> <span class="small">(Seattle, WA)</span></li>
                        
                        <li><a href="http://www.meetup.com/New-York-City-Storm-User-Group/">NYC Storm User Group</a> <span class="small">(New York, NY)</span></li>
                        
                        <li><a href="http://www.meetup.com/Bay-Area-Stream-Processing">Bay Area Stream Processing</a> <span class="small">(Emeryville, CA)</span></li>
                        
                        <li><a href="http://www.meetup.com/Boston-Storm-Users/">Boston Realtime Data</a> <span class="small">(Boston, MA)</span></li>
                        
                        <li><a href="http://www.meetup.com/storm-london">London Storm User Group</a> <span class="small">(London, UK)</span></li>
                        
                        <!-- <li><a href="http://www.meetup.com/Apache-Storm-Kafka-Users/">Seatle, WA</a> <span class="small">(27 Jun 2015)</span></li> -->
                    </ul>
                </div>
            </div>
            <div class="col-md-3">
                <div class="footer-widget">
                    <h5>About Storm</h5>
                    <p>Storm integrates with any queueing system and any database system. Storm's spout abstraction makes it easy to integrate a new queuing system. Likewise, integrating Storm with database systems is easy.</p>
               </div>
            </div>
            <div class="col-md-3">
                <div class="footer-widget">
                    <h5>First Look</h5>
                    <ul class="footer-list">
                        <li><a href="/documentation/Rationale.html">Rationale</a></li>
                        <li><a href="/tutorial.html">Tutorial</a></li>
                        <li><a href="/documentation/Setting-up-development-environment.html">Setting up development environment</a></li>
                        <li><a href="/documentation/Creating-a-new-Storm-project.html">Creating a new Storm project</a></li>
                    </ul>
                </div>
            </div>
            <div class="col-md-3">
                <div class="footer-widget">
                    <h5>Documentation</h5>
                    <ul class="footer-list">
                        <li><a href="/doc-index.html">Index</a></li>
                        <li><a href="/documentation.html">Manual</a></li>
                        <li><a href="https://storm.apache.org/javadoc/apidocs/index.html">Javadoc</a></li>
                        <li><a href="/documentation/FAQ.html">FAQ</a></li>
                    </ul>
                </div>
            </div>
        </div>
        <hr/>
        <div class="row">   
            <div class="col-md-12">
                <p align="center">Copyright © 2015 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved. 
                    <br>Apache Storm, Apache, the Apache feather logo, and the Apache Storm project logos are trademarks of The Apache Software Foundation. 
                    <br>All other marks mentioned may be trademarks or registered trademarks of their respective owners.</p>
            </div>
        </div>
    </div>
</footer>
<!--Footer End-->
<!-- Scroll to top -->
<span class="totop"><a href="#"><i class="fa fa-angle-up"></i></a></span> 

</body>

</html>

