本文整理了Java中backtype.storm.tuple.Tuple.getSourceComponent()
方法的一些代码示例,展示了Tuple.getSourceComponent()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Tuple.getSourceComponent()
方法的具体详情如下:
包路径:backtype.storm.tuple.Tuple
类名称:Tuple
方法名:getSourceComponent
[英]Gets the id of the component that created this tuple.
[中]获取创建此元组的组件的id。
代码示例来源:origin: alibaba/jstorm
public static boolean isTickTuple(Tuple tuple) {
return tuple.getSourceComponent().equals(Constants.SYSTEM_COMPONENT_ID) &&
tuple.getSourceStreamId().equals(Constants.SYSTEM_TICK_STREAM_ID);
}
}
代码示例来源:origin: alibaba/jstorm
public static boolean isTick(Tuple tuple) {
return tuple != null && Constants.SYSTEM_COMPONENT_ID.equals(tuple.getSourceComponent())
&& Constants.SYSTEM_TICK_STREAM_ID.equals(tuple.getSourceStreamId());
}
代码示例来源:origin: alibaba/mdrill
/**
* Returns the global stream id (component + stream) of this tuple.
*/
public GlobalStreamId getSourceGlobalStreamid() {
return new GlobalStreamId(getSourceComponent(), streamId);
}
代码示例来源:origin: alibaba/mdrill
@Override
public String toString() {
return "source: " + getSourceComponent() + ":" + taskId + ", stream: " + streamId + ", id: "+ id.toString() + ", " + values.toString();
}
代码示例来源:origin: alibaba/jstorm
@Override
public void execute(Tuple tuple) {
if (tuple.getSourceComponent().equals(_wordComponent)) {
this.word = tuple.getString(1);
} else {
intSet.add(tuple.getInteger(1));
}
}
代码示例来源:origin: alibaba/jstorm
public void execute(Tuple input) {
String component = input.getSourceComponent();
Map<String, List<FixedTuple>> captured = emitted_tuples.get(_name);
if (!captured.containsKey(component)) {
captured.put(component, new ArrayList<FixedTuple>());
}
captured.get(component).add(new FixedTuple(input.getSourceStreamId(), input.getValues()));
_collector.ack(input);
}
代码示例来源:origin: alibaba/mdrill
public void execute(Tuple input) {
String component = input.getSourceComponent();
Map<String, List<FixedTuple>> captured = emitted_tuples.get(_name);
if(!captured.containsKey(component)) {
captured.put(component, new ArrayList<FixedTuple>());
}
captured.get(component).add(new FixedTuple(input.getSourceStreamId(), input.getValues()));
_collector.ack(input);
}
代码示例来源:origin: alibaba/mdrill
/**
* Gets the names of the fields in this tuple.
*/
public Fields getFields() {
return context.getComponentOutputFields(getSourceComponent(), getSourceStreamId());
}
代码示例来源:origin: alibaba/jstorm
public void execute(Tuple tuple) {
Object requestId = tuple.getValue(0);
if (tuple.getSourceComponent().equals(returnComponent)) {
returns.put(requestId, tuple);
} else {
results.put(requestId, tuple);
}
if (returns.containsKey(requestId) && results.containsKey(requestId)) {
Tuple result = results.remove(requestId);
Tuple returner = returns.remove(requestId);
LOG.debug(result.getValue(1).toString());
List<Tuple> anchors = new ArrayList<>();
anchors.add(result);
anchors.add(returner);
_collector.emit(anchors, new Values("" + result.getValue(1), returner.getValue(1)));
_collector.ack(result);
_collector.ack(returner);
}
}
代码示例来源:origin: alibaba/jstorm
@Override
public void ack(Tuple input) {
if (input.getMessageId() != null) {
if (!sendAckTuple(input)) {
pendingAckQueue.add(input);
}
}
Long latencyStart = (Long) tupleStartTimes.remove(input);
taskStats.bolt_acked_tuple(input.getSourceComponent(), input.getSourceStreamId());
if (latencyStart != null && JStormMetrics.enabled) {
long endTime = System.currentTimeMillis();
taskStats.update_bolt_acked_latency(input.getSourceComponent(), input.getSourceStreamId(), latencyStart, endTime);
}
}
代码示例来源:origin: alibaba/jstorm
@Override
public void execute(Tuple tuple) {
List<Object> id = tuple.select(_idFields);
GlobalStreamId streamId = new GlobalStreamId(tuple.getSourceComponent(), tuple.getSourceStreamId());
if (!_pending.containsKey(id)) {
_pending.put(id, new HashMap<GlobalStreamId, Tuple>());
}
Map<GlobalStreamId, Tuple> parts = _pending.get(id);
if (parts.containsKey(streamId))
throw new RuntimeException("Received same side of single join twice");
parts.put(streamId, tuple);
if (parts.size() == _numSources) {
_pending.remove(id);
List<Object> joinResult = new ArrayList<Object>();
for (String outField : _outFields) {
GlobalStreamId loc = _fieldLocations.get(outField);
joinResult.add(parts.get(loc).getValueByField(outField));
}
_collector.emit(new ArrayList<Tuple>(parts.values()), joinResult);
for (Tuple part : parts.values()) {
_collector.ack(part);
}
}
}
代码示例来源:origin: alibaba/mdrill
public void execute(Tuple tuple) {
Object requestId = tuple.getValue(0);
if(tuple.getSourceComponent().equals(returnComponent)) {
returns.put(requestId, tuple);
} else {
results.put(requestId, tuple);
}
if(returns.containsKey(requestId) && results.containsKey(requestId)) {
Tuple result = results.remove(requestId);
Tuple returner = returns.remove(requestId);
LOG.debug(result.getValue(1).toString());
List<Tuple> anchors = new ArrayList<Tuple>();
anchors.add(result);
anchors.add(returner);
_collector.emit(anchors, new Values(""+result.getValue(1), returner.getValue(1)));
_collector.ack(result);
_collector.ack(returner);
}
}
代码示例来源:origin: alibaba/jstorm
@Override
public void ack(Tuple input) {
if (input.getMessageId() != null) {
Long ack_val = 0L;
Object pend_val = pendingAcks.remove(input);
if (pend_val != null) {
ack_val = (Long) (pend_val);
}
for (Entry<Long, Long> e : input.getMessageId().getAnchorsToIds().entrySet()) {
unanchoredSend(topologyContext, sendTargets, taskTransfer, Acker.ACKER_ACK_STREAM_ID,
JStormUtils.mk_list((Object) e.getKey(), JStormUtils.bit_xor(e.getValue(), ack_val)));
}
}
Long latencyStart = (Long) tupleStartTimes.remove(input);
taskStats.bolt_acked_tuple(input.getSourceComponent(), input.getSourceStreamId());
if (latencyStart != null && JStormMetrics.enabled) {
long endTime = System.currentTimeMillis();
taskStats.update_bolt_acked_latency(input.getSourceComponent(), input.getSourceStreamId(),
latencyStart, endTime);
}
}
代码示例来源:origin: alibaba/jstorm
@Override
public void fail(Tuple input) {
// if ackerNum == 0, we can just return
if (input.getMessageId() != null) {
pendingAcks.remove(input);
for (Map.Entry<Long, Long> e : input.getMessageId().getAnchorsToIds().entrySet()) {
List<Object> ackTuple = JStormUtils.mk_list((Object) e.getKey());
sendBoltMsg(Acker.ACKER_FAIL_STREAM_ID, null, ackTuple, null, null);
}
}
taskStats.bolt_failed_tuple(input.getSourceComponent(), input.getSourceStreamId());
}
代码示例来源:origin: alibaba/mdrill
public byte[] serialize(Tuple tuple) {
try {
_outputter.reset();
WritableUtils.writeVInt(_dataOutputter, tuple.getSourceTask());
WritableUtils.writeVInt(_dataOutputter, _ids.getStreamId(tuple.getSourceComponent(), tuple.getSourceStreamId()));
tuple.getMessageId().serialize(_dataOutputter);
_kryo.serializeInto(tuple.getValues(), _outputter);
return _outputter.toByteArray();
} catch (IOException e) {
throw new RuntimeException(e);
}
}
代码示例来源:origin: alibaba/jstorm
@Override
public void fail(Tuple input) {
// if ackerNum == 0, we can just return
if (input.getMessageId() != null) {
pendingAcks.remove(input);
for (Entry<Long, Long> e : input.getMessageId().getAnchorsToIds().entrySet()) {
unanchoredSend(topologyContext, sendTargets, taskTransfer, Acker.ACKER_FAIL_STREAM_ID,
JStormUtils.mk_list((Object) e.getKey()));
}
}
tupleStartTimes.remove(input);
taskStats.bolt_failed_tuple(input.getSourceComponent(), input.getSourceStreamId());
}
代码示例来源:origin: alibaba/mdrill
@Override
public void fail(Tuple input) {
pending_acks.remove(input);
for (Entry<Long, Long> e : input.getMessageId().getAnchorsToIds().entrySet()) {
UnanchoredSend.send(topologyContext, sendTargets,
workerTransfer, Acker.ACKER_FAIL_STREAM_ID,
StormUtils.mk_list((Object) e.getKey()));
}
Long delta = TasksCommon.tuple_time_delta(tuple_start_times,input);
if (delta != null) {
Stats.bolt_failed_tuple((BoltTaskStatsRolling) task_stats,
input.getSourceComponent(), input.getSourceStreamId(),
delta);
}
}
代码示例来源:origin: alibaba/mdrill
@Override
public void ack(Tuple input) {
Object ack_val = pending_acks.remove(input);
if (ack_val == null) {
ack_val = 0l;
}
for (Entry<Long, Long> e : input.getMessageId().getAnchorsToIds().entrySet()) {
UnanchoredSend.send(
topologyContext,
sendTargets,
workerTransfer,
Acker.ACKER_ACK_STREAM_ID,
StormUtils.mk_list((Object)e.getKey(),StormUtils.bit_xor(e.getValue(), ack_val)));
}
Long delta = TasksCommon.tuple_time_delta(tuple_start_times, input);
if (delta != null) {
Stats.bolt_acked_tuple((BoltTaskStatsRolling) task_stats,
input.getSourceComponent(), input.getSourceStreamId(),
delta);
}
}
代码示例来源:origin: alibaba/mdrill
public IPersistentMap meta() {
if(_meta==null) {
_meta = new PersistentArrayMap( new Object[] {
makeKeyword("stream"), getSourceStreamId(),
makeKeyword("component"), getSourceComponent(),
makeKeyword("task"), getSourceTask()});
}
return _meta;
}
代码示例来源:origin: alibaba/jstorm
private BoltMsg createBoltMessage(Tuple input, String genId) {
BoltMsg boltMsg = new BoltMsg();
boltMsg.setId(genId);
boltMsg.setComp(input.getSourceComponent());
boltMsg.setStream(input.getSourceStreamId());
boltMsg.setTask(input.getSourceTask());
boltMsg.setTuple(input.getValues());
return boltMsg;
}
内容来源于网络,如有侵权,请联系作者删除!