<!DOCTYPE html><html lang=""><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Apache Heron · A realtime, distributed, fault-tolerant stream processing engine</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="A realtime, distributed, fault-tolerant stream processing engine"/><meta property="og:title" content="Apache Heron · A realtime, distributed, fault-tolerant stream processing engine"/><meta property="og:type" content="website"/><meta property="og:url" content="https://heron.apache.org/"/><meta property="og:description" content="A realtime, distributed, fault-tolerant stream processing engine"/><meta property="og:image" content="https://heron.apache.org/img/undraw_online.svg"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://heron.apache.org/img/undraw_tweetstorm.svg"/><link rel="shortcut icon" href="/img/favicon-32x32.png"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/default.min.css"/><link rel="alternate" type="application/atom+xml" href="https://heron.apache.org/blog/atom.xml" title="Apache Heron Blog ATOM Feed"/><link rel="alternate" type="application/rss+xml" href="https://heron.apache.org/blog/feed.xml" title="Apache Heron Blog RSS Feed"/><script>
              (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
              (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
              m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
              })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

              ga('create', 'UA-198017384-1', 'auto');
              ga('send', 'pageview');
            </script><script type="text/javascript" src="https://buttons.github.io/buttons.js"></script><script type="text/javascript" src="/js/custom.js"></script><script type="text/javascript" src="/js/fix-location.js"></script><link rel="stylesheet" href="/css/main.css"/><script src="/js/codetabs.js"></script></head><body><div class="fixedHeaderContainer"><div class="headerWrapper wrapper"><header><a href="/"><img class="logo" src="/img/HeronTextLogo-small.png" alt="Apache Heron"/><h2 class="headerTitleWithLogo">Apache Heron</h2></a><a href="/versions"><h3>0.20.5-incubating</h3></a><div class="navigationWrapper navigationSlider"><nav class="slidingNav"><ul class="nav-site nav-site-internal"><li class=""><a href="/api/java" target="_self">Javadocs</a></li><li class=""><a href="/api/python" target="_self">Pydocs</a></li><li class=""><a href="/docs/getting-started-local-single-node" target="_self">Docs</a></li><li class=""><a href="/download" target="_self">Downloads</a></li><li class=""><a href="#community" target="_self">Community</a></li><li class=""><a href="/blog/" target="_self">Blog</a></li><li class=""><a href="#apache" target="_self">Apache</a></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container mainContainer documentContainer postContainer"><div class="wrapper"><div class="post"><header class="postHeader"><h1>Resources</h1><hr/></header><h2>Articles</h2><table class="versions"><thead><tr><th>Link</th></tr></thead><tbody><tr><td><a href="https://www.springer.com/us/book/9783030600938">Heron Streaming: Fundamentals, Applications, Operations, and Insights</a></td></tr><tr><td><a href="http://sites.computer.org/debull/A15dec/p15.pdf">Streaming@Twitter - Bulletin of the IEEE Computer Society Technical Committee on Data Engineering</a></td></tr><tr><td><a href="http://dl.acm.org/citation.cfm?id=2595641">Twitter Heron: Stream Processing at Scale - SIGMOD’15</a></td></tr><tr><td><a href="http://dl.acm.org/citation.cfm?id=2595641">Storm@Twitter - SIGMOD&#x27;14</a></td></tr></tbody></table><h2>Presentations</h2><table class="versions"><thead><tr><th>Forum</th><th>Data</th><th>Presenter</th><th>Link</th></tr></thead><tbody><tr><td><a href="">Twitter</a></td><td>April 2016</td><td>Maosong Fu</td><td><a href="https://m.youtube.com/watch?v=ua0ufmr9sQI&amp;feature=youtu.be">Twitter Heron on Apache Aurora - #compute event @Twitter</a></td></tr><tr><td><a href="">Twitter</a></td><td>May 2015</td><td></td><td><a href="http://dl.acm.org/citation.cfm?id=2595641">Twitter Heron: Stream Processing at Scale - SIGMOD’15</a></td></tr><tr><td><a href="https://qconferences.com/">QCon</a></td><td>April 2016</td><td>Karthik Ramasamy</td><td><a href="http://www.infoq.com/presentations/twitter-heron">Flying Faster with Heron - InfoQ</a></td></tr><tr><td><a href="https://www.youtube.com/channel/UCd9I8ZkgoR1d7GeSj_wi_LQ">Data @ Scale</a></td><td>September 2015</td><td>Karthik Ramasamy</td><td><a href="https://www.youtube.com/watch?v=pUaFOuGgmco">Twitter Heron: Stream Processing at Scale - @Scale</a></td></tr><tr><td><a href="https://www.youtube.com/channel/UCd9I8ZkgoR1d7GeSj_wi_LQ">Data @ Scale</a></td><td>June 2015</td><td>Karthik Ramasamy</td><td><a href="https://player.oreilly.com/videos/9781491927977?login=true">Stream Processing and Anomaly Detection - Velocity O’Reilly - Note: requires O’Reilly login</a></td></tr><tr><td><a href="hhttps://www.youtube.com/channel/UC7BjFZywGHiqWdEF7SnQ7hQ">Google</a></td><td>October 2018</td><td>Josh Fischer</td><td><a href="https://www.youtube.com/watch?v=yBTSfA4YDtY&amp;t">Building Apache Heron - BazelCon 2018</a></td></tr></tbody></table><h2>Blogs</h2><table class="versions"><thead><tr><th>Forum</th><th>Data</th><th>Presenter</th><th>Link</th></tr></thead><tbody><tr><td><a href="https://blog.twitter.com/engineering/">Twitter Engineering blog</a></td><td>Feb 2018</td><td>Maosong Fu</td><td><a href="https://blog.twitter.com/engineering/en_us/topics/open-source/2018/heron-donated-to-apache-software-foundation.html">Leaving the Nest: Heron donated to Apache Software Foundation</a></td></tr><tr><td><a href="https://blog.twitter.com/engineering/">Twitter Engineering blog</a></td><td>May 2016</td><td>Karthik Ramasamy</td><td><a href="https://blog.twitter.com/2016/open-sourcing-twitter-heron">Open Sourcing Twitter Heron</a></td></tr><tr><td><a href="https://blog.twitter.com/engineering/">Twitter Engineering blog</a></td><td>June 2015</td><td>Karthik Ramasamy</td><td><a href="https://blog.twitter.com/2016/open-sourcing-twitter-heron">Flying Faster with Twitter Heron</a></td></tr><tr><td><a href="http://streamanalytics.blogspot.com/">Streamanalytics</a></td><td>June 2016</td><td>Supun Kamburugamuve</td><td><a href="http://streamanalytics.blogspot.com/2016/06/deploying-heron-on-cluster-of-machines.html">Deploying Heron on a Cluster of Machines with Apache Aurora</a></td></tr><tr><td><a href="http://pulasthisupun.blogspot.com/"></a></td><td>June 2016</td><td>Pulasthi Supun</td><td><a href="http://pulasthisupun.blogspot.com/2016/06/setting-up-heron-cluster-with-apache.html">Setting up Heron Locally with Apache Aurora</a></td></tr><tr><td><a href="https://1904labs.com/">1904Labs</a></td><td>Feb 2018</td><td>Josh Fischer</td><td><a href="https://1904labs.com/2018/02/14/introducing-herons-eco-flexible-way-manage-topologies/">Introducing Heron’s ECO; A Flexible Way To Manage Topologies</a></td></tr><tr><td><a href="https://www.twitter.com/">Twitter University</a></td><td>May 2016</td><td>Arun Kejariwal</td><td><a href="http://www.slideshare.net/arunkejariwal/real-time-analytics-algorithms-and-systems">Real-Time Analytics: Algorithms and Systems - Twitter University</a></td></tr><tr><td><a href="https://www.oreilly.com/">O’Reilly</a></td><td>June 2015</td><td>Arun Kejariwal</td><td><a href="http://www.slideshare.net/arunkejariwal/velocity-2015final">Stream Processing and Anomaly Detection - Velocity O’Reilly</a></td></tr></tbody></table><h2>Press</h2><table class="versions"><thead><tr><th>Data</th><th>Presenter</th><th>Link</th></tr></thead><tbody><tr><td>June 2016</td><td>BenZinga </td><td><a href="http://www.benzinga.com/tech/16/06/8119962/heron-twitters-data-streaming-platform-has-been-open-sourced">Heron, Twitter&#x27;s Data Streaming Platform, Has Been Open Sourced</a></td></tr><tr><td>June 2016</td><td>Forbes</td><td><a href="http://www.forbes.com/sites/adrianbridgwater/2016/06/16/twitter-open-sources-heron-data-streaming-for-dummies/#6f8984319b50">Twitter Open Sources Heron -- Data Streaming For Dummies</a></td></tr><tr><td>May 2016</td><td>All Things Hadoop</td><td><a href="https://allthingshadoop.com/2016/05/30/getting-started-with-heron-on-apache-mesos-and-apache-kafka/">Getting Started with Heron on Apache Mesos and Apache Kafka</a></td></tr><tr><td>May 2016</td><td>VentureBeat</td><td><a href="http://venturebeat.com/2016/05/25/twitter-open-sources-heron-its-real-time-stream-processing-engine/">Twitter open-sources Heron, its real-time stream-processing engine</a></td></tr><tr><td>June 2015</td><td>Forbes</td><td><a href="http://www.forbes.com/sites/janakirammsv/2015/06/08/twitters-heron-will-start-a-new-chapter-in-real-time-streaming/#62c8645b2306">Twitter&#x27;s Heron Will Start a New Chapter in Real-Time Streaming</a></td></tr><tr><td>June 2015</td><td>InfoQ</td><td><a href="https://www.infoq.com/news/2015/06/twitter-storm-heron">Twitter Has Replaced Storm with Heron</a></td></tr></tbody></table></div></div></div></div><footer class="nav-footer" id="footer"><div class="apache-disclaimer">Apache Heron is an effort undergoing incubation at <a target="_blank" href="https://apache.org/">The Apache Software Foundation (ASF)</a> sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.<br/><br/>Apache®, the names of Apache projects, and the feather logo are either <a rel="external" href="https://www.apache.org/foundation/marks/list/">registered trademarks or trademarks</a> of the Apache Software Foundation in the United States and/or other countries.<br/><br/><div class="copyright-box">Copyright © 2023 the Apache Software Foundation, Apache Heron, Heron, 
  Apache, the Apache feather Logo, and the Apache Heron project logo are either registered 
  trademarks or trademarks of the Apache Software Foundation.</div></div><div class="apache-links"><a class="item" rel="external" href="https://incubator.apache.org/">Apache Incubator</a><div><a class="item" rel="external" href="https://www.apache.org/">About the ASF</a></div><div><a class="item" rel="external" href="https://www.apache.org/events/current-event">Events</a></div><div><a class="item" rel="external" href="https://www.apache.org/foundation/thanks.html">Thanks</a></div><div><a class="item" rel="external" href="https://www.apache.org/foundation/sponsorship.html">Become a Sponsor</a></div><div><a class="item" rel="external" href="https://www.apache.org/security/">Security</a></div><div><a class="item" rel="external" href="https://www.apache.org/licenses/">License</a></div></div></footer></div><script>window.twttr=(function(d,s, id){var js,fjs=d.getElementsByTagName(s)[0],t=window.twttr||{};if(d.getElementById(id))return t;js=d.createElement(s);js.id=id;js.src='https://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js, fjs);t._e = [];t.ready = function(f) {t._e.push(f);};return t;}(document, 'script', 'twitter-wjs'));</script></body></html>