Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark 如何获得Spark Streaming处理的记录总数?_Apache Spark - Fatal编程技术网

Apache spark 如何获得Spark Streaming处理的记录总数?

Apache spark 如何获得Spark Streaming处理的记录总数?,apache-spark,Apache Spark,有人知道Spark是如何计算它的记录数(我认为它与一批中的事件数相同)的吗 我试图弄清楚如何远程获取该值(UI中不存在REST-API流选项) 基本上,我正试图这样做,以获得我的应用程序处理的记录总数。我需要这个网站门户的信息 我试图计算每个阶段的记录,但它给出的数字与上图完全不同。每个阶段都包含有关其记录的信息。如图所示 我使用这个简短的python脚本计算每个阶段的“inputRecords”。这是源代码: import json, requests, urllib print "Get

有人知道Spark是如何计算它的记录数(我认为它与一批中的事件数相同)的吗

我试图弄清楚如何远程获取该值(UI中不存在REST-API流选项)

基本上,我正试图这样做,以获得我的应用程序处理的记录总数。我需要这个网站门户的信息

我试图计算每个阶段的
记录,但它给出的数字与上图完全不同。每个阶段都包含有关其记录的信息。如图所示

我使用这个简短的python脚本计算每个阶段的“inputRecords”。这是源代码:

import json, requests, urllib
print "Get stages script started!"
#URL REST-API
url = 'http://10.16.31.211:4040/api/v1/applications/app-20161104125052-0052/stages/'
response = urllib.urlopen(url)
data = json.loads(response.read())

stages = []
print len(data)
inputCounter = 0
for item in data:
        stages.append(item["stageId"])
        inputCounter += item["inputRecords"]
print "Records processed: " + str(inputCounter)
如果我理解正确:每个
批次
有一个
作业
,每个
作业
有多个
阶段
,这些
阶段
有多个
任务


因此,对我来说,计算每个
阶段的输入是有意义的,Spark在驱动程序上提供了一个度量端点:

<driver-host>:<ui-port>/metrics/json
:/metrics/json
Spark流媒体应用程序将报告UI中可用的所有指标以及其他指标。您可能正在寻找的是:

<driver-id>.driver.<job-id>.StreamingMetrics.streaming.totalProcessedRecords: {
value: 48574640
},
<driver-id>.driver.<job-id>.StreamingMetrics.streaming.totalReceivedRecords: {
value: 48574640
}
.driver..StreamingMetrics.streaming.totalProcessedRecords:{
价值:48574640
},
.driver..StreamingMetrics.streaming.totalReceivedRecords:{
价值:48574640
}

可以自定义此端点。有关信息,请参阅。

您尝试了什么?请发布一些示例数据和代码,并告诉我们哪些不适合您。另外,请查看以下链接:stackoverflow.com/help/mcve。也许问题应该是“如何获得Spark Streaming处理的记录总数”谢谢!它确实有效,这个/metrics/json选项对我来说是隐藏的。@SeverinSimko不是一个众所周知的功能。顺便说一下,如果你考虑你的问题,不要忘记接受它。还考虑改变标题,使未来的游客也可以受益…欢迎来到SO!