Flink window documentation说:
拥有一个键控流将允许您的窗口计算由多个任务并行执行,因为每个逻辑键控流可以独立于其余任务进行处理。
此语句是否意味着每个窗口都由专用线程评估?如果我有5000万个唯一密钥创建5000万个窗口,那么并行执行会有5000万个线程吗?
答案 0 :(得分:1)
不,Flink不为每个不同的密钥生成新线程。
应用于键控流的窗口运算符可以并行运行。输入流在密钥属性上分区,使得具有相同密钥的所有记录由窗口运算符的相同并行实例处理。因此,每个并行运算符实例负责处理整个密钥域的子集。