【发布时间】:2018-10-28 21:13:04
【问题描述】:
我有一个简单的工作,触发器=15 秒,Source=Kafka 和 Sink=S3。是否有可能找到从 Kafka 下载消息需要多少时间?或者说如果我有 Sink=Console,它带回驱动上的数据,是否有可能找到从 Kafka 下载数据的时间以及将其带回驱动的时间?
在写入 S3 时,我从驱动程序中获取这些用于查询。是否有可能在 triggerExecution = 44 秒内从 Kafka 下载 99998 行花费了多少时间?
Streaming query made progress: {
id : 1383g52b-8de4-4e95-a3s9-aea73qe3ea56,
runId : 1206f5tc-t503-44r0-bc0c-26ce404w6724,
name : null,
timestamp : 2017-08-25T01:42:10.000Z,
numInputRows : 99998,
inputRowsPerSecond : 1666.6333333333334,
processedRowsPerSecond : 2263.9860535669814,
durationMs : {
addBatch : 42845,
getBatch : 3,
getOffset : 68,
queryPlanning : 6,
triggerExecution : 44169,
walCommit : 1245
},
stateOperators : [ ],
sources : [ {
description : KafkaSource[Subscribe[kafka_topic]],
startOffset : {
kafka_topic : {
2 : 20119244,
4 : 20123550,
1 : 20124601,
3 : 20113622,
0 : 20114208
}
},
endOffset : {
kafka_topic : {
2 : 20139245,
4 : 20143531,
1 : 20144592,
3 : 20133663,
0 : 20134192
}
},
numInputRows : 99998,
inputRowsPerSecond : 1666.6333333333334,
processedRowsPerSecond : 2263.9860535669814
} ],
sink : {
description : FileSink[s3://s3bucket]
}
}
谢谢!
【问题讨论】:
-
我通过实现一个不做任何实际处理的 ForEachSink 解决了这个问题,这给了我纯粹的时间来下载 kafka 事件。 ForeachSink:github.com/apache/spark/blob/master/sql/core/src/main/scala/org/…
标签: apache-spark apache-kafka spark-structured-streaming