计算每个 pyspark Dstream 中的元素数

count number of elements in each pyspark Dstream

我正在寻找一种方法来计算我在 pyspark 中创建的 Dstream 中每次收到的元素数量(或 RDD 数量),我'我正在使用。如果您知道可以帮助我的方法,我将很高兴。 谢谢。

我使用了下面的代码,给每个数据一个一个,然后计算那些; 就像一个简单的字数统计,但我计算的不是字数,而是每个数据。

我用下面的代码来做到这一点,但如果你们有任何其他解决方案,请随时添加;谢谢

from pyspark.streaming import StreamingContext
from pyspark import SparkContext

# Create a local StreamingContext with two working thread and batch interval of 1 second
sc = SparkContext('local[2]', 'Networkcount')
ssc = StreamingContext(sc, 10)

# Create a DStream that will connect to hostname:port, like localhost:7777
data_received = ssc.socketTextStream("127.0.0.1", 7776)

lines = data_received.map(lambda data: 1)
count = lines.reduce(lambda x, y: x + y)
count.pprint()