有誰知道Spark如何計算其記錄數(我認爲它與批處理中的事件數相同),如此處所示?如何獲取Spark Streaming處理的記錄總數?
我試圖找出如何我可以遠程獲取此值(REST的API不存在在UI流選項)。
基本上我正在嘗試去獲得我的應用程序處理的記錄總數。我需要這個門戶網站的信息。
我試圖爲每個階段計算Records
,但它給了我完全不同的數字,因爲它是在上面的圖片。每個階段都包含有關其記錄的信息。由於這裏
顯示我用這短暫的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)
如果我理解正確的話:每個Batch
具有一個Job
,並且每個Job
具有多個Stages
,這些Stages
有多個Tasks
。
因此對我來說,計算每個Stage
的輸入是有意義的。
你試過了什麼?請發佈一些示例數據和代碼,並告訴我們什麼不適合你。另外,請檢查此鏈接:stackoverflow.com/help/mcve。 – CGritton
也許問題應該是「如何獲取Spark Streaming處理的記錄總數」 – maasg