You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@storm.apache.org by Patrick Wiener <pa...@web.de> on 2014/11/16 15:24:12 UTC

Storm's comparison towards Pipes-and-Filters-Pattern

Hey everybody,

I am working on a universities project towards a comparison towards pipes-and-filters-pattern and Storm.
Since I am new to Storm and its topology and operating mode I hope you can help me evaluating my train of thoughts.

Bolts can be considered as Filters, whereas the Spout equals the „Data Source“ (internal view) pushing tuples (data) to the downstream bolt.
Finally the last bolt within the topology pushes tuples into a Data Sink, e.g. Redis.
For the external view the Spout is also pulling (not shown in picture) from external sources such as Kafka. 

Overall, Spouts implement pull and push mechanism and Bolts only push mechanism

I know this might seem trivial to you guys but i really hope for some constructive help.



Re: Storm's comparison towards Pipes-and-Filters-Pattern

Posted by Nathan Leung <nc...@gmail.com>.
Btw if you are looking for a different comparison point there are other
frameworks such as akka (http://akka.io), apache spark (
https://spark.apache.org), or ibm streams that might be more interesting.
On Nov 17, 2014 2:19 AM, "Patrick Wiener" <pa...@web.de> wrote:

> @Nathan: :) thanks for the quality comparison. Nice bottom line for a
> presentaton/conclusion.
>
> @all: thank you for your help. Awesome support in this community.
>
>
>
> Am 17.11.2014 um 07:58 schrieb Vladi Feigin <vl...@gmail.com>:
>
> Nathan,
>
> Liked !   <<It's like comparing a bicycle to an airplane.>>
>
>
> On Sun, Nov 16, 2014 at 9:06 PM, Nathan Leung <nc...@gmail.com> wrote:
>
>> Also it supports cycles in the graph. It's like comparing a bicycle to an
>> airplane.
>> On Nov 16, 2014 2:03 PM, "Vladi Feigin" <vl...@gmail.com> wrote:
>>
>>> Storm is much more sophisticated then just filter-pipe pattern.
>>> It provides
>>> 1. Reliability: guarantees that every spout tuple will be fully
>>> processed. Actually it provides  : at-most-once delivery(no ackers) ,  at-least-once
>>> delivery(ackers) and exactly-once (Trident) semantic for the message
>>> delivering/processing
>>> 2. Various types of tuples grouping
>>> 3. Scaling-out distributed system
>>> Vladi
>>>
>>>
>>> On Sun, Nov 16, 2014 at 8:29 PM, Patrick Wiener <pa...@web.de>
>>> wrote:
>>>
>>>> So basically Storm’s core concept can be compared to
>>>> pipes-and-filters-pattern BUT provides a more „user-friendly“ framework
>>>> than e.g. a unix based pipes-and-filters processing.
>>>>
>>>> btw: I haven’t come across with TRIDENT yet. Just starting to dive
>>>> deeper into Storm as a potential technology for a real-time analytics
>>>> architecture (e.g. KAFKA+STORM+NODE+D3).
>>>>
>>>> Am 16.11.2014 um 17:06 schrieb Nathan Leung <nc...@gmail.com>:
>>>>
>>>> Storm supports fan outs, joins, various data groupings, and easier
>>>> scalability than the canonical Unix based pipes and filters processing.
>>>> On Nov 16, 2014 10:53 AM, "Andres Gomez Ferrer" <ag...@redborder.net>
>>>> wrote:
>>>>
>>>>> Firstly your thoughts are correct :), but do you know Trindet’s api?
>>>>>
>>>>> Trindet provides functions and filters equivalent to bolts
>>>>>
>>>>> ____________________________________________________________
>>>>> Andrés Gómez
>>>>> *Developer*
>>>>> redborder.net / agomez@redborder.net
>>>>> mobile: +34 606224922
>>>>> http://lnkd.in/sHnbJe
>>>>>
>>>>> <LogoEneo1-300x119.png> <LogoRedBorder.png>
>>>>> ____________________________________________________________
>>>>>
>>>>>
>>>>> En 16 de noviembre de 2014 en 15:25:10, Patrick Wiener (
>>>>> patrick.wiener@web.de) escrito:
>>>>>
>>>>>
>>>>> Hey everybody,
>>>>>
>>>>> I am working on a universities project towards a comparison towards
>>>>> pipes-and-filters-pattern and Storm.
>>>>> Since I am new to Storm and its topology and operating mode I hope you
>>>>> can help me evaluating my train of thoughts.
>>>>>
>>>>> *Bolts* can be considered as Filters, whereas the *Spout* equals
>>>>> the „Data Source“ (internal view) *pushing* tuples (data) to the
>>>>> downstream bolt.
>>>>> Finally the last bolt within the topology pushes tuples into a Data
>>>>> Sink, e.g. Redis.
>>>>> For the external view the Spout is also *pulling* (not shown in
>>>>> picture) from external sources such as Kafka.
>>>>>
>>>>> Overall, Spouts implement pull and push mechanism and Bolts only push
>>>>> mechanism
>>>>>
>>>>> I know this might seem trivial to you guys but i really hope for some
>>>>> constructive help.
>>>>>
>>>>>
>>>>> <34AC046A-F649-4A4E-9DA6-5FB7FE16868F>
>>>>>
>>>>>
>>>>
>>>
>

