Apache spark 火花流处理并行性

Apache spark 火花流处理并行性,apache-spark,pyspark,spark-streaming,Apache Spark,Pyspark,Spark Streaming,我使用spark流作业来处理我的输入请求 我的spark input获取文件名,下载数据,进行一些更改,并将数据发送到下游 目前,处理一个文件需要2分钟 这些文件请求是独立的操作,可以并行处理 @timing def sleep_func(data): print("start file processing") time.sleep(60) print("end file processing")

我使用spark流作业来处理我的输入请求

我的spark input获取文件名,下载数据,进行一些更改,并将数据发送到下游

目前,处理一个文件需要2分钟

这些文件请求是独立的操作,可以并行处理

@timing
def sleep_func(data):
    print("start file processing")            
    time.sleep(60)      
    print("end file processing")                  
    return data

rdd = ssc.socketTextStream(sys.argv[1], int(sys.argv[2]))     
rdd = rdd.map(sleep_func)    
final_rects = rdd.pprint()
目前,当我通过netcat服务器提供输入时,首先处理每个请求,然后处理下一个请求。我希望这个操作是并行的

@timing
def sleep_func(data):
    print("start file processing")            
    time.sleep(60)      
    print("end file processing")                  
    return data

rdd = ssc.socketTextStream(sys.argv[1], int(sys.argv[2]))     
rdd = rdd.map(sleep_func)    
final_rects = rdd.pprint()
我正在尝试创建多个sockettextstream,将在每个执行器中基于此进行处理

https://spark.apache.org/docs/2.0.2/streaming-programming-guide.html#level-of-parallelism-in-data-receiving

rdd = [ssc.socketTextStream(sys.argv[1], int(sys.argv[2])) for _ in range(5)]

但不知道如何分别处理这些单独的数据流。

您的意思是希望并行处理一批数据,而不是逐个处理,对吗


请参阅:

您的意思是希望并行处理一批数据,而不是逐个处理,对吗

见: