assign_query
2017-02-09 15:33:23 0 举报
assign_query 是一个用于分配查询任务的函数,它接收一个查询任务列表作为输入参数,然后将这些任务按照某种策略分配给相应的处理单元。处理单元可以是单个处理器、多核处理器或者分布式系统中的多个节点。assign_query 的主要目标是实现负载均衡,确保每个处理单元都能充分利用其计算能力,从而提高整体的查询处理速度。此外,assign_query 还可以根据任务的特性和处理单元的性能进行动态调整,以适应不断变化的系统环境。总之,assign_query 是一个关键的功能模块,它在大规模数据处理和查询系统中发挥着至关重要的作用。
作者其他创作
大纲/内容
ACK_VAL = m2 xor m3 xor (m2 xor m4) = m3 xor m4
zbs1
20
m1x or m2 xor m3
zbs3
zbs1-e1.robot.hb
m5
Bolt2
m2
40
FilterBolt
ACK_VAL =m4 xor m5 xor (m4 xor m5) = 0
[root-id: ack-tmp-val]ack-tmp-val = m4 xor m5
Ack
m1
Spout
zas-e1.robot.hd
callType对应层
fieldsgrouping
允许丢失分片对应层
zbs2
0.zbs3
filedsgrouping: 相同fields的tuple会被发送到同一个下游task进行处理优点:上下游逻辑关系明确,且有场景需要相同key的映射到同一个task进行计算,比如word-count以及按key统计的场景缺点:负载均衡可能不均,可能存在key的热点
[root-id: ack-tmp-value]ack-tmp-val = m2 xor m4
ack
ProducerBolt
Worker2
zbs3-e1.robot.hd
ACK_VAL = m3 xor m4 xor (m3 xor m5)= m4 xor m5
ACK_VAL = m1 xor (m1x or m2 xor m3) = m2 xor m3
0.zbs2
1.zbs2
zbs2-e1.robot.hb
m3
Bolt1
field-a
MergedBolt
zas-e1.robot.hb
Bolt3
Bolt4
m2 xor m4
zbs1-e1.robot.hd
0.zbs1
0.zas
m4
Worker1
localorshuffle: 上下游的Spout/Bolt有在同一个worker进程的task,那么就找本地的下游task发送数据,没有的话就等同于shufflegrouping,随机找下游优点:避免跨进程跨机器的网络带宽消耗缺点:需要额外的开销去保存在同worker进程的下游task
1.zbs1
zbs2-e1.robot.hd
zfe-e1.robot.hd
HD地域
zfe-e1.robot.hb
1.zbs3
zbs3-e1.robot.hb
field-f
Common
ack-tmp-value = m1
m3 xor m5
localorshuffle
Balance
[root-id: ack-tmp-val]ack-tmp-val: m1 xor m2 xor m3
[root-id: ack-tmp-val]ack-tmp-val = m3 xor m5
HB地域
0 条评论
回复 删除
下一页