Re: Storm's comparison towards Pipes-and-Filters-Pattern

Posted by Patrick Wiener <pa...@web.de>.
@Nathan: :) thanks for the quality comparison. Nice bottom line for a presentaton/conclusion.

@all: thank you for your help. Awesome support in this community. 



> Am 17.11.2014 um 07:58 schrieb Vladi Feigin <vl...@gmail.com>:
> 
> Nathan,
> 
> Liked !   <<It's like comparing a bicycle to an airplane.>>
>  
> 
>> On Sun, Nov 16, 2014 at 9:06 PM, Nathan Leung <nc...@gmail.com> wrote:
>> Also it supports cycles in the graph. It's like comparing a bicycle to an airplane.
>> 
>>> On Nov 16, 2014 2:03 PM, "Vladi Feigin" <vl...@gmail.com> wrote:
>>> Storm is much more sophisticated then just filter-pipe pattern. 
>>> It provides
>>> 1. Reliability: guarantees that every spout tuple will be fully processed. Actually it provides  : at-most-once delivery(no ackers) ,  at-least-once delivery(ackers) and exactly-once (Trident) semantic for the message delivering/processing
>>> 2. Various types of tuples grouping 
>>> 3. Scaling-out distributed system
>>> Vladi
>>> 
>>> 
>>>> On Sun, Nov 16, 2014 at 8:29 PM, Patrick Wiener <pa...@web.de> wrote:
>>>> So basically Storm’s core concept can be compared to pipes-and-filters-pattern BUT provides a more „user-friendly“ framework than e.g. a unix based pipes-and-filters processing.
>>>> 
>>>> btw: I haven’t come across with TRIDENT yet. Just starting to dive deeper into Storm as a potential technology for a real-time analytics architecture (e.g. KAFKA+STORM+NODE+D3).
>>>> 
>>>>> Am 16.11.2014 um 17:06 schrieb Nathan Leung <nc...@gmail.com>:
>>>>> 
>>>>> Storm supports fan outs, joins, various data groupings, and easier scalability than the canonical Unix based pipes and filters processing.
>>>>> 
>>>>> On Nov 16, 2014 10:53 AM, "Andres Gomez Ferrer" <ag...@redborder.net> wrote:
>>>>>> Firstly your thoughts are correct :), but do you know Trindet’s api? 
>>>>>> 
>>>>>> Trindet provides functions and filters equivalent to bolts
>>>>>> 
>>>>>> ____________________________________________________________
>>>>>> Andrés Gómez
>>>>>> Developer
>>>>>> redborder.net / agomez@redborder.net
>>>>>> mobile: +34 606224922
>>>>>> http://lnkd.in/sHnbJe
>>>>>> 
>>>>>> <LogoEneo1-300x119.png> <LogoRedBorder.png>
>>>>>> ____________________________________________________________
>>>>>> 
>>>>>> 
>>>>>> En 16 de noviembre de 2014 en 15:25:10, Patrick Wiener (patrick.wiener@web.de) escrito:
>>>>>> 
>>>>>>> 
>>>>>>> Hey everybody,
>>>>>>> 
>>>>>>> I am working on a universities project towards a comparison towards pipes-and-filters-pattern and Storm.
>>>>>>> Since I am new to Storm and its topology and operating mode I hope you can help me evaluating my train of thoughts.
>>>>>>> 
>>>>>>> Bolts can be considered as Filters, whereas the Spout equals the „Data Source“ (internal view) pushing tuples (data) to the downstream bolt.
>>>>>>> Finally the last bolt within the topology pushes tuples into a Data Sink, e.g. Redis.
>>>>>>> For the external view the Spout is also pulling (not shown in picture) from external sources such as Kafka. 
>>>>>>> 
>>>>>>> Overall, Spouts implement pull and push mechanism and Bolts only push mechanism
>>>>>>> 
>>>>>>> I know this might seem trivial to you guys but i really hope for some constructive help.
>>>>>>> 
>>>>>>> 
>>>>>>> <34AC046A-F649-4A4E-9DA6-5FB7FE16868F>
> 

