title: How can I see the current output of a running Storm topology?
body: <p>Currently learning on how to use Storm (<em>version 2.1.0</em>), I am a bit confused on a specific aspect of this data streaming processing (DSP) engine: <em><strong>How is output data handled?</strong></em> Tutorials provide good explanations on system setup and running our first application. Unfortunately, I didn't find a page providing details on results generated by a topology.</p>
  
  <p>With DSP applications, there are no <em>final output</em> because input data is a continuously incoming stream of data (or maybe we can say there is a final output when application is stopped). What I would like is to be able to see the state of current output (the actual output data generated at current time) of a running topology.</p>
  
  <p>I'm able to run <a href="https://github.com/apache/storm/blob/master/examples/storm-starter/src/jvm/org/apache/storm/starter/WordCountTopology.java" rel="nofollow noreferrer">WordCountTopology</a>. I understand the output of this topology is generated by the following snippet of code:</p>
  
  <pre><code>public static class WordCount extends BaseBasicBolt {
      Map&lt;String, Integer&gt; counts = new HashMap&lt;String, Integer&gt;();
  
      @Override
      public void execute(Tuple tuple, BasicOutputCollector collector) {
          String word = tuple.getString(0);
          Integer count = counts.get(word);
          if (count == null) {
              count = 0;
          }
          count++;
          counts.put(word, count);
          collector.emit(new Values(word, count));
      }
  
      @Override
      public void declareOutputFields(OutputFieldsDeclarer declarer) {
          declarer.declare(new Fields("word", "count"));
      }
  }
  </code></pre>
  
  <p>My misunderstanding is on the location of the <code>&lt;"word":string, "count":int&gt;</code> output. Is it only in memory, written in a database somewhere, written in a file?</p>
  
  <p>Going further with this question: what are the existing possibilities for storing in-progress output data? What is the "<em>good way</em>" of handling such data?</p>
  
  <p>I hope my question is not too naive. And thanks to the StackOverflow community for always providing good help.</p>