Questions tagged [heron]

Heron is Twitter's 2nd generation real-time analytics platform that is fully API-compatible with Storm.

Heron is a general-purpose stream processing engine designed for speedy performance, low latency, isolation, reliability, and ease of use for developers and administrators alike. Heron was open sourced by Twitter in May 2016.

Heron's Design Goals

From the beginning, Heron was envisioned as a new kind of stream processing system, built to meet the most demanding of technological requirements, to handle even the most massive of workloads, and to meet the needs of organizations of all sizes and degrees of complexity. Amongst these requirements:

The ability to process billions of events per minute Extremely low end-to-end latency Predictable behavior regardless of scale and in the face of issue like extreme traffic spikes and pipeline congestion Simple administration, including: The ability to deploy on shared infrastructure Powerful monitoring capabilities Fine-grained configurability Easy debuggability To meet these requirements, a few core design goals have guided—and continue to guide—Heron’s development:

  • Modularity
  • Extensibility
  • Isolation
  • Constrained resource usage
  • Apache Storm compatibility
  • Backpressure handling
  • Multiple delivery semantics

Resources

Heron Resources includes:

Videos

Official Blog Posts

Community Blog Posts

Slides

Press

Documentation

GitHub

User Group

42 questions
0
votes
1 answer

Failed to get scheduler location from state manager Heron Tutorial

I'm working through the heron tutorial found here: https://apache.github.io/incubator-heron/docs/getting-started/' I didn't get very far before I encountered this error: $: heron activate local WindowedWordCountTopology [2019-02-01 15:55:11 +0000]…
Noah
  • 1,608
  • 15
  • 31
0
votes
1 answer

Heron TumblingWindowBolt based on count not seconds

Heron documentation says that it is possible to implement Tumbling windows based on counts. However, heronpy.api.bolt.window_bolt.TumblingWindowBolt has only WINDOW_DURATION_SECS field. How can I implement TumblingWindowBolt based on tuple counts?
Alexandr Proskurin
  • 217
  • 1
  • 2
  • 7
0
votes
2 answers

Sync severals spouts and bolt in Heron

I am using Heropy. My topology looks the next way: Spout1 -> Bolt1 - > Bolt2 Spout2 ---------> Bolt2 So, Bolt2 needs info from both Spout2 and Bolt1 in order to emit the result, however the info from Spout2 comes faster than the info from Bolt1…
Alexandr Proskurin
  • 217
  • 1
  • 2
  • 7
0
votes
2 answers

Get access to local folder in Heron

I've written Heron topology which takes data from local folder and processes it. However, heron can't see any other folders except the one described in .pex file. How can I read data outside of .pex declared folders?
Alexandr Proskurin
  • 217
  • 1
  • 2
  • 7
0
votes
2 answers

Messages dropping between spout and bolt

I've implemented a heron topology which reads messages from Kafka queue. Hence my topology has a kafka spout and a bolt which counts the number of messages read from the queue. When I emit say 10000 messages into kafka queue, I can see all the…
tourist
  • 4,165
  • 6
  • 25
  • 47
0
votes
2 answers

How to fix the NullPointerException happened in KafkaSpout running on Heron?

When I run a topology of Storm with KafkaSpout in Heron, the following exception occurs: [2018-11-01 22:43:49 +0800] [INFO] com.twitter.heron.instance.HeronInstance: Starting instance container_2_ads_2 for topology AdvertisingTopology and…
Yitian Zhang
  • 314
  • 1
  • 3
  • 18
0
votes
1 answer

How to set resource requirements of components for a Storm topology running in Heron?

Recently, I want to migrate a Storm Topology to Heron. But there are some problems with it. In Heron topology, I can set the resources of components and containers, such as: conf.setComponentRam("spout",…
Yitian Zhang
  • 314
  • 1
  • 3
  • 18
0
votes
1 answer

How to monitor the throughput of Heron Cluster

I needed to get the throughput of Heron Cluster for some reasons, but there is no metric in the Heron UI. So do you have any ideas about how to monitor the throughput of Heron Cluster? Thanks. The result of running heron-explorer as…
Yitian Zhang
  • 314
  • 1
  • 3
  • 18
0
votes
2 answers

Zookeeper EndOfStreamException happened in Heron Cluster

There is a problem that bothers me. EndOfStreamExceptionalways happen in zookeeper after submitted topologies. Although it does not affect the normal operation of the cluster, I still hope to solve the problem because it may be affect other parts of…
Yitian Zhang
  • 314
  • 1
  • 3
  • 18
0
votes
0 answers

SchedulerStateManagerAdaptor failed to fetch data from zookeeper path in Heron Cluster

In Heron, I instantiated a SchedulerStateManagerAdaptor named adaptor using IStateManager and created a new Runtime config to saved this adaptor. Then, I created a ISchedulerClient object for invoking its schedulerClient.updateTopology function.…
Yitian Zhang
  • 314
  • 1
  • 3
  • 18
0
votes
2 answers

Cannot update Heron topology using SchedulerStateManagerAdaptor

When I attempted to create custom scheduler of Heron, and used SchedulerStateManagerApaptor object to update topology, this Exception happened: Exception in thread java.util.ConcurrentModificationException: The update lock can not be obtained for…
Yitian Zhang
  • 314
  • 1
  • 3
  • 18
0
votes
1 answer

Updating topology failed in Heron cluster

When I tried to update a topology running on the Heron Cluster, failed message as following: The output of update command using --verbose as follows: [2018-07-03 12:07:27 +0800] [FINE] com.twitter.heron.scheduler.RuntimeManagerMain: Exception when…
Yitian Zhang
  • 314
  • 1
  • 3
  • 18
0
votes
1 answer

Without log output in Heron cluster using AuroraScheduler

I submitted a topology to Heron cluster using CustomAuroraScheduler that modified based on the default AuroraScheduler. For this scheduler, I just added one line code in this CustomAuroraScheduler as following: And I have successfully deployed this…
Yitian Zhang
  • 314
  • 1
  • 3
  • 18
0
votes
1 answer

How to modify the size of RAM requirement of aurora task in Heron cluster deployed on Aurora scheduler?

I deployed Heron cluster using aurora-scheduler and Mesos. And when I ran the default WordCountTopology using this cluster, I found the ram demand of aurora task is 4G. However, the WordCountToplogy's configuration as follows: componentRam:…
Yitian Zhang
  • 314
  • 1
  • 3
  • 18
0
votes
1 answer

Heron Failed to set packing plan for topology 'WordCountTopology'

When I submitted WordCountTopology to the Heron Cluster that deployed with Aurora scheduler and Zookeeper, this error happened as follows: yitian@heron01:~$ heron submit aurora/yitian/devel --config-path ~/.heron/conf…
Yitian Zhang
  • 314
  • 1
  • 3
  • 18