Re: Storm's comparison towards Pipes-and-Filters-Pattern

Posted by Vladi Feigin <vl...@gmail.com>.
Nathan,

Liked !   <<It's like comparing a bicycle to an airplane.>>


On Sun, Nov 16, 2014 at 9:06 PM, Nathan Leung <nc...@gmail.com> wrote:

> Also it supports cycles in the graph. It's like comparing a bicycle to an
> airplane.
> On Nov 16, 2014 2:03 PM, "Vladi Feigin" <vl...@gmail.com> wrote:
>
>> Storm is much more sophisticated then just filter-pipe pattern.
>> It provides
>> 1. Reliability: guarantees that every spout tuple will be fully
>> processed. Actually it provides  : at-most-once delivery(no ackers) ,  at-least-once
>> delivery(ackers) and exactly-once (Trident) semantic for the message
>> delivering/processing
>> 2. Various types of tuples grouping
>> 3. Scaling-out distributed system
>> Vladi
>>
>>
>> On Sun, Nov 16, 2014 at 8:29 PM, Patrick Wiener <pa...@web.de>
>> wrote:
>>
>>> So basically Storm’s core concept can be compared to
>>> pipes-and-filters-pattern BUT provides a more „user-friendly“ framework
>>> than e.g. a unix based pipes-and-filters processing.
>>>
>>> btw: I haven’t come across with TRIDENT yet. Just starting to dive
>>> deeper into Storm as a potential technology for a real-time analytics
>>> architecture (e.g. KAFKA+STORM+NODE+D3).
>>>
>>> Am 16.11.2014 um 17:06 schrieb Nathan Leung <nc...@gmail.com>:
>>>
>>> Storm supports fan outs, joins, various data groupings, and easier
>>> scalability than the canonical Unix based pipes and filters processing.
>>> On Nov 16, 2014 10:53 AM, "Andres Gomez Ferrer" <ag...@redborder.net>
>>> wrote:
>>>
>>>> Firstly your thoughts are correct :), but do you know Trindet’s api?
>>>>
>>>> Trindet provides functions and filters equivalent to bolts
>>>>
>>>> ____________________________________________________________
>>>> Andrés Gómez
>>>> *Developer*
>>>> redborder.net / agomez@redborder.net
>>>> mobile: +34 606224922
>>>> http://lnkd.in/sHnbJe
>>>>
>>>> <LogoEneo1-300x119.png> <LogoRedBorder.png>
>>>> ____________________________________________________________
>>>>
>>>>
>>>> En 16 de noviembre de 2014 en 15:25:10, Patrick Wiener (
>>>> patrick.wiener@web.de) escrito:
>>>>
>>>>
>>>> Hey everybody,
>>>>
>>>> I am working on a universities project towards a comparison towards
>>>> pipes-and-filters-pattern and Storm.
>>>> Since I am new to Storm and its topology and operating mode I hope you
>>>> can help me evaluating my train of thoughts.
>>>>
>>>> *Bolts* can be considered as Filters, whereas the *Spout* equals
>>>> the „Data Source“ (internal view) *pushing* tuples (data) to the
>>>> downstream bolt.
>>>> Finally the last bolt within the topology pushes tuples into a Data
>>>> Sink, e.g. Redis.
>>>> For the external view the Spout is also *pulling* (not shown in
>>>> picture) from external sources such as Kafka.
>>>>
>>>> Overall, Spouts implement pull and push mechanism and Bolts only push
>>>> mechanism
>>>>
>>>> I know this might seem trivial to you guys but i really hope for some
>>>> constructive help.
>>>>
>>>>
>>>> <34AC046A-F649-4A4E-9DA6-5FB7FE16868F>
>>>>
>>>>
>>>
>>

