[align=center][size=medium][color=black]Storm-topology-grouping[/color][/size][/align]
Stream Grouping
storm的grouping 用来决定如何在topology的组件中如何交换数据。类似在haddoop中的partition的过程。spout和bolt都可以产生数据流,但是grouping可以决定如何选择下一个处理stream。
Shufle Grouping
使用频率:高
使用参数:数据源id
特点特性:将数据随机分发到每个bolt,且保证每个bolt接收到同样数量的tuple。
Fields Grouping
使用频率:中
使用参数:数据源id+fields
特点特性:保证将一个或者一组给定的field分发到相同的bolt上。
All Grouping
使用频率:中
使用参数:数据源id
特点特性:广播式的将每个tuple分发到每个bolt上。
Custom Grouping
使用频率:中
使用参数:数据源id
特点特性:自定义grouping.
Direct Grouping
使用频率:中
使用参数:数据源id
特点特性:由数据源去决定将数据分发到那个bolt上。
Global Grouping
使用频率:中
使用参数:数据源id
特点特性:由将tuple send到一个单独的taskid最小的bolt上
None Grouping
使用频率:中
使用参数:数据源id
特点特性:和Shufle Grouping一样不关心tuple被send到哪里。
Stream Grouping
storm的grouping 用来决定如何在topology的组件中如何交换数据。类似在haddoop中的partition的过程。spout和bolt都可以产生数据流,但是grouping可以决定如何选择下一个处理stream。
Shufle Grouping
使用频率:高
使用参数:数据源id
特点特性:将数据随机分发到每个bolt,且保证每个bolt接收到同样数量的tuple。
Fields Grouping
使用频率:中
使用参数:数据源id+fields
特点特性:保证将一个或者一组给定的field分发到相同的bolt上。
All Grouping
使用频率:中
使用参数:数据源id
特点特性:广播式的将每个tuple分发到每个bolt上。
Custom Grouping
使用频率:中
使用参数:数据源id
特点特性:自定义grouping.
Direct Grouping
使用频率:中
使用参数:数据源id
特点特性:由数据源去决定将数据分发到那个bolt上。
Global Grouping
使用频率:中
使用参数:数据源id
特点特性:由将tuple send到一个单独的taskid最小的bolt上
None Grouping
使用频率:中
使用参数:数据源id
特点特性:和Shufle Grouping一样不关心tuple被send到哪里。