You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@storm.apache.org by Muhammad Ali A'råby <an...@yahoo.com.INVALID> on 2015/01/13 17:13:37 UTC
ScheduledTopology
Dear all,
I am implementing a set of classes for scheduled topology works. For example when you want to disable/enable topologies periodically. This codes are having mechanisms for deciding whether a topology is finished working (are all tuples fully processed), mechanism for bolt to have an alternate prepare for every reboot of topology, etc.
I am wondering where should I commit my code? Each class separately in storm-core package (e.g. ScheduledBolt in storm/storm-core/src/jvm/backtype/storm/bolt, ScheduledTopology in storm/storm-core/src/jvm/backtype/storm/topology, etc.) or all of them in a package somewhere?
Sincerely,Muhammad-Ali A'rabi
Re: ScheduledTopology
Posted by Itai Frenkel <It...@forter.com>.
Muhammad,
We are thinking of using storm for scheduled non-realtime processing (things like you would do with map-reduce once a week or daily). The benefit of using Storm is that the same code could be used in realtime and non-realtime processing (it has some disadvantages ofcourse).
For that use case we thought there would be a cron job that would deploy the new topology (and perhaps also start virtual machine instances). The spout would probably be in charge of sending an event to remove the topology (and perhaps the instances) when all tuples have been processed.
What are the benefits of using the classes you described for this use case?
Regards,
Itai
________________________________________
From: Harsha <st...@harsha.io>
Sent: Tuesday, January 13, 2015 6:25 PM
To: dev@storm.apache.org
Subject: Re: ScheduledTopology
Muhammad,
Can you give us bit more details on how this works. Topologies
supposed to be long running. I do see use for this, just
curious that users can automate a topology activate or
deactivate using UI api.
Thanks,
Harsha
On Tue, Jan 13, 2015, at 08:13 AM, Muhammad Ali A'råby wrote:
> Dear all,
> I am implementing a set of classes for scheduled topology works. For
> example when you want to disable/enable topologies periodically. This
> codes are having mechanisms for deciding whether a topology is finished
> working (are all tuples fully processed), mechanism for bolt to have an
> alternate prepare for every reboot of topology, etc.
> I am wondering where should I commit my code? Each class separately in
> storm-core package (e.g. ScheduledBolt in
> storm/storm-core/src/jvm/backtype/storm/bolt, ScheduledTopology in
> storm/storm-core/src/jvm/backtype/storm/topology, etc.) or all of them in
> a package somewhere?
> Sincerely,Muhammad-Ali A'rabi
Re: ScheduledTopology
Posted by Harsha <st...@harsha.io>.
Muhammad,
Can you give us bit more details on how this works. Topologies
supposed to be long running. I do see use for this, just
curious that users can automate a topology activate or
deactivate using UI api.
Thanks,
Harsha
On Tue, Jan 13, 2015, at 08:13 AM, Muhammad Ali A'råby wrote:
> Dear all,
> I am implementing a set of classes for scheduled topology works. For
> example when you want to disable/enable topologies periodically. This
> codes are having mechanisms for deciding whether a topology is finished
> working (are all tuples fully processed), mechanism for bolt to have an
> alternate prepare for every reboot of topology, etc.
> I am wondering where should I commit my code? Each class separately in
> storm-core package (e.g. ScheduledBolt in
> storm/storm-core/src/jvm/backtype/storm/bolt, ScheduledTopology in
> storm/storm-core/src/jvm/backtype/storm/topology, etc.) or all of them in
> a package somewhere?
> Sincerely,Muhammad-Ali A'rabi