Re: Storm's comparison towards Pipes-and-Filters-Pattern

Posted by Nathan Leung <nc...@gmail.com>.
Also it supports cycles in the graph. It's like comparing a bicycle to an
airplane.
On Nov 16, 2014 2:03 PM, "Vladi Feigin" <vl...@gmail.com> wrote:

> Storm is much more sophisticated then just filter-pipe pattern.
> It provides
> 1. Reliability: guarantees that every spout tuple will be fully
> processed. Actually it provides  : at-most-once delivery(no ackers) ,  at-least-once
> delivery(ackers) and exactly-once (Trident) semantic for the message
> delivering/processing
> 2. Various types of tuples grouping
> 3. Scaling-out distributed system
> Vladi
>
>
> On Sun, Nov 16, 2014 at 8:29 PM, Patrick Wiener <pa...@web.de>
> wrote:
>
>> So basically Storm’s core concept can be compared to
>> pipes-and-filters-pattern BUT provides a more „user-friendly“ framework
>> than e.g. a unix based pipes-and-filters processing.
>>
>> btw: I haven’t come across with TRIDENT yet. Just starting to dive deeper
>> into Storm as a potential technology for a real-time analytics architecture
>> (e.g. KAFKA+STORM+NODE+D3).
>>
>> Am 16.11.2014 um 17:06 schrieb Nathan Leung <nc...@gmail.com>:
>>
>> Storm supports fan outs, joins, various data groupings, and easier
>> scalability than the canonical Unix based pipes and filters processing.
>> On Nov 16, 2014 10:53 AM, "Andres Gomez Ferrer" <ag...@redborder.net>
>> wrote:
>>
>>> Firstly your thoughts are correct :), but do you know Trindet’s api?
>>>
>>> Trindet provides functions and filters equivalent to bolts
>>>
>>> ____________________________________________________________
>>> Andrés Gómez
>>> *Developer*
>>> redborder.net / agomez@redborder.net
>>> mobile: +34 606224922
>>> http://lnkd.in/sHnbJe
>>>
>>> <LogoEneo1-300x119.png> <LogoRedBorder.png>
>>> ____________________________________________________________
>>>
>>>
>>> En 16 de noviembre de 2014 en 15:25:10, Patrick Wiener (
>>> patrick.wiener@web.de) escrito:
>>>
>>>
>>> Hey everybody,
>>>
>>> I am working on a universities project towards a comparison towards
>>> pipes-and-filters-pattern and Storm.
>>> Since I am new to Storm and its topology and operating mode I hope you
>>> can help me evaluating my train of thoughts.
>>>
>>> *Bolts* can be considered as Filters, whereas the *Spout* equals
>>> the „Data Source“ (internal view) *pushing* tuples (data) to the
>>> downstream bolt.
>>> Finally the last bolt within the topology pushes tuples into a Data
>>> Sink, e.g. Redis.
>>> For the external view the Spout is also *pulling* (not shown in
>>> picture) from external sources such as Kafka.
>>>
>>> Overall, Spouts implement pull and push mechanism and Bolts only push
>>> mechanism
>>>
>>> I know this might seem trivial to you guys but i really hope for some
>>> constructive help.
>>>
>>>
>>> <34AC046A-F649-4A4E-9DA6-5FB7FE16868F>
>>>
>>>
>>
>

