ここに表示されているように、スパークはレコード数をどのように計算しているのですか(バッチ内のイベント数と同じだと思いますか?私はリモートでこの値を取得する方法を把握しようとしているSpark Streamingで処理されたレコードの総数はどのように取得するのですか?
(REST-APIは、UIでのストリーミングオプションのために存在していません)。
基本的には、アプリケーションで処理されるレコードの総数を取得するために何をしようとしていますか。 Webポータルにはこの情報が必要です。
私は各段階でRecords
を数えようとしましたが、上の写真のように完全に異なる番号が付けられました。各ステージにはレコードに関する情報が含まれています。ここ
示されているように私は、各段階から、「inputRecords」をカウントするために、この短いPythonスクリプトを使用しています。これらStages
は、複数のTasks
を持って、各Batch
は1 Job
があり、各Job
は、複数のStages
を持っている:私はそれを正しく理解している場合
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)
:これは、ソースコードです。
私にとっては、それぞれStage
の入力を数えるのが理にかなっていました。
何を試しましたか?いくつかのサンプルデータとコードを投稿して、あなたのために働いていないものを教えてください。また、このリンクをチェックしてください:stackoverflow.com/help/mcve。 – CGritton
おそらく、「スパークストリーミングで処理されたレコードの総数を取得するには」 – maasg