Re: Storm's comparison towards Pipes-and-Filters-Pattern

Posted by Vladi Feigin <vl...@gmail.com>.
Storm is much more sophisticated then just filter-pipe pattern.
It provides
1. Reliability: guarantees that every spout tuple will be fully processed.
Actually it provides  : at-most-once delivery(no ackers) ,  at-least-once
delivery(ackers) and exactly-once (Trident) semantic for the message
delivering/processing
2. Various types of tuples grouping
3. Scaling-out distributed system
Vladi


On Sun, Nov 16, 2014 at 8:29 PM, Patrick Wiener <pa...@web.de>
wrote:

> So basically Storm’s core concept can be compared to
> pipes-and-filters-pattern BUT provides a more „user-friendly“ framework
> than e.g. a unix based pipes-and-filters processing.
>
> btw: I haven’t come across with TRIDENT yet. Just starting to dive deeper
> into Storm as a potential technology for a real-time analytics architecture
> (e.g. KAFKA+STORM+NODE+D3).
>
> Am 16.11.2014 um 17:06 schrieb Nathan Leung <nc...@gmail.com>:
>
> Storm supports fan outs, joins, various data groupings, and easier
> scalability than the canonical Unix based pipes and filters processing.
> On Nov 16, 2014 10:53 AM, "Andres Gomez Ferrer" <ag...@redborder.net>
> wrote:
>
>> Firstly your thoughts are correct :), but do you know Trindet’s api?
>>
>> Trindet provides functions and filters equivalent to bolts
>>
>> ____________________________________________________________
>> Andrés Gómez
>> *Developer*
>> redborder.net / agomez@redborder.net
>> mobile: +34 606224922
>> http://lnkd.in/sHnbJe
>>
>> <LogoEneo1-300x119.png> <LogoRedBorder.png>
>> ____________________________________________________________
>>
>>
>> En 16 de noviembre de 2014 en 15:25:10, Patrick Wiener (
>> patrick.wiener@web.de) escrito:
>>
>>
>> Hey everybody,
>>
>> I am working on a universities project towards a comparison towards
>> pipes-and-filters-pattern and Storm.
>> Since I am new to Storm and its topology and operating mode I hope you
>> can help me evaluating my train of thoughts.
>>
>> *Bolts* can be considered as Filters, whereas the *Spout* equals
>> the „Data Source“ (internal view) *pushing* tuples (data) to the
>> downstream bolt.
>> Finally the last bolt within the topology pushes tuples into a Data Sink,
>> e.g. Redis.
>> For the external view the Spout is also *pulling* (not shown in picture)
>> from external sources such as Kafka.
>>
>> Overall, Spouts implement pull and push mechanism and Bolts only push
>> mechanism
>>
>> I know this might seem trivial to you guys but i really hope for some
>> constructive help.
>>
>>
>> <34AC046A-F649-4A4E-9DA6-5FB7FE16868F>
>>
>>
>

Re: Storm's comparison towards Pipes-and-Filters-Pattern

Posted by Patrick Wiener <pa...@web.de>.
So basically Storm’s core concept can be compared to pipes-and-filters-pattern BUT provides a more „user-friendly“ framework than e.g. a unix based pipes-and-filters processing.

btw: I haven’t come across with TRIDENT yet. Just starting to dive deeper into Storm as a potential technology for a real-time analytics architecture (e.g. KAFKA+STORM+NODE+D3).

> Am 16.11.2014 um 17:06 schrieb Nathan Leung <nc...@gmail.com>:
> 
> Storm supports fan outs, joins, various data groupings, and easier scalability than the canonical Unix based pipes and filters processing.
> 
> On Nov 16, 2014 10:53 AM, "Andres Gomez Ferrer" <agomez@redborder.net <ma...@redborder.net>> wrote:
> Firstly your thoughts are correct :), but do you know Trindet’s api? 
> 
> Trindet provides functions and filters equivalent to bolts
> 
> ____________________________________________________________
> Andrés Gómez
> Developer
> redborder.net <http://redborder.net/> / agomez@redborder.net <ma...@redborder.net>
> mobile: +34 606224922 <tel:%2B34%20606224922>
> http://lnkd.in/sHnbJe <http://lnkd.in/sHnbJe>
> 
> <LogoEneo1-300x119.png> <LogoRedBorder.png>
> ____________________________________________________________
> 
> 
> En 16 de noviembre de 2014 en 15:25:10, Patrick Wiener (patrick.wiener@web.de <ma...@web.de>) escrito:
> 
>> 
>> Hey everybody,
>> 
>> I am working on a universities project towards a comparison towards pipes-and-filters-pattern and Storm.
>> Since I am new to Storm and its topology and operating mode I hope you can help me evaluating my train of thoughts.
>> 
>> Bolts can be considered as Filters, whereas the Spout equals the „Data Source“ (internal view) pushing tuples (data) to the downstream bolt.
>> Finally the last bolt within the topology pushes tuples into a Data Sink, e.g. Redis.
>> For the external view the Spout is also pulling (not shown in picture) from external sources such as Kafka. 
>> 
>> Overall, Spouts implement pull and push mechanism and Bolts only push mechanism
>> 
>> I know this might seem trivial to you guys but i really hope for some constructive help.
>> 
>> 
>> <34AC046A-F649-4A4E-9DA6-5FB7FE16868F>


Re: Storm's comparison towards Pipes-and-Filters-Pattern

Posted by Nathan Leung <nc...@gmail.com>.
Storm supports fan outs, joins, various data groupings, and easier
scalability than the canonical Unix based pipes and filters processing.
On Nov 16, 2014 10:53 AM, "Andres Gomez Ferrer" <ag...@redborder.net>
wrote:

> Firstly your thoughts are correct :), but do you know Trindet’s api?
>
> Trindet provides functions and filters equivalent to bolts
>
> ____________________________________________________________
> Andrés Gómez
> *Developer*
> redborder.net / agomez@redborder.net
> mobile: +34 606224922
> http://lnkd.in/sHnbJe
>
>
> ____________________________________________________________
>
>
> En 16 de noviembre de 2014 en 15:25:10, Patrick Wiener (
> patrick.wiener@web.de) escrito:
>
>
> Hey everybody,
>
> I am working on a universities project towards a comparison towards
> pipes-and-filters-pattern and Storm.
> Since I am new to Storm and its topology and operating mode I hope you can
> help me evaluating my train of thoughts.
>
> *Bolts* can be considered as Filters, whereas the *Spout* equals
> the „Data Source“ (internal view) *pushing* tuples (data) to the
> downstream bolt.
> Finally the last bolt within the topology pushes tuples into a Data Sink,
> e.g. Redis.
> For the external view the Spout is also *pulling* (not shown in picture)
> from external sources such as Kafka.
>
> Overall, Spouts implement pull and push mechanism and Bolts only push
> mechanism
>
> I know this might seem trivial to you guys but i really hope for some
> constructive help.
>
>
>

Re: Storm's comparison towards Pipes-and-Filters-Pattern

Posted by Andres Gomez Ferrer <ag...@redborder.net>.
Firstly your thoughts are correct :), but do you know Trindet’s api? 

Trindet provides functions and filters equivalent to bolts

____________________________________________________________
Andrés Gómez
Developer
redborder.net / agomez@redborder.net
mobile: +34 606224922
http://lnkd.in/sHnbJe

 
____________________________________________________________


En 16 de noviembre de 2014 en 15:25:10, Patrick Wiener (patrick.wiener@web.de) escrito:


Hey everybody,

I am working on a universities project towards a comparison towards pipes-and-filters-pattern and Storm.
Since I am new to Storm and its topology and operating mode I hope you can help me evaluating my train of thoughts.

Bolts can be considered as Filters, whereas the Spout equals the „Data Source“ (internal view) pushing tuples (data) to the downstream bolt.
Finally the last bolt within the topology pushes tuples into a Data Sink, e.g. Redis.
For the external view the Spout is also pulling (not shown in picture) from external sources such as Kafka. 

Overall, Spouts implement pull and push mechanism and Bolts only push mechanism

I know this might seem trivial to you guys but i really hope for some constructive help.